📄 ide.py
字号:
"*.none", _("XForm"), _(".bpel"), _("XFormEditor Document"), _("XFormEditor View"), XFormEditor.XFormDocument, XFormEditor.XFormView, icon = XFormEditor.getXFormIcon()) docManager.AssociateTemplate(viewTemplate) if not ACTIVEGRID_BASE_IDE: bpelTemplate = wx.lib.pydocview.ChildDocTemplate(docManager, _("BPEL"), "*.none", _("BPEL"), _(".bpel"), _("BPELEditor Document"), _("BPELEditor View"), BPELEditor.BPELDocument, BPELEditor.BPELView, icon = ProcessModelEditor.getProcessModelIcon()) docManager.AssociateTemplate(bpelTemplate) if not ACTIVEGRID_BASE_IDE: dataModelChildTemplate = wx.lib.pydocview.ChildDocTemplate(docManager, _("Schema"), "*.none", _("Schema"), _(".xsd"), _("Schema Document"), _("Schema View"), DataModelEditor.DataModelChildDocument, DataModelEditor.DataModelView, icon = DataModelEditor.getDataModelIcon()) docManager.AssociateTemplate(dataModelChildTemplate) textService = self.InstallService(STCTextEditor.TextService()) pythonService = self.InstallService(PythonEditor.PythonService()) perlService = self.InstallService(PerlEditor.PerlService()) phpService = self.InstallService(PHPEditor.PHPService()) if not ACTIVEGRID_BASE_IDE: propertyService = self.InstallService(PropertyService.PropertyService("Properties", embeddedWindowLocation = wx.lib.pydocview.EMBEDDED_WINDOW_RIGHT)) projectService = self.InstallService(ProjectEditor.ProjectService("Projects", embeddedWindowLocation = wx.lib.pydocview.EMBEDDED_WINDOW_TOPLEFT)) findService = self.InstallService(FindInDirService.FindInDirService()) if not ACTIVEGRID_BASE_IDE: webBrowserService = self.InstallService(WebBrowserService.WebBrowserService()) # this must be before webServerService since it sets the proxy environment variable that is needed by the webServerService. webServerService = self.InstallService(WebServerService.WebServerService()) # this must be after webBrowserService since that service sets the proxy environment variables. outlineService = self.InstallService(OutlineService.OutlineService("Outline", embeddedWindowLocation = wx.lib.pydocview.EMBEDDED_WINDOW_BOTTOMLEFT)) filePropertiesService = self.InstallService(wx.lib.pydocview.FilePropertiesService()) markerService = self.InstallService(MarkerService.MarkerService()) messageService = self.InstallService(MessageService.MessageService("Messages", embeddedWindowLocation = wx.lib.pydocview.EMBEDDED_WINDOW_BOTTOM)) debuggerService = self.InstallService(DebuggerService.DebuggerService("Debugger", embeddedWindowLocation = wx.lib.pydocview.EMBEDDED_WINDOW_BOTTOM)) if not ACTIVEGRID_BASE_IDE: processModelService = self.InstallService(ProcessModelEditor.ProcessModelService()) viewEditorService = self.InstallService(XFormEditor.XFormService()) deploymentService = self.InstallService(DeploymentService.DeploymentService()) dataModelService = self.InstallService(DataModelEditor.DataModelService()) dataSourceService = self.InstallService(DataModelEditor.DataSourceService()) wsdlService = self.InstallService(WSDLEditor.WSDLService()) welcomeService = self.InstallService(WelcomeService.WelcomeService()) if not ACTIVEGRID_BASE_IDE and _EDIT_LAYOUTS: layoutService = self.InstallService(LayoutEditor.LayoutEditorService()) extensionService = self.InstallService(ExtensionService.ExtensionService()) optionsService = self.InstallService(wx.lib.pydocview.DocOptionsService(supportedModes=wx.lib.docview.DOC_MDI)) aboutService = self.InstallService(wx.lib.pydocview.AboutService(AboutDialog.AboutDialog)) svnService = self.InstallService(SVNService.SVNService()) if not ACTIVEGRID_BASE_IDE: helpPath = os.path.join(sysutilslib.mainModuleDir, "activegrid", "tool", "data", "AGDeveloperGuideWebHelp", "AGDeveloperGuideWebHelp.hhp") helpService = self.InstallService(HelpService.HelpService(helpPath)) if self.GetUseTabbedMDI(): windowService = self.InstallService(wx.lib.pydocview.WindowMenuService()) if not ACTIVEGRID_BASE_IDE: projectService.AddRunHandler(processModelService) # order of these added determines display order of Options Panels optionsService.AddOptionsPanel(ProjectEditor.ProjectOptionsPanel) optionsService.AddOptionsPanel(DebuggerService.DebuggerOptionsPanel) if not ACTIVEGRID_BASE_IDE: optionsService.AddOptionsPanel(WebServerService.WebServerOptionsPanel) optionsService.AddOptionsPanel(DataModelEditor.DataSourceOptionsPanel) optionsService.AddOptionsPanel(DataModelEditor.SchemaOptionsPanel) optionsService.AddOptionsPanel(WebBrowserService.WebBrowserOptionsPanel) optionsService.AddOptionsPanel(ImportServiceWizard.ServiceOptionsPanel) optionsService.AddOptionsPanel(PythonEditor.PythonOptionsPanel) optionsService.AddOptionsPanel(PHPEditor.PHPOptionsPanel) optionsService.AddOptionsPanel(PerlEditor.PerlOptionsPanel) optionsService.AddOptionsPanel(XmlEditor.XmlOptionsPanel) optionsService.AddOptionsPanel(HtmlEditor.HtmlOptionsPanel) optionsService.AddOptionsPanel(STCTextEditor.TextOptionsPanel) optionsService.AddOptionsPanel(SVNService.SVNOptionsPanel) optionsService.AddOptionsPanel(ExtensionService.ExtensionOptionsPanel) filePropertiesService.AddCustomEventHandler(projectService) outlineService.AddViewTypeForBackgroundHandler(PythonEditor.PythonView) outlineService.AddViewTypeForBackgroundHandler(PHPEditor.PHPView) outlineService.AddViewTypeForBackgroundHandler(ProjectEditor.ProjectView) # special case, don't clear outline if in project outlineService.AddViewTypeForBackgroundHandler(MessageService.MessageView) # special case, don't clear outline if in message window if not ACTIVEGRID_BASE_IDE: outlineService.AddViewTypeForBackgroundHandler(DataModelEditor.DataModelView) outlineService.AddViewTypeForBackgroundHandler(ProcessModelEditor.ProcessModelView) outlineService.AddViewTypeForBackgroundHandler(PropertyService.PropertyView) # special case, don't clear outline if in property window outlineService.StartBackgroundTimer() if not ACTIVEGRID_BASE_IDE: propertyService.AddViewTypeForBackgroundHandler(DataModelEditor.DataModelView) propertyService.AddViewTypeForBackgroundHandler(ProcessModelEditor.ProcessModelView) propertyService.AddViewTypeForBackgroundHandler(XFormEditor.XFormView) propertyService.AddViewTypeForBackgroundHandler(BPELEditor.BPELView) propertyService.AddViewTypeForBackgroundHandler(WSDLEditor.WSDLView) propertyService.StartBackgroundTimer() propertyService.AddCustomCellRenderers(DataModelEditor.GetCustomGridCellRendererDict()) propertyService.AddCustomCellRenderers(BPELEditor.GetCustomGridCellRendererDict()) propertyService.AddCustomCellRenderers(XFormEditor.GetCustomGridCellRendererDict()) propertyService.AddCustomCellRenderers(XPathEditor.GetCustomGridCellRendererDict()) propertyService.AddCustomCellRenderers(XPathExprEditor.GetCustomGridCellRendererDict()) propertyService.AddCustomCellRenderers(WSDLEditor.GetCustomGridCellRendererDict()) propertyService.AddCustomCellRenderers(WsdlAgEditor.GetCustomGridCellRendererDict()) propertyService.AddCustomCellEditors(DataModelEditor.GetCustomGridCellEditorDict()) propertyService.AddCustomCellEditors(BPELEditor.GetCustomGridCellEditorDict()) propertyService.AddCustomCellEditors(XFormEditor.GetCustomGridCellEditorDict()) propertyService.AddCustomCellEditors(XPathEditor.GetCustomGridCellEditorDict()) propertyService.AddCustomCellEditors(XPathExprEditor.GetCustomGridCellEditorDict()) propertyService.AddCustomCellEditors(WSDLEditor.GetCustomGridCellEditorDict()) propertyService.AddCustomCellEditors(WsdlAgEditor.GetCustomGridCellEditorDict()) if not ACTIVEGRID_BASE_IDE: projectService.AddNameDefault(".bpel", projectService.GetDefaultNameCallback) projectService.AddNameDefault(".xsd", dataModelService.GetDefaultNameCallback) projectService.AddNameDefault(".xform", projectService.GetDefaultNameCallback) projectService.AddNameDefault(".wsdl", projectService.GetDefaultNameCallback) projectService.AddNameDefault(".wsdlag", projectService.GetDefaultNameCallback) projectService.AddNameDefault(".skn", projectService.GetDefaultNameCallback) projectService.AddNameDefault(".xacml", projectService.GetDefaultNameCallback) projectService.AddFileTypeDefault(".lyt", basedocmgr.FILE_TYPE_LAYOUT) projectService.AddFileTypeDefault(".bpel", basedocmgr.FILE_TYPE_PROCESS) projectService.AddFileTypeDefault(".xsd", basedocmgr.FILE_TYPE_SCHEMA) projectService.AddFileTypeDefault(".wsdlag", basedocmgr.FILE_TYPE_SERVICE) projectService.AddFileTypeDefault(".skn", basedocmgr.FILE_TYPE_SKIN) projectService.AddFileTypeDefault(".xacml", basedocmgr.FILE_TYPE_IDENTITY) projectService.AddFileTypeDefault(".css", basedocmgr.FILE_TYPE_STATIC) projectService.AddFileTypeDefault(".js", basedocmgr.FILE_TYPE_STATIC) projectService.AddFileTypeDefault(".gif", basedocmgr.FILE_TYPE_STATIC) projectService.AddFileTypeDefault(".jpg", basedocmgr.FILE_TYPE_STATIC) projectService.AddFileTypeDefault(".jpeg", basedocmgr.FILE_TYPE_STATIC) projectService.AddFileTypeDefault(".xform", basedocmgr.FILE_TYPE_XFORM) projectService.AddLogicalViewFolderDefault(".agp", _("Projects")) projectService.AddLogicalViewFolderDefault(".wsdlag", _("Services")) projectService.AddLogicalViewFolderDefault(".wsdl", _("Services")) projectService.AddLogicalViewFolderDefault(".xsd", _("Data Models")) projectService.AddLogicalViewFolderDefault(".bpel", _("Page Flows")) projectService.AddLogicalViewFolderDefault(".xform", _("Pages")) projectService.AddLogicalViewFolderDefault(".xacml", _("Security")) projectService.AddLogicalViewFolderDefault(".lyt", _("Presentation/Layouts")) projectService.AddLogicalViewFolderDefault(".skn", _("Presentation/Skins")) projectService.AddLogicalViewFolderDefault(".css", _("Presentation/Stylesheets")) projectService.AddLogicalViewFolderDefault(".js", _("Presentation/Javascript")) projectService.AddLogicalViewFolderDefault(".html", _("Presentation/Static")) projectService.AddLogicalViewFolderDefault(".htm", _("Presentation/Static")) projectService.AddLogicalViewFolderDefault(".gif", _("Presentation/Images")) projectService.AddLogicalViewFolderDefault(".jpeg", _("Presentation/Images")) projectService.AddLogicalViewFolderDefault(".jpg", _("Presentation/Images")) projectService.AddLogicalViewFolderDefault(".png", _("Presentation/Images")) projectService.AddLogicalViewFolderDefault(".ico", _("Presentation/Images")) projectService.AddLogicalViewFolderDefault(".bmp", _("Presentation/Images")) projectService.AddLogicalViewFolderDefault(".py", _("Code")) projectService.AddLogicalViewFolderDefault(".php", _("Code")) projectService.AddLogicalViewFolderDefault(".pl", _("Code")) projectService.AddLogicalViewFolderDefault(".sql", _("Code")) projectService.AddLogicalViewFolderDefault(".xml", _("Code")) projectService.AddLogicalViewFolderDefault(".dpl", _("Code")) projectService.AddLogicalViewFolderCollapsedDefault(_("Page Flows"), False) projectService.AddLogicalViewFolderCollapsedDefault(_("Pages"), False) self.SetDefaultIcon(getActiveGridIcon()) if not ACTIVEGRID_BASE_IDE: embeddedWindows = wx.lib.pydocview.EMBEDDED_WINDOW_TOPLEFT | wx.lib.pydocview.EMBEDDED_WINDOW_BOTTOMLEFT |wx.lib.pydocview.EMBEDDED_WINDOW_BOTTOM | wx.lib.pydocview.EMBEDDED_WINDOW_RIGHT else: embeddedWindows = wx.lib.pydocview.EMBEDDED_WINDOW_TOPLEFT | wx.lib.pydocview.EMBEDDED_WINDOW_BOTTOMLEFT |wx.lib.pydocview.EMBEDDED_WINDOW_BOTTOM if self.GetUseTabbedMDI(): self.frame = IDEDocTabbedParentFrame(docManager, None, -1, wx.GetApp().GetAppName(), embeddedWindows=embeddedWindows, minSize=150) else: self.frame = IDEMDIParentFrame(docManager, None, -1, wx.GetApp().GetAppName(), embeddedWindows=embeddedWindows, minSize=150) self.frame.Show(True) wx.lib.pydocview.DocApp.CloseSplash(self) self.OpenCommandLineArgs() if not projectService.OpenSavedProjects() and not docManager.GetDocuments() and self.IsSDI(): # Have to open something if it's SDI and there are no projects... projectTemplate.CreateDocument('', wx.lib.docview.DOC_NEW).OnNewDocument() tips_path = os.path.join(sysutilslib.mainModuleDir, "activegrid", "tool", "data", "tips.txt") # wxBug: On Mac, having the updates fire while the tip dialog is at front # for some reason messes up menu updates. This seems a low-level wxWidgets bug, # so until I track this down, turn off UI updates while the tip dialog is showing. if not ACTIVEGRID_BASE_IDE: wx.UpdateUIEvent.SetUpdateInterval(-1) UpdateService.UpdateVersionNag() appUpdater = UpdateService.AppUpdateService(self) appUpdater.RunUpdateIfNewer() if not welcomeService.RunWelcomeIfFirstTime(): if os.path.isfile(tips_path): self.ShowTip(docManager.FindSuitableParent(), wx.CreateFileTipProvider(tips_path, 0)) else: if os.path.isfile(tips_path): self.ShowTip(docManager.FindSuitableParent(), wx.CreateFileTipProvider(tips_path, 0)) iconPath = os.path.join(sysutilslib.mainModuleDir, "activegrid", "tool", "bmp_source", "activegrid.ico") if os.path.isfile(iconPath): ib = wx.IconBundle() ib.AddIconFromFile(iconPath, wx.BITMAP_TYPE_ANY) wx.GetApp().GetTopWindow().SetIcons(ib) wx.UpdateUIEvent.SetUpdateInterval(1000) # Overhead of updating menus was too much. Change to update every n milliseconds.
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -