You can subscribe to this list here.
2001 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
(116) |
Sep
(146) |
Oct
(78) |
Nov
(69) |
Dec
(70) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2002 |
Jan
(188) |
Feb
(142) |
Mar
(143) |
Apr
(131) |
May
(97) |
Jun
(221) |
Jul
(127) |
Aug
(89) |
Sep
(83) |
Oct
(66) |
Nov
(47) |
Dec
(70) |
2003 |
Jan
(77) |
Feb
(91) |
Mar
(103) |
Apr
(98) |
May
(134) |
Jun
(47) |
Jul
(74) |
Aug
(71) |
Sep
(48) |
Oct
(23) |
Nov
(37) |
Dec
(13) |
2004 |
Jan
(24) |
Feb
(15) |
Mar
(52) |
Apr
(119) |
May
(49) |
Jun
(41) |
Jul
(34) |
Aug
(91) |
Sep
(169) |
Oct
(38) |
Nov
(32) |
Dec
(47) |
2005 |
Jan
(61) |
Feb
(47) |
Mar
(101) |
Apr
(130) |
May
(51) |
Jun
(65) |
Jul
(71) |
Aug
(96) |
Sep
(28) |
Oct
(20) |
Nov
(39) |
Dec
(62) |
2006 |
Jan
(13) |
Feb
(19) |
Mar
(18) |
Apr
(34) |
May
(39) |
Jun
(50) |
Jul
(63) |
Aug
(18) |
Sep
(37) |
Oct
(14) |
Nov
(56) |
Dec
(32) |
2007 |
Jan
(30) |
Feb
(13) |
Mar
(25) |
Apr
(3) |
May
(15) |
Jun
(42) |
Jul
(5) |
Aug
(17) |
Sep
(6) |
Oct
(25) |
Nov
(49) |
Dec
(10) |
2008 |
Jan
(12) |
Feb
|
Mar
(17) |
Apr
(18) |
May
(12) |
Jun
(2) |
Jul
(2) |
Aug
(6) |
Sep
(4) |
Oct
(15) |
Nov
(45) |
Dec
(9) |
2009 |
Jan
(1) |
Feb
(3) |
Mar
(18) |
Apr
(8) |
May
(3) |
Jun
|
Jul
(13) |
Aug
(2) |
Sep
(1) |
Oct
(9) |
Nov
(13) |
Dec
|
2010 |
Jan
(2) |
Feb
(3) |
Mar
(9) |
Apr
(10) |
May
|
Jun
(1) |
Jul
|
Aug
(3) |
Sep
|
Oct
|
Nov
(1) |
Dec
(4) |
2011 |
Jan
|
Feb
|
Mar
(10) |
Apr
(44) |
May
(9) |
Jun
(22) |
Jul
(2) |
Aug
|
Sep
|
Oct
(1) |
Nov
|
Dec
|
2012 |
Jan
|
Feb
(1) |
Mar
(2) |
Apr
(2) |
May
|
Jun
(5) |
Jul
|
Aug
|
Sep
(1) |
Oct
|
Nov
|
Dec
|
2013 |
Jan
|
Feb
|
Mar
(2) |
Apr
(1) |
May
(1) |
Jun
|
Jul
(3) |
Aug
(8) |
Sep
(3) |
Oct
|
Nov
|
Dec
|
2014 |
Jan
|
Feb
(4) |
Mar
|
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
(1) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Kevin A. <al...@se...> - 2001-11-19 03:42:43
|
My apologies to anyone attempting to download 0.5.1 and not finding the file. As of 7:45 pm PST the file still hasn't shown up on SourceForge. Normally, I don't post about a file upload until it is available, but I hit Send early this time. SourceForge appears to be doing some upgrade or going through growing pains the last few days, at least I'm having a hard time reaching the site a lot of the time. My guess is they have also changed the batch procedure for file uploads because I've never had it take more than an hour or so and usually it is less than fifteen minutes. If it doesn't show up by tomorrow morning my time, I'll repost and email the SF admins. ka > -----Original Message----- > From: pyt...@li... > [mailto:pyt...@li...]On Behalf Of Kevin > Altis > Sent: Sunday, November 18, 2001 1:51 PM > To: pythoncard-Users > Subject: [Pythoncard-users] PythonCardPrototype release 0.5.1 > > > I've created another zip so that Simon Kittle's textRouter sample is now > part of the distribution. This is a great sample app which uses > XML-RPC for: > posting/editing/deleting to/from Blogger. > adding/getting/setting/flipping Manila homepages, stories and uploading > images. > (Multiple Manila accounts supported) > sending out emails > passing text through "filters" (user defined commands, done with pipes) > See http://simon.kittle.info/ and > http://simon.kittle.info/stories/storyReader$112 for more info. > > I would love to see more samples that stress the framework to expose > problems and limitations with the current system. Andy Todd's dbBrowser in > another good sample. I'm more than happy to help anyone that has > an idea for > an app they would like to do, so just speak up. > > You can get the latest PythonCardPrototype at: > http://sourceforge.net/project/showfiles.php?group_id=19015 > > I made some older versions back to the last distutils build > available. I can > go back even further if anyone is interested. > > Remember to backup or just delete your old PythonCardPrototype directory > before installing a new version, so that the old files aren't still in the > package directory. As always, report any problems to the list. > > Changes for release 0.5.1 2001-11-18 > framework changes to simplify building Windows executables using > py2exe. source and resource files and any other files needed > to be loaded at runtime must be included with the distribution > files. > added setup.py example py2exe script to minimal sample > complete documentation for using py2exe is still needed, see > the mailing list > changed res.py to import spec.py > changed config loading to use import rather than readAndEvalFile > renamed pythoncard.config.py to pythoncard_config.py > user config is saved as pythoncard_user_config.py > added SingleChoiceDialog and MultipleChoiceDialog to dialog.py > added Simon Kittle's textRouter sample > updated replaceSelection for text fields and added getStringSelection > TextField, PasswordField, TextArea > changed statusbar.py to use CreateStatusBar() > fixed TextArea event binding to check for unused events > dbBrowser sample supports Oracle > > ka > > > _______________________________________________ > Pythoncard-users mailing list > Pyt...@li... > https://lists.sourceforge.net/lists/listinfo/pythoncard-users > |
From: Andy T. <an...@ha...> - 2001-11-19 03:38:22
|
In the finest school yard tradition of 'me first' I thought I would let you all know that Simon Kittle's work got mentioned at Scripting News; http://scriptingnews.userland.com/backissues/2001/11/18 Good work Simon, keep it up. Does this mean though that Dave Winer personally reviews every post to every Manila weblog? Just a thought ;-) Regards, Andy -- ----------------------------------------------------------------------- From the desk of Andrew J Todd esq. "Another year older, still no wiser." - Me, on my birthday |
From: Kevin A. <al...@se...> - 2001-11-18 21:49:45
|
I've created another zip so that Simon Kittle's textRouter sample is now part of the distribution. This is a great sample app which uses XML-RPC for: posting/editing/deleting to/from Blogger. adding/getting/setting/flipping Manila homepages, stories and uploading images. (Multiple Manila accounts supported) sending out emails passing text through "filters" (user defined commands, done with pipes) See http://simon.kittle.info/ and http://simon.kittle.info/stories/storyReader$112 for more info. I would love to see more samples that stress the framework to expose problems and limitations with the current system. Andy Todd's dbBrowser in another good sample. I'm more than happy to help anyone that has an idea for an app they would like to do, so just speak up. You can get the latest PythonCardPrototype at: http://sourceforge.net/project/showfiles.php?group_id=19015 I made some older versions back to the last distutils build available. I can go back even further if anyone is interested. Remember to backup or just delete your old PythonCardPrototype directory before installing a new version, so that the old files aren't still in the package directory. As always, report any problems to the list. Changes for release 0.5.1 2001-11-18 framework changes to simplify building Windows executables using py2exe. source and resource files and any other files needed to be loaded at runtime must be included with the distribution files. added setup.py example py2exe script to minimal sample complete documentation for using py2exe is still needed, see the mailing list changed res.py to import spec.py changed config loading to use import rather than readAndEvalFile renamed pythoncard.config.py to pythoncard_config.py user config is saved as pythoncard_user_config.py added SingleChoiceDialog and MultipleChoiceDialog to dialog.py added Simon Kittle's textRouter sample updated replaceSelection for text fields and added getStringSelection TextField, PasswordField, TextArea changed statusbar.py to use CreateStatusBar() fixed TextArea event binding to check for unused events dbBrowser sample supports Oracle ka |
From: Kevin A. <al...@se...> - 2001-11-17 22:40:35
|
In order to make spec.py and pythoncard.config.py real modules I changed the res.py and config.py modules to import the files rather than using res.readAndEvalFile() This means that spec.py now has a variable name 'specList' for the list in the module and pythoncard_config.py has a variable 'configuration'. This makes both files valid Python modules that you can actually use directly. In order to support import, I had to change the name of pythoncard.config.py to pythoncard_config.py and the user file is now called pythoncard_user_config.py You can't use dots in the filename of a module you want to import. If you have your own pythoncard.user.config.py file you can simply rename it and add configuration = to the beginning of the file. It is no longer necessary to change the framework itself in order to build with py2exe, but you still have to include the source .py files in the distribution for it to load correctly. A much bigger change to initialization... I'm thinking of changing how samples go through initialization as well, so that the resources no longer have to refer to the base module and do a circular import. The framework started with the idea that there would be a "loader" app and even though I hacked up a way of making samples standalone, they still follow the original loader idea which is probably not needed. In the future what I would like to do is have the app or background specify the resource to use, but without the the resource specifying the class as well. I haven't figured out the order of initialization yet, so this change won't occur right away. ka |
From: Kevin A. <al...@se...> - 2001-11-17 18:53:50
|
> From: Francois Granger > > At 12:29 -0800 on 16/11/01, in message Pythoncard-users digest, Vol 1 > #81 - 1 msg, you wrote: > >thought would be worth sharing with the whole list. This is > another one of > >those "what is PythonCard?" kind of threads, so you can add your > two cents. > > Being a lurker on this list and on the naygui one, I don't feel I am > in a position to say much... Anyway... Feedback is always appreciated. The general lack of comments on the list is actually more of a problem than the lack of developers since without feedback I'm forced to just go with what I'm interested in pursuing for my own programs which may not be of general interest. People are downloading PythonCard, but except for a few list regulars, it doesn't appear many people are really using it and without feedback it is difficult to know what needs to be changed, so more people would use it. Simon Kittle's textRouter sample which is one of the most complex PythonCard apps created so far has been invaluable in pointing out deficiencies in the framework, but we've mostly been carrying on our discussion off list. We'll probably summarize some issues here as they are addressed. > I strongly feel that: > - There is a need pfor an hypercard replacement on the MacOS (preX) > side. There are so many casual developpers orphaned of so many good > scripting products (HyperCard, Frontier, FileMaker....) > - There is a real need for a multiplateform gui for Python to gain > real big momentum on the scripting language side. Agreed. There are multiplatform GUIs for Python already. The problem is the hurdle necessary to use of them is fairly high and/or you have to make do with non-native widgets. PythonCard was originally conceived to lower the barrier to entry. I've pretty much decided that wxPython is the only viable cross-platform GUI solution (that uses native widgets) for Python. The question is whether to have minimal helper classes for wxPython or to attempt and hide as much of wxPython as possible and provide a separate API. The correct answer is probably somewhere in between. > I would strongly advocate for a mix (in one way or the other) of the > two project. This will result on more developpers on the project and > a lot more potential developper and user base. There are a variety of people following both projects including Magnus who is probably most qualified to comment on the anygui goals. So far, it appears there is some overlap, but there is also a fundamental difference in focus. Anygui is attempting to create a single API that works across a variety of GUI toolkits including Jython. While that is an admirable goal, anygui will not be usable for something like PythonCard until at least version 0.2 of anygui and even then the capabilities will be less than what we're doing today with the prototype. If you draw a line and say I only care about these types of events and these widgets then it would be very easy to say here's the framework capabilities and be done rather quickly even with wrapping. The real problem comes in trying to make something that is simple to get started with, yet can go beyond the most simplistic of capabilities. What always ends up happening is someone says that what we have today is great, I just need this one extra little addition for my own program. One of the interesting aspects of PythonCard right now, is that it is often easy to mix raw wxPython code in a PythonCard program to get a solution. That isn't a clean solution, and while it works, it isn't a good long-term solution. Then of course, there is the separate issue of building an environment that wraps up the whole program creation process. Anyway, please keep the comments coming. ka |
From: Francois G. <fgr...@al...> - 2001-11-17 13:08:02
|
At 12:29 -0800 on 16/11/01, in message Pythoncard-users digest, Vol 1 #81 - 1 msg, you wrote: >thought would be worth sharing with the whole list. This is another one of >those "what is PythonCard?" kind of threads, so you can add your two cents. Being a lurker on this list and on the naygui one, I don't feel I am in a position to say much... Anyway... I strongly feel that: - There is a need pfor an hypercard replacement on the MacOS (preX) side. There are so many casual developpers orphaned of so many good scripting products (HyperCard, Frontier, FileMaker....) - There is a real need for a multiplateform gui for Python to gain real big momentum on the scripting language side. I would strongly advocate for a mix (in one way or the other) of the two project. This will result on more developpers on the project and a lot more potential developper and user base. PS: just my 2 Euro cents. |
From: Kevin A. <al...@se...> - 2001-11-15 21:36:37
|
There was a Feature Request tracker item in my inbox this morning that I thought would be worth sharing with the whole list. This is another one of those "what is PythonCard?" kind of threads, so you can add your two cents. I don't think Andy (Andy is not Andy Todd) is on the mailing list, so he probably won't follow-up. ka --- Isn't the point of a "hypercard" to provide an easy to use GUI environment where you can drop down components and double click on them and enter code? And the metaphor of the GUI needs to be a cool RAD framework e.g. cards on background, messages travelling up through objects till a scrpit to handle it is encountered. I don't see any of this technology in this project - or is all that coming? P.S. If you want to see a fast GUI that gets results, check out http://www.mediachance.com Imagine that framework with python as the language!! -Andy and my reply... Date: 2001-11-15 11:25 Sender: kasplat Just for clarification. PythonCard is not HyperCard. As stated on the mail lists many times, the first goal is to produce a framework and then work on an environment at a later date. Some of the samples (resourceEditor) and runtime tools (Message Watcher, Property Editor, Shell) show pieces of what we could have in the environment, but are not an environment. It is unclear at this point whether we will try and follow the same message hierarchy as HyperCard. Currently, all samples are effectively single card (implied), single background stacks that manage their own persistance, but there is a message path from widget to background to stack, so a background handler (see tictactoe) is possible today. It is also unclear whether we will keep with the idea of editing a script per button/field/card/background/stack. I would say that it is unlikely, since the plan is to allow people to easily edit programs just using a plain editor as well as use an environment editor. PythonCard is less than five months old and while the name is catchy, it has become clear that it carries a lot of baggage and creates expectations that may never be met. The big issue right now is whether PythonCard continues to hide most of the details of wxPython. PythonCard at this point is just a simpler way of using wxPython for simple cross- platform apps with native widgets (tkinter for example doesn't use native widgets). The amount of feedback and developer help will determine the future direction of the project and you should refer to past messages on the state of the framework... for more info. In the end, PythonCard is using HyperCard for inspiration, not trying to duplicate it for Python. Thanks, ka |
From: Kevin A. <al...@se...> - 2001-11-14 23:07:49
|
Simon and I spent quite a bit of time today playing with cross-platform (Windows, Linux) issues with TextArea. The PythonCard TextArea is really just a wxPython wxTextCtrl with style flags: wxTE_PROCESS_TAB, wxTE_MULTILINE. I fixed a bug in the TextArea event handling, so that you can intercept a key character such as tab and process it in your app. The textRouter sample has the following routine that inserts a tab character into the field when you press TAB rather than changing the focus to the next widget. def on_area1_keyPress(self, target, event): nEvent = event.getNativeEvent() if nEvent.GetKeyCode() == 9: target.replaceSelection("\t") else: event.skip() I ended up putting all the platform code into a replaceSelection method in widget.py which is shown at the end of this message. replaceSelection has two purposes. The default is to act on the current selection in the field replacing the text with the string passed in. The behavior should be identical to what you would get if you had pasted the string from the clipboard and should respect newlines in the selection as well as the replacement string. The insertion point is the selection if there is no highlighted text. By using a keyPress handler and replaceSelection, you should be able to do most editor operations, though some of the bindings you might want to handle with a menu item and accelerator key (e.g. Ctrl-B) instead of a keyPress handler. The second form (select=1) selects the text after the replacing the selection. You would typically use this form during a find/replace operation. Anyway, as you can see we had to handle the operations differently depending on the platform. Consequently, there might be bugs in how the routine works or the code might be more complicated than it needs to be. Under Windows, you have to compensate for newlines in the text and you don't have to do that under Linux. There are also some differences in how the insertion point and selection are handled, so we'll be doing further tests. If you run into any problems or see unexpected behavior, please report it to the list. ka --- from widget.py, class TextField def replaceSelection(self, aString, select=0): if wxPlatform == "__WXMSW__": if select: sel = self._delegate.GetSelection() numNewlines = aString.count('\n') self._delegate.WriteText(aString) self._delegate.SetSelection( sel[0], sel[0] + len(aString) + numNewlines) else: self._delegate.WriteText(aString) else: # Linux sel = self._delegate.GetSelection() self._delegate.Remove(sel[0], sel[1]) self._delegate.WriteText(aString) if select: self._delegate.SetSelection(sel[0], sel[0] + len(aString)) |
From: Kevin A. <al...@se...> - 2001-11-13 19:51:30
|
I added a getStringSelection() method to TextField, PasswordField, and TextArea in widget.py There is a difference between Windows and Linux in the numbers returned by getSelection(). Basically, to get accurate counts on Windows when matching the start and end numbers returned by GetSelection() on Windows you need to count the newlines in the text returned by GetValue(). You do not need to do this under Linux. ka |
From: Kevin A. <al...@se...> - 2001-11-13 04:11:03
|
added SingleChoiceDialog and MultipleChoiceDialog to dialog.py The dialogs sample shows usage. ka |
From: Kevin A. <al...@se...> - 2001-11-13 02:27:17
|
Simon reported today that the statusBar wasn't working under Linux so I changed the StatusBar class (statusbar.py) from: self._delegate = wxStatusBar(parent, wxNewId()) to: self._delegate = parent.CreateStatusBar() This seems to work on both Linux and Windows. ka |
From: Kevin A. <al...@se...> - 2001-11-12 22:01:08
|
FYI, I'm moving to wxPython 2.3.2b6 on both my Windows 2000 machines. I won't add any 2.3.2 specific features yet, but I am planning in that direction. I still haven't added wxTE_RICH support (2.3.1) because at least one person said they needed to stick with 2.3.0. Once 2.3.2 is out of beta I'm going to add rich text support and more, so the minimal requirements will go up. ka |
From: Kevin A. <al...@se...> - 2001-11-12 18:05:48
|
> From: Simon Kittle > > The basic weblog app I posted a note about a month or so back has been > progressing quite nicely of late, and has evolved in to "TextRouter". > It's basically a generic-ish weblogging app, so it may not be too useful > if you don't maintain a website with either Blogger or Manila, but if > you want to check it out it is now in the CVS samples dir under > textRouter/ > > I use Linux day to day, and while Kevin has been helping me test it out > on Windows quite a bit it there may still be a few issues. > > If there are any problems, just mail me, the readme.txt in it's > directory explains the concept of the app a bit better (I hope). I posted the readme.txt as a separate message, so everyone could get a better idea what textRouter does. Future news on the app should appear here: http://simon.kittle.info/textrouter The sample is in cvs now, but will be part of the next release. I'm really excited about the textRouter, since it is one of the most complicated samples done in PythonCard so far and I didn't write it. It also shows off using XML-RPC. Simon has brought up some issues where the current framework is lacking such as dynamically adding and removing menus that I plan to address soon. Feel free to discuss any ideas or problems you have with the sample on this list. If you want to set up a free blogger account, I think there is info at: http://www.blogger.com/howto/free_host.pyra but I'm currently unable to reach the site to double-check the URL. ka |
From: Kevin A. <al...@se...> - 2001-11-12 17:47:31
|
TextRouter README ================= What is it ? ============ TextRouter is a generic weblogging and text "routing" application. It's main use is for posting to Blogger and/or Manila maintained weblogs. It is designed to be the sort of app which is kept running the whole time; the idea being that if you find a piece of text you'd like to send somewhere, you can simply copy and paste it into TextRouter and send it on its way. Some screen shots are available at: http://simon.kittle.info/stories/storyReader$116 Features ======== TextRouter can curently: 1 New/Edit/Delete posts on Blogger accounts. 2 Flip/get/set/add to Manila homepages. (Multiple accounts supported) 3 Email text. (prefdefined addresses supported) Things that are planned: 1 Multiple Blogger accounts. 2 more support for Manila specific features. 3 routing to RSS Files on the local disk Blogger ======= Blogger (http://www.blogger.com) is a free service which allows a user to easily maintain a weblog on their website. When you update your weblog (either via a web based form or a client like this one) Blogger takes care of updating all the HTML, archiving old posts, and FTP'ing the data to your website. Manila ====== Manila (http://manila.userland.com) is a Content Management System from Userland Software, Inc. While Manila can manage whole websites, it has a number of specific features for maintaining weblog type sites. There is a list of companies that provide Manila hosting at: http://www.edithere.com/directory/22/websiteHostingServices/manila. Requirements ============ TextRouter is written using the PythonCard framework (http://pythoncard.sourceforge.net) which you will need to download if you didn't get this app as part of PC. PythonCard in turn relies on Python (http://www.python.org), wxWindows (http://www.wxwindows.org) and wxPython (http://www.wxpython.org). The only other requirement is the Python XML-RPC library from PythonWare (http://www.pythonware.com/products/xmlrpc/). Details ======= Availability: Get the sources from the CVS repository on the PythonCard Sourceforge page. When the app is a little more stable, a windows exe package may be assembled. Last Updated: Mon, 12 Nov 2001 02:24:02 GMT Contact: si...@ki... Latest info: http://simon.kittle.info/textrouter |
From: Simon K. <si...@ki...> - 2001-11-12 14:47:12
|
Hello Everyone, The basic weblog app I posted a note about a month or so back has been progressing quite nicely of late, and has evolved in to "TextRouter". It's basically a generic-ish weblogging app, so it may not be too useful if you don't maintain a website with either Blogger or Manila, but if you want to check it out it is now in the CVS samples dir under textRouter/ I use Linux day to day, and while Kevin has been helping me test it out on Windows quite a bit it there may still be a few issues. If there are any problems, just mail me, the readme.txt in it's directory explains the concept of the app a bit better (I hope). bye Simon |
From: Andy T. <an...@ha...> - 2001-11-10 11:19:22
|
All, I may have missed the deadline for version 0.5 of the prototype, but as of five minutes ago the CVS version of the dbBrowser sample supports Oracle. You will need a Python extension to access Oracle and the one to use is cx_Oracle (http://www.computronix.com/utilities). This module was chosen as it is the only production quality DB-API 2.0 module for Oracle. I've had a look at DCOracle2 from Zope but that is still an alpha release so it will be added later. Next cab off the rank should be PostgreSQL but I don't have access to an installation of that at the moment so any help will be most welcome. In the absence of any help I'll concentrate on adding more functionality to the sample and probably add support for ODBC connections. Any test feedback is most welcome. Regards, Andy -- ----------------------------------------------------------------------- From the desk of Andrew J Todd esq. "Another year older, still no wiser." - Me, on my birthday |
From: Kevin A. <al...@se...> - 2001-11-10 03:21:10
|
I think py2exe gets very confused by how the PythonCard apps load or rather the extra files it loads during initialization. The good news is that after changing the paths to the config file (pythoncard.config.py) and spec file (spec.py) I got a working .exe. So, given a slightly modified version of the framework, it is possible to build standalone PythonCardPrototype apps on Windows. Sweet! Details follow... I tried it with the minimal sample. py2exe ended up including tcl, due to the PIL import in graphic.py. If PIL isn't available, then tcl and PIL are skipped. I'm not entirely sure which names to specify with the -e option to exclude tcl and/or PIL, so I just commented out the imports and set PIL_FOUND = 0 in graphic.py. Of course, if your app used PIL, you would want it included, so the question is then whether you need tcl? I used the this command-line to build minimal: python setup.py py2exe Here's the setup.py script: from distutils.core import setup import py2exe setup( name = "minimal", scripts = ["minimal.py"] ) The resulting output files in dist\minimal with file sizes in bytes: 57344 Jul 26 12:40 PyWinTypes21.dll 49236 Jul 26 12:39 _sre.pyd 477563 Nov 9 19:08 minimal.exe 708696 Jul 26 12:38 python21.dll 364544 Jul 10 13:39 stc_c.pyd 147456 Jul 10 13:36 utilsc.pyd 57439 Jul 26 12:46 win32api.pyd 2080256 Jul 6 12:37 wx23_1.dll 1576960 Jul 10 13:35 wxc.pyd The two changes necessary in the current framework to do a build were: config.py, line 25, change how the 'pythoncard.config.py' or 'pythoncard.user.config.py' is loaded changed: #basePath = os.path.dirname( os.path.abspath( __file__ ) ) to: basePath = "" res.py, line 40, change loading of spec.py changed: #specPath = os.path.join( thisDir, 'spec.py' ) to: specPath = "spec.py" These changes were against release 0.5, which is the same as what's in cvs. I then copied the spec.py and pythoncard.config.py files to the minimal.py directory so they would be found while the .exe was being built. minimal.py, lines 20 and 21, hard-coded the resource file name #base, ext = os.path.splitext(sys.argv[0]) #filename = base + ".rsrc.py" filename = "minimal.rsrc.py" Normally, spec.py and pythoncard.config.py are in the package directory. Maybe Thomas will has some suggestions on dealing with path issues like this? I'm pretty sure the abspath() call was added for finding the files because we had trouble with file loading under Linux when you didn't run a sample from the package directory. I skipped trying to fix some of the paths in model.py for loading the pycrustrc.py files, so that could probably use some work to. Finally, I didn't attempt to comment out PyCrust, so the app I ended up building can still show all the debug windows, which would be needed for something like the turtle sample. ka -----Original Message----- From: Robin Dunn [mailto:ro...@al...] Sent: Friday, November 09, 2001 2:41 PM To: Kevin Altis; tho...@io... Subject: Re: py2exe minimal PythonCard app build > > If there is a wxPython example that would be similar I would like to look at > that. Go to wxPython/samples/doodle, run "python setup.py py2exe -w" and then look for superdoodle.exe under the dist folder. It's an extremely simple example, so some other py2exe or distutils work may have to be done to get it right for a PythonCard app, but it shouldn't be too difficult. -- Robin Dunn Software Craftsman ro...@Al... Java give you jitters? http://wxPython.org Relax with wxPython! |
From: Kevin A. <al...@se...> - 2001-11-09 18:14:34
|
No problems were reported yesterday, so I've created another zip and tagged cvs for release 0.5 You can get the file at: http://sourceforge.net/project/showfiles.php?group_id=19015 I'm looking at some tweaks to the existing samples and plan to add a few modal dialogs, so sometime next week there will probably be a release 0.5.1. I don't plan to do a distutils build until then. Remember to backup or just delete your old PythonCardPrototype directory before installing a new version, so that the old files aren't still in the package directory. As always, report any problems to the list. Release 0.5 2001-11-09 added a method to preserve the status bar text when a menu is highlighted changed all import statements in the framework to be explicit rather than using the import * style removed loader.py moved configuration code to config.py changed all samples to use from PythonCardPrototype.config import configOptions instead of from PythonCardPrototype.loader import configOptions removed uniqueid.py uniqueid.UniqueIdFactory().createUniqueId() changed to wxNewId() removed monitor.py and navigation.py changed getCurrentBackground() to refer to always refer to the first background in the list; removed all references to _iterator default font size changed to self._size = wxNORMAL_FONT.GetPointSize() changed wxMiniFrame to wxFrame on all debug windows dbBrowser sample uses a modal dialog for login dbBrowser 0.3 also has an icon ka |
From: Kevin A. <al...@se...> - 2001-11-08 20:36:46
|
> > removed uniqueid.py > > uniqueid.UniqueIdFactory().createUniqueId() changed to NewId() > > You should use wxNewId() as NewId() is deprecated. (I think it > has already > been removed from wxWindows, but my alias in wxPython is still there.) Done and checked in. I also added a hack to preserve the status bar text when a menu is selected. ka |
From: Robin D. <ro...@al...> - 2001-11-08 19:58:19
|
> removed uniqueid.py > uniqueid.UniqueIdFactory().createUniqueId() changed to NewId() You should use wxNewId() as NewId() is deprecated. (I think it has already been removed from wxWindows, but my alias in wxPython is still there.) -- Robin Dunn Software Craftsman ro...@Al... Java give you jitters? http://wxPython.org Relax with wxPython! |
From: Kevin A. <al...@se...> - 2001-11-08 18:20:44
|
I completed the explicit import conversion and checked everything into cvs. I would appreciate feedback from anyone with access to cvs before I do a release. I've checked most of the samples and they seem to work correctly as do the debug windows. I also changed all local variables that conflict with a module name (e.g. "event" to "evt"). I may have missed some, so I'll keep testing myself as well to see if anything is broken. Hopefully, the code is easier to follow now since there are no ambiguities with the classes in the framework. I did not change the samples to use explicit imports, so they still contain stuff like from PythonCardPrototype.log import Log ka |
From: Kevin A. <al...@se...> - 2001-11-08 08:40:31
|
> From: Neil Hodgson > > Kevin Altis: > > > What I'm wondering is whethr the imports above are > > considered "good style". I remember Neil bringing this > > up long ago, but I don't know if there was a general rule > > other than avoid import * when possible, which of > > course is always done with wxPython.wx, but other than > > that how does the list above look? > > There is a 'What are the "best practices" for using import in > a module?' > FAQ: > http://www.python.org/cgi-bin/faqw.py?req=show&file=faq04.100.htp > My aversion to "import *" comes from the consensus on comp.lang.python, > especially from Tim Peters - all praise the timbot!. It is also a > good idea > to try to limit dependencies as designs where each module calls a lot of > other modules are hard to understand. Thanks, I forgot about the FAQ. I think one of the problems is a circular reference, so I'm going to switch to the import module form everywhere if possible and then do explicit references in the code. ka |
From: Neil H. <ne...@sc...> - 2001-11-08 06:35:22
|
Kevin Altis: > What I'm wondering is whethr the imports above are > considered "good style". I remember Neil bringing this > up long ago, but I don't know if there was a general rule > other than avoid import * when possible, which of > course is always done with wxPython.wx, but other than > that how does the list above look? There is a 'What are the "best practices" for using import in a module?' FAQ: http://www.python.org/cgi-bin/faqw.py?req=show&file=faq04.100.htp My aversion to "import *" comes from the consensus on comp.lang.python, especially from Tim Peters - all praise the timbot!. It is also a good idea to try to limit dependencies as designs where each module calls a lot of other modules are hard to understand. Neil |
From: Kevin A. <al...@se...> - 2001-11-08 03:26:25
|
I cleaned up widget.py and got the imports to look like: import sys import types from wxPython.wx import * from dispatch import EventDispatch from event import * from error import AbstractMethodException from binding import EventBinding from font import Font import graphic from pom import Component I left the from event import * line because there are so many different events, but the MOUSE_EVENTS list takes care of most of them, so I could be explicit with that import as well. What I'm wondering is whethr the imports above are considered "good style". I remember Neil bringing this up long ago, but I don't know if there was a general rule other than avoid import * when possible, which of course is always done with wxPython.wx, but other than that how does the list above look? ka ps. My fingers are still crossed that I haven't completely broken anything. I've been running various samples as I clean, so I think we're still in good shape. |
From: Andy T. <an...@ha...> - 2001-11-08 00:28:24
|
Kevin, I had made some (minor) changes to my local copy of dbBrowser. It it worthwhile applying them again or should I wait until after 'the purge'? If so, how long do you estimate the code will be in a state of flux? Kevin Altis wrote: > I removed a bunch of the > from somemodule import * > references. I don't think anything has been broken yet, but if you are > getting the latest from cvs, let me know if you run into any problems. > > ka > Regards, Andy -- ----------------------------------------------------------------------- From the desk of Andrew J Todd esq. "Another year older, still no wiser." - Me, on my birthday |