It's a long story, but I had to revert to Dabo 0.9.4 from 0.9.9 due to a problem that developed with the dTextBox control when trying to do regex searches on a database. Short story, the searches became much slower under 0.9.9. If it weren't for that, I would be running the latest version.
Here's the traceback when I inserted the print 'VAL ', val statement: (Did the same on a Win 7 system with no errors) and got the the same 'VAL' value as the Win 10 machine.
VAL C:/aaa/DaboCode/Calbirds/CountyTotalsReport1.rfxml Traceback (most recent call last): File "C:\Python27\lib\site-packages\dabo-0.9.4-py2.7.egg\dabo\ui\uiwx\dMenuItem.py", line 58, in __onWxHit self.raiseEvent(dEvents.Hit, evt) File "C:\Python27\lib\site-packages\dabo-0.9.4-py2.7.egg\dabo\ui\uiwx\dPemMixin.py", line 1045, in raiseEvent super(dPemMixin, self).raiseEvent(eventClass, nativeEvent, *args, **kwargs) File "C:\Python27\lib\site-packages\dabo-0.9.4-py2.7.egg\dabo\lib\eventMixin.py", line 81, in raiseEvent bindingFunction(event) File "CountyBirds_Paged17.py", line 179, in countyReportsHit self.printCountyTotals() File "CountyBirds_Paged17.py", line 209, in printCountyTotals rw.ReportFormFile = "C:/aaa/DaboCode/Calbirds/CountyTotalsReport1.rfxml" File "C:\Python27\lib\site-packages\dabo-0.9.4-py2.7.egg\dabo\lib\reportWriter.py", line 2951, in _setReportFormFile self.HomeDirectory = os.path.join(os.path.split(val)[:-1])[0] File "C:\Python27\lib\ntpath.py", line 93, in join return result_drive + result_path TypeError: cannot concatenate 'str' and 'tuple' objects
Thanks, Steve Rose
On Fri, Jan 13, 2017 at 8:58 AM, dabo-users-request@leafe.com wrote:
Send Dabo-users mailing list submissions to dabo-users@leafe.com
To subscribe or unsubscribe via the World Wide Web, visit http://mail.leafe.com/mailman/listinfo/dabo-users or, via email, send a message with subject or body 'help' to dabo-users-request@leafe.com
You can reach the person managing the list at dabo-users-owner@leafe.com
When replying, please edit your Subject line so it is more specific than "Re: Contents of Dabo-users digest..."
Today's Topics:
- Re: ReportWriter under Windows 10 (john)
- Re: ReportWriter under Windows 10 (Ed Leafe)
- Re: Tab-Index of UI-Objects? (Max Vo?)
- Re: Tab-Index of UI-Objects? (Max Vo?)
- Re: Tab-Index of UI-Objects? (john)
- Re: Tab-Index of UI-Objects? (Henning Hraban Ramm)
- Re: Tab-Index of UI-Objects? (john)
Message: 1 Date: Wed, 11 Jan 2017 09:08:20 -0800 From: john johnf@jfcomputer.com To: dabo-users@leafe.com Subject: Re: [dabo-users] ReportWriter under Windows 10 Message-ID: 6582cabd-5333-4287-7796-2f5ee7e50a9a@jfcomputer.com Content-Type: text/plain; charset=utf-8; format=flowed
I'm not sure what is happening here because I can not repeat the error on my windows 10,8, or 7 VM. Did you look at the 'self.HomeDirctory' value (or the value of 'val')?. Maybe you have something in the string? Any chance you have unicode?
I just realized I'm using Dabo 2.0.0 - and you are going ask me how to get it! I have long forgotten the git command to retrieve it.
Contact me directly and I can forward my copy. Before you do. What version of reportlab are you using - I'm using ReportLab 2.7.
Johnf
On 01/10/2017 06:12 PM, Steve Rose wrote:
I've been using dReportWriter successfully in Windows 7 for years. However, using the same program(s) in Windows 10, I am getting the following traceback:
Traceback (most recent call last): File "C:\Python27\lib\site-packages\dabo-0.9.4-py2.7.egg\
dabo\ui\uiwx\dControlMixin.py",
line 27, in _onWxHit self.raiseEvent(dEvents.Hit, evt, *args, **kwargs) File "C:\Python27\lib\site-packages\dabo-0.9.4-py2.7.egg\
dabo\ui\uiwx\dPemMixin.py",
line 1045, in raiseEvent super(dPemMixin, self).raiseEvent(eventClass, nativeEvent, *args, **kwargs) File "C:\Python27\lib\site-packages\dabo-0.9.4-py2.7.egg\
dabo\lib\eventMixin.py",
line 81, in raiseEvent bindingFunction(event) File "C:\aaa\DaboCode\CalBirds\SelectCounty1.py", line 145, in
buttonGoHit
rw.ReportFormFile ="C:/aaa/DaboCode/Calbirds/CountyMissingSpeciesReport2.rfxml" File "C:\Python27\lib\site-packages\dabo-0.9.4-py2.7.egg\
dabo\lib\reportWriter.py",
line 2950, in _setReportFormFile self.HomeDirectory = os.path.join(os.path.split(val)[:-1])[0] File "C:\Python27\lib\ntpath.py", line 93, in join return result_drive + result_path TypeError: cannot concatenate 'str' and 'tuple' objects
I have no idea how to troubleshoot this. Any hints appreciated.
Python 2.7.12 on Win 32 Dabo 0.9.4
Steve Rose
?
--- StripMime Report -- processed MIME parts --- multipart/alternative text/plain (text body -- kept) text/html
Post Messages to: Dabo-users@leafe.com Subscription Maintenance: http://mail.leafe.com/mailman/
listinfo/dabo-users
Searchable Archives: http://leafe.com/archives/search/dabo-users This message: http://leafe.com/archives/byMID/
CADJJcm63fqoVX1sEbszOjs2Z4nYWd3is=JoXObBZmJYDnnctdw@mail.gmail.com
Message: 2 Date: Wed, 11 Jan 2017 12:48:28 -0600 From: Ed Leafe ed@leafe.com To: Dabo Users list dabo-users@leafe.com Subject: Re: [dabo-users] ReportWriter under Windows 10 Message-ID: B44D1283-D0BD-46CA-9027-AADD8AECBA5A@leafe.com Content-Type: text/plain; charset=utf-8
On Jan 10, 2017, at 8:12 PM, Steve Rose gnateater@gmail.com wrote:
File "C:\Python27\lib\site-packages\dabo-0.9.4-py2.7.egg\
dabo\lib\reportWriter.py",
line 2950, in _setReportFormFile self.HomeDirectory = os.path.join(os.path.split(val)[:-1])[0]
You?re using version 0.9.4, which is over 5 years old. Is there any chance you could upgrade to the latest master?
In any case, if you open your copy of reportWriter.py to the line I quoted above, insert the following line just before it:
print ?VAL?, val
and re-run the steps that caused the error. Your output should now include the value from the print statement, which you should post here, and we can dig into it further.
-- Ed Leafe
Message: 3 Date: Fri, 13 Jan 2017 10:16:59 +0100 From: Max Vo? max.voss@optik-stahr.de To: dabo-users@leafe.com Subject: Re: [dabo-users] Tab-Index of UI-Objects? Message-ID: 1484299019.2222.22.camel@optik-stahr.de Content-Type: text/plain; charset="UTF-8"
Hi Johnf, thanks for your reply.
Am Mittwoch, den 11.01.2017, 08:48 -0800 schrieb john:
How did you create the UI form? Did you use the class designer?
Or did you manually create each of the controls - something like:
dabo.ui.dTextBox(self, RegID="CaseID",Width=225, DataSource = 'public.esenroll', DataField = 'caseno')
Well, I have chosen a third way. I manualy created a .cdxml-File (without the class designer, since my Form is huge and I don't like what it does to my .cdxml) that looks like this: (I stripped it down to the essentials for readability)
...
<dGridSizer> <dTextBox rowColPos="(1, 1)" DataField="sph_r"></dTextBox> <dTextBox rowColPos="(2, 1)" DataField="sph_l"></dTextBox> <dTextBox rowColPos="(1, 2)" DataField="cyl_r"></dTextBox> <dTextBox rowColPos="(2, 2)" DataField="cyl_l"></dTextBox> <dTextBox rowColPos="(1, 3)" DataField="ach_r"></dTextBox> <dTextBox rowColPos="(2, 3)" DataField="ach_l"></dTextBox> <dTextBox rowColPos="(1, 4)" DataField="add_r"></dTextBox> <dTextBox rowColPos="(2, 4)" DataField="add_l"></dTextBox> ... </dGridSizer> ...
This results in the TabOrder sph_r,sph_l,cyl_r,cyl_l,... But I want sph_r,cyl_r,ach_r,...,sph_l,cyl_l,...
Normally, the order or tab order is set to match top to bottom and left to right within a panel (and of course a sizer can also influence the order).
Ok, maybe I can rearange my textfields and put all *_r fields in one dSizer and *_l fields in a second one. - To bad I really liked the dGridSizer.
There is one property 'TabStop' True or False that is available.
That I have found, but it is no use to me in my situation, since I want TabStop but just a different order.
That said, take a look at dDialog.py around line 365: for pos, btn in enumerate(buttons[1:]): btn.MoveAfterInTabOrder(buttons[pos-1])
The above is used for the class->_addControls.
Johnf On 01/11/2017 08:26 AM, Max Vo? wrote:
Hello,
is it possible to set a kind of tab-index in a dabo-Form?
I have got a dPage-Object with a lot of dTextBoxes, dDropDownLists and so on but they appear in a different order on the Page than I want to step through them with the tabulator-key. The "tab-index" seems to depend only on the position on the Page. At least I have not found a corresponding property in the Object Inspector. Or did I just miss it?
Thanks in advance for your anwsers,
greetings Max
Message: 4 Date: Fri, 13 Jan 2017 10:26:02 +0100 From: Max Vo? max.voss@optik-stahr.de To: dabo-users@leafe.com Subject: Re: [dabo-users] Tab-Index of UI-Objects? Message-ID: 1484299562.2222.26.camel@optik-stahr.de Content-Type: text/plain; charset="UTF-8"
Hi Johnf, thanks for your reply.
In my last message I completely messed up the indeces, so please it ignore it, it will only confuse you here is the correct version.
Am Mittwoch, den 11.01.2017, 08:48 -0800 schrieb john:
How did you create the UI form? Did you use the class designer?
Or did you manually create each of the controls - something like:
dabo.ui.dTextBox(self, RegID="CaseID",Width=225, DataSource = 'public.esenroll', DataField = 'caseno')
Well, I have chosen a third way. I manualy created a .cdxml-File (without the class designer, since my Form is huge and I don't like what it does to my .cdxml) that looks like this: (I stripped it down to the essentials for readability)
...
<dGridSizer> <dTextBox rowColPos="(1, 1)" DataField="sph_r"></dTextBox> <dTextBox rowColPos="(1, 2)" DataField="sph_l"></dTextBox> <dTextBox rowColPos="(2, 1)" DataField="cyl_r"></dTextBox> <dTextBox rowColPos="(2, 2)" DataField="cyl_l"></dTextBox> <dTextBox rowColPos="(3, 1)" DataField="ach_r"></dTextBox> <dTextBox rowColPos="(3, 2)" DataField="ach_l"></dTextBox> <dTextBox rowColPos="(4, 1)" DataField="add_r"></dTextBox> <dTextBox rowColPos="(4, 2)" DataField="add_l"></dTextBox> ... </dGridSizer> ...
This results in the TabOrder sph_r,sph_l,cyl_r,cyl_l,... But I want sph_r,cyl_r,ach_r,...,sph_l,cyl_l,...
Normally, the order or tab order is set to match top to bottom and left to right within a panel (and of course a sizer can also influence the order).
Ok, maybe I can rearange my textfields and put all *_r fields in one dSizer and *_l fields in a second one. - To bad I really liked the dGridSizer.
There is one property 'TabStop' True or False that is available.
That I have found, but it is no use to me in my situation, since I want TabStop but just a different order.
That said, take a look at dDialog.py around line 365: for pos, btn in enumerate(buttons[1:]): btn.MoveAfterInTabOrder(buttons[pos-1])
The above is used for the class->_addControls.
Johnf On 01/11/2017 08:26 AM, Max Vo? wrote:
Hello,
is it possible to set a kind of tab-index in a dabo-Form?
I have got a dPage-Object with a lot of dTextBoxes, dDropDownLists and so on but they appear in a different order on the Page than I want to step through them with the tabulator-key. The "tab-index" seems to depend only on the position on the Page. At least I have not found a corresponding property in the Object Inspector. Or did I just miss it?
Thanks in advance for your anwsers,
greetings Max
-- Max Vo? max.voss@optik-stahr.de
Optik Stahr GmbH Stephansgasse 22 67547 Worms
Tel: +49 (0) 6241/23369 Fax: +49 (0) 6241/9796079 E-Mail: info@optik-stahr.de Webseite: www.optik-stahr.de
Gesch?ftsf?hrer: Eberhard Vo? eberhard.voss@optik-stahr.de
Handelsregister Worms HRB 360 USt-IdNr.: DE 149 959 800
Message: 5 Date: Fri, 13 Jan 2017 08:01:26 -0800 From: john johnf@jfcomputer.com To: dabo-users@leafe.com Subject: Re: [dabo-users] Tab-Index of UI-Objects? Message-ID: 6bb440d3-c863-4968-f573-12a4ad9cb1b6@jfcomputer.com Content-Type: text/plain; charset=utf-8; format=flowed
Personally I don't use Class Designer or a .cdxml file. I find it very easy to manually create the form. I guess I started doing because in the beginning the Class Designer was not easy to work with - especially try to add a new control or to move one.
So today I just move the control's code to the order I want and location required by the task.
I too like the dGridSizer. I use it all the time and it has helped me with spacing, sizing, and positions of the controls within a panel.
Today the only issue I have with Dabo is the fact that wxPython does not have a stable version that supports python 3.x. Of course that's not Dabo's fault.
To be honest I believe I will soon will be moving on to Electron (uses html,css,JavaScript, Chrome, NodeJS to create the ui for a desktop app).
Johnf
On 01/13/2017 01:26 AM, Max Vo? wrote:
Hi Johnf, thanks for your reply.
In my last message I completely messed up the indeces, so please it ignore it, it will only confuse you here is the correct version.
Am Mittwoch, den 11.01.2017, 08:48 -0800 schrieb john:
How did you create the UI form? Did you use the class designer?
Or did you manually create each of the controls - something like:
dabo.ui.dTextBox(self, RegID="CaseID",Width=225, DataSource = 'public.esenroll', DataField = 'caseno')
Well, I have chosen a third way. I manualy created a .cdxml-File (without the class designer, since my Form is huge and I don't like what it does to my .cdxml) that looks like this: (I stripped it down to the essentials for readability)
...
<dGridSizer> <dTextBox rowColPos="(1, 1)" DataField="sph_r"></dTextBox> <dTextBox rowColPos="(1, 2)" DataField="sph_l"></dTextBox> <dTextBox rowColPos="(2, 1)" DataField="cyl_r"></dTextBox> <dTextBox rowColPos="(2, 2)" DataField="cyl_l"></dTextBox> <dTextBox rowColPos="(3, 1)" DataField="ach_r"></dTextBox> <dTextBox rowColPos="(3, 2)" DataField="ach_l"></dTextBox> <dTextBox rowColPos="(4, 1)" DataField="add_r"></dTextBox> <dTextBox rowColPos="(4, 2)" DataField="add_l"></dTextBox> ... </dGridSizer> ...
This results in the TabOrder sph_r,sph_l,cyl_r,cyl_l,... But I want sph_r,cyl_r,ach_r,...,sph_l,cyl_l,...
Normally, the order or tab order is set to match top to bottom and left to right within a panel (and of course a sizer can also influence the order).
Ok, maybe I can rearange my textfields and put all *_r fields in one dSizer and *_l fields in a second one. - To bad I really liked the dGridSizer.
There is one property 'TabStop' True or False that is available.
That I have found, but it is no use to me in my situation, since I want TabStop but just a different order.
That said, take a look at dDialog.py around line 365: for pos, btn in enumerate(buttons[1:]): btn.MoveAfterInTabOrder(buttons[pos-1])
The above is used for the class->_addControls.
Johnf On 01/11/2017 08:26 AM, Max Vo? wrote:
Hello,
is it possible to set a kind of tab-index in a dabo-Form?
I have got a dPage-Object with a lot of dTextBoxes, dDropDownLists and so on but they appear in a different order on the Page than I want to step through them with the tabulator-key. The "tab-index" seems to depend only on the position on the Page. At least I have not found a corresponding property in the Object Inspector. Or did I just miss it?
Thanks in advance for your anwsers,
greetings Max
Message: 6 Date: Fri, 13 Jan 2017 17:17:42 +0100 From: Henning Hraban Ramm hraban@fiee.net To: Dabo Users list dabo-users@leafe.com Subject: Re: [dabo-users] Tab-Index of UI-Objects? Message-ID: 7745DB9C-617A-43BA-B85C-7E46D832AB9A@fiee.net Content-Type: text/plain; charset=windows-1252
Am 2017-01-13 um 17:01 schrieb john johnf@jfcomputer.com:
To be honest I believe I will soon will be moving on to Electron (uses
html,css,JavaScript, Chrome, NodeJS to create the ui for a desktop app).
I hear you ? for web apps I?m leaving my beloved Python/Django behind for Meteor/Angular (i.e. also node.js).
Greetlings, Hraban
Message: 7 Date: Fri, 13 Jan 2017 08:58:11 -0800 From: john johnf@jfcomputer.com To: dabo-users@leafe.com Subject: Re: [dabo-users] Tab-Index of UI-Objects? Message-ID: 4b4f07e6-c7cb-16ef-c67a-a4c2559b9996@jfcomputer.com Content-Type: text/plain; charset=windows-1252; format=flowed
I'm not leaving Django. I have had great success with Django. I see no reason to leave Django. Django works with almost anything I've come across - that includes Angular, React, etc.. BTW check out 'vue'.
I am moving to Electron for desktop applications - only. Don't get me wrong Dabo is more than functional. It's just that Dabo's UI is based on wxPython and wxPython is preventing Dabo from moving forward and the use of python 3.x. Python 2.7.x is fine but most folks are moving forward to 3.x. Also wxPython (even Phoenix) is not adding any bells and whistles where as CSS is allowing so many in the web world.
Honestly, I'm not to sure about Electron's future. It is using Chrome and I know that is not going away anytime soon. But I have to be concerned that Google might drop support due to lack of general interest in desktop apps. I was at first concerned with the size of an Electron app. But I realized that as I added pages the size did not change much. Performance is good if not better than Dabo on the desktop. So there is a lot to like.
As far as NodeJS - well I like the fact that it is well supported by the community - but so is Django. I don't believe NodeJS's asynchronous I/O is faster than Django when comes to serving data - at least not for small websites. So I wouldn't leave Django for NodeJS.
Johnf
On 01/13/2017 08:17 AM, Henning Hraban Ramm wrote:
Am 2017-01-13 um 17:01 schrieb john johnf@jfcomputer.com:
To be honest I believe I will soon will be moving on to Electron (uses
html,css,JavaScript, Chrome, NodeJS to create the ui for a desktop app).
I hear you ? for web apps I?m leaving my beloved Python/Django behind
for Meteor/Angular (i.e. also node.js).
Greetlings, Hraban _______________________________________________ Post Messages to: Dabo-users@leafe.com Subscription Maintenance: http://mail.leafe.com/mailman/
listinfo/dabo-users
Searchable Archives: http://leafe.com/archives/search/dabo-users This message: http://leafe.com/archives/byMID/7745DB9C-617A-43BA-B85C-
7E46D832AB9A@fiee.net
Subject: Digest Footer
Dabo-users mailing list Dabo-users@leafe.com http://mail.leafe.com/mailman/listinfo/dabo-users Searchable Archives: http://leafe.com/archives/search/dabo-users
End of Dabo-users Digest, Vol 134, Issue 2
ᐧ
--- StripMime Report -- processed MIME parts --- multipart/alternative text/plain (text body -- kept) text/html ---
On Jan 15, 2017, at 6:23 PM, Steve Rose gnateater@gmail.com wrote:
It's a long story, but I had to revert to Dabo 0.9.4 from 0.9.9 due to a problem that developed with the dTextBox control when trying to do regex searches on a database. Short story, the searches became much slower under 0.9.9. If it weren't for that, I would be running the latest version.
Well, it would be great if you still had information about that so that we could investigate.
Here's the traceback when I inserted the print 'VAL ', val statement: (Did the same on a Win 7 system with no errors) and got the the same 'VAL' value as the Win 10 machine.
VAL C:/aaa/DaboCode/Calbirds/CountyTotalsReport1.rfxml
OK, I'm not that familiar with this code (help, Paul?), but it looks like there is an out-of-place parenthesis. Can you try changing the line that reads:
self.HomeDirectory = os.path.join(os.path.split(val)[:-1])[0]
to:
self.HomeDirectory = os.path.join(os.path.split(val)[:-1][0])
and see if that makes things work?
-- Ed Leafe