eric7/UI/UserInterface.py

branch
external_find
changeset 9038
90bcfdd63d47
parent 9037
907540e4f741
child 9039
3c8aa997bad8
equal deleted inserted replaced
9037:907540e4f741 9038:90bcfdd63d47
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 # TODO: add separate dialog variant 947 self.__FindFileDialog = None
948 # Create the find in files widget 948 self.__replaceFileDialog = None
949 from .FindFileWidget import FindFileWidget 949 if Preferences.getUI("ShowFindFileWidget"):
950 self.__findFileWidget = FindFileWidget(self.project, self) 950 # Create the find in files widget
951 self.__findFileWidget.sourceFile.connect( 951 from .FindFileWidget import FindFileWidget
952 self.viewmanager.openSourceFile) 952 self.__findFileWidget = FindFileWidget(self.project, self)
953 self.__findFileWidget.designerFile.connect(self.__designer) 953 self.__findFileWidget.sourceFile.connect(
954 self.__findFileWidget.linguistFile.connect(self.__linguist) 954 self.viewmanager.openSourceFile)
955 self.__findFileWidget.trpreview.connect(self.__TRPreviewer) 955 self.__findFileWidget.designerFile.connect(self.__designer)
956 self.__findFileWidget.pixmapFile.connect(self.__showPixmap) 956 self.__findFileWidget.linguistFile.connect(self.__linguist)
957 self.__findFileWidget.svgFile.connect(self.__showSvg) 957 self.__findFileWidget.trpreview.connect(self.__TRPreviewer)
958 self.__findFileWidget.umlFile.connect(self.__showUml) 958 self.__findFileWidget.pixmapFile.connect(self.__showPixmap)
959 self.__findFileWidget.svgFile.connect(self.__showSvg)
960 self.__findFileWidget.umlFile.connect(self.__showUml)
961 else:
962 self.__findFileWidget = None
959 963
960 # TODO: add separate dialog variant 964 # TODO: add separate dialog variant
961 # Create the find location (file) widget 965 # Create the find location (file) widget
962 from .FindLocationWidget import FindLocationWidget 966 from .FindLocationWidget import FindLocationWidget
963 self.__findLocationWidget = FindLocationWidget(self.project, self) 967 self.__findLocationWidget = FindLocationWidget(self.project, self)
1084 1088
1085 self.lToolbox.addItem(self.projectBrowser, 1089 self.lToolbox.addItem(self.projectBrowser,
1086 UI.PixmapCache.getIcon("projectViewer"), 1090 UI.PixmapCache.getIcon("projectViewer"),
1087 self.tr("Project-Viewer")) 1091 self.tr("Project-Viewer"))
1088 1092
1089 self.lToolbox.addItem(self.__findFileWidget, 1093 if self.__findFileWidget:
1090 UI.PixmapCache.getIcon("find"), 1094 self.lToolbox.addItem(self.__findFileWidget,
1091 self.tr("Find/Replace In Files")) 1095 UI.PixmapCache.getIcon("find"),
1096 self.tr("Find/Replace In Files"))
1092 1097
1093 self.lToolbox.addItem(self.__findLocationWidget, 1098 self.lToolbox.addItem(self.__findLocationWidget,
1094 UI.PixmapCache.getIcon("findLocation"), 1099 UI.PixmapCache.getIcon("findLocation"),
1095 self.tr("Find File")) 1100 self.tr("Find File"))
1096 1101
1233 self.leftSidebar.addTab( 1238 self.leftSidebar.addTab(
1234 self.projectBrowser, 1239 self.projectBrowser,
1235 UI.PixmapCache.getIcon("sbProjectViewer96"), 1240 UI.PixmapCache.getIcon("sbProjectViewer96"),
1236 self.tr("Project-Viewer")) 1241 self.tr("Project-Viewer"))
1237 1242
1238 self.leftSidebar.addTab( 1243 if self.__findFileWidget:
1239 self.__findFileWidget, 1244 self.leftSidebar.addTab(
1240 UI.PixmapCache.getIcon("sbFind96"), 1245 self.__findFileWidget,
1241 self.tr("Find/Replace In Files")) 1246 UI.PixmapCache.getIcon("sbFind96"),
1247 self.tr("Find/Replace In Files"))
1242 1248
1243 self.leftSidebar.addTab( 1249 self.leftSidebar.addTab(
1244 self.__findLocationWidget, 1250 self.__findLocationWidget,
1245 UI.PixmapCache.getIcon("sbFindLocation96"), 1251 UI.PixmapCache.getIcon("sbFindLocation96"),
1246 self.tr("Find File")) 1252 self.tr("Find File"))
2312 )) 2318 ))
2313 self.virtualenvManagerActivateAct.triggered.connect( 2319 self.virtualenvManagerActivateAct.triggered.connect(
2314 self.activateVirtualenvManager) 2320 self.activateVirtualenvManager)
2315 self.actions.append(self.virtualenvManagerActivateAct) 2321 self.actions.append(self.virtualenvManagerActivateAct)
2316 self.addAction(self.virtualenvManagerActivateAct) 2322 self.addAction(self.virtualenvManagerActivateAct)
2317 2323
2318 self.findFileActivateAct = EricAction( 2324 if self.__findFileWidget is not None:
2319 self.tr("Find/Replace In Files"), 2325 self.findFileActivateAct = EricAction(
2320 self.tr("Find/Replace In Files"), 2326 self.tr("Find/Replace In Files"),
2321 QKeySequence(self.tr("Ctrl+Alt+Shift+F")), 2327 self.tr("Find/Replace In Files"),
2322 0, self, 2328 QKeySequence(self.tr("Ctrl+Alt+Shift+F")),
2323 'find_file_activate') 2329 0, self,
2324 self.findFileActivateAct.setStatusTip(self.tr( 2330 'find_file_activate')
2325 "Switch the input focus to the Find/Replace In Files window.")) 2331 self.findFileActivateAct.setStatusTip(self.tr(
2326 self.findFileActivateAct.setWhatsThis(self.tr( 2332 "Switch the input focus to the Find/Replace In Files window."))
2327 """<b>Find/Replace In Files</b>""" 2333 self.findFileActivateAct.setWhatsThis(self.tr(
2328 """<p>This switches the input focus to the Find/Replace In Files""" 2334 """<b>Find/Replace In Files</b>"""
2329 """ window.</p>""" 2335 """<p>This switches the input focus to the Find/Replace In"""
2330 )) 2336 """ Files window.</p>"""
2331 self.findFileActivateAct.triggered.connect( 2337 ))
2332 self.__activateFindFileWidget) 2338 self.findFileActivateAct.triggered.connect(
2333 self.actions.append(self.findFileActivateAct) 2339 self.__activateFindFileWidget)
2334 self.addAction(self.findFileActivateAct) 2340 self.actions.append(self.findFileActivateAct)
2341 self.addAction(self.findFileActivateAct)
2335 2342
2336 self.findLocationActivateAct = EricAction( 2343 self.findLocationActivateAct = EricAction(
2337 self.tr("Find File"), 2344 self.tr("Find File"),
2338 self.tr("Find File"), 2345 self.tr("Find File"),
2339 QKeySequence(self.tr("Ctrl+Alt+Shift+L")), 2346 QKeySequence(self.tr("Ctrl+Alt+Shift+L")),
3466 3473
3467 # left side 3474 # left side
3468 self.__menus["subwindow"].addSection(self.tr("Left Side")) 3475 self.__menus["subwindow"].addSection(self.tr("Left Side"))
3469 self.__menus["subwindow"].addAction(self.mpbActivateAct) 3476 self.__menus["subwindow"].addAction(self.mpbActivateAct)
3470 self.__menus["subwindow"].addAction(self.pbActivateAct) 3477 self.__menus["subwindow"].addAction(self.pbActivateAct)
3471 self.__menus["subwindow"].addAction(self.findFileActivateAct) 3478 if self.__findFileWidget is not None:
3479 self.__menus["subwindow"].addAction(self.findFileActivateAct)
3472 self.__menus["subwindow"].addAction(self.findLocationActivateAct) 3480 self.__menus["subwindow"].addAction(self.findLocationActivateAct)
3473 self.__menus["subwindow"].addAction(self.vcsStatusListActivateAct) 3481 self.__menus["subwindow"].addAction(self.vcsStatusListActivateAct)
3474 if not self.rightSidebar: 3482 if not self.rightSidebar:
3475 self.__menus["subwindow"].addAction(self.debugViewerActivateAct) 3483 self.__menus["subwindow"].addAction(self.debugViewerActivateAct)
3476 if self.templateViewer is not None: 3484 if self.templateViewer is not None:
7161 @type str (optional) 7169 @type str (optional)
7162 @param openFiles flag indicating to operate on open files only 7170 @param openFiles flag indicating to operate on open files only
7163 (defaults to False) 7171 (defaults to False)
7164 @type bool (optional) 7172 @type bool (optional)
7165 """ 7173 """
7166 # TODO: add separate dialog variant 7174 if Preferences.getUI("ShowFindFileWidget"):
7167 self.__activateFindFileWidget() 7175 # embedded tool
7168 self.__findFileWidget.activate( 7176 self.__activateFindFileWidget()
7169 replaceMode=False, txt=txt, searchDir=searchDir, 7177 self.__findFileWidget.activate(
7170 openFiles=openFiles) 7178 replaceMode=False, txt=txt, searchDir=searchDir,
7179 openFiles=openFiles)
7180 else:
7181 # external dialog
7182 if self.__FindFileDialog is None:
7183 from .FindFileWidget import FindFileDialog
7184 self.__FindFileDialog = FindFileDialog(self.project)
7185 self.__FindFileDialog.sourceFile.connect(
7186 self.viewmanager.openSourceFile)
7187 self.__FindFileDialog.designerFile.connect(self.__designer)
7188 self.__FindFileDialog.linguistFile.connect(self.__linguist)
7189 self.__FindFileDialog.trpreview.connect(self.__TRPreviewer)
7190 self.__FindFileDialog.pixmapFile.connect(self.__showPixmap)
7191 self.__FindFileDialog.svgFile.connect(self.__showSvg)
7192 self.__FindFileDialog.umlFile.connect(self.__showUml)
7193 self.__FindFileDialog.activate(
7194 replaceMode=False, txt=txt, searchDir=searchDir,
7195 openFiles=openFiles)
7171 7196
7172 def showReplaceFilesWidget(self, txt="", searchDir="", openFiles=False): 7197 def showReplaceFilesWidget(self, txt="", searchDir="", openFiles=False):
7173 """ 7198 """
7174 Public slot to show the Find In Files widget in replace mode. 7199 Public slot to show the Find In Files widget in replace mode.
7175 7200
7179 @type str (optional) 7204 @type str (optional)
7180 @param openFiles flag indicating to operate on open files only 7205 @param openFiles flag indicating to operate on open files only
7181 (defaults to False) 7206 (defaults to False)
7182 @type bool (optional) 7207 @type bool (optional)
7183 """ 7208 """
7184 # TODO: add separate dialog variant 7209 if Preferences.getUI("ShowFindFileWidget"):
7185 self.__activateFindFileWidget() 7210 self.__activateFindFileWidget()
7186 self.__findFileWidget.activate( 7211 self.__findFileWidget.activate(
7187 replaceMode=True, txt=txt, searchDir=searchDir, 7212 replaceMode=True, txt=txt, searchDir=searchDir,
7188 openFiles=openFiles) 7213 openFiles=openFiles)
7214 else:
7215 # external dialog
7216 if self.__replaceFileDialog is None:
7217 from .FindFileWidget import FindFileDialog
7218 self.__replaceFileDialog = FindFileDialog(self.project)
7219 self.__replaceFileDialog.sourceFile.connect(
7220 self.viewmanager.openSourceFile)
7221 self.__replaceFileDialog.designerFile.connect(self.__designer)
7222 self.__replaceFileDialog.linguistFile.connect(self.__linguist)
7223 self.__replaceFileDialog.trpreview.connect(self.__TRPreviewer)
7224 self.__replaceFileDialog.pixmapFile.connect(self.__showPixmap)
7225 self.__replaceFileDialog.svgFile.connect(self.__showSvg)
7226 self.__replaceFileDialog.umlFile.connect(self.__showUml)
7227 self.__replaceFileDialog.activate(
7228 replaceMode=True, txt=txt, searchDir=searchDir,
7229 openFiles=openFiles)
7189 7230
7190 def __activateFindFileWidget(self): 7231 def __activateFindFileWidget(self):
7191 """ 7232 """
7192 Private slot to activate the Find In Files widget. 7233 Private slot to activate the Find In Files widget.
7193 """ 7234 """

eric ide

mercurial