You can subscribe to this list here.
2004 |
Jan
|
Feb
|
Mar
|
Apr
(45) |
May
(185) |
Jun
|
Jul
(36) |
Aug
(205) |
Sep
(98) |
Oct
(107) |
Nov
(6) |
Dec
(3) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2005 |
Jan
(1) |
Feb
(2) |
Mar
(19) |
Apr
(26) |
May
(18) |
Jun
|
Jul
(12) |
Aug
(16) |
Sep
(22) |
Oct
(7) |
Nov
(11) |
Dec
(74) |
2006 |
Jan
(14) |
Feb
(1) |
Mar
(3) |
Apr
(3) |
May
(14) |
Jun
(5) |
Jul
(20) |
Aug
(10) |
Sep
(1) |
Oct
|
Nov
(4) |
Dec
(1) |
2007 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(3) |
Jul
(14) |
Aug
|
Sep
|
Oct
(6) |
Nov
(1) |
Dec
|
From: Kevin A. <ka...@us...> - 2005-03-28 05:42:49
|
Update of /cvsroot/pythoncard/PythonCard/docs/html In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10867/docs/html Modified Files: linux_installation.html Log Message: renamed samples.py to samples.pyw Index: linux_installation.html =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/docs/html/linux_installation.html,v retrieving revision 1.11 retrieving revision 1.12 diff -C2 -d -r1.11 -r1.12 *** linux_installation.html 26 Jul 2004 15:35:31 -0000 1.11 --- linux_installation.html 28 Mar 2005 05:42:40 -0000 1.12 *************** *** 85,89 **** <p>Assuming that the minimal application starts up okay, you can browse the other PythonCard sample applications with the command:</p> ! <p class="code">/usr/share/PythonCardPrototype/samples/samples.py</p> <h3>PythonCardPrototype Menu Items</h3> <p>You will find some new items on the window manager menu - the PythonCard --- 85,89 ---- <p>Assuming that the minimal application starts up okay, you can browse the other PythonCard sample applications with the command:</p> ! <p class="code">/usr/share/PythonCardPrototype/samples/samples.pyw</p> <h3>PythonCardPrototype Menu Items</h3> <p>You will find some new items on the window manager menu - the PythonCard |
From: Kevin A. <ka...@us...> - 2005-03-28 05:42:49
|
Update of /cvsroot/pythoncard/PythonCard/docs In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10867/docs Modified Files: samples.txt Log Message: renamed samples.py to samples.pyw Index: samples.txt =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/docs/samples.txt,v retrieving revision 1.7 retrieving revision 1.8 diff -C2 -d -r1.7 -r1.8 *** samples.txt 8 Apr 2004 21:07:35 -0000 1.7 --- samples.txt 28 Mar 2005 05:42:40 -0000 1.8 *************** *** 3,7 **** Descriptions of each of the samples included with the PythonCard ! are in the readme.txt file of each sample directory. Run samples.py in the samples directory and then you can easily launch each sample with or without runtime tools, view the description (readme.txt), source, and --- 3,7 ---- Descriptions of each of the samples included with the PythonCard ! are in the readme.txt file of each sample directory. Run samples.pyw in the samples directory and then you can easily launch each sample with or without runtime tools, view the description (readme.txt), source, and |
From: Kevin A. <ka...@us...> - 2005-03-28 05:42:49
|
Update of /cvsroot/pythoncard/PythonCard In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv10867 Modified Files: install-pythoncard.py Log Message: renamed samples.py to samples.pyw Index: install-pythoncard.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/install-pythoncard.py,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** install-pythoncard.py 8 Apr 2004 21:07:35 -0000 1.6 --- install-pythoncard.py 28 Mar 2005 05:42:40 -0000 1.7 *************** *** 56,60 **** target = os.path.join(lib_dir, ! "PythonCard\\samples\\samples.py") path = os.path.join(dest_dir, "Sample Launcher.lnk") --- 56,60 ---- target = os.path.join(lib_dir, ! "PythonCard\\samples\\samples.pyw") path = os.path.join(dest_dir, "Sample Launcher.lnk") |
From: Kevin A. <ka...@us...> - 2005-03-28 05:37:41
|
Update of /cvsroot/pythoncard/PythonCard/samples In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8605/samples Added Files: samples.pyw Removed Files: samples.py Log Message: renamed samples.py to samples.pyw --- NEW FILE: samples.pyw --- #!/usr/bin/python """ __version__ = "$Revision: 1.1 $" __date__ = "$Date: 2005/03/28 05:37:31 $" """ from PythonCard import about, dialog, model import os, sys import webbrowser import wx class Launcher(model.Background): def setupSizers(self): sizer1 = wx.BoxSizer(wx.VERTICAL) sizer2 = wx.BoxSizer(wx.HORIZONTAL) sizer3 = wx.BoxSizer(wx.VERTICAL) sizer4 = wx.BoxSizer(wx.HORIZONTAL) comp = self.components btnFlags = wx.LEFT | wx.ALIGN_BOTTOM vertFlags = wx.LEFT | wx.TOP | wx.ALIGN_LEFT sizer4.Add(comp.btnLaunch, 1, btnFlags, 5) sizer4.Add(comp.btnDescription, 1, btnFlags, 5) sizer4.Add(comp.btnSource, 1, btnFlags, 5) sizer4.Add(comp.btnResource, 1, btnFlags, 5) sizer3.Add(comp.stcCmdLineArgs, 0, wx.LEFT | wx.BOTTOM | wx.ALIGN_TOP, 5) sizer3.Add(comp.chkDebugMenu, 0, vertFlags, 5) sizer3.Add(comp.chkLogging, 0, vertFlags, 5) sizer3.Add(comp.chkMessageWatcher, 0, vertFlags, 5) sizer3.Add(comp.chkNamespaceViewer, 0, vertFlags, 5) sizer3.Add(comp.chkPropertyEditor, 0, vertFlags, 5) sizer3.Add(comp.chkShell, 0, vertFlags, 5) sizer3.Add((5, 5), 1) # spacer sizer3.Add(sizer4, 1, wx.ALIGN_BOTTOM | wx.EXPAND) sizer2.Add(comp.listSamples, 0, wx.RIGHT | wx.ALIGN_TOP, 5) sizer2.Add(sizer3, 1, wx.EXPAND) sizer1.Add(sizer2, 0, vertFlags) sizer1.Add((5, 5), 0) # spacer sizer1.Add(comp.stcDescription, 0, wx.LEFT | wx.TOP | wx.BOTTOM | wx.ALIGN_LEFT | wx.EXPAND, 5) sizer1.Add(comp.fldDescription, 1, wx.EXPAND) self.sizer1 = sizer1 sizer1.Fit(self) sizer1.SetSizeHints(self) self.panel.SetSizer(sizer1) self.panel.SetAutoLayout(1) self.panel.Layout() self.visible = True def on_initialize(self, event): self.setupSizers() self.showDescription() try: self.readme = open('readme.txt').read() except: self.readme = '' def getCommandLineArgs(self): args = [] if self.components.chkDebugMenu.checked: args.append('-d') if self.components.chkLogging.checked: args.append('-l') if self.components.chkMessageWatcher.checked: args.append('-m') if self.components.chkNamespaceViewer.checked: args.append('-n') if self.components.chkPropertyEditor.checked: args.append('-p') if self.components.chkShell.checked: args.append('-s') return args def on_launch_command(self, event): name = self.components.listSamples.stringSelection if name == "samples": path = self.application.applicationDirectory else: path = os.path.join(self.application.applicationDirectory, name) if os.path.exists(os.path.join(path, name + ".pyw")): filename = os.path.join(path, name + ".pyw") else: filename = os.path.join(path, name + ".py") args = self.getCommandLineArgs() # KEA 2002-04-28 # os.spawnv probably works on all platforms # and regardless of the quoting needs for paths with # and without spaces, but each platform is separate # below until that is confirmed if ' ' in filename: filename = '"' + filename + '"' python = sys.executable if ' ' in python: pythonQuoted = '"' + python + '"' else: pythonQuoted = python os.spawnv(os.P_NOWAIT, python, [pythonQuoted, filename] + args) def showDescription(self): path = self.components.listSamples.stringSelection if path == "samples": path = "" name = 'readme.txt' try: path = os.path.join(path, name) desc = open(path).read() self.components.fldDescription.text = desc self.components.stcDescription.text = 'Description: ' + path except: pass if self.components.fldSource.visible: self.components.fldSource.visible = 0 self.sizer1.Remove(self.components.fldSource) self.sizer1.Add(self.components.fldDescription, 1, wx.EXPAND) self.components.fldDescription.visible = 1 self.sizer1.Layout() def on_showDescription_command(self, event): self.showDescription() def showSource(self, source): name = self.components.listSamples.stringSelection if name == "samples": path = "" else: path = name try: if source == 'source': p = os.path.join(path, name + '.py') if os.path.exists(p): path = p else: path = os.path.join(path, name + '.pyw') self.components.stcDescription.text = 'Source code: ' + path else: path = os.path.join(path, name + '.rsrc.py') self.components.stcDescription.text = 'Resource: ' + path src = open(path).read() # KEA 2002-06-21 # you can't change the text of a CodeEditor # component if it isn't editable # should we change that? self.components.fldSource.editable = 1 self.components.fldSource.text = src self.components.fldSource.editable = 0 except: pass if self.components.fldDescription.visible: self.components.fldDescription.visible = 0 self.sizer1.Remove(self.components.fldDescription) self.sizer1.Add(self.components.fldSource, 1, wx.EXPAND) self.components.fldSource.visible = 1 self.sizer1.Layout() def on_showSource_command(self, event): self.showSource('source') def on_showResource_command(self, event): self.showSource('resource') def on_listSamples_select(self, event): if self.components.stcDescription.text.startswith('Description'): self.showDescription() elif self.components.stcDescription.text.startswith('Source code'): self.showSource('source') else: self.showSource('resource') def on_listSamples_mouseDoubleClick(self, event): self.on_launch_command(None) def on_menuHelpPythonCardHomePage_select(self, event): webbrowser.open('http://pythoncard.sourceforge.net/', 1, 1) def on_menuHelpOnlineDocumentation_select(self, event): webbrowser.open('http://pythoncard.sourceforge.net/documentation.html', 1, 1) def on_menuHelpAbout_select(self, event): dialog.scrolledMessageDialog(self, self.readme, 'About samples...') def on_doHelpAboutPythonCard_command(self, event): about.aboutPythonCardDialog(self) if __name__ == '__main__': app = model.Application(Launcher) app.MainLoop() --- samples.py DELETED --- |
From: Kevin A. <ka...@us...> - 2005-03-22 05:59:34
|
Update of /cvsroot/pythoncard/PythonCard/docs/html In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv12974/html Modified Files: windows_installation.html Log Message: switched to 2.3.5 and 2.4 compat PythonCard-0.8.1.FIXED.win32.exe Index: windows_installation.html =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/docs/html/windows_installation.html,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** windows_installation.html 18 Oct 2004 17:55:57 -0000 1.16 --- windows_installation.html 22 Mar 2005 05:59:14 -0000 1.17 *************** *** 41,45 **** <h2>Downloading PythonCard</h2> <p>The latest version of PythonCard is always available via the <a href="http://sourceforge.net/project/showfiles.php?group_id=19015">PythonCard download page</a>. ! Click on this <a href="http://prdownloads.sourceforge.net/pythoncard/PythonCard-0.8.1.win32.exe">PythonCard-0.8.1.win32.exe</a> link to begin the download. Tell your browser where you want the file stored and the download proceeds. Note where on your system the file is saved by --- 41,45 ---- <h2>Downloading PythonCard</h2> <p>The latest version of PythonCard is always available via the <a href="http://sourceforge.net/project/showfiles.php?group_id=19015">PythonCard download page</a>. ! Click on this <a href="http://prdownloads.sourceforge.net/pythoncard/PythonCard-0.8.1.FIXED.win32.exe">PythonCard-0.8.1.FIXED.win32.exe</a> link to begin the download. Tell your browser where you want the file stored and the download proceeds. Note where on your system the file is saved by |
From: Andy T. <an...@us...> - 2005-02-09 08:18:05
|
Update of /cvsroot/pythoncard/PythonCard/docs/GettingStarted In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7073/GettingStarted Modified Files: starter1.py starter1.rsrc.py Log Message: Fixed some problems with the walkthrough sample program and documentation Index: starter1.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/docs/GettingStarted/starter1.py,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** starter1.py 5 May 2004 16:53:23 -0000 1.6 --- starter1.py 9 Feb 2005 08:17:53 -0000 1.7 *************** *** 6,14 **** """ ! from PythonCard import model class Minimal(model.Background): ! pass if __name__ == '__main__': --- 6,15 ---- """ ! from PythonCard import model, dialog class Minimal(model.Background): ! def on_menuFileAbout_select(self, event): ! pass if __name__ == '__main__': Index: starter1.rsrc.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/docs/GettingStarted/starter1.rsrc.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** starter1.rsrc.py 10 May 2004 05:01:59 -0000 1.3 --- starter1.rsrc.py 9 Feb 2005 08:17:53 -0000 1.4 *************** *** 20,26 **** 'items': [ { 'type':'MenuItem', 'name':'menuFileExit', 'label':'E&xit\tAlt+X', ! 'command':'exit' } ] } ] }, --- 20,31 ---- 'items': [ { 'type':'MenuItem', + 'name':'menuFileAbout', + 'label':'&About\tAlt+a', + 'command':'about' }, + { 'type':'MenuItem', 'name':'menuFileExit', 'label':'E&xit\tAlt+X', ! 'command':'exit' } , ! ] }, ] }, |
From: Andy T. <an...@us...> - 2005-02-09 08:18:04
|
Update of /cvsroot/pythoncard/PythonCard/docs/html In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv7073/html Modified Files: walkthrough1.html Log Message: Fixed some problems with the walkthrough sample program and documentation Index: walkthrough1.html =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/docs/html/walkthrough1.html,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** walkthrough1.html 26 Jul 2004 15:35:32 -0000 1.15 --- walkthrough1.html 9 Feb 2005 08:17:54 -0000 1.16 *************** *** 180,184 **** script is, as you'd expect, brief and to the point. Here's the important part to focus on:</p> ! <p class="code"> def on_menuFileExit_select(self, event):<br /> pass</p> <p>Even without understanding Python you can probably tell what this code --- 180,184 ---- script is, as you'd expect, brief and to the point. Here's the important part to focus on:</p> ! <p class="code"> def on_menuFileAbout_select(self, event):<br /> pass</p> <p>Even without understanding Python you can probably tell what this code |
From: Andy T. <an...@us...> - 2005-01-24 10:28:29
|
Update of /cvsroot/pythoncard/PythonCard In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv11697 Modified Files: flatfileDatabase.py Log Message: Made sure that deleting a record marks the set as changed Index: flatfileDatabase.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/flatfileDatabase.py,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** flatfileDatabase.py 15 Aug 2004 17:34:55 -0000 1.25 --- flatfileDatabase.py 24 Jan 2005 10:28:20 -0000 1.26 *************** *** 423,426 **** --- 423,427 ---- if self.current != -1: del self.records[self.current] + self.documentChanged = 1 if len(self.records) == 0: self.current = -1 |
From: Arlo B. <abe...@us...> - 2004-12-31 20:44:41
|
Update of /cvsroot/pythoncard/PythonCard/tools/experimentalResourceEditor/modules In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23169/modules Modified Files: actionBinderDialog.py propertyEditor.py Log Message: * Refactored some attributes from Widget up to Component. In particular, Component's spec called for name and command, yet the properties to hold these were specified only at Widget. This made it impossible to inherit directly from Component and still be instantiated via the resources. I also moved the actionBindings up from Widget to Component, as they make more sense there. Component is now clearly "anything that can be manipulated as a resource (and instantiated via a .rsrc.py)", while Widget is "anything with a user interface (a size and a position describing where it can draw)". All Widgets are Components - we want to be able to instantiate any GUI element from the resource file. In the experimentalResourceEditor branch, I fixed a number of bugs that prevented the resource editor from dealing with Components that are not Widgets. The experimentalResourceEditor now fully handles UI-less Components (you can edit their properties via the PropertyEditor, but they don't appear in the ResourceEditor pane). AB Index: actionBinderDialog.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/experimentalResourceEditor/modules/actionBinderDialog.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** actionBinderDialog.py 24 Oct 2004 19:43:43 -0000 1.1 --- actionBinderDialog.py 31 Dec 2004 20:44:29 -0000 1.2 *************** *** 13,18 **** for inst in self.resource_editor.components.keys(): ! self.components.sourceComponent.append(inst) ! self.components.destinationComponent.append(inst) # if some special setup is necessary, do it here --- 13,19 ---- for inst in self.resource_editor.components.keys(): ! if inst not in self.resource_editor.sizingHandleNames: ! self.components.sourceComponent.append(inst) ! self.components.destinationComponent.append(inst) # if some special setup is necessary, do it here Index: propertyEditor.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/experimentalResourceEditor/modules/propertyEditor.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** propertyEditor.py 24 Oct 2004 19:21:46 -0000 1.1 --- propertyEditor.py 31 Dec 2004 20:44:29 -0000 1.2 *************** *** 151,155 **** self.displayProperty(wName, wClass, propName) c = self._parent.components[wName] ! self._parent.setToolTipDrag(wName, c.position, c.size) def changed(self, event): --- 151,158 ---- self.displayProperty(wName, wClass, propName) c = self._parent.components[wName] ! if hasattr(c, 'position'): ! # AB 2004-12-31 ! # Don't set a tooltip pos for components that don't have a pos - they aren't displayed. ! self._parent.setToolTipDrag(wName, c.position, c.size) def changed(self, event): *************** *** 340,344 **** # and only when displaying dialog properties if not (self._parent.editingDialog and wClass == 'Button'): ! props.remove('id') props.sort() ##print "spec props", specProps --- 343,356 ---- # and only when displaying dialog properties if not (self._parent.editingDialog and wClass == 'Button'): ! # AB 2004-12-31 ! # The id attrib is optional, and may not be present. All widgets will have ! # IDs, but Components may not. If it is not present, then we don't need to remove it. ! if 'id' in props: ! props.remove('id') ! ! # AB 2004-12-31 ! # Don't show the action bindings at all. Edit them only via the action binding dialog. ! if 'actionBindings' in props: ! props.remove('actionBindings') props.sort() ##print "spec props", specProps *************** *** 433,439 **** self.components.wPropertyList.stringSelection = "name" self.displayProperty(wName, wClass, propName) - self._parent.showSizingHandles(wName) c = self._parent.components[wName] ! self._parent.setToolTipDrag(wName, c.position, c.size) def on_wPropertyList_select(self, event): --- 445,452 ---- self.components.wPropertyList.stringSelection = "name" self.displayProperty(wName, wClass, propName) c = self._parent.components[wName] ! if hasattr(c, 'position'): ! self._parent.showSizingHandles(wName) ! self._parent.setToolTipDrag(wName, c.position, c.size) def on_wPropertyList_select(self, event): |
From: Arlo B. <abe...@us...> - 2004-12-31 20:44:39
|
Update of /cvsroot/pythoncard/PythonCard/tools/experimentalResourceEditor In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23169 Modified Files: resourceEditor.py Log Message: * Refactored some attributes from Widget up to Component. In particular, Component's spec called for name and command, yet the properties to hold these were specified only at Widget. This made it impossible to inherit directly from Component and still be instantiated via the resources. I also moved the actionBindings up from Widget to Component, as they make more sense there. Component is now clearly "anything that can be manipulated as a resource (and instantiated via a .rsrc.py)", while Widget is "anything with a user interface (a size and a position describing where it can draw)". All Widgets are Components - we want to be able to instantiate any GUI element from the resource file. In the experimentalResourceEditor branch, I fixed a number of bugs that prevented the resource editor from dealing with Components that are not Widgets. The experimentalResourceEditor now fully handles UI-less Components (you can edit their properties via the PropertyEditor, but they don't appear in the ResourceEditor pane). AB Index: resourceEditor.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/experimentalResourceEditor/resourceEditor.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** resourceEditor.py 24 Oct 2004 19:43:42 -0000 1.2 --- resourceEditor.py 31 Dec 2004 20:44:29 -0000 1.3 *************** *** 399,402 **** --- 399,404 ---- continue control = self.components[name] + if not hasattr(control, 'position'): + continue r = control.GetRect() #print ' ', control, r *************** *** 1119,1132 **** self.startName = name ! self.startPosition = self.components[self.startName].position ! self.startSize = self.components[self.startName].size self.offset = (0, 0) ! self.showSizingHandles(name) self.documentChanged = True ! c = self.components[self.startName] ! wx.EVT_LEFT_DOWN(c, self.on_mouseDown) ! wx.EVT_LEFT_UP(c, self.on_mouseUp) ! wx.EVT_MOTION(c, self.on_mouseDrag) def on_componentDuplicate_command(self, event): --- 1121,1138 ---- self.startName = name ! new_component = self.components[self.startName] ! self.startPosition = getattr(new_component, 'position', (0,0)) ! self.startSize = getattr(new_component, 'size', (0,0)) self.offset = (0, 0) ! if hasattr(new_component, 'position'): ! self.showSizingHandles(name) ! else: ! self.hideSizingHandles() self.documentChanged = True ! if hasattr(new_component, 'position'): ! wx.EVT_LEFT_DOWN(new_component, self.on_mouseDown) ! wx.EVT_LEFT_UP(new_component, self.on_mouseUp) ! wx.EVT_MOTION(new_component, self.on_mouseDrag) def on_componentDuplicate_command(self, event): |
From: Arlo B. <abe...@us...> - 2004-12-31 20:44:19
|
Update of /cvsroot/pythoncard/PythonCard In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv23112 Modified Files: component.py menu.py widget.py Log Message: * Refactored some attributes from Widget up to Component. In particular, Component's spec called for name and command, yet the properties to hold these were specified only at Widget. This made it impossible to inherit directly from Component and still be instantiated via the resources. I also moved the actionBindings up from Widget to Component, as they make more sense there. Component is now clearly "anything that can be manipulated as a resource (and instantiated via a .rsrc.py)", while Widget is "anything with a user interface (a size and a position describing where it can draw)". All Widgets are Components - we want to be able to instantiate any GUI element from the resource file. In the experimentalResourceEditor branch, I fixed a number of bugs that prevented the resource editor from dealing with Components that are not Widgets. The experimentalResourceEditor now fully handles UI-less Components (you can edit their properties via the PropertyEditor, but they don't appear in the ResourceEditor pane). AB Index: widget.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/widget.py,v retrieving revision 1.134 retrieving revision 1.135 diff -C2 -d -r1.134 -r1.135 *** widget.py 24 Oct 2004 19:43:31 -0000 1.134 --- widget.py 31 Dec 2004 20:44:09 -0000 1.135 *************** *** 34,49 **** 'position' : { 'presence' : 'optional', 'default' : [ -1, -1 ] }, 'size' : { 'presence' : 'optional', 'default' : [ -1, -1 ] }, - 'actionBindings' : {'presence':'optional', 'default':None}, 'userdata' : {'presence':'optional', 'default':''} } attributes.update(subclassAttributes) component.ComponentSpec.__init__( self, name, parent, events, attributes ) - - def getMinimalResourceDict(self, name): - """ - Class method that returns the minimal resource dictionary needed to create a component. - The spec will provide the optional attributes when the Resource is created. - """ - return {'type':self.getName(), 'name':name} --- 34,41 ---- *************** *** 60,73 **** def __init__(self, aParent, aResource): ! component.Component.__init__(self) self._parent = aParent self._resource = aResource - self._name = aResource.name self._setUserdata(self._resource.userdata) - if self._resource.actionBindings is None: - self._setActionBindings(dict()) - else: - self._setActionBindings(dict(self._resource.actionBindings.__dict__)) - self._setCommand(self._resource.command) # KEA 2004-04-23 # Controls are enabled and visible by default --- 52,59 ---- def __init__(self, aParent, aResource): ! component.Component.__init__(self, aResource) self._parent = aParent self._resource = aResource self._setUserdata(self._resource.userdata) # KEA 2004-04-23 # Controls are enabled and visible by default *************** *** 107,116 **** def getParent(self): return self.GetParent() - - def _getName(self): - return self._name - - def _setName(self, aString): - raise AttributeError, "name attribute is read-only" def _getToolTip(self): --- 93,96 ---- *************** *** 149,158 **** self.SetFont( aWxFont ) - def _getActionBindings(self): - return self._actionBindings - - def _setActionBindings(self, actionDict): - self._actionBindings = actionDict - def _getUserdata(self): return self._userdata --- 129,132 ---- *************** *** 161,170 **** self._userdata = aString - def _setCommand( self, aString ) : - self._command = aString - - def _getCommand( self ) : - return self._command - def _getDefaultColor( self, aColor ) : if aColor is None : --- 135,138 ---- *************** *** 229,243 **** # set the property as well so the appropriate method gets used backgroundColor = property(_getBackgroundColor, _setBackgroundColor) - command = property(_getCommand, _setCommand) font = property(_getFont, _setFont) foregroundColor = property(_getForegroundColor, _setForegroundColor) enabled = property(_getEnabled, _setEnabled) id = property(_getId, _setId) - name = property(_getName, _setName) #position = property(wx.Window.GetPositionTuple, wx.Window.Move) position = property(_getPosition, _setPosition) size = property(_getSize, _setSize) toolTip = property(_getToolTip, _setToolTip) - actionBindings = property(_getActionBindings, _setActionBindings) userdata = property(_getUserdata, _setUserdata) visible = property(_getVisible, _setVisible) --- 197,208 ---- Index: component.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/component.py,v retrieving revision 1.13 retrieving revision 1.14 diff -C2 -d -r1.13 -r1.14 *** component.py 20 Oct 2004 22:15:07 -0000 1.13 --- component.py 31 Dec 2004 20:44:09 -0000 1.14 *************** *** 226,230 **** attributes = { 'name': { 'presence': 'mandatory' }, ! 'command': { 'presence': 'optional', 'default': None } } attributes.update(subclassAttributes) --- 226,231 ---- attributes = { 'name': { 'presence': 'mandatory' }, ! 'command': { 'presence': 'optional', 'default': None }, ! 'actionBindings' : {'presence':'optional', 'default':None} } attributes.update(subclassAttributes) *************** *** 233,236 **** --- 234,244 ---- self._optionalAttributes = self._parseOptionalAttributes() + def getMinimalResourceDict(self, name): + """ + Class method that returns the minimal resource dictionary needed to create a component. + The spec will provide the optional attributes when the Resource is created. + """ + return {'type':self.getName(), 'name':name} + class Component(event.EventSource): *************** *** 240,244 **** non-visual (extend Component). """ ! _spec = None def getEvents(self): --- 248,252 ---- non-visual (extend Component). """ ! _spec = ComponentSpec def getEvents(self): *************** *** 247,253 **** """ return ComponentClassInspector(self.__class__).getEvents() ! ! def __init__(self): event.EventSource.__init__(self) --- 255,299 ---- """ return ComponentClassInspector(self.__class__).getEvents() ! ! def __init__(self, aResource): event.EventSource.__init__(self) + self._name = aResource.name + self._setCommand(aResource.command) + if getattr(aResource, 'actionBindings', None): + self._setActionBindings(dict(aResource.actionBindings.__dict__)) + else: + self._setActionBindings(dict()) + + def Lower(self): + pass + + def _getName(self): + return self._name + + def _setName(self, aString): + raise AttributeError, "name attribute is read-only" + + def _setCommand( self, aString ) : + self._command = aString + + def _getCommand( self ) : + return self._command + + def _getActionBindings(self): + return self._actionBindings + + def _setActionBindings(self, actionDict): + self._actionBindings = actionDict + + name = property(_getName, _setName) + command = property(_getCommand, _setCommand) + actionBindings = property(_getActionBindings, _setActionBindings) + + + def registerAsComponent(pythonClass, attributes={}): + pythonClass._spec = ComponentSpec(pythonClass.__name__, 'Component', list(), attributes) + import sys + from PythonCard import registry + registry.Registry.getInstance().register(pythonClass) Index: menu.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/menu.py,v retrieving revision 1.39 retrieving revision 1.40 diff -C2 -d -r1.39 -r1.40 *** menu.py 14 Sep 2004 23:37:19 -0000 1.39 --- menu.py 31 Dec 2004 20:44:09 -0000 1.40 *************** *** 51,55 **** def __init__(self, aScriptable, aParent, aResource): - self.name = aResource.name self.label = aResource.label self.command = aResource.command --- 51,54 ---- *************** *** 80,84 **** ! component.Component.__init__( self ) self._bindEvents((MenuSelectEvent,), aScriptable, id) --- 79,83 ---- ! component.Component.__init__(self, aResource) self._bindEvents((MenuSelectEvent,), aScriptable, id) |
From: Kevin A. <ka...@us...> - 2004-11-10 19:22:33
|
Update of /cvsroot/pythoncard/PythonCard/docs/html In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv4232/docs/html Modified Files: moreapplications.html Log Message: added SUMR Index: moreapplications.html =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/docs/html/moreapplications.html,v retrieving revision 1.6 retrieving revision 1.7 diff -C2 -d -r1.6 -r1.7 *** moreapplications.html 20 Aug 2004 14:38:02 -0000 1.6 --- moreapplications.html 10 Nov 2004 19:22:21 -0000 1.7 *************** *** 47,50 **** --- 47,72 ---- </dl> <p class="imageCaption"><img src="http://members.shaw.ca/wexsessa/RanchBiz/occupancy-1.png" alt="Screenshot of Ranchbiz" /></p> + + <hr /> + <dl> + <dt>Name:</dt> + <dd>SUMR (pronounced "summer") stands for Simple Use case Markup - Restructured</dd> + <dt>Description:</dt> + <dd>SUMR is an application that provides a browser and editor for use cases. It has the following features: + <ul> + <li>Understands your use case model to some extent</li> + <li>Syntax hilighting based on your model - actor names, use case names, the keyword None, inline tags :inc: and :ext:</li> + <li>Performs some basic validation</li> + <li>If you reference an actor that has not been defined, the actor name will not be hilighted</li> + <li>If you reference a use case that has not been defined, the use case name will not be hilighted</li> + <li>Autonumbers the appropriate sections based on tag multiplicity and line indents</li> + <li>Renders the SUMR use cases to XML</li> + </ul> + </dd> + <dt>URL:</dt> + <dd><a href="http://www.clearviewtraining.com/CVTPlone/SUMR/">http://www.clearviewtraining.com/CVTPlone/SUMR/</a></dd> + </dl> + <p class="imageCaption"><img src="http://www.clearviewtraining.com/CVTPlone/SUMR/SUMRUseCaseEditor.jpg" alt="Screenshot of SUMR" /></p> + <?php include "footer.php" ?> <p>$Revision$ : $Author$ : Last updated $Date$</p> |
From: Kevin A. <ka...@us...> - 2004-11-07 18:13:24
|
Update of /cvsroot/pythoncard/PythonCard/components In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18787/components Modified Files: multicolumnlist.py Log Message: replaced StringType with StringTypes Index: multicolumnlist.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/components/multicolumnlist.py,v retrieving revision 1.27 retrieving revision 1.28 diff -C2 -d -r1.27 -r1.28 *** multicolumnlist.py 11 Aug 2004 14:08:24 -0000 1.27 --- multicolumnlist.py 7 Nov 2004 18:13:13 -0000 1.28 *************** *** 7,11 **** import wx from wx.lib.mixins.listctrl import ColumnSorterMixin, ListCtrlAutoWidthMixin ! from types import TupleType, ListType, StringType, NoneType, IntType from PythonCard import event, widget --- 7,11 ---- import wx from wx.lib.mixins.listctrl import ColumnSorterMixin, ListCtrlAutoWidthMixin ! from types import TupleType, ListType, StringTypes, NoneType, IntType from PythonCard import event, widget *************** *** 232,236 **** else: aList = map(lambda x:x[:numcols], aList) ! elif isinstance(aList[0], StringType): blanks = [''] * (numcols - 1) aList = map(lambda x:[x] + blanks, aList) --- 232,236 ---- else: aList = map(lambda x:x[:numcols], aList) ! elif isinstance(aList[0], StringTypes): blanks = [''] * (numcols - 1) aList = map(lambda x:[x] + blanks, aList) *************** *** 249,253 **** if position < numitems: currentitems = self._getItems()[position:] ! if isinstance(currentitems[0], StringType): currentitems = map(lambda x:[x], currentitems) aList = aList + currentitems --- 249,253 ---- if position < numitems: currentitems = self._getItems()[position:] ! if isinstance(currentitems[0], StringTypes): currentitems = map(lambda x:[x], currentitems) aList = aList + currentitems *************** *** 290,294 **** def _setColumnHeadings(self, aList): ! if isinstance(aList, ListType) or isinstance(aList, TupleType) or isinstance(aList, StringType): pass else: --- 290,294 ---- def _setColumnHeadings(self, aList): ! if isinstance(aList, ListType) or isinstance(aList, TupleType) or isinstance(aList, StringTypes): pass else: *************** *** 299,303 **** self._autoresize = 1 ! if isinstance(aList, StringType): self.InsertColumn(0,aList,width=self.GetBestVirtualSize()[0]) self._columnHeadings = [aList] --- 299,303 ---- self._autoresize = 1 ! if isinstance(aList, StringTypes): self.InsertColumn(0,aList,width=self.GetBestVirtualSize()[0]) self._columnHeadings = [aList] *************** *** 315,324 **** self._columnHeadings = aList[:numcols] ! if isinstance(aList[0], StringType): for i in xrange(numcols): self.InsertColumn(i, aList[i], width=wx.LIST_AUTOSIZE) elif isinstance(aList[0], ListType) or isinstance(aList[0], TupleType): w = len(aList[0]) ! if w == 2 and isinstance(aList[0][0], StringType) and isinstance(aList[0][1], IntType): flag = 0 for i in xrange(numcols): --- 315,324 ---- self._columnHeadings = aList[:numcols] ! if isinstance(aList[0], StringTypes): for i in xrange(numcols): self.InsertColumn(i, aList[i], width=wx.LIST_AUTOSIZE) elif isinstance(aList[0], ListType) or isinstance(aList[0], TupleType): w = len(aList[0]) ! if w == 2 and isinstance(aList[0][0], StringTypes) and isinstance(aList[0][1], IntType): flag = 0 for i in xrange(numcols): *************** *** 329,333 **** self._autoresize = 0 elif w == 3 and \ ! isinstance(aList[0][0], StringType) and \ isinstance(aList[0][1], IntType) and \ isinstance(aList[0][2], IntType): --- 329,333 ---- self._autoresize = 0 elif w == 3 and \ ! isinstance(aList[0][0], StringTypes) and \ isinstance(aList[0][1], IntType) and \ isinstance(aList[0][2], IntType): *************** *** 339,343 **** if flag: self._autoresize = 0 ! elif w == 1 and isinstance(aList[0][0], StringType): for i in xrange(numcols): self.InsertColumn(i, aList[i][0], width=wx.LIST_AUTOSIZE) --- 339,343 ---- if flag: self._autoresize = 0 ! elif w == 1 and isinstance(aList[0][0], StringTypes): for i in xrange(numcols): self.InsertColumn(i, aList[i][0], width=wx.LIST_AUTOSIZE) *************** *** 430,434 **** # If just simple list of strings convert it to a single column list ! if isinstance(aList[0], StringType): aList = map(lambda x:[x], aList) elif isinstance(aList[0], ListType) or isinstance(aList[0], TupleType): --- 430,434 ---- # If just simple list of strings convert it to a single column list ! if isinstance(aList[0], StringTypes): aList = map(lambda x:[x], aList) elif isinstance(aList[0], ListType) or isinstance(aList[0], TupleType): |
From: Kevin A. <ka...@us...> - 2004-11-07 18:13:22
|
Update of /cvsroot/pythoncard/PythonCard/samples/multicolumnexample In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv18787/samples/multicolumnexample Modified Files: multicolumnexample.py Log Message: replaced StringType with StringTypes Index: multicolumnexample.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/samples/multicolumnexample/multicolumnexample.py,v retrieving revision 1.8 retrieving revision 1.9 diff -C2 -d -r1.8 -r1.9 *** multicolumnexample.py 20 Aug 2004 00:20:50 -0000 1.8 --- multicolumnexample.py 7 Nov 2004 18:13:12 -0000 1.9 *************** *** 7,11 **** from PythonCard import dialog, model ! from types import TupleType, ListType, StringType, NoneType import pprint --- 7,11 ---- from PythonCard import dialog, model ! from types import TupleType, ListType, StringTypes, NoneType import pprint *************** *** 226,230 **** if len(rows) == 0: return ! if not isinstance(rows[0], StringType): rows = [','.join(x) for x in rows] text = '\n'.join(rows) --- 226,230 ---- if len(rows) == 0: return ! if not isinstance(rows[0], StringTypes): rows = [','.join(x) for x in rows] text = '\n'.join(rows) *************** *** 239,243 **** return row = rows[0] ! if not isinstance(row, StringType): row = ' '.join(row) base.displayArea.text = row --- 239,243 ---- return row = rows[0] ! if not isinstance(row, StringTypes): row = ' '.join(row) base.displayArea.text = row |
From: Kevin A. <ka...@us...> - 2004-11-03 19:51:12
|
Update of /cvsroot/pythoncard/PythonCard/samples/webserver In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv24431/webserver Modified Files: webserver.py Log Message: added try/except to deal with failure on DNS lookup Index: webserver.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/samples/webserver/webserver.py,v retrieving revision 1.25 retrieving revision 1.26 diff -C2 -d -r1.25 -r1.26 *** webserver.py 28 Jul 2004 17:05:54 -0000 1.25 --- webserver.py 3 Nov 2004 19:50:58 -0000 1.26 *************** *** 82,86 **** self.validIPList = ['127.0.0.1'] # add host IP address that this server is running on ! self.validIPList.append(socket.gethostbyname(socket.gethostname())) self.allowAny = 0 HTTPServer.__init__(self, server_address, RequestHandlerClass) --- 82,93 ---- self.validIPList = ['127.0.0.1'] # add host IP address that this server is running on ! # this will fail for address spaces like 10.0.0.x, 192.168.0.x ! # etc., so what is the appropriate way to add those? ! # I get errors like ! # socket.gaierror: (7, 'No address associated with nodename') ! try: ! self.validIPList.append(socket.gethostbyname(socket.gethostname())) ! except: ! pass self.allowAny = 0 HTTPServer.__init__(self, server_address, RequestHandlerClass) |
From: Kevin A. <ka...@us...> - 2004-11-01 01:11:32
|
Update of /cvsroot/pythoncard/PythonCard/components In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv1019/components Modified Files: notebook.py Log Message: undid pageText since Get requires arg - don't commit after margaritas ;-) Index: notebook.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/components/notebook.py,v retrieving revision 1.3 retrieving revision 1.4 diff -C2 -d -r1.3 -r1.4 *** notebook.py 1 Nov 2004 01:06:59 -0000 1.3 --- notebook.py 1 Nov 2004 01:11:22 -0000 1.4 *************** *** 90,101 **** getPage = wx.Notebook.GetPage getPageCount = wx.Notebook.GetPageCount ! #getPageText = wx.Notebook.GetPageText #getSelection = wx.Notebook.GetSelection insertPage = wx.Notebook.InsertPage removePage = wx.Notebook.RemovePage ! #setPageText = wx.Notebook.SetPageText #setSelection = wx.Notebook.SetSelection - pageText = property(wx.Notebook.GetPageText, wx.Notebook.SetPageText) selection = property(wx.Notebook.GetSelection, wx.Notebook.SetSelection) stringSelection = property(_getStringSelection, _setStringSelection) --- 90,100 ---- getPage = wx.Notebook.GetPage getPageCount = wx.Notebook.GetPageCount ! getPageText = wx.Notebook.GetPageText #getSelection = wx.Notebook.GetSelection insertPage = wx.Notebook.InsertPage removePage = wx.Notebook.RemovePage ! setPageText = wx.Notebook.SetPageText #setSelection = wx.Notebook.SetSelection selection = property(wx.Notebook.GetSelection, wx.Notebook.SetSelection) stringSelection = property(_getStringSelection, _setStringSelection) |
From: Kevin A. <ka...@us...> - 2004-11-01 01:07:12
|
Update of /cvsroot/pythoncard/PythonCard/components In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv341/components Modified Files: notebook.py Log Message: made pageText a property Index: notebook.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/components/notebook.py,v retrieving revision 1.2 retrieving revision 1.3 diff -C2 -d -r1.2 -r1.3 *** notebook.py 16 Sep 2004 04:42:29 -0000 1.2 --- notebook.py 1 Nov 2004 01:06:59 -0000 1.3 *************** *** 90,100 **** getPage = wx.Notebook.GetPage getPageCount = wx.Notebook.GetPageCount ! getPageText = wx.Notebook.GetPageText #getSelection = wx.Notebook.GetSelection insertPage = wx.Notebook.InsertPage removePage = wx.Notebook.RemovePage ! setPageText = wx.Notebook.SetPageText #setSelection = wx.Notebook.SetSelection selection = property(wx.Notebook.GetSelection, wx.Notebook.SetSelection) stringSelection = property(_getStringSelection, _setStringSelection) --- 90,101 ---- getPage = wx.Notebook.GetPage getPageCount = wx.Notebook.GetPageCount ! #getPageText = wx.Notebook.GetPageText #getSelection = wx.Notebook.GetSelection insertPage = wx.Notebook.InsertPage removePage = wx.Notebook.RemovePage ! #setPageText = wx.Notebook.SetPageText #setSelection = wx.Notebook.SetSelection + pageText = property(wx.Notebook.GetPageText, wx.Notebook.SetPageText) selection = property(wx.Notebook.GetSelection, wx.Notebook.SetSelection) stringSelection = property(_getStringSelection, _setStringSelection) |
From: Kevin A. <ka...@us...> - 2004-10-24 23:52:53
|
Update of /cvsroot/pythoncard/PythonCard/tools/resourceEditor/modules In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv566/modules Modified Files: resourceOutput.py Log Message: added actionBindings attribute Index: resourceOutput.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/resourceEditor/modules/resourceOutput.py,v retrieving revision 1.31 retrieving revision 1.32 diff -C2 -d -r1.31 -r1.32 *** resourceOutput.py 4 Oct 2004 19:16:46 -0000 1.31 --- resourceOutput.py 24 Oct 2004 23:52:37 -0000 1.32 *************** *** 89,92 **** --- 89,94 ---- if key == 'font' and repr(value) == dFont: continue + if key == 'actionBindings' and value == {}: + continue # KEA 2002-07-07 # what other Unicode strings do we need to deal with above? |
From: Arlo B. <abe...@us...> - 2004-10-24 23:37:45
|
Update of /cvsroot/pythoncard/PythonCard/tools/experimentalResourceEditor/modules In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv29070/modules Modified Files: resourceOutput.py Log Message: The experimental resource editor now only outputs the actionBindings if they are not empty. AB Index: resourceOutput.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/experimentalResourceEditor/modules/resourceOutput.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** resourceOutput.py 24 Oct 2004 19:21:46 -0000 1.1 --- resourceOutput.py 24 Oct 2004 23:37:27 -0000 1.2 *************** *** 89,92 **** --- 89,94 ---- if key == 'font' and repr(value) == dFont: continue + if key == 'actionBindings' and value == {}: + continue # KEA 2002-07-07 # what other Unicode strings do we need to deal with above? |
From: Kevin A. <ka...@us...> - 2004-10-24 23:35:49
|
Update of /cvsroot/pythoncard/PythonCard/tools/oneEditor In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv28433 Modified Files: tabcodeEditor.py Log Message: let exceptions in script propogate Index: tabcodeEditor.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/oneEditor/tabcodeEditor.py,v retrieving revision 1.10 retrieving revision 1.11 diff -C2 -d -r1.10 -r1.11 *** tabcodeEditor.py 17 Oct 2004 16:39:13 -0000 1.10 --- tabcodeEditor.py 24 Oct 2004 23:35:40 -0000 1.11 *************** *** 1041,1049 **** def execScriptlet(self, filename): ! try: ! command = 'execfile(%r)' % filename ! self.application.shell.run(command=command, prompt=0, verbose=0) ! except: ! pass def on_menuScriptletRunScriptlet_select(self, event): --- 1041,1049 ---- def execScriptlet(self, filename): ! #try: ! command = 'execfile(%r)' % filename ! self.application.shell.run(command=command, prompt=0, verbose=0) ! #except: ! # pass def on_menuScriptletRunScriptlet_select(self, event): |
From: Kevin A. <ka...@us...> - 2004-10-24 22:48:21
|
Update of /cvsroot/pythoncard/PythonCard/tools/oneEditor/scriptlets In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv15894 Modified Files: documentWordCount.py insertDateAndTime.py insertDialog.py selectionWordCount.py unorderedList.py Log Message: theoretically I've fixed these to use the new document and path refs Index: insertDateAndTime.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/oneEditor/scriptlets/insertDateAndTime.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** insertDateAndTime.py 3 Oct 2004 23:58:01 -0000 1.1 --- insertDateAndTime.py 24 Oct 2004 22:48:12 -0000 1.2 *************** *** 2,4 **** now = time.localtime(time.time()) dateStr = time.strftime("%A, %B %d, %Y, %I:%M %p", now) ! comp.document.ReplaceSelection(dateStr) --- 2,4 ---- now = time.localtime(time.time()) dateStr = time.strftime("%A, %B %d, %Y, %I:%M %p", now) ! self.currentDocument.ReplaceSelection(dateStr) Index: insertDialog.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/oneEditor/scriptlets/insertDialog.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** insertDialog.py 3 Oct 2004 23:58:01 -0000 1.1 --- insertDialog.py 24 Oct 2004 22:48:12 -0000 1.2 *************** *** 83,86 **** # could get the current indent and insert the appropriate # number of spaces before each line of the template here ! comp.document.ReplaceSelection(dialogText) --- 83,86 ---- # could get the current indent and insert the appropriate # number of spaces before each line of the template here ! self.currentDocument.ReplaceSelection(dialogText) Index: unorderedList.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/oneEditor/scriptlets/unorderedList.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** unorderedList.py 3 Oct 2004 23:58:01 -0000 1.1 --- unorderedList.py 24 Oct 2004 22:48:12 -0000 1.2 *************** *** 1,7 **** # inserts "\t* " before each line in the selection ! text = bg.components.document.GetSelectedText() unorderedList = "" for i in text.splitlines(1): unorderedList += "\t* " + i ! bg.components.document.ReplaceSelection(unorderedList) --- 1,7 ---- # inserts "\t* " before each line in the selection ! text = self.currentDocument.GetSelectedText() unorderedList = "" for i in text.splitlines(1): unorderedList += "\t* " + i ! self.currentDocument.ReplaceSelection(unorderedList) Index: selectionWordCount.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/oneEditor/scriptlets/selectionWordCount.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** selectionWordCount.py 3 Oct 2004 23:58:01 -0000 1.1 --- selectionWordCount.py 24 Oct 2004 22:48:12 -0000 1.2 *************** *** 10,18 **** return chars, words, lines ! if bg.documentPath is None: filename = 'Untitled' else: ! filename = os.path.basename(bg.documentPath) ! text = util.normalizeEOL(bg.components.document.GetSelectedText()) ! dialog.MessageDialog(bg, "Document: %s\n" % filename + "%d chars, %d words, %d lines" % wordCount(text), 'Word Count', wx.ICON_INFORMATION | wx.OK) --- 10,18 ---- return chars, words, lines ! if self.currentPage.documentPath is None: filename = 'Untitled' else: ! filename = os.path.basename(self.currentPage.documentPath) ! text = util.normalizeEOL(self.currentDocument.GetSelectedText()) ! dialog.messageDialog(self, "Document: %s\n" % filename + "%d chars, %d words, %d lines" % wordCount(text), 'Word Count', wx.ICON_INFORMATION | wx.OK) Index: documentWordCount.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/oneEditor/scriptlets/documentWordCount.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** documentWordCount.py 3 Oct 2004 23:58:01 -0000 1.1 --- documentWordCount.py 24 Oct 2004 22:48:12 -0000 1.2 *************** *** 10,17 **** return chars, words, lines ! if bg.documentPath is None: filename = 'Untitled' else: ! filename = os.path.basename(bg.documentPath) ! dialog.MessageDialog(bg, "Document: %s\n" % filename + "%d chars, %d words, %d lines" % wordCount(util.normalizeEOL(bg.components.document.text)), 'Word Count', wx.ICON_INFORMATION | wx.OK) --- 10,17 ---- return chars, words, lines ! if self.currentPage.documentPath is None: filename = 'Untitled' else: ! filename = os.path.basename(self.currentPage.documentPath) ! dialog.messageDialog(self, "Document: %s\n" % filename + "%d chars, %d words, %d lines" % wordCount(util.normalizeEOL(self.currentDocument.text)), 'Word Count', wx.ICON_INFORMATION | wx.OK) |
From: Kevin A. <ka...@us...> - 2004-10-24 22:01:38
|
Update of /cvsroot/pythoncard/PythonCard In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32141 Modified Files: graphic.py Log Message: hopefully fixed image Index: graphic.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/graphic.py,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** graphic.py 24 Oct 2004 19:56:29 -0000 1.16 --- graphic.py 24 Oct 2004 22:01:19 -0000 1.17 *************** *** 79,96 **** class Bitmap : ! def __init__(self, fileName=None, size=(-1, -1)): ! if fileName is None or fileName == '': ! self._fileName = None else: ! self._fileName = fileName # KEA 2004-07-27 # Mac checks that the bitmap is Ok() so need # to use a valid size ! if (self._fileName is None) and (tuple(size) == (-1, -1)): self._size = (10, 10) else: self._size = size self._type = None ! self.loadFile() def getBits( self ) : --- 79,96 ---- class Bitmap : ! def __init__(self, filename=None, size=(-1, -1)): ! if filename is None or filename == '': ! self._filename = None else: ! self._filename = filename # KEA 2004-07-27 # Mac checks that the bitmap is Ok() so need # to use a valid size ! if (self._filename is None) and (tuple(size) == (-1, -1)): self._size = (10, 10) else: self._size = size self._type = None ! self.loadFile(self._filename, self._size) def getBits( self ) : *************** *** 168,188 **** # xbm format doesn't seem to work on Windows ! def loadFile(self, filename=None, size=None): if filename is None or filename == '': ! self._fileName = None else: - self._fileName = fileName - if size is not None: self._size = size ! self._type = self._getBitmapType(self._fileName) if self._type is None: self._bits = wx.EmptyBitmap(self._size[0], self._size[1]) else: ! self._bits = wx.Bitmap(self._fileName, self._type) # attempting to save a GIF image will result in a zero length file def saveFile(self, filename=None): if filename is None: ! filename = self._fileName try: self._bits.SaveFile(filename, self._getBitmapType(filename)) --- 168,190 ---- # xbm format doesn't seem to work on Windows ! def loadFile(self, filename=None, size=(-1, -1)): if filename is None or filename == '': ! self._filename = None ! else: ! self._filename = filename ! if (self._filename is None) and (tuple(size) == (-1, -1)): ! self._size = (10, 10) else: self._size = size ! self._type = self._getBitmapType(self._filename) if self._type is None: self._bits = wx.EmptyBitmap(self._size[0], self._size[1]) else: ! self._bits = wx.Bitmap(self._filename, self._type) # attempting to save a GIF image will result in a zero length file def saveFile(self, filename=None): if filename is None: ! filename = self._filename try: self._bits.SaveFile(filename, self._getBitmapType(filename)) |
From: Kevin A. <ka...@us...> - 2004-10-24 20:44:27
|
Update of /cvsroot/pythoncard/PythonCard In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv14437 Modified Files: MANIFEST.in Log Message: put testNotebook back in Index: MANIFEST.in =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/MANIFEST.in,v retrieving revision 1.16 retrieving revision 1.17 diff -C2 -d -r1.16 -r1.17 *** MANIFEST.in 14 Sep 2004 17:28:45 -0000 1.16 --- MANIFEST.in 24 Oct 2004 20:44:18 -0000 1.17 *************** *** 9,13 **** prune samples/counter prune samples/fpop - prune samples/testNotebook exclude docs/html/linux_installation.html exclude docs/html/macosx_installation.html --- 9,12 ---- |
From: Kevin A. <ka...@us...> - 2004-10-24 19:56:52
|
Update of /cvsroot/pythoncard/PythonCard In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv2898 Modified Files: graphic.py Log Message: updated to treat None and '' (empty string) the same for filename Index: graphic.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/graphic.py,v retrieving revision 1.15 retrieving revision 1.16 diff -C2 -d -r1.15 -r1.16 *** graphic.py 28 Jul 2004 07:12:07 -0000 1.15 --- graphic.py 24 Oct 2004 19:56:29 -0000 1.16 *************** *** 79,88 **** class Bitmap : ! def __init__(self, fileName='', size=(-1, -1)): ! self._fileName = fileName # KEA 2004-07-27 # Mac checks that the bitmap is Ok() so need # to use a valid size ! if (self._fileName == '') and (tuple(size) == (-1, -1)): self._size = (10, 10) else: --- 79,91 ---- class Bitmap : ! def __init__(self, fileName=None, size=(-1, -1)): ! if fileName is None or fileName == '': ! self._fileName = None ! else: ! self._fileName = fileName # KEA 2004-07-27 # Mac checks that the bitmap is Ok() so need # to use a valid size ! if (self._fileName is None) and (tuple(size) == (-1, -1)): self._size = (10, 10) else: *************** *** 133,137 **** #name, ext = filename.split( '.' ) #ext = ext.upper() ! if filename == '': return None --- 136,140 ---- #name, ext = filename.split( '.' ) #ext = ext.upper() ! if filename is None or filename == '': return None *************** *** 166,170 **** # xbm format doesn't seem to work on Windows def loadFile(self, filename=None, size=None): ! if filename is not None: self._fileName = fileName if size is not None: --- 169,175 ---- # xbm format doesn't seem to work on Windows def loadFile(self, filename=None, size=None): ! if filename is None or filename == '': ! self._fileName = None ! else: self._fileName = fileName if size is not None: *************** *** 174,178 **** self._bits = wx.EmptyBitmap(self._size[0], self._size[1]) else: ! self._bits = wx.Bitmap( self._fileName, self._type ) # attempting to save a GIF image will result in a zero length file --- 179,183 ---- self._bits = wx.EmptyBitmap(self._size[0], self._size[1]) else: ! self._bits = wx.Bitmap(self._fileName, self._type) # attempting to save a GIF image will result in a zero length file |
From: Arlo B. <abe...@us...> - 2004-10-24 19:44:21
|
Update of /cvsroot/pythoncard/PythonCard/tools/experimentalResourceEditor In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv32733 Modified Files: resourceEditor.py resourceEditor.rsrc.py Log Message: Added a dialog to the resource editor that binds actions. Widget treats these bindings as extensions to the set provided by specifically-named functions on the background (the background's functions override the bindings set in the dialog). Abel, Lion Index: resourceEditor.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/experimentalResourceEditor/resourceEditor.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** resourceEditor.py 24 Oct 2004 19:21:46 -0000 1.1 --- resourceEditor.py 24 Oct 2004 19:43:42 -0000 1.2 *************** *** 26,29 **** --- 26,30 ---- from modules.propertyEditor import PropertyEditor from modules import resourceOutput + from modules import actionBinderDialog SIZING_HANDLE_SIZE = 7 *************** *** 1408,1411 **** --- 1409,1415 ---- self.documentChanged = True + def on_editActionBinder_command(self, event): + actionBinderDialog.runDialog(self) + def on_editStrings_command(self, event): stringList = {} Index: resourceEditor.rsrc.py =================================================================== RCS file: /cvsroot/pythoncard/PythonCard/tools/experimentalResourceEditor/resourceEditor.rsrc.py,v retrieving revision 1.1 retrieving revision 1.2 diff -C2 -d -r1.1 -r1.2 *** resourceEditor.rsrc.py 24 Oct 2004 19:21:46 -0000 1.1 --- resourceEditor.rsrc.py 24 Oct 2004 19:43:43 -0000 1.2 *************** *** 114,117 **** --- 114,122 ---- }, {'type':'MenuItem', + 'name':'menuEditActionBinder', + 'label':'Edit Actions...', + 'command':'editActionBinder', + }, + {'type':'MenuItem', 'name':'menuEditStrings', 'label':'String Editor...', |