eric7/UI/UserInterface.py

branch
external_find
changeset 9039
3c8aa997bad8
parent 9038
90bcfdd63d47
child 9064
339bb8c8007d
child 9111
4ac66b6c33a4
equal deleted inserted replaced
9038:90bcfdd63d47 9039:3c8aa997bad8
942 # Create the virtual environments management widget 942 # Create the virtual environments management widget
943 from VirtualEnv.VirtualenvManagerWidgets import VirtualenvManagerWidget 943 from VirtualEnv.VirtualenvManagerWidgets import VirtualenvManagerWidget
944 self.__virtualenvManagerWidget = VirtualenvManagerWidget( 944 self.__virtualenvManagerWidget = VirtualenvManagerWidget(
945 self.virtualenvManager, self) 945 self.virtualenvManager, self)
946 946
947 self.__FindFileDialog = None 947 self.__findFileDialog = None
948 self.__replaceFileDialog = None 948 self.__replaceFileDialog = None
949 if Preferences.getUI("ShowFindFileWidget"): 949 if Preferences.getUI("ShowFindFileWidget"):
950 # Create the find in files widget 950 # Create the find in files widget
951 from .FindFileWidget import FindFileWidget 951 from .FindFileWidget import FindFileWidget
952 self.__findFileWidget = FindFileWidget(self.project, self) 952 self.__findFileWidget = FindFileWidget(self.project, self)
959 self.__findFileWidget.svgFile.connect(self.__showSvg) 959 self.__findFileWidget.svgFile.connect(self.__showSvg)
960 self.__findFileWidget.umlFile.connect(self.__showUml) 960 self.__findFileWidget.umlFile.connect(self.__showUml)
961 else: 961 else:
962 self.__findFileWidget = None 962 self.__findFileWidget = None
963 963
964 # TODO: add separate dialog variant 964 self.__findLocationDialog = None
965 # Create the find location (file) widget 965 if Preferences.getUI("ShowFindLocationWidget"):
966 from .FindLocationWidget import FindLocationWidget 966 # Create the find location (file) widget
967 self.__findLocationWidget = FindLocationWidget(self.project, self) 967 from .FindLocationWidget import FindLocationWidget
968 self.__findLocationWidget.sourceFile.connect( 968 self.__findLocationWidget = FindLocationWidget(self.project, self)
969 self.viewmanager.openSourceFile) 969 self.__findLocationWidget.sourceFile.connect(
970 self.__findLocationWidget.designerFile.connect(self.__designer) 970 self.viewmanager.openSourceFile)
971 self.__findLocationWidget.linguistFile.connect(self.__linguist) 971 self.__findLocationWidget.designerFile.connect(self.__designer)
972 self.__findLocationWidget.trpreview.connect(self.__TRPreviewer) 972 self.__findLocationWidget.linguistFile.connect(self.__linguist)
973 self.__findLocationWidget.pixmapFile.connect(self.__showPixmap) 973 self.__findLocationWidget.trpreview.connect(self.__TRPreviewer)
974 self.__findLocationWidget.svgFile.connect(self.__showSvg) 974 self.__findLocationWidget.pixmapFile.connect(self.__showPixmap)
975 self.__findLocationWidget.umlFile.connect(self.__showUml) 975 self.__findLocationWidget.svgFile.connect(self.__showSvg)
976 self.__findLocationWidget.umlFile.connect(self.__showUml)
977 else:
978 self.__findLocationWidget = None
976 979
977 # Create the VCS Status widget 980 # Create the VCS Status widget
978 from VCS.StatusWidget import StatusWidget 981 from VCS.StatusWidget import StatusWidget
979 self.__vcsStatusWidget = StatusWidget( 982 self.__vcsStatusWidget = StatusWidget(
980 self.project, self.viewmanager, self) 983 self.project, self.viewmanager, self)
1093 if self.__findFileWidget: 1096 if self.__findFileWidget:
1094 self.lToolbox.addItem(self.__findFileWidget, 1097 self.lToolbox.addItem(self.__findFileWidget,
1095 UI.PixmapCache.getIcon("find"), 1098 UI.PixmapCache.getIcon("find"),
1096 self.tr("Find/Replace In Files")) 1099 self.tr("Find/Replace In Files"))
1097 1100
1098 self.lToolbox.addItem(self.__findLocationWidget, 1101 if self.__findLocationWidget:
1099 UI.PixmapCache.getIcon("findLocation"), 1102 self.lToolbox.addItem(self.__findLocationWidget,
1100 self.tr("Find File")) 1103 UI.PixmapCache.getIcon("findLocation"),
1104 self.tr("Find File"))
1101 1105
1102 self.lToolbox.addItem(self.__vcsStatusWidget, 1106 self.lToolbox.addItem(self.__vcsStatusWidget,
1103 UI.PixmapCache.getIcon("tbVcsStatus"), 1107 UI.PixmapCache.getIcon("tbVcsStatus"),
1104 self.tr("VCS Status")) 1108 self.tr("VCS Status"))
1105 1109
1244 self.leftSidebar.addTab( 1248 self.leftSidebar.addTab(
1245 self.__findFileWidget, 1249 self.__findFileWidget,
1246 UI.PixmapCache.getIcon("sbFind96"), 1250 UI.PixmapCache.getIcon("sbFind96"),
1247 self.tr("Find/Replace In Files")) 1251 self.tr("Find/Replace In Files"))
1248 1252
1249 self.leftSidebar.addTab( 1253 if self.__findLocationWidget:
1250 self.__findLocationWidget, 1254 self.leftSidebar.addTab(
1251 UI.PixmapCache.getIcon("sbFindLocation96"), 1255 self.__findLocationWidget,
1252 self.tr("Find File")) 1256 UI.PixmapCache.getIcon("sbFindLocation96"),
1257 self.tr("Find File"))
1253 1258
1254 self.leftSidebar.addTab( 1259 self.leftSidebar.addTab(
1255 self.__vcsStatusWidget, 1260 self.__vcsStatusWidget,
1256 UI.PixmapCache.getIcon("sbVcsStatus96"), 1261 UI.PixmapCache.getIcon("sbVcsStatus96"),
1257 self.tr("VCS Status")) 1262 self.tr("VCS Status"))
2337 )) 2342 ))
2338 self.findFileActivateAct.triggered.connect( 2343 self.findFileActivateAct.triggered.connect(
2339 self.__activateFindFileWidget) 2344 self.__activateFindFileWidget)
2340 self.actions.append(self.findFileActivateAct) 2345 self.actions.append(self.findFileActivateAct)
2341 self.addAction(self.findFileActivateAct) 2346 self.addAction(self.findFileActivateAct)
2342 2347
2343 self.findLocationActivateAct = EricAction( 2348 if self.__findLocationWidget is not None:
2344 self.tr("Find File"), 2349 self.findLocationActivateAct = EricAction(
2345 self.tr("Find File"), 2350 self.tr("Find File"),
2346 QKeySequence(self.tr("Ctrl+Alt+Shift+L")), 2351 self.tr("Find File"),
2347 0, self, 2352 QKeySequence(self.tr("Ctrl+Alt+Shift+L")),
2348 'find_location_activate') 2353 0, self,
2349 self.findLocationActivateAct.setStatusTip(self.tr( 2354 'find_location_activate')
2350 "Switch the input focus to the Find File window.")) 2355 self.findLocationActivateAct.setStatusTip(self.tr(
2351 self.findLocationActivateAct.setWhatsThis(self.tr( 2356 "Switch the input focus to the Find File window."))
2352 """<b>Find File</b>""" 2357 self.findLocationActivateAct.setWhatsThis(self.tr(
2353 """<p>This switches the input focus to the Find File window.""" 2358 """<b>Find File</b>"""
2354 """</p>""" 2359 """<p>This switches the input focus to the Find File window."""
2355 )) 2360 """</p>"""
2356 self.findLocationActivateAct.triggered.connect( 2361 ))
2357 self.__activateFindLocationWidget) 2362 self.findLocationActivateAct.triggered.connect(
2358 self.actions.append(self.findLocationActivateAct) 2363 self.__activateFindLocationWidget)
2359 self.addAction(self.findLocationActivateAct) 2364 self.actions.append(self.findLocationActivateAct)
2365 self.addAction(self.findLocationActivateAct)
2360 2366
2361 self.vcsStatusListActivateAct = EricAction( 2367 self.vcsStatusListActivateAct = EricAction(
2362 self.tr("VCS Status List"), 2368 self.tr("VCS Status List"),
2363 self.tr("VCS Status List"), 2369 self.tr("VCS Status List"),
2364 QKeySequence(self.tr("Alt+Shift+V")), 2370 QKeySequence(self.tr("Alt+Shift+V")),
3475 self.__menus["subwindow"].addSection(self.tr("Left Side")) 3481 self.__menus["subwindow"].addSection(self.tr("Left Side"))
3476 self.__menus["subwindow"].addAction(self.mpbActivateAct) 3482 self.__menus["subwindow"].addAction(self.mpbActivateAct)
3477 self.__menus["subwindow"].addAction(self.pbActivateAct) 3483 self.__menus["subwindow"].addAction(self.pbActivateAct)
3478 if self.__findFileWidget is not None: 3484 if self.__findFileWidget is not None:
3479 self.__menus["subwindow"].addAction(self.findFileActivateAct) 3485 self.__menus["subwindow"].addAction(self.findFileActivateAct)
3480 self.__menus["subwindow"].addAction(self.findLocationActivateAct) 3486 if self.__findLocationWidget is not None:
3487 self.__menus["subwindow"].addAction(self.findLocationActivateAct)
3481 self.__menus["subwindow"].addAction(self.vcsStatusListActivateAct) 3488 self.__menus["subwindow"].addAction(self.vcsStatusListActivateAct)
3482 if not self.rightSidebar: 3489 if not self.rightSidebar:
3483 self.__menus["subwindow"].addAction(self.debugViewerActivateAct) 3490 self.__menus["subwindow"].addAction(self.debugViewerActivateAct)
3484 if self.templateViewer is not None: 3491 if self.templateViewer is not None:
3485 self.__menus["subwindow"].addAction(self.templateViewerActivateAct) 3492 self.__menus["subwindow"].addAction(self.templateViewerActivateAct)
7177 self.__findFileWidget.activate( 7184 self.__findFileWidget.activate(
7178 replaceMode=False, txt=txt, searchDir=searchDir, 7185 replaceMode=False, txt=txt, searchDir=searchDir,
7179 openFiles=openFiles) 7186 openFiles=openFiles)
7180 else: 7187 else:
7181 # external dialog 7188 # external dialog
7182 if self.__FindFileDialog is None: 7189 if self.__findFileDialog is None:
7183 from .FindFileWidget import FindFileDialog 7190 from .FindFileWidget import FindFileDialog
7184 self.__FindFileDialog = FindFileDialog(self.project) 7191 self.__findFileDialog = FindFileDialog(self.project, self)
7185 self.__FindFileDialog.sourceFile.connect( 7192 self.__findFileDialog.sourceFile.connect(
7186 self.viewmanager.openSourceFile) 7193 self.viewmanager.openSourceFile)
7187 self.__FindFileDialog.designerFile.connect(self.__designer) 7194 self.__findFileDialog.designerFile.connect(self.__designer)
7188 self.__FindFileDialog.linguistFile.connect(self.__linguist) 7195 self.__findFileDialog.linguistFile.connect(self.__linguist)
7189 self.__FindFileDialog.trpreview.connect(self.__TRPreviewer) 7196 self.__findFileDialog.trpreview.connect(self.__TRPreviewer)
7190 self.__FindFileDialog.pixmapFile.connect(self.__showPixmap) 7197 self.__findFileDialog.pixmapFile.connect(self.__showPixmap)
7191 self.__FindFileDialog.svgFile.connect(self.__showSvg) 7198 self.__findFileDialog.svgFile.connect(self.__showSvg)
7192 self.__FindFileDialog.umlFile.connect(self.__showUml) 7199 self.__findFileDialog.umlFile.connect(self.__showUml)
7193 self.__FindFileDialog.activate( 7200 self.__findFileDialog.activate(
7194 replaceMode=False, txt=txt, searchDir=searchDir, 7201 replaceMode=False, txt=txt, searchDir=searchDir,
7195 openFiles=openFiles) 7202 openFiles=openFiles)
7196 7203
7197 def showReplaceFilesWidget(self, txt="", searchDir="", openFiles=False): 7204 def showReplaceFilesWidget(self, txt="", searchDir="", openFiles=False):
7198 """ 7205 """
7205 @param openFiles flag indicating to operate on open files only 7212 @param openFiles flag indicating to operate on open files only
7206 (defaults to False) 7213 (defaults to False)
7207 @type bool (optional) 7214 @type bool (optional)
7208 """ 7215 """
7209 if Preferences.getUI("ShowFindFileWidget"): 7216 if Preferences.getUI("ShowFindFileWidget"):
7217 # embedded tool
7210 self.__activateFindFileWidget() 7218 self.__activateFindFileWidget()
7211 self.__findFileWidget.activate( 7219 self.__findFileWidget.activate(
7212 replaceMode=True, txt=txt, searchDir=searchDir, 7220 replaceMode=True, txt=txt, searchDir=searchDir,
7213 openFiles=openFiles) 7221 openFiles=openFiles)
7214 else: 7222 else:
7215 # external dialog 7223 # external dialog
7216 if self.__replaceFileDialog is None: 7224 if self.__replaceFileDialog is None:
7217 from .FindFileWidget import FindFileDialog 7225 from .FindFileWidget import FindFileDialog
7218 self.__replaceFileDialog = FindFileDialog(self.project) 7226 self.__replaceFileDialog = FindFileDialog(self.project, self)
7219 self.__replaceFileDialog.sourceFile.connect( 7227 self.__replaceFileDialog.sourceFile.connect(
7220 self.viewmanager.openSourceFile) 7228 self.viewmanager.openSourceFile)
7221 self.__replaceFileDialog.designerFile.connect(self.__designer) 7229 self.__replaceFileDialog.designerFile.connect(self.__designer)
7222 self.__replaceFileDialog.linguistFile.connect(self.__linguist) 7230 self.__replaceFileDialog.linguistFile.connect(self.__linguist)
7223 self.__replaceFileDialog.trpreview.connect(self.__TRPreviewer) 7231 self.__replaceFileDialog.trpreview.connect(self.__TRPreviewer)
7245 7253
7246 def showFindLocationWidget(self): 7254 def showFindLocationWidget(self):
7247 """ 7255 """
7248 Public method to show the Find File widget. 7256 Public method to show the Find File widget.
7249 """ 7257 """
7250 # TODO: add separate dialog variant 7258 if Preferences.getUI("ShowFindLocationWidget"):
7251 self.__activateFindLocationWidget() 7259 # embedded tool
7260 self.__activateFindLocationWidget()
7261 else:
7262 # external dialog
7263 if self.__findLocationDialog is None:
7264 from .FindLocationWidget import FindLocationDialog
7265 self.__findLocationDialog = FindLocationDialog(self.project,
7266 self)
7267 self.__findLocationDialog.sourceFile.connect(
7268 self.viewmanager.openSourceFile)
7269 self.__findLocationDialog.designerFile.connect(self.__designer)
7270 self.__findLocationDialog.linguistFile.connect(self.__linguist)
7271 self.__findLocationDialog.trpreview.connect(self.__TRPreviewer)
7272 self.__findLocationDialog.pixmapFile.connect(self.__showPixmap)
7273 self.__findLocationDialog.svgFile.connect(self.__showSvg)
7274 self.__findLocationDialog.umlFile.connect(self.__showUml)
7275 self.__findLocationDialog.activate()
7252 7276
7253 def __activateFindLocationWidget(self): 7277 def __activateFindLocationWidget(self):
7254 """ 7278 """
7255 Private method to activate the Find File widget. 7279 Private method to activate the Find File widget.
7256 """ 7280 """

eric ide

mercurial