74b8945829
git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@32496 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
86 lines
3.3 KiB
Python
86 lines
3.3 KiB
Python
#----------------------------------------------------------------------------
|
|
# Name: PyDocViewDemo.py
|
|
# Purpose: Demo of Python extensions to the wxWindows docview framework
|
|
#
|
|
# Author: Peter Yared, Morgan Hua
|
|
#
|
|
# Created: 5/15/03
|
|
# CVS-ID: $Id$
|
|
# Copyright: (c) 2003 ActiveGrid, Inc.
|
|
# License: wxWindows license
|
|
#----------------------------------------------------------------------------
|
|
|
|
|
|
import sys
|
|
import wx
|
|
import wx.lib.docview
|
|
import wx.lib.pydocview
|
|
import activegrid.tool.TextEditor as TextEditor
|
|
import activegrid.tool.FindService as FindService
|
|
_ = wx.GetTranslation
|
|
|
|
|
|
#----------------------------------------------------------------------------
|
|
# Classes
|
|
#----------------------------------------------------------------------------
|
|
|
|
class TextEditorApplication(wx.lib.pydocview.DocApp):
|
|
|
|
|
|
def OnInit(self):
|
|
wx.lib.pydocview.DocApp.OnInit(self)
|
|
|
|
wx.lib.pydocview.DocApp.ShowSplash(self, "activegrid/tool/images/splash.jpg")
|
|
|
|
self.SetAppName(_("wxPython PyDocView Demo"))
|
|
config = wx.Config(self.GetAppName(), style = wx.CONFIG_USE_LOCAL_FILE)
|
|
|
|
docManager = wx.lib.docview.DocManager(flags = self.GetDefaultDocManagerFlags())
|
|
self.SetDocumentManager(docManager)
|
|
|
|
textTemplate = wx.lib.docview.DocTemplate(docManager,
|
|
_("Text"),
|
|
"*.text;*.txt",
|
|
_("Text"),
|
|
_(".txt"),
|
|
_("Text Document"),
|
|
_("Text View"),
|
|
TextEditor.TextDocument,
|
|
TextEditor.TextView)
|
|
docManager.AssociateTemplate(textTemplate)
|
|
|
|
textService = self.InstallService(TextEditor.TextService())
|
|
findService = self.InstallService(FindService.FindService())
|
|
optionsService = self.InstallService(wx.lib.pydocview.DocOptionsService())
|
|
windowMenuService = self.InstallService(wx.lib.pydocview.WindowMenuService())
|
|
optionsService.AddOptionsPanel(TextEditor.TextOptionsPanel)
|
|
filePropertiesService = self.InstallService(wx.lib.pydocview.FilePropertiesService())
|
|
aboutService = self.InstallService(wx.lib.pydocview.AboutService())
|
|
|
|
## self.SetDefaultIcon(getAppIcon()) # set this for your custom icon
|
|
|
|
if docManager.GetFlags() & wx.lib.docview.DOC_MDI:
|
|
frame = wx.lib.pydocview.DocMDIParentFrame(docManager, None, -1, wx.GetApp().GetAppName())
|
|
frame.Show(True)
|
|
|
|
wx.lib.pydocview.DocApp.CloseSplash(self)
|
|
|
|
self.OpenCommandLineArgs()
|
|
|
|
if not docManager.GetDocuments() and docManager.GetFlags() & wx.lib.docview.DOC_SDI:
|
|
textTemplate.CreateDocument('', wx.lib.docview.DOC_NEW).OnNewDocument()
|
|
|
|
wx.CallAfter(self.ShowTip, wx.GetApp().GetTopWindow(), wx.CreateFileTipProvider("activegrid/tool/data/tips.txt", 0))
|
|
|
|
return True
|
|
|
|
|
|
#----------------------------------------------------------------------------
|
|
# Main
|
|
#----------------------------------------------------------------------------
|
|
|
|
sys.stdout = sys.stderr
|
|
|
|
app = TextEditorApplication(redirect = False)
|
|
app.MainLoop()
|