wxPython worries

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • James Goldwater

    wxPython worries

    I'm starting a new hopfully-commercial project soon, and I face a
    dilemma about whether Python with wxPython would be appropriate.

    The project has 3 main areas:

    a) manipulation of lists and trees, using..
    b) a hopefully dead-sexy gui, all in order to...
    c) eventually pump out certain bits of the datastructure over the
    network in semi-realtime (< 10ms accuracy or so).

    The target is Win32 for now (98 - XP). Now, if it were up to me, I'd use
    Delphi - it's what I know best. But I'm working with a less experienced
    developer with whom I have no languages in common. He's keen to get
    started on C#, I've toyed with C# and though it looks easy, I don't see
    any major gains over what I already know.

    I've read a lot about python and done some mini-stuff in it, and been
    impressed with it's ease and conciseness. What worries me is wxPython:
    looking at the demo code, it's quite verbose and 'bitty'. I'm also
    unclear as to how easy custom controls are to build.

    Am I just being confused by my newbie-ness, or are my initial concerns
    justified? What's anybody else's experiences with gui programming in
    wxPython like vs a RAD like Delphi or .NET?

    Thanks,

    James.


  • Guyon Morée

    #2
    Re: wxPython worries

    I've got the same worries, but I'm still not really convinced...
    boa-constructor is nice... but not there yet


    "James Goldwater" <james@eccehomo .co.uk> wrote in message
    news:mailman.35 2.1074092092.12 720.python-list@python.org ...[color=blue]
    > I'm starting a new hopfully-commercial project soon, and I face a
    > dilemma about whether Python with wxPython would be appropriate.
    >
    > The project has 3 main areas:
    >
    > a) manipulation of lists and trees, using..
    > b) a hopefully dead-sexy gui, all in order to...
    > c) eventually pump out certain bits of the datastructure over the
    > network in semi-realtime (< 10ms accuracy or so).
    >
    > The target is Win32 for now (98 - XP). Now, if it were up to me, I'd use
    > Delphi - it's what I know best. But I'm working with a less experienced
    > developer with whom I have no languages in common. He's keen to get
    > started on C#, I've toyed with C# and though it looks easy, I don't see
    > any major gains over what I already know.
    >
    > I've read a lot about python and done some mini-stuff in it, and been
    > impressed with it's ease and conciseness. What worries me is wxPython:
    > looking at the demo code, it's quite verbose and 'bitty'. I'm also
    > unclear as to how easy custom controls are to build.
    >
    > Am I just being confused by my newbie-ness, or are my initial concerns
    > justified? What's anybody else's experiences with gui programming in
    > wxPython like vs a RAD like Delphi or .NET?
    >
    > Thanks,
    >
    > James.
    >
    >[/color]


    Comment

    • Lars Heuer

      #3
      Re: wxPython worries

      Hello again,

      Forgot to mention SPE (uses the mentioned wxGlade):


      Maybe this tool is more "IDE"-like. ;)

      Regards,
      Lars


      Comment

      • Lars Heuer

        #4
        Re: wxPython worries

        Hello Guyon,
        [color=blue]
        > I've got the same worries, but I'm still not really convinced...
        > boa-constructor is nice... but not there yet[/color]

        There's another free tool:

        wxGlade


        Commercial tools:
        wxDesigner:


        DialogBlocks:


        Maybe some of these tools fit your needs. I've no deep experience with
        them all. :)

        HTH,
        Lars


        Comment

        • Joe Francia

          #5
          Re: wxPython worries

          James Goldwater wrote:[color=blue]
          > I'm starting a new hopfully-commercial project soon, and I face a
          > dilemma about whether Python with wxPython would be appropriate.
          >
          > The project has 3 main areas:
          >
          > a) manipulation of lists and trees, using..
          > b) a hopefully dead-sexy gui, all in order to...
          > c) eventually pump out certain bits of the datastructure over the
          > network in semi-realtime (< 10ms accuracy or so).
          >
          > The target is Win32 for now (98 - XP). Now, if it were up to me, I'd use
          > Delphi - it's what I know best. But I'm working with a less experienced
          > developer with whom I have no languages in common. He's keen to get
          > started on C#, I've toyed with C# and though it looks easy, I don't see
          > any major gains over what I already know.
          >
          > I've read a lot about python and done some mini-stuff in it, and been
          > impressed with it's ease and conciseness. What worries me is wxPython:
          > looking at the demo code, it's quite verbose and 'bitty'. I'm also
          > unclear as to how easy custom controls are to build.
          >
          > Am I just being confused by my newbie-ness, or are my initial concerns
          > justified? What's anybody else's experiences with gui programming in
          > wxPython like vs a RAD like Delphi or .NET?
          >
          > Thanks,
          >
          > James.
          >[/color]

          I share your concerns with wxPython - it's a good, powerful toolkit, but
          it lacks consistent and clear documentation, and a decent screen painter
          (wxGlade probably is the most complete).

          If you have the budget (USD 399 per developer), you may want look at
          BlackAdder from The Kompany. It uses the PyQt bindings for the Qt
          toolkit, which I find to be a bit better than wxPython/wxWindows, a bit
          more polished and consistent. The package includes the BlackAdder
          editor, the QtDesigner, PyQt docs and a license to redistribute the PyQt
          libraries for win32 (which is really what you're paying for - most of
          this is available for free on GPL'ed systems).

          Another option is to extend/embed Python with Delphi; specifically, use
          Delphi for the GUI, and Python for the logic. There's some Delphi
          bindings and documentation here:




          Comment

          • PT

            #6
            Re: wxPython worries

            > What worries me is wxPython:[color=blue]
            > I'm also
            > unclear as to how easy custom controls are to build.[/color]

            None of the Python GUI toolkits support making good custom controls as
            well as Java and .NET do. TKinter is probably the best Python option
            for that. If you are comfortable with Windows programming though,
            wxPython will not be too difficult.
            [color=blue]
            > Am I just being confused by my newbie-ness, or are my initial concerns
            > justified? What's anybody else's experiences with gui programming in
            > wxPython like vs a RAD like Delphi or .NET?[/color]

            If you want something similar to Delphi or .NET, then you would
            probably like QT Designer much better than the wx options. See
            BlackAdder (Win, $$) or eric3 (Linux, free):



            If money isn't an issue though, just stick with Visual Studio and C#
            and let the other guy do most of the work.

            Comment

            • Jarek Zgoda

              #7
              Re: wxPython worries

              James Goldwater <james@eccehomo .co.uk> pisze:
              [color=blue]
              > The target is Win32 for now (98 - XP). Now, if it were up to me, I'd use
              > Delphi - it's what I know best. But I'm working with a less experienced
              > developer with whom I have no languages in common. He's keen to get
              > started on C#, I've toyed with C# and though it looks easy, I don't see
              > any major gains over what I already know.[/color]

              I love Delphi but I would choose Python for simplicity, flexibility and
              library (will not mention that it works on AS/400, the best
              minicomputer(!) ever made).

              But I'm rather guerilla guy and mainstream makes me sick.

              (NP: The Pogues - Sally MacLennane)

              --
              Jarek Zgoda
              Unregistered Linux User #-1
              http://www.zgoda.biz/ JID:zgoda-a-chrome.pl http://zgoda.jogger.pl/

              Comment

              • James Goldwater

                #8
                Re: wxPython worries

                It's not the RADdish-ness (is that a word?) - drag'n'drop, property
                assignment etc - that concerns me, it's the ease of gui building - by
                hand is fine (oh how I've come to 'love' Java's layout managers...)

                Custom controls is the biggie then. I think I'll have a punt at building
                a custom control in wxPython to see if it's even feasible. Anybody want
                an arbitrary-angled triangular-wedge button? (My first custom control
                in Delphi version 1, all those years back...)

                PT wrote:[color=blue][color=green]
                >>What worries me is wxPython:
                >>I'm also
                >>unclear as to how easy custom controls are to build.[/color]
                >
                >
                > None of the Python GUI toolkits support making good custom controls as
                > well as Java and .NET do. TKinter is probably the best Python option
                > for that. If you are comfortable with Windows programming though,
                > wxPython will not be too difficult.
                >
                >[color=green]
                >>Am I just being confused by my newbie-ness, or are my initial concerns
                >>justified? What's anybody else's experiences with gui programming in
                >>wxPython like vs a RAD like Delphi or .NET?[/color]
                >
                >
                > If you want something similar to Delphi or .NET, then you would
                > probably like QT Designer much better than the wx options. See
                > BlackAdder (Win, $$) or eric3 (Linux, free):
                > http://www.thekompany.com/products/blackadder/
                > http://www.die-offenbachs.de/detlev/eric3.html
                >
                > If money isn't an issue though, just stick with Visual Studio and C#
                > and let the other guy do most of the work.[/color]

                --
                James Goldwater
                I.T. Consultant
                020 8949 7927 (mobile 078 999 55 265)

                GPG Key: A2137B98 (pgp.mit.edu)


                Comment

                • дамјан г.

                  #9
                  [OT] AS/400

                  [color=blue]
                  > (will not mention that it works on AS/400, the best
                  > minicomputer(!) ever made).[/color]

                  Why is it the best minicomputer ever made?
                  I really want to know!


                  --
                  Дамјан (jabberID:damja n@bagra.net.mk)

                  To boldly go where I surely don't belong.

                  Comment

                  • John J. Lee

                    #10
                    Re: wxPython worries

                    James Goldwater <james@eccehomo .co.uk> writes:
                    [color=blue]
                    > It's not the RADdish-ness (is that a word?) - drag'n'drop, property
                    > assignment etc - that concerns me, it's the ease of gui building - by
                    > hand is fine (oh how I've come to 'love' Java's layout managers...)[/color]

                    I'll make my usual comment, which is that nobody has yet contradicted
                    me (unusual on USENET ;-) that Qt is the most well-designed Python GUI
                    framework. (Qt Designer is very good, too.)

                    And, strangely, the PyQt commercial license is far cheaper than (C++)
                    Qt. $400 for former (Blackadder, from theKompany.com) , $2500-odd for
                    the latter!

                    (before somebody asks: no, you *don't* need both licenses -- only the
                    cheap one from theKompany, who have an agreement with trolltech)

                    I believe Blackadder comes with Python-specific docs for PyQt, but
                    they're actually completely redundant, IMHO -- it's trivial to
                    translate the C++ docs to Python code, using the list of exceptions
                    distributed with PyQt. Another BTW: their FAQ page still says
                    Blackadder is in beta, but I think somebody here mentioned the final
                    version was actually released some while back (PyQt itself has been
                    stable for years, of course).

                    [color=blue]
                    > Custom controls is the biggie then. I think I'll have a punt at[/color]
                    [...]

                    PyQt is certainly good at this.


                    John

                    Comment

                    • Joe Francia

                      #11
                      Re: wxPython worries

                      John J. Lee wrote:[color=blue]
                      > I'll make my usual comment, which is that nobody has yet contradicted
                      > me (unusual on USENET ;-) that Qt is the most well-designed Python GUI
                      > framework. (Qt Designer is very good, too.)[/color]

                      I'll second that, and go as far as to say it's a very good GUI framework
                      no matter how you speak to it.
                      [color=blue]
                      > And, strangely, the PyQt commercial license is far cheaper than (C++)
                      > Qt. $400 for former (Blackadder, from theKompany.com) , $2500-odd for
                      > the latter![/color]

                      $400 is for preofessional use. For personal use, it's $80, but you lose
                      the right to distribute your apps (but maybe not if you release them
                      under the GPL - I should look into that).
                      [color=blue]
                      > I believe Blackadder comes with Python-specific docs for PyQt, but
                      > they're actually completely redundant, IMHO -- it's trivial to
                      > translate the C++ docs to Python code, using the list of exceptions
                      > distributed with PyQt.[/color]

                      You do get a copy of the docs with your BA purchase. The Kompany also
                      sells the PyQt docs separately for $20 for a one-time purchase, or $70
                      for a yearly subscription; that is, all updates for one year are included.

                      Another BTW: their FAQ page still says[color=blue]
                      > Blackadder is in beta, but I think somebody here mentioned the final
                      > version was actually released some while back (PyQt itself has been
                      > stable for years, of course).[/color]

                      It is indeed stable. The one thing I don't like about BlackAdder is
                      BlackAdder itself, the editor portion. It's not terrible - it just
                      doesn't behave quite like I expect a dedicated Python editor to behave.
                      I usually create my GUI in the Qt Designer, and then edit the Python
                      stuff in Eric (Linux) or SciTE (win32).

                      Comment

                      • Jarek Zgoda

                        #12
                        Re: [OT] AS/400

                        ?????? ? <mk@net.mail.pe nguinista> pisze:
                        [color=blue][color=green]
                        >> (will not mention that it works on AS/400, the best
                        >> minicomputer(!) ever made).[/color]
                        >
                        > Why is it the best minicomputer ever made?
                        > I really want to know![/color]

                        Since nobody ever produced any other. Only IBM produced machines that
                        can be called "midrange" (something between microcomputer and "real
                        computer", the famous S/390 mainframe). They still use this terminology.

                        --
                        Jarek Zgoda
                        Unregistered Linux User #-1
                        http://www.zgoda.biz/ JID:zgoda-a-chrome.pl http://zgoda.jogger.pl/

                        Comment

                        • Cameron Laird

                          #13
                          Re: [OT] AS/400

                          In article <bu6l68$8uv$1@a tlantis.news.tp i.pl>,
                          Jarek Zgoda <jzgoda@gazeta. usun.pl> wrote:[color=blue]
                          >?????? ? <mk@net.mail.pe nguinista> pisze:
                          >[color=green][color=darkred]
                          >>> (will not mention that it works on AS/400, the best
                          >>> minicomputer(!) ever made).[/color]
                          >>
                          >> Why is it the best minicomputer ever made?
                          >> I really want to know![/color]
                          >
                          >Since nobody ever produced any other. Only IBM produced machines that
                          >can be called "midrange" (something between microcomputer and "real
                          >computer", the famous S/390 mainframe). They still use this terminology.[/color]

                          Comment

                          • Cousin Stanley

                            #14
                            Re: [OT] AS/400

                            > Why is it the best minicomputer ever made?[color=blue]
                            > I really want to know![/color]

                            | Since nobody ever produced any other.
                            | Only IBM produced machines that can be called "midrange"
                            | (something between microcomputer and "real computer",
                            | the famous S/390 mainframe). They still use this terminology.

                            Jarek ....

                            Honeywell also produced a line of mid-range machines
                            called the Level 6 minicomputers ....

                            These machines ran an operating system
                            which had an internal architecture
                            and command line interface different from,
                            but vaguely similar, to Multics, a Honeywell mainframe OS ....

                            Multics was a major predecessor of Unix,
                            a euphemism for Multics Without Balls
                            deemed so by the original developers themselves ....

                            Without Multics there might not be
                            any such thing as Unix or Linux ....

                            You can find the history of Multics at ....

                            Multics was a mainframe time-sharing operating system begun in 1965 and used until 2000. It was a major influence on subsequent computer operating systems.


                            --
                            Cousin Stanley
                            Human Being
                            Phoenix, Arizona

                            Comment

                            • Skip Montanaro

                              #15
                              Re: [OT] AS/400

                              [color=blue][color=green][color=darkred]
                              >>> (will not mention that it works on AS/400, the best minicomputer(!)
                              >>> ever made).[/color]
                              >>
                              >> Why is it the best minicomputer ever made? I really want to know![/color][/color]

                              Jarek> Since nobody ever produced any other. Only IBM produced machines
                              Jarek> that can be called "midrange" (something between microcomputer
                              Jarek> and "real computer", the famous S/390 mainframe). They still use
                              Jarek> this terminology.

                              You seem to be forgetting (at least) DEC's VAX line of computers. Data
                              General and PR1ME had computers classed as "mini" computers also. I'm sure
                              there were others.

                              Skip

                              Comment

                              Working...