boa-constructor-users Mailing List for Boa Constructor - wxPython GUI Builder (Page 134)
Status: Beta
Brought to you by:
riaan
You can subscribe to this list here.
2000 |
Jan
|
Feb
(1) |
Mar
(18) |
Apr
(4) |
May
(17) |
Jun
(14) |
Jul
(18) |
Aug
(3) |
Sep
(30) |
Oct
(16) |
Nov
(11) |
Dec
(9) |
---|---|---|---|---|---|---|---|---|---|---|---|---|
2001 |
Jan
(19) |
Feb
(10) |
Mar
(4) |
Apr
(6) |
May
(27) |
Jun
(37) |
Jul
(44) |
Aug
(44) |
Sep
(49) |
Oct
(4) |
Nov
(6) |
Dec
(12) |
2002 |
Jan
(27) |
Feb
(22) |
Mar
(48) |
Apr
(21) |
May
(20) |
Jun
(6) |
Jul
(33) |
Aug
(34) |
Sep
(9) |
Oct
(41) |
Nov
(14) |
Dec
(35) |
2003 |
Jan
(75) |
Feb
(75) |
Mar
(59) |
Apr
(22) |
May
(18) |
Jun
(36) |
Jul
(50) |
Aug
(106) |
Sep
(71) |
Oct
(63) |
Nov
(81) |
Dec
(58) |
2004 |
Jan
(48) |
Feb
(42) |
Mar
(57) |
Apr
(64) |
May
(81) |
Jun
(30) |
Jul
(15) |
Aug
(39) |
Sep
(56) |
Oct
(61) |
Nov
(27) |
Dec
(20) |
2005 |
Jan
(74) |
Feb
(62) |
Mar
(237) |
Apr
(83) |
May
(138) |
Jun
(132) |
Jul
(61) |
Aug
(51) |
Sep
(17) |
Oct
(22) |
Nov
(59) |
Dec
(32) |
2006 |
Jan
(7) |
Feb
(7) |
Mar
(24) |
Apr
(15) |
May
(19) |
Jun
(46) |
Jul
(26) |
Aug
(51) |
Sep
(35) |
Oct
(90) |
Nov
(27) |
Dec
(23) |
2007 |
Jan
(22) |
Feb
(17) |
Mar
(14) |
Apr
(28) |
May
(38) |
Jun
(44) |
Jul
(34) |
Aug
(40) |
Sep
(29) |
Oct
(44) |
Nov
(16) |
Dec
(15) |
2008 |
Jan
(12) |
Feb
(37) |
Mar
(48) |
Apr
(35) |
May
(37) |
Jun
(32) |
Jul
(30) |
Aug
(28) |
Sep
(33) |
Oct
(19) |
Nov
(44) |
Dec
(45) |
2009 |
Jan
(30) |
Feb
(16) |
Mar
(48) |
Apr
(56) |
May
(100) |
Jun
(4) |
Jul
(1) |
Aug
|
Sep
|
Oct
(7) |
Nov
|
Dec
(3) |
2010 |
Jan
(8) |
Feb
(3) |
Mar
(4) |
Apr
|
May
|
Jun
|
Jul
|
Aug
|
Sep
(1) |
Oct
(6) |
Nov
(22) |
Dec
|
2011 |
Jan
|
Feb
(4) |
Mar
|
Apr
|
May
(1) |
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
(1) |
Nov
(2) |
Dec
(1) |
2012 |
Jan
|
Feb
|
Mar
(2) |
Apr
|
May
|
Jun
|
Jul
(1) |
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2013 |
Jan
(5) |
Feb
(1) |
Mar
|
Apr
|
May
(3) |
Jun
|
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
2017 |
Jan
|
Feb
|
Mar
|
Apr
|
May
|
Jun
(2) |
Jul
|
Aug
|
Sep
|
Oct
|
Nov
|
Dec
|
From: Riaan B. <riaan@e.co.za> - 2002-10-03 06:49:10
|
Hi Steve, Steve Nicholson wrote: > > When opening a Zope dtml document that contains the UK pound symbol "£" I get the error message below and the document wont open. Is there a way I can add this symbol so it is parsed correctly? I've not found a workaround for this so far. This is not a Boa error, but a Zope/xmlrpc error. It seems Zope is not encoding the content of the document correctly for xml. Please report this issue to the Zope guys. The following suggesting involves some extra work, but define a dtml doc containing only the "£" (with your browser ;) and use it in other dtml docs with <dtml-var pound>. > > thanks > Steve. HTH, Riaan. |
From: Steve N. <yah...@yo...> - 2002-10-02 12:35:46
|
On Wed, 2 Oct 2002 13:06:27 +0100 Steve Nicholson wrote: Hi again Sent message too early as usual, had missed a couple of things in zope.hhp, all working now. thanks again for a great product. Steve. |
From: Steve N. <yah...@yo...> - 2002-10-02 12:05:51
|
Hi Riaan In the list archives http://sourceforge.net/mailarchive/message.php?msg_id=1148269 you mention a 'Custom help files' attachment that gives information on adding other help to the help system. Is this still available from somewhere? I've been trying to add Zope quick reference to the Help with no luck. I have created a separate directory 'zope' under Doc's where I will put all the Zope help. Copied .hhc .hhk .hhp files from boa/appguide, modified them and made what I thought where the right changes in Explorer.gtk.cfg but it doesn't appear to work. Can't find any documentation that points me in the right direction, is there documentation somewhere that I've missed. thanks and have a fantastic day. Steve. |
From: Steve N. <yah...@yo...> - 2002-10-02 09:32:14
|
When opening a Zope dtml document that contains the UK pound symbol "£" I get the error message below and the document wont open. Is there a way I can add this symbol so it is parsed correctly or am I missing something? thanks Steve. ---start-error-msg--------------- 19:31:21: xml.parsers.expat.ExpatError: not well-formed (invalid token): line 5, column 15Traceback (most recent call last): 19:31:21: xml.parsers.expat.ExpatError: not well-formed (invalid token): line 5, column 15 File "/usr/local/boa/ZopeLib/ZopeExplorer.py", line 645, in OnOpenInEditorZopeItem 19:31:21: model, cntrlr = self.editor.openOrGotoZopeDocument(zopeItem) 19:31:21: File "/usr/local/boa/Editor.py", line 768, in openOrGotoZopeDocument 19:31:21: return self.openZopeDocument(zopeObj, wholename) 19:31:21: File "/usr/local/boa/Editor.py", line 778, in openZopeDocument 19:31:21: model.load() 19:31:21: File "/usr/local/boa/ZopeLib/ZopeEditorModels.py", line 85, in load 19:31:21: EditorModels.BasePersistentModel.load(self, notify) 19:31:21: File "/usr/local/boa/Models/EditorModels.py", line 206, in load 19:31:21: self.data = self.transport.load(mode=self.fileModes[0]) 19:31:21: File "/usr/local/boa/ZopeLib/ZopeExplorer.py", line 701, in load 19:31:21: return self.getResource().document_src() 19:31:21: File "/usr/local/boa/ExternalLib/xmlrpclib.py", line 821, in __call__ 19:31:21: return self.__send(self.__name, args) 19:31:21: File "/usr/local/boa/ExternalLib/xmlrpclib.py", line 978, in __request 19:31:21: request) 19:31:21: File "/usr/local/boa/ExternalLib/BasicAuthTransport.py", line 28, in request 19:31:21: return self.parse_response(h.getfile()) 19:31:21: File "/usr/local/boa/ExternalLib/xmlrpclib.py", line 895, in parse_response 19:31:21: p.feed(response) 19:31:21: File "/usr/local/boa/ExternalLib/xmlrpclib.py", line 390, in feed 19:31:21: self._parser.Parse(data, 0) 19:31:21: xml.parsers.expat.ExpatError: not well-formed (invalid token): line 5, column 15 |
From: Steve N. <yah...@yo...> - 2002-09-29 20:53:41
|
When opening a Zope dtml document that contains the UK pound symbol "£" I get the error message below and the document wont open. Is there a way I can add this symbol so it is parsed correctly? thanks Steve. ---start-error-msg--------------- 19:31:21: xml.parsers.expat.ExpatError: not well-formed (invalid token): line 5, column 15Traceback (most recent call last): 19:31:21: xml.parsers.expat.ExpatError: not well-formed (invalid token): line 5, column 15 File "/usr/local/boa/ZopeLib/ZopeExplorer.py", line 645, in OnOpenInEditorZopeItem 19:31:21: model, cntrlr = self.editor.openOrGotoZopeDocument(zopeItem) 19:31:21: File "/usr/local/boa/Editor.py", line 768, in openOrGotoZopeDocument 19:31:21: return self.openZopeDocument(zopeObj, wholename) 19:31:21: File "/usr/local/boa/Editor.py", line 778, in openZopeDocument 19:31:21: model.load() 19:31:21: File "/usr/local/boa/ZopeLib/ZopeEditorModels.py", line 85, in load 19:31:21: EditorModels.BasePersistentModel.load(self, notify) 19:31:21: File "/usr/local/boa/Models/EditorModels.py", line 206, in load 19:31:21: self.data = self.transport.load(mode=self.fileModes[0]) 19:31:21: File "/usr/local/boa/ZopeLib/ZopeExplorer.py", line 701, in load 19:31:21: return self.getResource().document_src() 19:31:21: File "/usr/local/boa/ExternalLib/xmlrpclib.py", line 821, in __call__ 19:31:21: return self.__send(self.__name, args) 19:31:21: File "/usr/local/boa/ExternalLib/xmlrpclib.py", line 978, in __request 19:31:21: request) 19:31:21: File "/usr/local/boa/ExternalLib/BasicAuthTransport.py", line 28, in request 19:31:21: return self.parse_response(h.getfile()) 19:31:21: File "/usr/local/boa/ExternalLib/xmlrpclib.py", line 895, in parse_response 19:31:21: p.feed(response) 19:31:21: File "/usr/local/boa/ExternalLib/xmlrpclib.py", line 390, in feed 19:31:21: self._parser.Parse(data, 0) 19:31:21: xml.parsers.expat.ExpatError: not well-formed (invalid token): line 5, column 15 |
From: Riaan B. <riaan@e.co.za> - 2002-09-27 07:05:40
|
Hi Géza, When the first unicode build of wxPython was released some time ago I did check in some changes to CVS to fix problems I encountered. But I did not run into the issues you mention here. Did you check with the CVS version of Boa? Boa 0.1.0 doesn't work well with the unicode build. I hope to have some time for Boa by the end of next week and will look into these issues then. > Géza Groma wrote: > > Hi, > > Just for curiosity I tried BOA with wxPythonWIN32-2.3.3.1u-Py22 on > WindowsXP. I found that > > 1. Clicking on the help book results in the following error: > c:\projects\wx\src\common\ffile.cpp(140): assert "wxFalse" failed: > invalid parameter This is probably an issue with the wxPython wxHTMLHelpController classes. One workaround would possibly be to convert the help strings passed to it to normal strings (with str()) Anyway, this sounds like a wxPython bug. > 2. Defining Hungarian keyboard layout on XP and hitting a character > with accent mark in the BOA editor leads to the disappearence of all > previous text. (Looks like the character code is not converted to > UNICODE but ASCII in the 128-255 region.) Please test this case in the wxPython demo's STC section: wxStyledTextCtrl_2 and tell me if that behaves the same. > Are these mean that BOA does not yet support UNICODE or should I just > set something to use that? It's supposed to work, but I don't use the unicode build so there might still be a few problems lurking here and there. > > Géza Groma > Institute of Biophysics > Biological Research Center of Hungarian Academy of Sciences > 6701 Szeged, Hungary PS, it's 'Boa', not 'BOA'. Cheers, Riaan. |
From: <gr...@nu...> - 2002-09-27 06:33:34
|
Hi, Just for curiosity I tried BOA with wxPythonWIN32-2.3.3.1u-Py22 on = WindowsXP. I found that 1. Clicking on the help book results in the following error: c:\projects\wx\src\common\ffile.cpp(140): assert "wxFalse" failed: = invalid parameter 2. Defining Hungarian keyboard layout on XP and hitting a character with = accent mark in the BOA editor leads to the disappearence of all previous = text. (Looks like the character code is not converted to UNICODE but = ASCII in the 128-255 region.) Are these mean that BOA does not yet support UNICODE or should I just = set something to use that? G=E9za Groma Institute of Biophysics Biological Research Center of Hungarian Academy of Sciences 6701 Szeged, Hungary |
From: Riaan B. <riaan@e.co.za> - 2002-09-26 05:11:39
|
Hi Steve, Steve Nicholson wrote: > > Hi again Riaan > You have reached God status in my book today. Hee hee, cool! > On Wed, 25 Sep 2002 18:25:55 +0200 Riaan Booysen wrote: > > Note that Boa does not completely replace the Browser, its main > > focus is on supporting the base Zope objects and Document/Source > > editing. > > Yes I'm aware of this, Boa gives me exactly what I've been looking for, a tool to quickly edit Document/Source, changing properties etc is a bonus. I got tired of the slowness of the browser interface and decided to investigate what the other options were. I knew I would quickly out grow VI/FTP if I went down that route so worth investing time into Boa so I can use the debugging features etc. > > > wxPython 2.3.2 still has fewer serious issues than 2.3.3 on linux :( > > Ok I will keep this in mind, if things get to frustrating I will down grade, it takes about 2 hours to compile wxGTK & wxPython on this box so it will be last option at the moment. It should be ok. Debugging is broken for me tho on 2.3.3/wxGTK so be warned. (Blocking issue with wxProcess/wxExecute) > Is wxPython 2.3.3 ok on Windows with Boa? Yes, runs very well there (where I am usually). > My colleague works on Win2000, he doesn't have proper Internet access at the moment so I was going to put everything on a CD and post it to him. Go ahead. > This is the one I got > http://boa-constructor.sourceforge.net/Help/Docs.tar.gz > is it any different to the boa-constructor-0.1.0-alpha.docs.zip version? Yup, it's the previous version of the docs. It was released between official releases. > Wow, thanks again Riaan you've solved all my problems, tomorrow will probably be the most productive day for me compared with the last few weeks. I'm relatively new to python and Zope, my colleague does most of the programming, I do the system admin but need to get more into the programming side of things. Boa is really going to help me because the click and wait of the browser interface was doing my head in (I don't know how Richard has put up with it) and I'm sure the debugging features will help me learn faster as well. Glad I could help! > > I see your email is .za, are you based in South Africa? Yup. > > thanks and have a fantastic day. > Steve. BTW, you are certainly not the first one to run into the 'wrong password' Boa/Zope issue. I think I need to add a confirm password dialog after changing a password. Cheers, Riaan. |
From: Steve N. <yah...@yo...> - 2002-09-25 23:02:02
|
Hi again Riaan You have reached God status in my book today. On Wed, 25 Sep 2002 18:25:55 +0200 Riaan Booysen wrote: > Interesting typo! 'tired of' and/or 'tied to'? ;) hm.. I meant "tired of" but as you suggest both were true! > My current commercial project is pure Python, but the previous one > was a Zope project. > > Note that Boa does not completely replace the Browser, its main > focus is on supporting the base Zope objects and Document/Source > editing. Yes I'm aware of this, Boa gives me exactly what I've been looking for, a tool to quickly edit Document/Source, changing properties etc is a bonus. I got tired of the slowness of the browser interface and decided to investigate what the other options were. I knew I would quickly out grow VI/FTP if I went down that route so worth investing time into Boa so I can use the debugging features etc. > wxPython 2.3.2 still has fewer serious issues than 2.3.3 on linux :( Ok I will keep this in mind, if things get to frustrating I will down grade, it takes about 2 hours to compile wxGTK & wxPython on this box so it will be last option at the moment. Is wxPython 2.3.3 ok on Windows with Boa? My colleague works on Win2000, he doesn't have proper Internet access at the moment so I was going to put everything on a CD and post it to him. > > On linux there is a serious CPU usage issue, please make sure this > Preference is turned off (Preferences->Platform or prefs.gtk.rc.py): > > edUseCustomSTCPaintEvtHandler = false You have answered my next question with this and the Editor is much faster now. I noticed the Boa process was using over 40% CPU and got so slow it was almost un-responsive with a document open in the Editor window. > Under the Editor menu Windows->All window dimensions-> there are > options to save/load the current settings. Position your windows > and save it. This positions windows absolutely, so it should avoid > window manager issues (if that is the cause) Yes fantastic another one solved, this is the main reason I had so much problem with setting up Zope access originally because I couldn't see the properties in the Inspector. > It seems that you don't have expat installed, this is part of > standard Python... separate package on Debian "python-xmlbase", quick apt-get and fixed:). > This (including the auto install problem) are all symptoms of > specifying an incorrect password. Now this is really frustrating as I checked it over again, I must have been doing something wrong entering it in the Explorer.gtk.cfg as I was changing the file directly due to not being able to see the properties. Just did it again from the Inspector and it works fine now. Looking at Explorer.gtk.cfg I see it is encrypted with double quote, the other instance is plan text single quoted with an "A" at the beginning so no wonder I was having so many problems by entering it directly. > The docs are on the Sourceforge downloads page. The Boa app > help/tutorial > is part of the source distro on the downloads page. Now I feel really silly, I read through the lists/forums and decided to go straight to the CVS version, I looked everywhere bar the downloads page. This is the one I got http://boa-constructor.sourceforge.net/Help/Docs.tar.gz is it any different to the boa-constructor-0.1.0-alpha.docs.zip version? Wow, thanks again Riaan you've solved all my problems, tomorrow will probably be the most productive day for me compared with the last few weeks. I'm relatively new to python and Zope, my colleague does most of the programming, I do the system admin but need to get more into the programming side of things. Boa is really going to help me because the click and wait of the browser interface was doing my head in (I don't know how Richard has put up with it) and I'm sure the debugging features will help me learn faster as well. I see your email is .za, are you based in South Africa? thanks and have a fantastic day. Steve. |
From: Riaan B. <riaan@e.co.za> - 2002-09-25 16:22:19
|
Hi Steve, Steve Nicholson wrote: > > Hi Riaan > Boa looks like a great piece of software and reading in the list that you are using it professionally to do Zope Sites has encouraged me to keep trying to get it working. I'm very tied of using the browser based ZMI. Interesting typo! 'tired of' and/or 'tied to'? ;) My current commercial project is pure Python, but the previous one was a Zope project. Note that Boa does not completely replace the Browser, its main focus is on supporting the base Zope objects and Document/Source editing. > > What version of wxPython do you recommend to use with Boa CVS? I have wxPythonSrc-2.3.3.1 and starting to wonder if this is causing all my problems. Reading through all the Boa forums and lists I can't determine which is the definitive one to use with CVS version of Boa at the moment. I'm using Boa Constructor v0.1.3a from CVS, wxPythonSrc-2.3.3.1 (wxGTK that comes with wxPython) on Linux Debian 3.0, Zope 2.5.1, wxPython 2.3.2 still has fewer serious issues than 2.3.3 on linux :( On linux there is a serious CPU usage issue, please make sure this Preference is turned off (Preferences->Platform or prefs.gtk.rc.py): edUseCustomSTCPaintEvtHandler = false > I'm also using ION as my window manager and starting to wonder if this is causing some problems as windows don't appear to open correctly, I have to move the window to another frame to for it to refresh to use all the screen. Under the Editor menu Windows->All window dimensions-> there are options to save/load the current settings. Position your windows and save it. This positions windows absolutely, so it should avoid window manager issues (if that is the cause) (Note: I've now found Boa is not the cause for my Zope access problem, so the others I can put up with). > > Errors I'm getting at the moment: > 1. On start up; > 11:22:51: Explorers.DAVExplorer not installed: No module named xml.parsers It fails on this line: from xml.parsers import expat It seems that you don't have expat installed, this is part of standard Python... > 11:22:51: One or more transports could not be loaded, if the problem is not rectifiable, > 11:22:51: consider removing the transport from the "installedtransports" list in the Explorer config. Click "Details" > Not too worried about this as I'm not using WebDAV so can remove it from list. Copy/Pasting from the filesystem uses the DAV support (because of the automatic content handling you get with a DAV PUT) > 2. Connects to Zope fine, for some reason it wouldn't do the auto install of ZOA, kept gettting a permissions error so I imported the ZOA.zexp and can connect ok now. I can browse the objects on the ZODB and view object properties but can't edit them keep getting permssions errors. This (including the auto install problem) are all symptoms of specifying an incorrect password. Just like through the web, incorrect authentication still gives you browsing and some reading rights (the rights that the anonymous user has). There is a bug in Boa with wxPython 2.3.3 where pressing Enter in the Inspector does not post. So make sure you move up or down from the password field to post before tesing again. > 2.1 have investigated the above problem more and it's something to do with Zope not Boa because I can get it to work perfectly on a clean instance of Zope (should have test this earlier). It installed ZOA, can change documents and everything, fantastic this is just what I have been looking for, thank you very much Riaan for releasing it. As you can see from my excitement this is the first time I have got it working properly, it's taken a long time to get this far. Glad you're enjoying it ;) > So now I have to figure out why there is a permissioning problem on my original Zope instance or move everything across. Strange because I have manager roll and can do everything from the Browser ZMI. Luckily, just fix the password :) > 3. Using the Boa Help window; once I have done one search or find, I can't delete or change the text in the search or find box to do another search. Only way round it is to close the help window and open it again. I use wxPython's wxHTMLHelpController classes to display the help. I did not notice this behaviour last time I checked on Linux, will check again. >While I remember, there isn't a link for the Doc's on the http://boa-constructor.sourceforge.net/Download.html or anywhere else, the only way I found them was a URL in one of the messages on this list and that took some finding. The docs are on the Sourceforge downloads page. The Boa app help/tutorial is part of the source distro on the downloads page. > > 4. Clicking on the "test" icon in the Pallete opens a wxFrame.py in the editor, when closing this and not saving I get the following error. Don't know if this is important. I was also getting an error when opening a file from the local FS in the editor about no add module but can't recreate it now so can't get the exact error message. > 13:00:58: AttributeError: 'Editor' module has no attribute 'wxID_EDITORDESIGNER'Traceback (most recent call last): > 13:00:58: AttributeError: 'Editor' module has no attribute 'wxID_EDITORDESIGNER' File"/usr/local/boa/Palette.py", line 318, in OnTest > 13:00:58: Tests.test_wxFrame(self) > 13:00:58: File "/usr/local/boa/Tests.py", line 19, in test_wxFrame 13:00:58: Editor.wxID_EDITORDESIGNER) > 13:00:58: AttributeError: 'Editor' module has no attribute 'wxID_EDITORDESIGNER Yes, I fixed this some time ago, just haven't checked it in yet. The linux test always fails (even when it works ;) because the result it tests against was generated on windows :) > > Well now that I've partly solved my problem with accessing Zope and know it's not Boa sorting out the other errors aren't that important to me they where to let you know about them really. > > Thanks for a fantastic product you have really made my day today with this now I can see what it can do. I'm sure I will become even more impressed with it as I learn how to use it with Zope and Python. Enjoy! > > Steve. > Cheers, Riaan. |
From: Steve N. <yah...@yo...> - 2002-09-25 13:06:37
|
Hi Riaan Boa looks like a great piece of software and reading in the list that you are using it professionally to do Zope Sites has encouraged me to keep trying to get it working. I'm very tied of using the browser based ZMI. What version of wxPython do you recommend to use with Boa CVS? I have wxPythonSrc-2.3.3.1 and starting to wonder if this is causing all my problems. Reading through all the Boa forums and lists I can't determine which is the definitive one to use with CVS version of Boa at the moment. I'm using Boa Constructor v0.1.3a from CVS, wxPythonSrc-2.3.3.1 (wxGTK that comes with wxPython) on Linux Debian 3.0, Zope 2.5.1, I'm also using ION as my window manager and starting to wonder if this is causing some problems as windows don't appear to open correctly, I have to move the window to another frame to for it to refresh to use all the screen. (Note: I've now found Boa is not the cause for my Zope access problem, so the others I can put up with). Errors I'm getting at the moment: 1. On start up; 11:22:51: Explorers.DAVExplorer not installed: No module named xml.parsers 11:22:51: One or more transports could not be loaded, if the problem is not rectifiable, 11:22:51: consider removing the transport from the "installedtransports" list in the Explorer config. Click "Details" Not too worried about this as I'm not using WebDAV so can remove it from list. 2. Connects to Zope fine, for some reason it wouldn't do the auto install of ZOA, kept gettting a permissions error so I imported the ZOA.zexp and can connect ok now. I can browse the objects on the ZODB and view object properties but can't edit them keep getting permssions errors. 2.1 have investigated the above problem more and it's something to do with Zope not Boa because I can get it to work perfectly on a clean instance of Zope (should have test this earlier). It installed ZOA, can change documents and everything, fantastic this is just what I have been looking for, thank you very much Riaan for releasing it. As you can see from my excitement this is the first time I have got it working properly, it's taken a long time to get this far. So now I have to figure out why there is a permissioning problem on my original Zope instance or move everything across. Strange because I have manager roll and can do everything from the Browser ZMI. 3. Using the Boa Help window; once I have done one search or find, I can't delete or change the text in the search or find box to do another search. Only way round it is to close the help window and open it again. While I remember, there isn't a link for the Doc's on the http://boa-constructor.sourceforge.net/Download.html or anywhere else, the only way I found them was a URL in one of the messages on this list and that took some finding. 4. Clicking on the "test" icon in the Pallete opens a wxFrame.py in the editor, when closing this and not saving I get the following error. Don't know if this is important. I was also getting an error when opening a file from the local FS in the editor about no add module but can't recreate it now so can't get the exact error message. 13:00:58: AttributeError: 'Editor' module has no attribute 'wxID_EDITORDESIGNER'Traceback (most recent call last): 13:00:58: AttributeError: 'Editor' module has no attribute 'wxID_EDITORDESIGNER' File"/usr/local/boa/Palette.py", line 318, in OnTest 13:00:58: Tests.test_wxFrame(self) 13:00:58: File "/usr/local/boa/Tests.py", line 19, in test_wxFrame 13:00:58: Editor.wxID_EDITORDESIGNER) 13:00:58: AttributeError: 'Editor' module has no attribute 'wxID_EDITORDESIGNER Well now that I've partly solved my problem with accessing Zope and know it's not Boa sorting out the other errors aren't that important to me they where to let you know about them really. Thanks for a fantastic product you have really made my day today with this now I can see what it can do. I'm sure I will become even more impressed with it as I learn how to use it with Zope and Python. Steve. |
From: Riaan B. <riaan@e.co.za> - 2002-09-03 15:54:29
|
Hi Thomas, Thomas Runge wrote: > > Hi! > I have to admit having not very much experience with python programming and > being a Boa-newbie.... Welcome! > > Of course I'm very keen on finding a time-saving way of GUI-programming. Boa > definitely looks very exciting. After getting the latest CVS-revision of Boa > (yesterday), I was able to do a little "Hello world" app successfully within > a reasonable amount of time. Fine! > > While using Boa for another more sophisticated programming example, some > questions about the underlying philosophy of Boa did arise: > > A have realized that it is currently not possible to do subclassing with > wxWindows-controls and then use it in the Boa-designer. As subclassing is a > feature I use quite often, I would be interested to know: There are already two ways in which you can sub-class. The first way (you probably know of) is to define a new component for the Palette. This is a bit of effort but gives you complete control. See Plug-ins/UserCompanions.plug-ins.py, but maybe wait until the newbieness wears off before going this route. The second way is simpler but not as powerful. You may define a class attribute called _custom_classes which defines your sub-class name and the equivalent (in this case parent) wxWindows class. See Docs/boa/apphelp/ExtendingBoa.html (Available with the release version of Boa, not from CVS Note the other features for better integrating generated and hand crafted code.) Also see: Examples/advanced/CustomClasses/wxFrame1.py > - Shouldn't be python a programming language being "dynamically enough" to > close the gap between "compile-time" and "run-time"? I'm not sure, but I > think there are Java-GUI-builders that execute the code of the subclassed > control within the designer-window... There is a very clear separation between run-time behaviour and design-time behaviour, if you have a suggestion please be clearer about what you want. I have no problems with the current model. > When programming my first python-GUI-example, I realized that my personal > programming performance was quite low: Being new to wxPython, finding out > the right spelling of every wxPython API-function was rather > time-consuming... > > - Does Boa offer some features that assist the programmer during coding? Yes, Code Completion (Ctrl-Space, Call Tips (Ctrl-Shift-Space inside brackets) Code completion in Python is quite tricky as it's not always obvious from the source code what the type of an object is. Never the less code completion usually works well on the generated frame code. (Remember to refresh (Ctrl-R) the code so the internal parsed structures can be updated, or turn on auto refresh under Preferences) > I hope that nowbody gets me wrong. I consider Boa to be a great tool and I > just want to use Boa exactly the way it is intended to be used.... > > Thanks in advance.... > Thomas HTH, Riaan. |
From: Thomas R. <t....@ne...> - 2002-09-03 15:14:36
|
Hi! I have to admit having not very much experience with python programming and being a Boa-newbie.... Of course I'm very keen on finding a time-saving way of GUI-programming. Boa definitely looks very exciting. After getting the latest CVS-revision of Boa (yesterday), I was able to do a little "Hello world" app successfully within a reasonable amount of time. Fine! While using Boa for another more sophisticated programming example, some questions about the underlying philosophy of Boa did arise: A have realized that it is currently not possible to do subclassing with wxWindows-controls and then use it in the Boa-designer. As subclassing is a feature I use quite often, I would be interested to know: - Is this restriction based on the current design of Boa? Or will it be possible in the future to use the Boa-designer with subclassed controls? - Shouldn't be python a programming language being "dynamically enough" to close the gap between "compile-time" and "run-time"? I'm not sure, but I think there are Java-GUI-builders that execute the code of the subclassed control within the designer-window... When programming my first python-GUI-example, I realized that my personal programming performance was quite low: Being new to wxPython, finding out the right spelling of every wxPython API-function was rather time-consuming... - Does Boa offer some features that assist the programmer during coding? - Does a CodeCompletion-feature make sense? Or am I using boa just the wrong way? I hope that nowbody gets me wrong. I consider Boa to be a great tool and I just want to use Boa exactly the way it is intended to be used.... Thanks in advance.... Thomas |
From: Riaan B. <riaan@e.co.za> - 2002-08-19 04:13:32
|
Hello Christian, Christian Tismer wrote: > After heavy, heavy startup problems, I'm now at the > break-even point, where I begin to become more > productive than with Delphi. Welcome to this nice place ;) > (And I used Delphi for > many years, in hairy contexts like Netscape plugins). > > Everything is changing. wxPython with Boa and Stackless > is going to be a killer app. Absolutely!! > I'm writing a wizard to Imagic software, which is used > for editing image sequences of microscope pictures. > These are series of images, taken from incremental > changing angles, and the software creates a 3-D image > sequence form that. > The wizard shows the initial data in a movie window, > which displays the movie all the time, as a tasklet. > The user can select images in a different window, > change parameters, select area of interest, coarse > factors, filters and so on. > When he proceeds in the wizard and has made selections, > modified image sequences are computed in the background. > Not only that, the already computed part is again > visible as a movie, which just shows the already > available data. > All these and some more jobs are running in parallel, > very smoothly, always able to be stopped or reverted. > > Sorry, I'm blathering. It has become so much fun, > after I'm behind the largest hurdles. > > Heehee, and the whole crap is at the moment below > 5000 lines, all included. > I use Boa and wxPython of course, the PIL for the > raw imaging stuff, Numeric for operations like > filtering and cross-correlations, and Stackless > for parallelism. > > enough for now - later - chris Thanks for all the info, it sounds very cool! > -- > Christian Tismer :^) <mailto:ti...@ti...> > Mission Impossible 5oftware : Have a break! Take a ride on Python's > Johannes-Niemeyer-Weg 9a : *Starship* http://starship.python.net/ > 14109 Berlin : PGP key -> http://wwwkeys.pgp.net/ > work +49 30 89 09 53 34 home +49 30 802 86 56 pager +49 173 24 18 776 > PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 > whom do you want to sponsor today? http://www.stackless.com/ > Cheers, Riaan. |
From: Christian T. <ti...@ti...> - 2002-08-16 12:39:00
|
Riaan Booysen wrote: ... > Oops, I meant to say, I would not use the Designer for a notebook > with 20 pages either. Reparenting is a good solution here. Yes, I understood it already. This was the early stage in my learning curve. I wanted to use tabs to have a nice undo interface, but I realized early that is impossible to have control ofver the tab size. I wanted them to the left, but large, with horizontal text. After I found that this isn't doable, I wrote my own set of container windows and switched to the reparent idea. It appears that wxWindows has accumulated a lot of stuff over the years, which would better be left out and made flexible by scripting. Building a nice tabbed notebook in a custom defined style is something what I no longer fear to do with Boa and Python, especially with your outlined enhancements on the horizon. After heavy, heavy startup problems, I'm now at the break-even point, where I begin to become more productive than with Delphi. (And I used Delphi for many years, in hairy contexts like Netscape plugins). Everything is changing. wxPython with Boa and Stackless is going to be a killer app. I'm writing a wizard to Imagic software, which is used for editing image sequences of microscope pictures. These are series of images, taken from incremental changing angles, and the software creates a 3-D image sequence form that. The wizard shows the initial data in a movie window, which displays the movie all the time, as a tasklet. The user can select images in a different window, change parameters, select area of interest, coarse factors, filters and so on. When he proceeds in the wizard and has made selections, modified image sequences are computed in the background. Not only that, the already computed part is again visible as a movie, which just shows the already available data. All these and some more jobs are running in parallel, very smoothly, always able to be stopped or reverted. Sorry, I'm blathering. It has become so much fun, after I'm behind the largest hurdles. Heehee, and the whole crap is at the moment below 5000 lines, all included. I use Boa and wxPython of course, the PIL for the raw imaging stuff, Numeric for operations like filtering and cross-correlations, and Stackless for parallelism. enough for now - later - chris -- Christian Tismer :^) <mailto:ti...@ti...> Mission Impossible 5oftware : Have a break! Take a ride on Python's Johannes-Niemeyer-Weg 9a : *Starship* http://starship.python.net/ 14109 Berlin : PGP key -> http://wwwkeys.pgp.net/ work +49 30 89 09 53 34 home +49 30 802 86 56 pager +49 173 24 18 776 PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 whom do you want to sponsor today? http://www.stackless.com/ |
From: Riaan B. <riaan@e.co.za> - 2002-08-15 23:05:21
|
Riaan Booysen wrote: > Christian Tismer wrote: > > I'm writing a wizard with some 20 pages. Putting this > > all into the same tabbed subwindow gives me headaches > > with the myriad of objects, which all appear in the > > main frame. By the reparent trick, I can have simple, > > small pages, clean distinction between namespaces, > > and every page has its own frame for testing. > > Furthermore, I can create multiple instances of > > them, for pages which do repeat, and so on. > > I would not use Oops, I meant to say, I would not use the Designer for a notebook with 20 pages either. Reparenting is a good solution here. Cheers, Riaan. |
From: Riaan B. <riaan@e.co.za> - 2002-08-15 22:47:26
|
Hi Christian, Christian Tismer wrote: > > Riaan Booysen wrote: > > [slider] > > >>>I don't understand. The control moving and sizing behaves properly > >>>for me. > > So you don't use all possible options. There is an > sl_label flag or such. Wow, cool, didn't know the option existed! > > Sounds like you have a slider is somehow linked to a text control that > > shows the slider value. Boa provides no such features. > > No, I don't. Please try the attachment :-) :) I see what you mean, but I'm afraid I'm going to blame wxWindows for it. If you execute the following code repeatedly on a slider in wxSL_LABELS mode, you'll see it move across the frame: self.slider1.SetPosition(self.slider1.GetPosition()) You can imagine Boa's Frame Designer has a hard time with it. The root of the problem is that it's a composite control, but they are siblings, so when the slider position is queried, it's own position is returned, but when it is set, all the siblings' positions are set (relative to the label). The problem with putting all the controls in a container is that you loose your slider control's properties (instead the container's properties are picked up by inspection). Anyway, I think this is a bug that should be fixed because as I understand it, a wxSlider in wxSL_LABELS mode will not work correctly inside Sizers either. > > That is not nice (access too slow). > > I didn't mean to offend you. > Speed isn't the only issue. You can see only one > of the pages. And it is also namespaces. > I'm writing a wizard with some 20 pages. Putting this > all into the same tabbed subwindow gives me headaches > with the myriad of objects, which all appear in the > main frame. By the reparent trick, I can have simple, > small pages, clean distinction between namespaces, > and every page has its own frame for testing. > Furthermore, I can create multiple instances of > them, for pages which do repeat, and so on. I would not use > > I let them all inherit form a WizPage class mixin, > so they have a defined interface for data transfer, > methods like onSirstShow, onGoNext, onCancel..., > which they can override. There is a central wizard > manager which calls these methods, and also provides > a channel object, where pages can send commands to > change the layout of their environment... > Well, this has quite evolved, and I think to isolate > some framework for others to use, later. Great, sounds quite cool! People regularly ask on the wxPython list for the Wizard classes that are part of wxWindows (but now yet wxPython) > > Do you know about the shortcuts for the default actions of components? > > Just double-click on the control. > > Sure. > > > For notebooks double-click on the tab pages the get the > > Collection editor for the Pages. Double click on a Page in the > > Collection editor to set that page as active. > > It goes quite quick once you get used to it. > > Yes, that's fine. Tab selection isn't that slow, > but finding controls and relevant code in the .py > is slow, compared to quite tab access to multiple > modules by the editor :-) Any UI ideas to speed up the searching? Or is it simply a case of too many controls? I use the Explore/Event view for this task, but you are absolutely right about the size/namespace issue, it bothers me too. > ... > > > You mean Forms and Frames ;) > > Ahem, yes :) > > > It's definitely part of my plans to provide a more generic version > > of what you are doing with frame reparenting. Currently the Designer > > can only generate source for classes derived from top-level windows > > (wxFrame, wxDialog, etc), I want to allow that for any control. > > That would be a break-through. Designing widgets > in the designer. I do this with frames, too, and > when I'm done with it, Here it's also cool that controls are copied as source to the clipboard, so you can just copy from the Designer and paste into your code too. > I move the code into some > class, rename all the self.Panel alikes to self > and make it stand-alone. It's *always* been on the todo list. That's what the 'Inherit' button on the toolbar of the Palette has been promising since the first version of Boa ;) Maybe I should just try it for wxPanel for now (like Delpi), it would surely help many people. I just realised I can use Boa's Custom Classes to implement half of this feature! This is the (simplest) way I imagine it: From the New palette page, you click wxPanel. A new module wxPanel1.py is created, can be edited like a frame. In a different module, say wxFrame1.py, you edit your frame and define a wxPanel and your new wxPanel1 as a custom class, e.g. _custom_classes = {'wxPanel': ['wxPanel1']} and add 'from wxPanel1 import wxPanel1' to the imports and change the Class property to 'wxPanel1' So Boa's not actually helping that much (the composite controls are displayed as plain wxPanels), but it's not getting in your way either. This simple version actually looks quite doable. > Stackless' parallelism would make sense in Boa. > You could do lots of things in the background, > in a very simple manner. I will give you > an example, later. Groovy, looking forward to it! How different is it to threads? I've also wanted to do this for a while (spesifically: supporting asynchronous operation for the Explorer transports) So far I have avoided it because the amount of the amount of work it seems required. Also async code is much more tricky (for me anyway). In short I cannot see how to get non-blocking operations without rewriting a lot of code (less clearly!) and changing over to some notification framework. I'd love to hear your ideas on this, especially if it doesn't involve that much redesign! Thanks, Riaan. > > -- > Christian Tismer :^) <mailto:ti...@ti...> > Mission Impossible 5oftware : Have a break! Take a ride on Python's > Johannes-Niemeyer-Weg 9a : *Starship* http://starship.python.net/ > 14109 Berlin : PGP key -> http://wwwkeys.pgp.net/ > work +49 30 89 09 53 34 home +49 30 802 86 56 pager +49 173 24 18 776 > PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 > whom do you want to sponsor today? http://www.stackless.com/ > |
From: Christian T. <ti...@ti...> - 2002-08-15 16:18:49
|
Riaan Booysen wrote: [slider] >>>I don't understand. The control moving and sizing behaves properly >>>for me. So you don't use all possible options. There is an sl_label flag or such. > Sounds like you have a slider is somehow linked to a text control that > shows the slider value. Boa provides no such features. No, I don't. Please try the attachment :-) > That is not nice (access too slow). I didn't mean to offend you. Speed isn't the only issue. You can see only one of the pages. And it is also namespaces. I'm writing a wizard with some 20 pages. Putting this all into the same tabbed subwindow gives me headaches with the myriad of objects, which all appear in the main frame. By the reparent trick, I can have simple, small pages, clean distinction between namespaces, and every page has its own frame for testing. Furthermore, I can create multiple instances of them, for pages which do repeat, and so on. I let them all inherit form a WizPage class mixin, so they have a defined interface for data transfer, methods like onSirstShow, onGoNext, onCancel..., which they can override. There is a central wizard manager which calls these methods, and also provides a channel object, where pages can send commands to change the layout of their environment... Well, this has quite evolved, and I think to isolate some framework for others to use, later. > Do you know about the shortcuts for the default actions of components? > Just double-click on the control. Sure. > For notebooks double-click on the tab pages the get the > Collection editor for the Pages. Double click on a Page in the > Collection editor to set that page as active. > It goes quite quick once you get used to it. Yes, that's fine. Tab selection isn't that slow, but finding controls and relevant code in the .py is slow, compared to quite tab access to multiple modules by the editor :-) ... > You mean Forms and Frames ;) Ahem, yes :) > It's definitely part of my plans to provide a more generic version > of what you are doing with frame reparenting. Currently the Designer > can only generate source for classes derived from top-level windows > (wxFrame, wxDialog, etc), I want to allow that for any control. That would be a break-through. Designing widgets in the designer. I do this with frames, too, and when I'm done with it, I move the code into some class, rename all the self.Panel alikes to self and make it stand-alone. ... >>back to my pressing project problem*) -- ciao - chris >> >>*) deriving from a wxStaticBitmap works fine, but for some >>reason, I cannot avoid to produce a memory leak a wxBitmap >>of size 12 is always left over, even if I do no more than >> >>class MySpecialBitmap(wxStaticBitmap): >> def __init__(self, *args, **kwds): >> wxStaticBitmap.__init__(self, *args, **kwds) > > > I cannot reproduce this. > How are you using the StaticBitmap? > Which version of Python? I'm doing some ownerdraw stuff, also I do it from a tasklet in the background, timer controlled. I found out what happens, it was my fault. No proper cleanup, the process ended with some tasklets not finished. Stackless' parallelism would make sense in Boa. You could do lots of things in the background, in a very simple manner. I will give you an example, later. -- Christian Tismer :^) <mailto:ti...@ti...> Mission Impossible 5oftware : Have a break! Take a ride on Python's Johannes-Niemeyer-Weg 9a : *Starship* http://starship.python.net/ 14109 Berlin : PGP key -> http://wwwkeys.pgp.net/ work +49 30 89 09 53 34 home +49 30 802 86 56 pager +49 173 24 18 776 PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 whom do you want to sponsor today? http://www.stackless.com/ |
From: Riaan B. <riaan@e.co.za> - 2002-08-13 20:35:08
|
Hello Sebastian, Sebastian Hilbert wrote: > > Hi > > I am fairly new to python and Boa. Some people at the project I > work with ( www. gnumed.org ) wondered if BOA supports sizers. > > Hell. I don't know. Maybe one of you could answer this. No, Boa does not support Sizers yet. I want to add them to Boa (even though I don't really use sizers), but the code generation needs to be changed before I can add them. It's on the todo list, I just don't know when... > > Your help is very much appreciated. > > Regards > Sebastian Cheers, Riaan. |
From: Riaan B. <riaan@e.co.za> - 2002-08-13 20:35:04
|
Hi Christian, Christian Tismer wrote: > >>One of them is the slider which I use. > >>It has wrong tick handling, it does *not* respond to > >>scrollevents, and when labels are selected, it becomes > >>almost impossible to position the control in the IDE, since > >>it jumps to the left. :-) > > > > > > I don't understand. The control moving and sizing behaves properly > > for me. > > Yes, unless you tell it to get a label which tells the current > position. Boy then still thinks to know where the boundaries > are, but the control believes it starts with the label, > and positioning becomes impossible. I'm sorry, but I still don't understand. Sounds like you have a slider is somehow linked to a text control that shows the slider value. Boa provides no such features. If you mean that wrote a new composite slider/label control, then it should work like the example StaticTextCtrl (including it's limitations) > On events: I tested the sliderevent it doesn't respond. > Basically, it looks like a mistake in wxWindows to let > it support it, since the docs say sliderevents are obsolete. > Therefore, I'd remove the entry from Boa. It's gone. Thanks. > > Tickfreq is another one, I think I found a note in the > source that this isn't handled correctly yet. > > > Note the Designer always tries to take over the mouse clicks of > > a control for consistent selection and movement. > > So you can't slide the slider in the IDE, set it's Value property. > > Yes, I know that. Same with tabbed notebooks. I'd love to > tech them tabbing in the IDE, since that would make it > considerable to put objects on them. > Actually, access is too slow for me, and I use a couple of > dummy wxFrames for my pages, and dynamically reparent them > into my notebook container. That is not nice (access too slow). Do you know about the shortcuts for the default actions of components? Just double-click on the control. For notebooks double-click on the tab pages the get the Collection editor for the Pages. Double click on a Page in the Collection editor to set that page as active. It goes quite quick once you get used to it. Leave the collection editor open, then you do it only once per session. > I do this in many window contexts, since I'd like to > mimick what Delphi does with its frames and subframes. You mean Forms and Frames ;) It's definitely part of my plans to provide a more generic version of what you are doing with frame reparenting. Currently the Designer can only generate source for classes derived from top-level windows (wxFrame, wxDialog, etc), I want to allow that for any control. There are unfortunately many other more pressing issues... > > Or maybe it should be split up like the Palette pages are? > > Say FramesComp.py, ContainersLayoutComp.py, BasicControlsComp.py, > > ButtonsComp.py and ListControlsComp.py > > Looks like a good solution. > This would make it much simpler to look up a definition. > It took a lot of time until I understood where the labels in the > Palette come from, and the icons (since the latter are computed > names, tricky :-) The component example file UserCompanions.plug-in.py contains the following cryptic clue: # Add an entry to this dict with the following structure: # <component class>: ['Tip name and bitmap file', <companion>] I've changed it to 'Palette tip name and bitmap file' I'll add a word about it to the ExtendingBoa document too. > > Thanks so far, I will become a real Boa (ab)user. Great! > back to my pressing project problem*) -- ciao - chris > > *) deriving from a wxStaticBitmap works fine, but for some > reason, I cannot avoid to produce a memory leak a wxBitmap > of size 12 is always left over, even if I do no more than > > class MySpecialBitmap(wxStaticBitmap): > def __init__(self, *args, **kwds): > wxStaticBitmap.__init__(self, *args, **kwds) I cannot reproduce this. How are you using the StaticBitmap? Which version of Python? > > But this is probably a question for Robin :-) > > -- > Christian Tismer :^) <mailto:ti...@ti...> > Mission Impossible 5oftware : Have a break! Take a ride on Python's > Johannes-Niemeyer-Weg 9a : *Starship* http://starship.python.net/ > 14109 Berlin : PGP key -> http://wwwkeys.pgp.net/ > work +49 30 89 09 53 34 home +49 30 802 86 56 pager +49 173 24 18 776 > PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 > whom do you want to sponsor today? http://www.stackless.com/ Cheers, Riaan. |
From: Sebastian H. <seb...@gm...> - 2002-08-13 17:02:54
|
Hi=20 I am fairly new to python and Boa. Some people at the project I=20 work with ( www. gnumed.org ) wondered if BOA supports sizers. Hell. I don't know. Maybe one of you could answer this. Your help is very much appreciated. Regards Sebastian |
From: Christian T. <ti...@ti...> - 2002-08-12 17:03:01
|
Hi Riaan, many many thanks for the good explanation. This has helped me very much. Understanding large code bases is not easy without an overview. Also many thanks for the slider example. > The destinction is usually even clearer than in Delphi, > Robin writes the run-time (wxPython classes), > I write the design-time (Companion classes). Yes, I understand. While I found it handy to have some stuff which is available both at design- and run-time in Delphi. Maybe some methods could be published with some _desidng_time_methods = {...} thingy, but this is minor. [Slider prob] >>One of them is the slider which I use. >>It has wrong tick handling, it does *not* respond to >>scrollevents, and when labels are selected, it becomes >>almost impossible to position the control in the IDE, since >>it jumps to the left. :-) > > > I don't understand. The control moving and sizing behaves properly > for me. Yes, unless you tell it to get a label which tells the current position. Boy then still thinks to know where the boundaries are, but the control believes it starts with the label, and positioning becomes impossible. On events: I tested the sliderevent it doesn't respond. Basically, it looks like a mistake in wxWindows to let it support it, since the docs say sliderevents are obsolete. Therefore, I'd remove the entry from Boa. Tickfreq is another one, I think I found a note in the source that this isn't handled correctly yet. > Note the Designer always tries to take over the mouse clicks of > a control for consistent selection and movement. > So you can't slide the slider in the IDE, set it's Value property. Yes, I know that. Same with tabbed notebooks. I'd love to tech them tabbing in the IDE, since that would make it considerable to put objects on them. Actually, access is too slow for me, and I use a couple of dummy wxFrames for my pages, and dynamically reparent them into my notebook container. I do this in many window contexts, since I'd like to mimick what Delphi does with its frames and subframes. > I have found a problem with the 'TickFreq' property. > It does not sound like like the problem you are describing. > Btw this problem is an instance where the property had the right methods > (GetTickFreq and SetTickFreq) and the getter returned a value (integer), > but the Setter is non-standard, it takes 2 parameters instead of one. > As even the Docs don't know what the second parameter is for and because > this property applies only to windows I think I should hide it from > the design-time interface. Yes, I found a comment like "what is the second parameter for" in the wxWindow docs. I guess this was meant to be the starting value where ticks should be generated? ... > Yes, if there is a problem with the component, I would like it > fixed. If you want to change some generic component/mouse > interaction, it might be more tricky. Will look into this, soon. [Slider plugin] Thanks again! [companion file size] > Or maybe it should be split up like the Palette pages are? > Say FramesComp.py, ContainersLayoutComp.py, BasicControlsComp.py, > ButtonsComp.py and ListControlsComp.py Looks like a good solution. This would make it much simpler to look up a definition. It took a lot of time until I understood where the labels in the Palette come from, and the icons (since the latter are computed names, tricky :-) Thanks so far, I will become a real Boa (ab)user. back to my pressing project problem*) -- ciao - chris *) deriving from a wxStaticBitmap works fine, but for some reason, I cannot avoid to produce a memory leak a wxBitmap of size 12 is always left over, even if I do no more than class MySpecialBitmap(wxStaticBitmap): def __init__(self, *args, **kwds): wxStaticBitmap.__init__(self, *args, **kwds) But this is probably a question for Robin :-) -- Christian Tismer :^) <mailto:ti...@ti...> Mission Impossible 5oftware : Have a break! Take a ride on Python's Johannes-Niemeyer-Weg 9a : *Starship* http://starship.python.net/ 14109 Berlin : PGP key -> http://wwwkeys.pgp.net/ work +49 30 89 09 53 34 home +49 30 802 86 56 pager +49 173 24 18 776 PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 whom do you want to sponsor today? http://www.stackless.com/ |
From: Riaan B. <riaan@e.co.za> - 2002-08-11 17:12:38
|
Hi Christian, Christian Tismer wrote: > > Riaan Booysen wrote: > > Hello everyone, > > > > I've just finished with the check in. > > As far as I could see, there a lots of improvements! > Many thanks for this new version!!! Sure! > I also saw how newobjects are added to the palette, > although it is hard for me to find out how exactly > the interface works. > > Coupla questions. > Is there some document? For the next release I've started work on some documents, but they are incomplete and currently only give an overview. I think I will add some of this reply to them :) The best document for me in such circumstances has always been examples and of that Boa has plenty. Spesifically see bcrtl/user/*.py and Plug-ins/UserCompanions.plug-in.py. > How is, for instance the property interface working: Any Get/Set > pair defines a property? Basically yes. e.g. wxTextCtrl.GetValue() wxTextCtrl.SetValue(val) So a Property named 'Value' will be picked up automatically. It's getter is called and the type is inspected. Simple types like ints, string, etc are handled automatically. When a property is a reference to an object (for which the getter could possibly return None) or some other type which cannot be determined by introspection alone, you must add property definitions (self.editors) to the associated companion class. Property values can be 'routed' in many ways. CtrlRoute: Get and Set maps directly to component Get and Set. This type is automatically picked up by inspection. CompnRoute: Get and Set maps to Companion Get and Set. Used when you need to fully customise a property. Used when the Get and Set methods of the control do not map to Get*, Set*, e.g. Show() and IsShown(). Used when new (possibly computed) properties are needed for which there are no methods on the component. EventRoute: Used by Event definitions. IndexRoute: Used by collection editor properties. Get and Set maps to Companion Get and Set with index. NameRoute: Used when a property is split up into a set of flags. Get and Set maps to Companion Get and Set with name. For property names which are not picked up by inspection the 'properties' method can be overridden. Here you extend the property dictionary. Format: ProperyName: (RouteType, Getter, Setter) There is also support for enumerated types, dependant properties, linked properties, non persisting, multi parameter and completely custom properties which overrides everything down to code generation (e.g. Anchors/Constraints). The class BaseCompanions.WindowDTC uses many property editors and is a good example to look at. > Where is design-time vs. run-time behavior defined, what do I > need to support to make my own controls behave in the IDE? Such properties would use 'CompnRoute' and would would be completely managed by the companion class. The destinction is usually even clearer than in Delphi, Robin writes the run-time (wxPython classes), I write the design-time (Companion classes). > > Ok, having read some more, I'd like to correct some controls. > One of them is the slider which I use. > It has wrong tick handling, it does *not* respond to > scrollevents, and when labels are selected, it becomes > almost impossible to position the control in the IDE, since > it jumps to the left. :-) I don't understand. The control moving and sizing behaves properly for me. Note the Designer always tries to take over the mouse clicks of a control for consistent selection and movement. So you can't slide the slider in the IDE, set it's Value property. I have found a problem with the 'TickFreq' property. It does not sound like like the problem you are describing. Btw this problem is an instance where the property had the right methods (GetTickFreq and SetTickFreq) and the getter returned a value (integer), but the Setter is non-standard, it takes 2 parameters instead of one. (on inspection only the Getter is tested for obvious reasons) As even the Docs don't know what the second parameter is for and because this property applies only to windows I think I should hide it from the design-time interface. This can be done by overriding the 'hideDesignTime' method. > How would I correct that? Would I change Companions.py accordingly > and supply a patch? Yes, if there is a problem with the component, I would like it fixed. If you want to change some generic component/mouse interaction, it might be more tricky. > Or is there a way to do this in a seperate file and replace > these classes by mine? You can do this too. Boa supports plug-ins. I've attached a plug-in which is a copy paste of the Slider companion class (with different default constructor values and the TickFreq hidden). Put this file in the Plug-ins directory. > Last but related question: Is it planned to stay with huge files > like Companions, or do you intend to break it up into plug-ins? They are not meant to be huge, they just naturally grow over time ;) Eeek, just checked: 2130 lines, that's double my usual 1000 line limit! Please note that there are already almost 10 Companion modules in the Boa source code tree so Companions.py has had many children already. If it needs to be broken up further I think I would like to mirror the wxPython filestructure, but this may be too finely grained. Or maybe it should be split up like the Palette pages are? Say FramesComp.py, ContainersLayoutComp.py, BasicControlsComp.py, ButtonsComp.py and ListControlsComp.py > Sorry about so much questions, No problem, the ExtendingBoa document needed an update anyway ;) > but Boa is so exciting, I want it all :-) Great :) Have it all! > > ciao - chris > Cheers, Riaan. > -- > Christian Tismer :^) <mailto:ti...@ti...> > Mission Impossible 5oftware : Have a break! Take a ride on Python's > Johannes-Niemeyer-Weg 9a : *Starship* http://starship.python.net/ > 14109 Berlin : PGP key -> http://wwwkeys.pgp.net/ > work +49 30 89 09 53 34 home +49 30 802 86 56 pager +49 173 24 18 776 > PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 > whom do you want to sponsor today? http://www.stackless.com/ > |
From: Christian T. <ti...@ti...> - 2002-08-10 21:26:25
|
Riaan Booysen wrote: > Hello everyone, > > I've just finished with the check in. As far as I could see, there a lots of improvements! Many thanks for this new version!!! I also saw how newobjects are added to the palette, although it is hard for me to find out how exactly the interface works. Coupla questions. Is there some document? How is, for instance the property interface working: Any Get/Set pair defines a property? Where is design-time vs. run-time behavior defined, what do I need to support to make my own controls behave in the IDE? Ok, having read some more, I'd like to correct some controls. One of them is the slider which I use. It has wrong tick handling, it does *not* respond to scrollevents, and when labels are selected, it becomes almost impossible to position the control in the IDE, since it jumps to the left. :-) How would I correct that? Would I change Companions.py accordingly and supply a patch? Or is there a way to do this in a seperate file and replace these classes by mine? Last but related question: Is it planned to stay with huge files like Companions, or do you intend to break it up into plug-ins? Sorry about so much questions, but Boa is so exciting, I want it all :-) ciao - chris -- Christian Tismer :^) <mailto:ti...@ti...> Mission Impossible 5oftware : Have a break! Take a ride on Python's Johannes-Niemeyer-Weg 9a : *Starship* http://starship.python.net/ 14109 Berlin : PGP key -> http://wwwkeys.pgp.net/ work +49 30 89 09 53 34 home +49 30 802 86 56 pager +49 173 24 18 776 PGP 0x57F3BF04 9064 F4E1 D754 C2FF 1619 305B C09C 5A3B 57F3 BF04 whom do you want to sponsor today? http://www.stackless.com/ |
From: John B. <jbe...@ya...> - 2002-08-09 01:08:27
|
Not at the moment. Riaan has validator properties down as a future enhancement. For the moment you should use CONTROL.setValidator(validator) (inherited from wxWindow) in your __init__ method. John Bell --- Chih-Chung Chang <b45...@cs...> wrote: > Is it possible to use a non-default validator for a > TextCtrl? > There is a Validator field in the inspector, but it > can't be edited. > > Thanks. > > > > > ------------------------------------------------------- > This sf.net email is sponsored by:ThinkGeek > Welcome to geek heaven. > http://thinkgeek.com/sf > _______________________________________________ > Boa-constructor-users mailing list > Boa...@li... > https://lists.sourceforge.net/lists/listinfo/boa-constructor-users __________________________________________________ Do You Yahoo!? HotJobs - Search Thousands of New Jobs http://www.hotjobs.com |