Updated docview library modules and sample apps from the ActiveGrid
folks. git-svn-id: https://svn.wxwidgets.org/svn/wx/wxWidgets/trunk@33434 c3d73ce0-8a6f-49c7-b76d-6d57e0e08775
This commit is contained in:
@@ -6,7 +6,7 @@
|
||||
#
|
||||
# Created: 8/1/03
|
||||
# CVS-ID: $Id$
|
||||
# Copyright: (c) 2003, 2004 ActiveGrid, Inc. (Port of wxWindows classes by Julian Smart et al)
|
||||
# Copyright: (c) 2003-2005 ActiveGrid, Inc. (Port of wxWindows classes by Julian Smart et al)
|
||||
# License: wxWindows license
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
|
@@ -1,85 +0,0 @@
|
||||
#----------------------------------------------------------------------------
|
||||
# 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()
|
@@ -1,3 +0,0 @@
|
||||
Tips for PyDocViewDemo App
|
||||
wxWindows rules!
|
||||
Use the source, Luke!
|
@@ -6,8 +6,8 @@
|
||||
#
|
||||
# Created: 8/15/03
|
||||
# CVS-ID: $Id$
|
||||
# Copyright: (c) 2003-2004 ActiveGrid, Inc.
|
||||
# License: wxWindows license
|
||||
# Copyright: (c) 2003-2005 ActiveGrid, Inc.
|
||||
# License: ASL 2.0 http://apache.org/licenses/LICENSE-2.0
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
import wx
|
95
wxPython/samples/pydocview/PyDocViewDemo.py
Normal file
95
wxPython/samples/pydocview/PyDocViewDemo.py
Normal file
@@ -0,0 +1,95 @@
|
||||
#----------------------------------------------------------------------------
|
||||
# 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-2005 ActiveGrid, Inc.
|
||||
# License: ASL 2.0 http://apache.org/licenses/LICENSE-2.0
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
|
||||
import sys
|
||||
import wx
|
||||
import wx.lib.docview as docview
|
||||
import wx.lib.pydocview as pydocview
|
||||
import TextEditor
|
||||
import FindService
|
||||
_ = wx.GetTranslation
|
||||
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Classes
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
class TextEditorApplication(pydocview.DocApp):
|
||||
|
||||
|
||||
def OnInit(self):
|
||||
# Call the super - this is important!!!
|
||||
pydocview.DocApp.OnInit(self)
|
||||
|
||||
# Show the splash dialog while everything is loading up
|
||||
self.ShowSplash("splash.jpg")
|
||||
|
||||
# Set the name and the icon
|
||||
self.SetAppName(_("wxPython PyDocView Demo"))
|
||||
self.SetDefaultIcon(pydocview.getBlankIcon())
|
||||
|
||||
# Initialize the document manager
|
||||
docManager = docview.DocManager(flags = self.GetDefaultDocManagerFlags())
|
||||
self.SetDocumentManager(docManager)
|
||||
|
||||
# Create a template for text documents and associate it with the docmanager
|
||||
textTemplate = docview.DocTemplate(docManager,
|
||||
_("Text"),
|
||||
"*.text;*.txt",
|
||||
_("Text"),
|
||||
_(".txt"),
|
||||
_("Text Document"),
|
||||
_("Text View"),
|
||||
TextEditor.TextDocument,
|
||||
TextEditor.TextView,
|
||||
icon=pydocview.getBlankIcon())
|
||||
docManager.AssociateTemplate(textTemplate)
|
||||
|
||||
# Install services - these can install menu and toolbar items
|
||||
textService = self.InstallService(TextEditor.TextService())
|
||||
findService = self.InstallService(FindService.FindService())
|
||||
optionsService = self.InstallService(pydocview.DocOptionsService())
|
||||
windowMenuService = self.InstallService(pydocview.WindowMenuService())
|
||||
filePropertiesService = self.InstallService(pydocview.FilePropertiesService())
|
||||
aboutService = self.InstallService(pydocview.AboutService(image=wx.Image("splash.jpg")))
|
||||
|
||||
# Install the TextEditor's option panel into the OptionsService
|
||||
optionsService.AddOptionsPanel(TextEditor.TextOptionsPanel)
|
||||
|
||||
# If it is an MDI app open the main frame
|
||||
self.OpenMainFrame()
|
||||
|
||||
# Open any files that were passed via the command line
|
||||
self.OpenCommandLineArgs()
|
||||
|
||||
# If nothing was opened and it is an SDI app, open up an empty text document
|
||||
if not docManager.GetDocuments() and docManager.GetFlags() & wx.lib.docview.DOC_SDI:
|
||||
textTemplate.CreateDocument('', docview.DOC_NEW).OnNewDocument()
|
||||
|
||||
# Close the splash dialog
|
||||
self.CloseSplash()
|
||||
|
||||
# Show the tips dialog
|
||||
wx.CallAfter(self.ShowTip, wx.GetApp().GetTopWindow(), wx.CreateFileTipProvider("tips.txt", 0))
|
||||
|
||||
# Tell the framework that everything is great
|
||||
return True
|
||||
|
||||
|
||||
#----------------------------------------------------------------------------
|
||||
# Main
|
||||
#----------------------------------------------------------------------------
|
||||
|
||||
# Run the TextEditorApplication and do not redirect output to the wxPython error dialog
|
||||
app = TextEditorApplication(redirect=False)
|
||||
app.MainLoop()
|
@@ -6,8 +6,8 @@
|
||||
#
|
||||
# Created: 8/15/03
|
||||
# CVS-ID: $Id$
|
||||
# Copyright: (c) 2003-2004 ActiveGrid, Inc.
|
||||
# License: wxWindows license
|
||||
# Copyright: (c) 2003-2005 ActiveGrid, Inc.
|
||||
# License: ASL 2.0 http://apache.org/licenses/LICENSE-2.0
|
||||
#----------------------------------------------------------------------------
|
||||
import wx
|
||||
import wx.lib.docview
|
||||
@@ -142,7 +142,7 @@ class TextView(wx.lib.docview.View):
|
||||
if not wx.lib.docview.View.OnClose(self, deleteWindow):
|
||||
return False
|
||||
self.Activate(False)
|
||||
if deleteWindow:
|
||||
if deleteWindow and self.GetFrame():
|
||||
self.GetFrame().Destroy()
|
||||
return True
|
||||
|
||||
@@ -246,7 +246,7 @@ class TextView(wx.lib.docview.View):
|
||||
event.Enable(self._textCtrl.CanPaste())
|
||||
return True
|
||||
elif id == wx.ID_CLEAR:
|
||||
event.Enable(True) # wxBug: No matter what we do, the wxTextCtrl disables the Clear menu item and the menu item traps the Del key and the wxTextCtrl doesn't get it and can't delete the next character
|
||||
event.Enable(self._textCtrl.CanCopy())
|
||||
return True
|
||||
elif id == wx.ID_SELECTALL:
|
||||
event.Enable(hasText)
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
1
wxPython/samples/pydocview/tips.txt
Normal file
1
wxPython/samples/pydocview/tips.txt
Normal file
@@ -0,0 +1 @@
|
||||
wxPython is cool.
|
Reference in New Issue
Block a user