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: Alex T. <al...@tw...> - 2005-07-29 01:33:59
|
The version of the resourceEditor which handles multiple-component operations (and has the single large window to display all properties at the same time), has now been updated and committed to CVS. It's inside the regular tools/resourceEditor directory, called multiresourceEditor.py (all source files needed by it are prefixed with "multi"). Significant changes (from v 0.3a back in May) 0. It's in CVS - easier to try out. 1. No longer needs a modified version of widget.py - much easier to try out. 2. Has better, slightly simpler, auto-naming scheme 3. Includes Select-All and multiple component delete. 4. Layout should be marginally better on Mac / Unix. Feedback sought on everything, but particularly - layout on Mac / Unix: screenshots welcome - naming scheme - is it easy or hard to understand ? to use ? Thanks - brief document describing new features included below. Multiple Component Resource Editor ( was previously Experimental Resource Editor v 0.3a ) This has now been committed to CVS, and can be obtained from there by anyone who is familiar with getting code from CVS. (Go to http://www.pythoncard.org and select CVS from the left menu for info on how to do this) The main changes include are listed below (as a consolidated list, rather than by version as was done before). The biggest change from 0.3 to 0.4 is a revision in the auto-naming rules for components; please see below for details of how the new scheme works. IMPORTANT NOTE: 0.3 and 0.3a required you to update Pythoncard/widget.py This is no longer necessary; the multiresourceEditor runs without any changes in the PythonCard framework. If you have previously installed 0.3 or 0.3a, please be sure to revert to the standard version of widget.py Property editor window display. The propertyEditor Window has been extensively changed. Previously it was a small window, showing a list of components and a list of attributes applicable to the currently selected component. The currently selected attribute was displayed (and editable) below this. The new version uses a much larger window, again showing a list of components. For the currently selected component, ALL attributes are shown, in a large area to the right. Any of the attributes can be edited directly, and the change will take effect as soon as the focus leaves the field being edited (the Update button is still also available). Component naming when created - automatic naming rules When a component is newly created, its name is automatically generated; - if a new component being added, the name is formed by taking the component type name, and appending an integer - the smallest number which provides a new unique name. Thus: Button1, Button2, Button3, ... - if a component is being created by either a copy/paste, or Edit/Duplicate command, then name is based on the existing component, with an integer appended (again, smallest number to produce a new name is used). Thus: if Button1 is being Duplicated, the new component will be Button11, or Button12, or Button13.... If the component has a label or text attribute, this will be automatically generated; it will be the same as the name. By default the name and label (or text) are tied together, and will remain that way. If the name is edited, the label (text)will change to be the same as the name. If the label (text) is edited, the name will change to match it if that is a valid name; if it is not, the label will be mangled by changing all " " (spaces) to "_" (underline), and removing any other non alphanumeric character. If you wish them to NOT be tied together, you must check the "Vary" box to the left of the name field, and then edit either (or both). If the name and label (text) of a component are already non-matching, then the "Vary" box will be checked for you, and you can edit either one independently of the other. You can un-check the Vary box. If the name and label (text) currently match, then the box will be unchecked and the two properties tied together; if they do not currently match, you will be presented with a dialog to allow either changing the label (text) to match the name, or to cancel the un-check attempt. Multiple components. You can select multiple components and perform various operations on them. Clicking on a component selects it (just as before). Ctrl-click will add a component to the selected set, or remove it if it is already in there. The property window can be watched to let you know if you are in "single-component mode" or "multiple-component mode". If you select a number of components, and then deselect all but one of them, you remain in multi-component mode. (NB this feels better to me - but is certainly a candidate for later change if we think we should.) This does save a "flash" back into single mode display, when de-selecting and re-selecting most of a group. If there is NO component selected, and you select the first one by Ctrl-Click, then you enter multi-component mode immediately. The specific reason I did this no longer applies - but I'd got used to it by then. Again, this does save a certain amount of "flashing" between the two modes (and their display). Note that when in multiple-component mode, the component box in the property window is for display only - you cannot click in that box to (de)select components. It shows only those components which are in the selected set. This is mostly because Pythoncard doesn't have a multi-choice list box, but also partly because using a multi-choice list would make it harder to see at a glance which are selected. Once a set of components have been selected, you can mouse-down (i.e. press and hold, no ctrl-key) WITHIN one of the selected components; this will bring up the enclosing rectangle for the whole set, and you can then move them around. They can also be moved using the arrow keys; however, this has always been a bit flaky - sometimes the key events get captured by something else, and used for field-traversal-tabbing. It may be a bit more flaky with the new display panel - see "nudge commands" below for other options. Note that Copy, Cut and Paste *do* work for multiple components. Delete (Ctrl-D) now works in multiple-component mode - thanks to Roberto Rosario for the original patch for this. Note I modified it to bring it up to date for latest CVS - so any errors are mine, not his. Multiple component selection using rectangular "marquee" You can select multiple components by enclosing them within a rectangular "marquee". The basic form involves pressing the mouse button down NOT within any component, and while holding the button down, dragging the mouse out to surround some components. These components will become a new multiple-component selection, replacing any previous selection. You can modify this by using modifier keys while doing the rectangle selection. 1. No modifier - define a new selection 2. shift-rectangle : add enclosed components to existing selection (any enclosed components already selected remain selected) 3. ctrl-rectangle : toggle the status of enclosed components (i.e. if already selected, remove it, if not already selected, add it) 4. shift-ctrl-rectangle : subtract from existing selection Multiple component selection of all components. The menu selection (Edit / Select all), or its equivalent shortcut of Ctrl-A, select all components. Again thanks to Roberto Rosario. Buttons for layer changes. A component can be moved Back/Forward using the main menu Options / Send to Back, etc., or the shortcut keys Ctrl-1, Ctrl-2, etc. However, these keys don't work when focus is in the property window. Buttons have been added (below the component list box) to allow re-layering of a component. As well as the 4 buttons corresponding to the existing commands, there are two additional ones which only take effect when there are multiple components selected. First, a description of what it means to re-layer multiple components. All the selected components are put, in the order they were selected, together in the final order list. The base component (first one selected) is then moved back or forward according to the given command, with all other selected components following it. In some cases, you will want to collect the selected components together in the component ordering, but without changing the base component's place in the order. The first new button "gather together" does this. The second new button takes a set of components and re-layers them according to their position, in approximate "reading" order; top-left to bottom right, in rows. Just like "Gather together", this re-ordered set of components finish up adjacent in the layer ordering, following the place in order of the base component. Beware that the reading order works well if the components are non-overlapping, but can be hard to predict when there are multiple overlapping components selected (e.g. if you were to edit the resource editor's own resource file, where the "single-mode" and "multiple-mode" controls occupy the same area, and simply select all of them, you will get a different result from what you expect or want. This is a result of the comparison function used to sort into "reading order" - if one component is entirely below another, the order is clear; otherwise they are assumed to be on the same row, and sorted according to X coord. NB There is a definite lack of visual feedback from these commands. I'm trying to find a good way to give this feedback - any suggestions gratefully received. These command will probably go on the menu eventually. Arrow keys & Buttons to 'nudge' components. The arrow keys can be used to reposition a component, as before. However, they now have the added feature that - Ctrl-arrow will move in that direction by the currently specified grid step, and align to the grid even if the "Align to grid" option is not enabled. - Shift-arrow will move by the grid step distance, but without rounding to the grid - Shift-Ctrl-arrow will move by the square of the grid size (and round to the basic grid). Good accelerator for big moves - beware you can jump right off the window if you're not careful. As mentioned above, occasionally (or perhaps often), one or more of the placed components gets in the way of key events ['buttons start tabbing, calendar starts moving the selected date, etc.]. Therefore there are now button on the property window to move the selected component or components. these are in the box labelled "NUDGE" at the bottom-left. Clicking on each arrow button here moves the component in the obvious direction. The number inside these buttons controls how far the components are moved; 1 moves by 1 pixel, 2 by a grid-step, 4 by the square of a grid-step. (3 is the same as 2 for now). These moves always honour the Align to Grid setting. [NB - this may change - either to be simply pixel distance, or a drop-down choice for the 1 vs grid vs grid*grid to allow all the choices available by the arrow keys.] Various operations are enabled when in multi-component mode. Remember that the *order* the components were selected (visible by order they are listed in the component box) is significant for many of these. Align operations. The box labelled "ALIGN" contains six buttons, which align the components up with the first selected on. They can be aligned by left side, right side, top, bottom (four buttons grouped to the left). Or the centres of the components can be aligned, either vertically or horizontally (i.e. into a column or into a row). Distribute operations. The box labelled "DISTRIBUTE" has four buttons; two on the left for distributing horizontally and two on the right for vertical distribution. The top button on each side distributes the components "edge-to-edge"; i.e. the first component does not move, the second one is placed to the left (or below) such that the edges line up, then the third, etc. The lower button distributes them with even-sized gaps from "first-to-last"; i.e. the first and last components do not move, the others are distributed between them such that the gaps between the edges are equal sized (or as close as possible). Note that if the components add up to larger than the total distance between first and last, then they will overlap (i.e. the 'gap' can be negative), but it will still be evenly shared between them. Equalize operations. The box labelled "EQUALIZE" has three buttons, which set the width (the height, or both) of all other components selected to match the first component. -- Alex Tweedly http://www.tweedly.net -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.6/59 - Release Date: 27/07/2005 |
From: <bri...@sy...> - 2005-07-27 20:58:15
|
In the past I've hacked the styles for wx.Frame init in the file model.py but that is kind of ugly If you want to try, it has worked for many of the windows styles listed in the wxWidgets help for class wxFrame. I haven't done it for recent wxWidgets/PythonCard versions. pyt...@li... wrote on 07/27/2005 01:29:18 PM: > Hi there. > > I was just wondering if there is any possibility to make a window > with toolbox-look (you know: a a narrow titlebar with only a close-button)...? > If, so how...? > > /Stoons : PythonCard Lover...! = ) > |
From: Stoons <st...@he...> - 2005-07-27 20:29:36
|
Hi there. I was just wondering if there is any possibility to make a window with = toolbox-look (you know: a a narrow titlebar with only a = close-button)...? If, so how...? /Stoons : PythonCard Lover...! =3D ) |
From: <kim...@ya...> - 2005-07-27 04:38:03
|
Tiberiu, The code appears to be supporting this feature. However, when I add the line as instructed to the sample widget program, there is no effect. I can *still* type in the combo box field. BTW: I did wx.CB_READONLY and didn't do the import. Thanks, -- John > -----Original Message----- > From: Tiberiu Ichim [mailto:ti...@li...] > Sent: Tuesday, July 26, 2005 12:29 PM > To: kim...@ya... > Subject: Re: [Pythoncard-users] Making combo box select only > > > kim...@ya... wrote: > > >Hi list, > > > >Could someone please tell me how I can make a > >combo-box (or spin-list, and so forth) to be "select > >only"? In other words, the user can only select from > >one of the presented items but not allow to type > >anything in. > > > >Thanks, > > > > > I haven't checked, and you may want to read the wxpython docs and the > source for pythoncard, but I think you should be able to do something > like this: > > from wx.combobox import * > > class Raport(model.Background): > def on_initialize(self,event): > * self.components.my_combobox.SetWindowStyle(CB_READONLY) > > * > |
From: Andy T. <an...@ha...> - 2005-07-26 23:25:43
|
Martinez, Miguel (Amermex) wrote: > I=92m trying to show a db cursor in a wxgrid and I don=92t know how, I = tried=20 > to set a cursor.fetchall() and I get this error. >=20 > =20 >=20 > SetTable >=20 > return _grid.Grid_SetTable(*args, **kwargs) >=20 > TypeError: argument number 2: a 'wxGridTableBase *' is expected,=20 > 'list([(=91column one, row one=92, 'column two, row one'), (=91column o= ne, row=20 > two=92, 'column two, row two')] >=20 > )' is received. >=20 > =20 >=20 > How can I show a list, tuple, cursor or resultset in a grid? >=20 First, it's more useful if you post a small sample of your code that=20 triggers the error message, that way people on this list can be a little=20 more helpful and responsive. Secondly, if you want to display the contents of a database table in a=20 grid look at the dbBrowser2 sample application (in the samples/dbBrowser=20 folder of your PythonCard installation). This does pretty much what you=20 have described. Regards, Andy --=20 -------------------------------------------------------------------------= ------- From the desk of Andrew J Todd esq - http://www.halfcooked.com/ |
From: Kevin A. <al...@se...> - 2005-07-26 19:10:22
|
If you're attending OSCON this year and would like to get together to discuss PythonCard 1.x issues, or even better, brainstorm on PythonCard 2.x then I would be happy to chat. If there are enough people attending OSCON that want to get together, we can even do a dinner or get together over at my house for a barbecue, beer, etc. Send me an email ASAP if you're interested. I live in Portland and I'm co-chair for the Python track at OSCON, so I'll be at OSCON all week. http://conferences.oreillynet.com/pub/w/38/track_python.html My PythonCard presentation is Wednesday. ka |
From: Martinez, M. \(Amermex\) <mig...@ty...> - 2005-07-26 18:42:32
|
I'm trying to show a db cursor in a wxgrid and I don't know how, I tried to set a cursor.fetchall() and I get this error. =20 SetTable return _grid.Grid_SetTable(*args, **kwargs) TypeError: argument number 2: a 'wxGridTableBase *' is expected, 'list([('column one, row one', 'column two, row one'), ('column one, row two', 'column two, row two')] )' is received. =20 How can I show a list, tuple, cursor or resultset in a grid? |
From: Kevin A. <al...@se...> - 2005-07-26 18:36:09
|
If you're using wxPython 2.6.x with the current release version of PythonCard or the version in cvs, please report any issues here. In particular, I would like to hear about differences from 2.5.x that you've had to workaround or that are simply broken and we need to address in the next release. ka |
From: Alex T. <al...@tw...> - 2005-07-26 16:38:39
|
kim...@ya... wrote: >Alex, > >No, choice is not the same as combo-box. Combo-box >pulls down when you click on the list. As far as I >can see, there is no "editabel" field for combo-box >that I can see - which is really odd. I am assuming >that the code acutally supports this option (somehow) >- may be it's just a resource editor issue. > > Sorry, John, but I'm not following you. A Choice component looks like a single-line text field with a small down-arrow on the right. When you click on the down-arrow, a drop-down list of all the possible choices appears, with the current one selected. When you select one (by clicking on it), that line is selected, the drop-down disappears, and the single-line text field now shows the just-selected item. Clicking within the field does the same as clicking on the arrow (i.e. the list drops down) All the above is also true for a ComboBox, except that clicking within the field doesn't make the list drop down, it selects within the editable text field, where you can edit the current entry and submit that as your choice. (It's then up to the handler to decide if it wishes to add that to the list of acceptable choices, etc.) So as far as I can see (looking at the widgets sample from the sample launcher) - a Choice is a non-editable Combobox - Combobox is editable by default Am I still missing something ? -- Alex Tweedly http://www.tweedly.net -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.4/57 - Release Date: 22/07/2005 |
From: <kim...@ya...> - 2005-07-26 16:23:59
|
Alex, No, choice is not the same as combo-box. Combo-box pulls down when you click on the list. As far as I can see, there is no "editabel" field for combo-box that I can see - which is really odd. I am assuming that the code acutally supports this option (somehow) - may be it's just a resource editor issue. Alex Tweedly wrote: > kim...@ya... wrote: > >> Thanks for the reply, Phil. >> >> I was looking for that option too but I don't see that >> there is one. >> Is this something they've added in the new (yet to be >> released) version? >> >> >> >> >> >>>> Hi list, >>>> >>>> Could someone please tell me how I can make a >>>> combo-box (or spin-list, and so forth) to be "select >>>> only"? In other words, the user can only select >>>> from one of the presented items but not >>>> allow to type >>>> anything in. > > Isn't that simply a "Choice" component ? > (That's a question - it's been a while since I looked them ....) > -- John Henry |
From: Alex T. <al...@tw...> - 2005-07-26 16:09:55
|
kim...@ya... wrote: >Thanks for the reply, Phil. > >I was looking for that option too but I don't see that >there is one. > >Is this something they've added in the new (yet to be >released) version? > > > > > >>>Hi list, >>> >>>Could someone please tell me how I can make a >>>combo-box (or spin-list, and so forth) to be "select >>>only"? In other words, the user can only select from one of the presented items but not allow to type >>>anything in. >>> >>> Isn't that simply a "Choice" component ? (That's a question - it's been a while since I looked them ....) -- Alex Tweedly http://www.tweedly.net -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.4/57 - Release Date: 22/07/2005 |
From: <kim...@ya...> - 2005-07-26 15:54:07
|
Thanks for the reply, Phil. I was looking for that option too but I don't see that there is one. Is this something they've added in the new (yet to be released) version? Phil Edwards wrote: > On Mon, 2005-07-25 at 22:08 -0700, kim...@ya... > wrote: > >>Hi list, >> >>Could someone please tell me how I can make a >>combo-box (or spin-list, and so forth) to be "select >>only"? In other words, the user can only select from >>one of the presented items but not allow to type >>anything in. >> > > > Un-check the 'editable' box for the component in the resource editor. > > > > > ------------------------------------------------------- > SF.Net email is sponsored by: Discover Easy Linux Migration Strategies > from IBM. Find simple to follow Roadmaps, straightforward articles, > informative Webcasts and more! Get everything you need to get up to > speed, fast. http://ads.osdn.com/?ad_id=7477&alloc_id=16492&op=click > _______________________________________________ > Pythoncard-users mailing list > Pyt...@li... > https://lists.sourceforge.net/lists/listinfo/pythoncard-users > > -- John Henry |
From: Phil E. <ph...@li...> - 2005-07-26 07:53:54
|
On Mon, 2005-07-25 at 22:08 -0700, kim...@ya... wrote: > Hi list, > > Could someone please tell me how I can make a > combo-box (or spin-list, and so forth) to be "select > only"? In other words, the user can only select from > one of the presented items but not allow to type > anything in. > Un-check the 'editable' box for the component in the resource editor. |
From: <kim...@ya...> - 2005-07-26 05:08:53
|
Hi list, Could someone please tell me how I can make a combo-box (or spin-list, and so forth) to be "select only"? In other words, the user can only select from one of the presented items but not allow to type anything in. Thanks, -- -- John Henry |
From: Martinez, M. \(Amermex\) <mig...@ty...> - 2005-07-25 21:20:05
|
I'm searching in the archives of this list for answers about my problem = but maybe somebody can give me a hand. I'm trying to build a small application just to run a select statement = on an oracle database an show the results in a grid. I'd already read = the wxgrid manual and wxPyGrid documentation, I'd see the dbBrowser2 = code and used some pieces from it but I can't get it working. =20 This is the code I have, I changed some database "secrets" =20 #!/usr/bin/python =20 """ __version__ =3D "$Revision: 1.5 $" __date__ =3D "$Date: 2004/04/30 16:26:12 $" """ =20 from PythonCard import model import cx_Oracle import string from wxPython.wx import * from wxPython.grid import * from dbTable import DBTable =20 class MyBackground(model.Background): =20 def on_initialize(self, event): # if you have any initialization # including sizer setup, do it here self.components.ApeTxtFld.setFocus() pass =20 def on_BusBut_mouseClick(self, event): self.statusBar.text =3D "Conectando ..." db =3D cx_Oracle.connect("user/password@TNSName") self.statusBar.text =3D "Conectado" ## selectedTable =3D self.components["ApeTxtFld"].stringSelection dbc =3D db.cursor() arg_ =3D string.strip(self.components.ApeTxtFld.text) dbc.execute(""" select column_1, column_2 from table where table.column_x =3D 'A' and table.column_y =3D :arg""", arg =3D arg_) ##rows =3D dbc.rowcount info =3D dbc.fetchall() gridDefn=3D{'name':'myGrid', 'type':'Grid'} gridDefn['position']=3Dself.components.myGrid.position gridDefn['size']=3Dself.components.myGrid.size gridDefn['size']=3Dself.components.myGrid.size del self.components[gridDefn['name']] self.components[gridDefn['name']]=3DgridDefn self.components.myGrid.SetColLabelValue(0, "Empleado") self.components.myGrid.SetColLabelValue(1, "Nombre") self.dbTable=3DDBTable(=BF?=BF?=BF?=BF?) <-- here is where I = have problems, I used cursor, argument but no data shown self.components.myGrid.SetTable(self.dbTable) self.components.myGrid.AutoSizeColumns() self.components.myGrid.AdjustScrollbars() =20 =20 if __name__ =3D=3D '__main__': app =3D model.Application(MyBackground) app.MainLoop() =20 =20 |
From: Andy T. <an...@ha...> - 2005-07-25 12:37:57
|
Lucas VERGNETTES wrote: > Hi, > > I'm enjoying a lot using PythonCard, and I'm extending the > gadflyDatabase example for fun. > > One thing I would like to do is to be able to display the 'ID' number > that gadfly uses in the database. > I don't think I can access it with self.components.id .... or with an > SQL query (how to be sure to get the good number when creating a new card?) > > > Thanks for your help, I will post sniplets of code if needed. > > Lucas > > > Lucas VERGNETTES lu...@th... > The gadflyDatabase module works on introspection, so you don't need to write any code at all. It automatically iterates through every field in the Document (database result set) and if it can find a corresponding field in the View (PythonCard background) it stuffs one into the other. In simple terms, a quick modification of the gadflyDatabase sample should just involve editing the resource file (gadflyDatabase.rsrc.py) and adding another component; {'type':'Spinner', 'name':'Id', 'position':(<x>, <y>), }, Where <x> and <y> are the co-ordinates of the position you'd like to see the widget appear. The only restriction is that the type of your widget must either be a 'Spinner' or a 'Slider'. If you want to render it another way you'll need to edit the gadflyDatabase.py module, if you get that far post another message to the list and I'll try and help. Regards, Andy -- -------------------------------------------------------------------------------- From the desk of Andrew J Todd esq - http://www.halfcooked.com/ |
From: Schollnick, B. <Ben...@xe...> - 2005-07-25 12:35:33
|
Norman, > I was re-motivated to get PythonCard working as I saw an=20 > example I liked=20 > - the RanchBiz application shown at:=20 > http://members.shaw.ca/wexsessa/RanchBiz/ The PythonCard portion of the software does not appear to be complex... And it does look interesting... > I tried mailing the author of RanchBiz but he seems to no=20 > longer be at=20 > that address. I had to change 'import from PythonCardPrototype' to=20 > 'import from PythonCard' so maybe this stuff is quite old. I=20 Ah.... This is the key to your problems with this application.... It's from a significantly earlier version of pythoncard. > > if __name__ =3D=3D '__main__': > > app =3D model.PythonCardApp(Occupancy) Here is another clue... PythonCardApp is now Application... But it's a clue that this was created under the PythonCardPrototype (see previous, above).... If you want to get it to work, check the migration guide... It explains what changes you need to make to allow a v0.7.3 (or lower) Pythoncard application work under v0.8x... http://pythoncard.sourceforge.net/migration_guide.html - Benjamin |
From: normanwinn <nor...@on...> - 2005-07-25 12:18:41
|
Hi, I'm glad there was a further response to this thread as I think I was a little harsh in adding the comment 'life's too short' to my last response. I really appreciate the time and effort put in for no remuneration. I did persist and re-installed python 2.4, got rid of 2.3 and then uninstalled and loaded up the most recent PythonCard. Apart from a detour with the Windows XP 'Open With' cock-up (does anyone else suffer from that one) which lost the file assocations for python, all became functional. However, I did have to read up about the new version of wxPython (2.6.1u) as one now has to run something to tell the python shell which version of wxPython to use. Again, I do think they should make the default behaviour in the installer do this. I also got complaints from the PIL library saying I had the wrong version even though it was the one that came with 2.4. This was solved with a further download. I was re-motivated to get PythonCard working as I saw an example I liked - the RanchBiz application shown at: http://members.shaw.ca/wexsessa/RanchBiz/ Unfortunately I got more trouble here. I saved the code pages as .py files but they had html markup in them. Then I cut and pasted the code and now am trying to solve indentation errors (thank you Code Editor for telling me about these). Here is an example (actually, this one is 'Invalid syntx'): > if dateISO2 and within<(self.self.colWidth-2): # ignore clicks near col boundaries > return periodDates[clickCol].strftime(ISODATE) > else: > return None > else: > return self.periodDates[clickCol].strftime(ISODATE) This seems wrong. I commented out the last two lines which could never get executed anyway, solved another indentation problem and TabNanny reported OK. Then got into trouble with this section: > if __name__ == '__main__': > app = model.PythonCardApp(Occupancy) > app.MainLoop() Seems there is no 'model.PythonCardApp' attribute. Using dir(PythonCard.model) I found an attribute 'Application' and tried that. Then remembered the wonderful 'Find Files' which appeared to confirm my guess. Got further but now had error messages I could not decipher. I tried mailing the author of RanchBiz but he seems to no longer be at that address. I had to change 'import from PythonCardPrototype' to 'import from PythonCard' so maybe this stuff is quite old. I do wish web pages had an obligatory time stamp. I then had a look at Stani's editor, SPE. This came with wxGlade so I gave this a whirl. Quite impressive. Trouble is that, after getting through a nice design phase, to actually do anthing you have to get into the guts of wxPython. IMO, the PythonCard route, while initially less visually stimulating, is easier. What I did notice on my wxGlade tour is that they seem to have their sizers sorted out. Has this become possible with the recent wx changes? I realise that much of what I say should be on either the wx or python lists. I can't face the mail flood that subscribing to those leads to. Thanks once again to all those who develop PythonCard and so kindly reply to our problems, Norman -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.4/57 - Release Date: 22/07/2005 |
From: Alex T. <al...@tw...> - 2005-07-24 12:42:57
|
Lucas VERGNETTES wrote: > Hi, > > I'm enjoying a lot using PythonCard, and I'm extending the > gadflyDatabase example for fun. > > One thing I would like to do is to be able to display the 'ID' number > that gadfly uses in the database. > I don't think I can access it with self.components.id .... or with an > SQL query (how to be sure to get the good number when creating a new > card?) > > > Thanks for your help, I will post sniplets of code if needed. I've not used Gadfly, but assuming it's similar to other SQL databases (which I also haven't used much :-), .... once the database entry has been created, you should be able to retrieve all its fields, including the id, with an SQL statement. I'd look some more at SQL tutorials to try to find how to do this. Then, the id would be just another field to be filled in: self.components.id.text = str(self._row[0]) self.components.name.text = self._row[1] etc. -- Alex Tweedly http://www.tweedly.net -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.4/57 - Release Date: 22/07/2005 |
From: Alex T. <al...@tw...> - 2005-07-24 12:36:58
|
Al wrote: >Do rather agree with the spirit of Norman's note. I too have given up for now >on getting wxPython to work, and hence despite an interest in pythoncard >haven't been able to get that to work either! Like Norman, I'm sure its my >own fault and lack of understanding, but....! > > Certainly, if wxPython doesn't work, you don't have any chance with PythonCard. Unfortunately, the folks on this list are not too likely to be able help with wxPython problems - but if you want to give us a quick description of the problem you ran into, someone may be able to help. Though, honestly, you'd be better sending the same problem description to the wxPython list - they're pretty helpful. I heard enough about problems with multiple versions to make me very conservative about changing versions -I've essentially done a full set of de-installs of old versions, followed by a full set of installs of a new set (keeping the old versions on a backup machine for safety). Can be a bit of a pain - but I've never had a problem other than the time it took. (This is all on Windows - that may make it easier). >Staying on the list quietly because one of these days I'm going to Suse or >Debian, and then maybe will be able to get it to work. Looking forward to >that! Meanwhile, I'm trying to learn Revolution. > > Rev is quite fun too - but beware it does still have some issues on Linux. It has the big advantage of the most helpful email help list I have ever seen, so if you have any problems, there's plenty of help available. >I don't want to seem negative. An open source package inspired by Hypercard >is a really noble and worthwhile venture, and one I look forward to being >able to contribute to in some way one of these days. > > -- Alex Tweedly http://www.tweedly.net -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.338 / Virus Database: 267.9.4/57 - Release Date: 22/07/2005 |
From: Al <pal...@ya...> - 2005-07-24 06:46:10
|
Do rather agree with the spirit of Norman's note. I too have given up for now on getting wxPython to work, and hence despite an interest in pythoncard haven't been able to get that to work either! Like Norman, I'm sure its my own fault and lack of understanding, but....! Staying on the list quietly because one of these days I'm going to Suse or Debian, and then maybe will be able to get it to work. Looking forward to that! Meanwhile, I'm trying to learn Revolution. I don't want to seem negative. An open source package inspired by Hypercard is a really noble and worthwhile venture, and one I look forward to being able to contribute to in some way one of these days. Peter |
From: Lucas V. <lu...@th...> - 2005-07-23 13:34:12
|
Hi, I'm enjoying a lot using PythonCard, and I'm extending the gadflyDatabase example for fun. One thing I would like to do is to be able to display the 'ID' number that gadfly uses in the database. I don't think I can access it with self.components.id .... or with an SQL query (how to be sure to get the good number when creating a new card?) Thanks for your help, I will post sniplets of code if needed. Lucas Lucas VERGNETTES lu...@th... |
From: normanwinn <nor...@on...> - 2005-07-23 07:53:24
|
Thank you for the replies. I am not going to deal with each comment on the difficulty of upgrading in the Python world but give my further thoughts. What I think is needed when upgrading is the offer to take the simple path. That is to get rid of the old and install the new. In the world of Basic (that is what we all want to replace, isn't it?) I would be offered such a choice. OK, I may not get offered an upgrade path from version 1 but would be from 2.3 to 2.4, say. I know that it is a lot of tedious work to analyse each bit of user code to test where it will break under a new version and offer to convert. But if the FOSS world really believes that is can carry the average user then this work will need to be done. If that is not what people want to do then they should say so. In the case of PythonCard itself it seemed reasonable to believe that if, when I invoke Python, I get 2.4 then after running 'python setup.py install' in the PythonCard directory that all would be well. I looked in the 'tools\codeEditor' folder and there is no setup.py there. It is possible that the problems are mine. In truth, the only time I have felt I really understood what is going on in computing is when I programmed in assembler (and in C), either on various computers or micro-controllers. There, one has to understand what is happening everywhere, in memory, in registers et al. I seem incapable of 'knowing' when I can't see the whole picture. No doubt it is laziness that has stopped me from getting the whole Python picture. Once again, thank you for your replies, but I think I think I give this a miss for now. Life is too short, Norman -- No virus found in this outgoing message. Checked by AVG Anti-Virus. Version: 7.0.323 / Virus Database: 267.9.4/57 - Release Date: 22/07/2005 |
From: Schollnick, B. <Ben...@xe...> - 2005-07-22 15:29:13
|
> I think the pain here is that a person with some Python=20 > experience, enough to install and use PythonCard, may still=20 > not be experienced enough to confidently replace one major=20 > Python release with another. I don't know about that.. When I switched to Python 2.4, I know that I was surprised at the amount of work that I needed to do... But it wasn't hard, nor really unexpected. I just forgot that=20 I had packages in the site-packages directory. I usually=20 keep most of my software in c:\develope using .pth files... I habitually keep any software I install in c:\installers so that I can re-install simply.... > for no reason, after the fact. My experience is that=20 > multiple installations are more trouble than upgrade=20 > conflicts, but that's just me. I would really say that depends on the OS. And how much effort=20 you wish to take. =20 Effort in.... 1) Making sure that the packages you install work under both versions... (Or ensure that you have two different packages, one for n.n and one for x.x) 2) Making "scripts / batch files" that will run one python or the other. (Or enabling switching between the two, etc) 3) Keeping it straight in your head... |-) - Benjamin >=20 > pyt...@li... wrote on=20 > 07/22/2005 03:14:54 > AM: >=20 > > > > It's quite okay to have multiple Python installations if=20 > that's what=20 > > you want to do. The problem is that it's not what *most*=20 > people want=20 > > to do. Democracy's only a good thing if you agree with the policies! > > >=20 >=20 >=20 > ------------------------------------------------------- > SF.Net email is sponsored by: Discover Easy Linux Migration=20 > Strategies from IBM. Find simple to follow Roadmaps,=20 > straightforward articles, informative Webcasts and more! Get=20 > everything you need to get up to speed, fast.=20 > http://ads.osdn.com/?ad_id=3D7477&alloc_id=3D16492&op=3Dclick > _______________________________________________ > Pythoncard-users mailing list Pyt...@li... > https://lists.sourceforge.net/lists/listinfo/pythoncard-users >=20 |
From: <bri...@sy...> - 2005-07-22 14:49:46
|
I think the pain here is that a person with some Python experience, enough to install and use PythonCard, may still not be experienced enough to confidently replace one major Python release with another. I know I was just up to speed with PythonCard when 2.3 came out and I was very careful to keep 2.2 with PythonCard on my system, primarily because I didn't want anything interrupting my PythonCard work, and added a separate Python23 and, and, and, I learned that was a lot of worry for no reason, after the fact. My experience is that multiple installations are more trouble than upgrade conflicts, but that's just me. pyt...@li... wrote on 07/22/2005 03:14:54 AM: > > It's quite okay to have multiple Python installations if that's what you > want to do. The problem is that it's not what *most* people want to do. > Democracy's only a good thing if you agree with the policies! > |