11from PyQt4 .QtCore import *
22from PyQt4 .QtGui import *
3- from PyQt4 import QtCore , QtGui
3+ from PyQt4 import QtCore , QtGui , QtWebKit
44from sextante .core .QGisLayers import QGisLayers
55from sextante .parameters .ParameterRaster import ParameterRaster
66from sextante .parameters .ParameterVector import ParameterVector
@@ -53,10 +53,6 @@ def setupUi(self, dialog, alg):
5353 self .buttonBox = QtGui .QDialogButtonBox ()
5454 self .buttonBox .setOrientation (QtCore .Qt .Horizontal )
5555 self .buttonBox .setStandardButtons (QtGui .QDialogButtonBox .Cancel | QtGui .QDialogButtonBox .Ok )
56- self .showHelpButton = QtGui .QPushButton ()
57- self .showHelpButton .setText ("Show help" )
58- self .buttonBox .addButton (self .showHelpButton , QtGui .QDialogButtonBox .ActionRole )
59- QtCore .QObject .connect (self .showHelpButton , QtCore .SIGNAL ("clicked()" ), self .showHelp )
6056 self .paramTable = ParametersPanel (self .alg , self .dialog )
6157 self .scrollArea = QtGui .QScrollArea ()
6258 self .scrollArea .setWidget (self .paramTable )
@@ -70,7 +66,29 @@ def setupUi(self, dialog, alg):
7066 self .verticalLayout = QtGui .QVBoxLayout (dialog )
7167 self .verticalLayout .setSpacing (2 )
7268 self .verticalLayout .setMargin (0 )
73- self .verticalLayout .addWidget (self .scrollArea )
69+ self .tabWidget = QtGui .QTabWidget ()
70+ self .tabWidget .setMinimumWidth (300 )
71+ self .tabWidget .addTab (self .scrollArea , "Parameters" )
72+ self .verticalLayout .addWidget (self .tabWidget )
73+ self .webView = QtWebKit .QWebView ()
74+ html = None
75+ try :
76+ if self .alg .helpFile ():
77+ helpFile = self .alg .helpFile ()
78+ else :
79+ html = "<h2>Sorry, no help is available for this algorithm.</h2>"
80+ except WrongHelpFileException , e :
81+ html = e .msg
82+ self .webView .setHtml ("<h2>Could not open help file :-( </h2>" )
83+ try :
84+ if html :
85+ self .webView .setHtml (html )
86+ else :
87+ url = QtCore .QUrl (helpFile )
88+ self .webView .load (url )
89+ except :
90+ self .webView .setHtml ("<h2>Could not open help file :-( </h2>" )
91+ self .tabWidget .addTab (self .webView , "Help" )
7492 self .verticalLayout .addWidget (self .progressLabel )
7593 self .verticalLayout .addWidget (self .progress )
7694 self .verticalLayout .addWidget (self .buttonBox )
@@ -79,16 +97,6 @@ def setupUi(self, dialog, alg):
7997 QtCore .QObject .connect (self .buttonBox , QtCore .SIGNAL (_fromUtf8 ("rejected()" )), self .reject )
8098 QtCore .QMetaObject .connectSlotsByName (dialog )
8199
82- def showHelp (self ):
83- try :
84- if self .alg .helpFile ():
85- dlg = HTMLViewerDialog (self .alg .helpFile ())
86- dlg .exec_ ()
87- else :
88- QMessageBox .warning (self .dialog , "No help available" , "No help is available for the current algorithm." )
89- except WrongHelpFileException , e :
90- QMessageBox .warning (self .dialog , "Help" , e .msg )
91-
92100
93101 def setParamValues (self ):
94102 params = self .alg .parameters
0 commit comments