daborun Commit Revision 23 Date: 2006-11-24 13:56:28 -0800 (Fri, 24 Nov 2006) Author: ed
Changed: U trunk/LICENSE.TXT U trunk/README.txt U trunk/daborun.iss U trunk/daborun.py U trunk/setup.py U trunk/version.py Log: Updated for the 0.7 release. Diff: Modified: trunk/LICENSE.TXT =================================================================== --- trunk/LICENSE.TXT 2006-04-07 15:21:04 UTC (rev 22) +++ trunk/LICENSE.TXT 2006-11-24 21:56:28 UTC (rev 23) @@ -1,5 +1,5 @@ Dabo Runtime -Copyright (c) 2004 Ed Leafe, Paul McNett, et. al. +Copyright (c) 2004-6 Ed Leafe, Paul McNett, et. al. Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: Modified: trunk/README.txt =================================================================== --- trunk/README.txt 2006-04-07 15:21:04 UTC (rev 22) +++ trunk/README.txt 2006-11-24 21:56:28 UTC (rev 23) @@ -4,7 +4,7 @@ What is it? -------------- -The Dabo Runtime Engine is an EXE that contains all the file needed to run Dabo: the full development environment as well as generated apps. It allows people who are interested in Dabo to try it out without having to install the various prerequisites, and to uninstall it if they decide that it's not for them. The installer does not affect the Windows Registry in any way, and so can be installed without fear of breaking something else. +The Dabo Runtime Engine is an EXE that contains all the files needed to run Dabo: the full development environment as well as generated apps. It allows people who are interested in Dabo to try it out without having to install the various prerequisites, and to uninstall it if they decide that it's not for them. The installer does not affect the Windows Registry in any way, and so can be installed without fear of breaking something else. How do I run stuff? @@ -22,6 +22,8 @@ Demo Programs: ---------------- +DaboDemo - An example of some of the UI controls and how to work with them. The code for each demo is visible, and you can modify it and run that modified code without harming the original. This is a great way to learn about programming the Dabo UI. + Bubblet - a fun little game where you get to pop lots of bubbles that demonstrates some of the non-database capabilities of Dabo. Montana - a simple solitaire game that some have found to be very addictive! @@ -43,10 +45,9 @@ Editor - A powerful Python text editor written in Dabo. It features code completion, syntax coloring, and lots of other cool stuff. -FieldSpecEditor - The original output of the AppWizard is an XML file containing your applications settings. While you can edit that manually, this tool allows you to more easily control the appearance of your app. You can also preview your changes to make sure that they are what you intended. +PrefEditor - a handy tool for viewing, editing and/or deleting any saved preferences on your system. - Modified: trunk/daborun.iss =================================================================== --- trunk/daborun.iss 2006-04-07 15:21:04 UTC (rev 22) +++ trunk/daborun.iss 2006-11-24 21:56:28 UTC (rev 23) @@ -3,7 +3,7 @@ [Setup] AppName=Dabo Runtime Engine -AppVerName=DaboRun 0.6.4 +AppVerName=DaboRun 0.7 AppPublisher=Ed Leafe AppPublisherURL=http://dabodev.com AppSupportURL=http://dabodev.com @@ -13,8 +13,8 @@ AllowNoIcons=yes Compression=lzma SolidCompression=yes -OutputBaseFilename=DaboRuntimeSetup -;OutputBaseFilename=DaboRuntimeSetupConsole +;OutputBaseFilename=DaboRuntimeSetup +OutputBaseFilename=DaboRuntimeSetupConsole [Tasks] Name: desktopicon; Description: {cm:CreateDesktopIcon}; GroupDescription: {cm:AdditionalIcons} @@ -34,8 +34,8 @@ Source: C:\projects\daborun\dist\*; Excludes: Output\*, *.iss; DestDir: {app}; Flags: ignoreversion recursesubdirs Source: C:\cleanprojects\dabo\*; DestDir: {app}\dabo; Flags: ignoreversion recursesubdirs ;Source: "C:\cleanprojects\dabo\icons\*.png"; DestDir: "{app}\dabo"; Flags: ignoreversion recursesubdirs -Source: ..\..\cleanprojects\dabodemo\*; DestDir: {app}\demo; Flags: ignoreversion recursesubdirs; AfterInstall: LinkDemo -Source: C:\cleanprojects\daboide\*; DestDir: {app}\ide; Flags: ignoreversion recursesubdirs; AfterInstall: LinkIDE +Source: C:\cleanprojects\demo\*; DestDir: {app}\demo; Flags: ignoreversion recursesubdirs; AfterInstall: LinkDemo +Source: C:\cleanprojects\ide\*; DestDir: {app}\ide; Flags: ignoreversion recursesubdirs; AfterInstall: LinkIDE Source: C:\Python24\msvcr71.dll; DestDir: {app}; Flags: ignoreversion ; NOTE: Don't use "Flags: ignoreversion" on any shared system files Source: README.txt; DestDir: {app}; Flags: isreadme @@ -46,6 +46,17 @@ Name: {userdesktop}\Dabo Runtime Engine; Filename: {app}\daborun.exe; Tasks: desktopicon Name: {userappdata}\Microsoft\Internet Explorer\Quick Launch\Dabo Runtime Engine; Filename: {app}\daborun.exe; Tasks: quicklaunchicon +;;;; PrefEditors isn't working just right yet, so don't add the link +; CreateShellLink( +; ExpandConstant('{app}\Common\PrefEditor.lnk'), +; 'Shortcut to the Preference Editor program', +; ExpandConstant('{app}\daborun.exe'), +; ExpandConstant('"{app}\ide\PrefEditor.py"'), +; ExpandConstant('{app}\ide'), +; '', +; 0, +; SW_SHOWNORMAL) ; + [Code] procedure LinkDemo(); begin @@ -60,6 +71,16 @@ SW_SHOWNORMAL) ; CreateShellLink( + ExpandConstant('{app}\Common\Dabo Demo.lnk'), + 'Shortcut to the DaboDemo program', + ExpandConstant('{app}\daborun.exe'), + ExpandConstant('"{app}\demo\DaboDemo\DaboDemo.py"'), + ExpandConstant('{app}\demo\DaboDemo'), + '', + 0, + SW_SHOWNORMAL) ; + + CreateShellLink( ExpandConstant('{app}\Common\Bubblet.lnk'), 'Shortcut to the Bubblet game', ExpandConstant('{app}\daborun.exe'), @@ -80,7 +101,7 @@ SW_SHOWNORMAL) ; CreateShellLink( - ExpandConstant('{app}\Common\SizerTutorial.lnk'), + ExpandConstant('{app}\Common\Sizer Tutorial.lnk'), 'Shortcut to the sizer tutorial', ExpandConstant('{app}\daborun.exe'), ExpandConstant('"{app}\demo\tutorial\sizerExample.py"'), @@ -94,7 +115,7 @@ procedure LinkIDE(); begin CreateShellLink( - ExpandConstant('{app}\Common\AppWizard.lnk'), + ExpandConstant('{app}\Common\App Wizard.lnk'), 'Shortcut to the Dabo Application Wizard', ExpandConstant('{app}\daborun.exe'), ExpandConstant('"{app}\ide\wizards\AppWizard\AppWizard.py"'), @@ -104,7 +125,7 @@ SW_SHOWNORMAL) ; CreateShellLink( - ExpandConstant('{app}\Common\ClassDesigner.lnk'), + ExpandConstant('{app}\Common\Class Designer.lnk'), 'Shortcut to the Dabo Class Designer', ExpandConstant('{app}\daborun.exe'), ExpandConstant('"{app}\ide\ClassDesigner.py"'), @@ -114,7 +135,7 @@ SW_SHOWNORMAL) ; CreateShellLink( - ExpandConstant('{app}\Common\ReportDesigner.lnk'), + ExpandConstant('{app}\Common\Report Designer.lnk'), 'Shortcut to the Dabo Report Designer', ExpandConstant('{app}\daborun.exe'), ExpandConstant('"{app}\ide\ReportDesigner.py"'), @@ -124,7 +145,7 @@ SW_SHOWNORMAL) ; CreateShellLink( - ExpandConstant('{app}\Common\Editor.lnk'), + ExpandConstant('{app}\Common\Text Editor.lnk'), 'Shortcut to the Dabo Editor', ExpandConstant('{app}\daborun.exe'), ExpandConstant('"{app}\ide\Editor.py"'), @@ -134,7 +155,7 @@ SW_SHOWNORMAL) ; CreateShellLink( - ExpandConstant('{app}\Common\ConnectionEditor.lnk'), + ExpandConstant('{app}\Common\Connection Editor.lnk'), 'Shortcut to the Dabo Connection Editor', ExpandConstant('{app}\daborun.exe'), ExpandConstant('"{app}\ide\CxnEditor.py"'), @@ -143,14 +164,6 @@ 0, SW_SHOWNORMAL) ; - CreateShellLink( - ExpandConstant('{app}\Common\FieldSpecEditor.lnk'), - 'Shortcut to the Dabo FieldSpec Editor', - ExpandConstant('{app}\daborun.exe'), - ExpandConstant('"{app}\ide\FieldSpecEditor.py"'), - ExpandConstant('{app}\ide'), - '', - 0, - SW_SHOWNORMAL) ; + end ; + - end ; Modified: trunk/daborun.py =================================================================== --- trunk/daborun.py 2006-04-07 15:21:04 UTC (rev 22) +++ trunk/daborun.py 2006-11-24 21:56:28 UTC (rev 23) @@ -12,11 +12,17 @@ import xml.sax import xml.dom.minidom - +def debugout(*args): + # Change this to True to see all the debugging info + debug = True + if debug: + for arg in args: + print arg, + print + # Add the current dir and library path pth = sys.path -print "OPENING: PATH=", pth # For py2exe installations: sys.path will be the path to 'library.zip', # which contains all the compiled modules. We need to strip that off # to get the base path, from which we can assume that the Dabo files @@ -27,7 +33,7 @@ dabopth = os.path.join(basepth, "dabo") if not basepth in pth: sys.path.insert(0, basepth) - print "INSERTED %s INTO PATH" % basepth + debugout( "INSERTED %s INTO PATH" % basepth) break # Reroute stderr to avoid the popup window: @@ -36,8 +42,8 @@ currdir = os.getcwd() libdir = os.path.join(currdir, "lib") if not currdir in pth: - sys.path.append(currdir) - print "APPENDING %s TO PATH" % currdir + sys.path.append("\"%s\"" % currdir) + debugout("APPENDING %s TO PATH" % currdir) def dummyImport(): # This proc does nothing except force the inclusion of all the modules @@ -128,11 +134,11 @@ def __init__(self): try: self.prg = sys.argv[1] - except: + except IndexError: self.prg = None try: self.module = sys.argv[2] - except: + except IndexError: self.module = None # Inform the framework that we are using the dabo runtime: @@ -150,18 +156,18 @@ # it to be the first in sys.path. Remove it and insert: try: sys.path.remove(pth) - print "INIT: REMOVED %s TO PATH" % pth + debugout("INIT: REMOVED %s TO PATH" % pth) except ValueError: pass sys.path.insert(0, pth) - print "INIT: INSERTED %s TO PATH" % pth + debugout("INIT: INSERTED %s TO PATH" % pth) # Debugging! - print "-"*44 - print "RUN" - print "ARGS", sys.argv - print "PATH", sys.path - print "CURDIR", os.getcwd() + debugout("-"*44) + debugout("RUN") + debugout("ARGS", sys.argv) + debugout("PATH", sys.path) + debugout("CURDIR", os.getcwd()) # Update the argv list to eliminate this program sys.argv = sys.argv[1:] @@ -175,17 +181,26 @@ if isFile: impt = self.prg[:-3] - print "self.prg:", self.prg, impt - print "self.module:", self.module + debugout("self.prg:", self.prg, impt) + debugout("self.module:", self.module) if not self.module: if isFile: - execfile(self.prg, {"__name__": "__main__"} ) + pthDir = os.path.split(self.prg)[0] + debugout("PTHDIR", pthDir) + if pthDir not in sys.path: + sys.path.append(pthDir) + debugout("BEFORE EXEC ISFILE: APPENDING %s to PATH"% pthDir) + + try: + execfile(self.prg, {"__name__": "__main__"} ) + except StandardError, e: + debugout("EXECFILE ERROR", e) else: # File should run directly when imported exec("import " + impt) else: - print "EXEC:", impt + "." + self.module + "()" + debugout("EXEC:", impt + "." + self.module + "()") exec(impt + "." + self.module + "()") else: app = wx.PySimpleApp() @@ -199,7 +214,7 @@ app.Destroy() pth = openDlg.GetPath() -#- print "SELECTION", pth + debugout("SELECTION", pth) openDlg.Destroy() if res == wx.ID_OK: @@ -207,10 +222,10 @@ pthDir = os.path.split(pth)[0] if pthDir not in sys.path: sys.path.append(pthDir) - print "BEFORE EXEC: APPENDING %s to PATH"% pthDir + debugout("BEFORE EXEC: APPENDING %s to PATH"% pthDir) - print - print "PATH BEFORE EXECUTION", sys.path + debugout("") + debugout("PATH BEFORE EXECUTION", sys.path) execfile(pth, {"__name__": "__main__"} ) Modified: trunk/setup.py =================================================================== --- trunk/setup.py 2006-04-07 15:21:04 UTC (rev 22) +++ trunk/setup.py 2006-11-24 21:56:28 UTC (rev 23) @@ -6,21 +6,23 @@ # The first three parameters are not required, if at least a # 'version' is given, then a versioninfo resource is built from # them and added to the executables. - version = "0.6.4", + version = "0.7", description = "Dabo Runtime Engine", name = "daborun", # targets to build -# console = ["daborun.py"], - windows = ["daborun.py"], + console = ["daborun.py"], +# windows = ["daborun.py"], #exclude the actual framework options = { "py2exe": - {"includes" : ["ConfigParser", "threading", "mx.DateTime", "winpdb", "pydoc", "PIL"], + {"includes" : ["ConfigParser", "threading", "mx.DateTime", "platform", + "winpdb", "pydoc", "PIL"], "excludes" : ["dabo", "dabo.db", "dabo.biz", "dabo.lib", "dabo.ui", "dabo.common", "dabo.icons", "dabo.ui.uiwx", "Tkconstants", "Tkinter", "tcl", "_imagingtk", "PIL._imagingtk", "ImageTk", "PIL.ImageTk", "FixTk"], "packages" : ["MySQLdb", "encodings", "kinterbasdb", "pysqlite2", - "wx.gizmos", "wx.lib.calendar", "wx.lib.foldpanelbar", - "wx.lib.hyperlink", "reportlab"]} }, + "psycopg2", "wx.gizmos", "wx.lib.calendar", "wx.lib.foldpanelbar", + "wx.lib.hyperlink", "wx.lib.masked", "wx.lib.buttons", + "reportlab"]} }, ) # To build, run: Modified: trunk/version.py =================================================================== --- trunk/version.py 2006-04-07 15:21:04 UTC (rev 22) +++ trunk/version.py 2006-11-24 21:56:28 UTC (rev 23) @@ -1,7 +1,7 @@ name = "Dabo Runtime Engine" description = "Self-contained engine for running Dabo apps" -copyright = "(c)2004-5 Edward Leafe" -version = "0.4" -release = "2005-08-11" +copyright = "(c)2004-6 Edward Leafe" +version = "0.7" +release = "2006-11-21" url = "http://dabodev.com" testver = True _______________________________________________ Post Messages to: [email protected] Subscription Maintenance: http://leafe.com/mailman/listinfo/dabo-dev
