Yet another GUI toolkit question...

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Kevin Walzer

    #16
    Re: Yet another GUI toolkit question...

    Steve Holden wrote:[color=blue]
    > Robert Hicks wrote:[color=green]
    >> Wow you are so wrong about Tk on OSX. Soon this is just not going to be
    >> the case at all for any of the system Tcl/Tk runs on. The Tcl folks
    >> have come out with a package called "Tile" that is going to be rolled
    >> in. It gives you native L&F on OSX, Windows, Linux.
    >>[/color]
    > This is good news if it happens, but right now it's just another dose of
    > "real soon now".
    >
    > regards
    > Steve[/color]

    Not true. It's already available. I've shipped three open-source and one
    commercial application making use of Tile.

    The Tkinter wrapper is here:



    The server is down at the moment but is supposed to be back online shortly.

    --
    Kevin Walzer
    iReveal: File Search Tool

    Comment

    • Kevin Walzer

      #17
      Re: Yet another GUI toolkit question...

      Peter Decker wrote:[color=blue]
      > On 2/10/06, Kevin Walzer <sw@wordtech-software.com> wrote:
      >[color=green]
      >> I'm undertaking my first semi-substantial Python GUI application after a
      >> long time dabbling with the language.
      >>[/color]
      > ...[color=green]
      >> So: my question is, would it be more productive for me to wrestle with
      >> these extensions when there doesn't seem to be much constituency for
      >> their use, or would it be better/faster/more efficient for me to start
      >> scaling the wxPython mountain?[/color]
      >
      > If you're going cross-platform, then wxPython is the toolkit to use.
      > It looks and works correctly on all platforms.
      >
      > I worked with wxPython for a couple of years, and constantly struggled
      > with the ugle, C++ style syntax, and then discovered Dabo. Dabo is a
      > full 3-tier application framework, and its UI tier wraps wxPython. So
      > while you're using wxPython when you use dabo.ui, you're writing
      > clean, Pythonic code. I found that after playing around with Dabo for
      > a little bit, I could write apps that worked without constantly going
      > to the docs to look up some obscure constant or event name. The
      > authors are also extremely helpful, so if write your app using Dabo,
      > I'm sure that you'll have tons of support.
      >
      > http://dabodev.com
      >
      > --
      >
      > # p.d.[/color]

      Dabo looks interesting, but isn't it mainly for database applications?
      Has any other kind of application been developed with it? Also, it seems
      very Windows/Linux-centric. Is anyone using it on OS X?

      --
      Kevin Walzer
      iReveal: File Search Tool

      Comment

      • Kevin Walzer

        #18
        Re: Yet another GUI toolkit question...

        Peter Decker wrote:[color=blue]
        > On 2/10/06, Kevin Walzer <sw@wordtech-software.com> wrote:
        >[color=green]
        >> I'm undertaking my first semi-substantial Python GUI application after a
        >> long time dabbling with the language.
        >>[/color]
        > ...[color=green]
        >> So: my question is, would it be more productive for me to wrestle with
        >> these extensions when there doesn't seem to be much constituency for
        >> their use, or would it be better/faster/more efficient for me to start
        >> scaling the wxPython mountain?[/color]
        >
        > If you're going cross-platform, then wxPython is the toolkit to use.
        > It looks and works correctly on all platforms.
        >
        > I worked with wxPython for a couple of years, and constantly struggled
        > with the ugle, C++ style syntax, and then discovered Dabo. Dabo is a
        > full 3-tier application framework, and its UI tier wraps wxPython. So
        > while you're using wxPython when you use dabo.ui, you're writing
        > clean, Pythonic code. I found that after playing around with Dabo for
        > a little bit, I could write apps that worked without constantly going
        > to the docs to look up some obscure constant or event name. The
        > authors are also extremely helpful, so if write your app using Dabo,
        > I'm sure that you'll have tons of support.
        >
        > http://dabodev.com
        >
        > --
        >
        > # p.d.[/color]

        Dabo looks interesting, but isn't it mainly for database applications?
        Has any other kind of application been developed with it? Also, it seems
        very Windows/Linux-centric. Is anyone using it on OS X?

        --
        Kevin Walzer
        iReveal: File Search Tool

        Comment

        • Kevin Walzer

          #19
          Re: Yet another GUI toolkit question...

          Chris Mellon wrote:
          [color=blue]
          >
          > If you're planning on selling an application, especially to OS X
          > users, then Tk is absolutely out of the question. It doesn't have even
          > the slightest resemblence to native behavior, and lacks the polish and
          > flash that occasionally lets a non-native app get away with it. Given
          > the limits you've stated, I believe your only options are wxPython and
          > writting 2 guis using PyWin/PyObjC. The second option requires
          > knowledge of the native tool sets for the respective platforms, so if
          > you don't have that I can only suggest wxPython. If you're used to Tk
          > you will face a learning curve, and you will need to look for or write
          > replacements for the custom widgets you've been using.
          >[/color]

          Do these screenshots look "non-native" to you?





          This application was developed in Tcl/Tk.

          I think Tkinter is lagging behind Tk itself in terms of its advances
          with theming and native look and feel, especially on OS X and Win XP.
          Certainly a lot of Python developers don't seem well-informed about the
          work that has been done to bring Tk back into the modern age. The
          wrappers I mentioned above (some at a site that is offline but should be
          back online shortly, I'm told) are bleeding-edge in Tkinter terms but
          reflect work that started a couple of years ago in Tk. (The extension is
          called "Tile" and will be part of the Tk core when it's released at v. 8.5).

          That doesn't mean wxPython is out of the question. What I'm trying to
          figure out is whether I will be up and running faster with Tkinter +
          Tile (leaving me mainly to improve my proficiency with Python itself and
          translate Tk into a Python idiom) or whether I should learn wxPython,
          with its vastly different GUI paradigm, as well as Python.

          If Tkinter + Tile + Bwidgets + Tablelist does the job, as I think it may
          (and as it does with regular Tcl/Tk), then I will probably stick with
          that. And perhaps I can then contribute some documentation somewhere on
          how to use the Tile widgets in a Tkinter application, complete with
          screen shots and working code for others to use. Such documentation is
          sorely lacking right now.

          The vast range of available GUI toolkits is one thing that partially
          offsets Python's many virtues as a programming language. I realize I was
          stepping into a fire swamp by even broaching the question. However, the
          application I'm envisioning (accessing web services from a desktop GUI)
          will benefit from the abundant Python libraries/wrappers that have
          already been written, which are mostly lacking (or which would require
          me to roll my own) in Tcl.


          --
          Kevin Walzer
          iReveal: File Search Tool

          Comment

          • Kevin Walzer

            #20
            Re: Yet another GUI toolkit question...

            Steve Holden wrote:[color=blue]
            > Robert Hicks wrote:[color=green]
            >> Wow you are so wrong about Tk on OSX. Soon this is just not going to be
            >> the case at all for any of the system Tcl/Tk runs on. The Tcl folks
            >> have come out with a package called "Tile" that is going to be rolled
            >> in. It gives you native L&F on OSX, Windows, Linux.
            >>[/color]
            > This is good news if it happens, but right now it's just another dose of
            > "real soon now".
            >
            > regards
            > Steve[/color]

            Not true. It's already available. I've shipped three open-source and one
            commercial application making use of Tile.

            The Tkinter wrapper is here:



            The server is down at the moment but is supposed to be back online shortly.

            --
            Kevin Walzer
            iReveal: File Search Tool

            Comment

            • Peter Decker

              #21
              Re: Yet another GUI toolkit question...

              On 2/11/06, Kevin Walzer <sw@wordtech-software.com> wrote:
              [color=blue]
              > Dabo looks interesting, but isn't it mainly for database applications?
              > Has any other kind of application been developed with it? Also, it seems
              > very Windows/Linux-centric. Is anyone using it on OS X?[/color]

              The Dabo demo comes with several games written that have no database
              stuff at all. According to the developers (one of whom develops on OS
              X, to answer your other question), they started out creating a tool
              for database apps, but the response has been so strong on the UI side
              that they've spent most of their time making the dabo.ui module able
              to be used by iteself.

              I don't do any development work with databases, and I've used Dabo for
              several internal apps. The stuff I used to write in wxPython I now
              write in Dabo.

              --

              # p.d.

              Comment

              • Peter Decker

                #22
                Re: Yet another GUI toolkit question...

                On 2/11/06, Kevin Walzer <sw@wordtech-software.com> wrote:
                [color=blue]
                > Also, it seems
                > very Windows/Linux-centric. Is anyone using it on OS X?[/color]

                I almost forgot: take a look at this screencast:



                It's the second part of a demonstration on using sizers in the Dabo
                visual designer tool. The first part was done on Linux, and the saved
                file was copied over unchanged to OS X, where the demo was completed.

                --

                # p.d.

                Comment

                • Chris Mellon

                  #23
                  Re: Yet another GUI toolkit question...

                  On 2/11/06, Kevin Walzer <sw@wordtech-software.com> wrote:[color=blue]
                  > Chris Mellon wrote:
                  >[color=green]
                  > >
                  > > If you're planning on selling an application, especially to OS X
                  > > users, then Tk is absolutely out of the question. It doesn't have even
                  > > the slightest resemblence to native behavior, and lacks the polish and
                  > > flash that occasionally lets a non-native app get away with it. Given
                  > > the limits you've stated, I believe your only options are wxPython and
                  > > writting 2 guis using PyWin/PyObjC. The second option requires
                  > > knowledge of the native tool sets for the respective platforms, so if
                  > > you don't have that I can only suggest wxPython. If you're used to Tk
                  > > you will face a learning curve, and you will need to look for or write
                  > > replacements for the custom widgets you've been using.
                  > >[/color]
                  >
                  > Do these screenshots look "non-native" to you?[/color]

                  Yes, actually. But thats not the point, and a trivial dialog isn't
                  enough to really judge Tile anyway.
                  [color=blue]
                  >
                  > http://www.wordtech-software.com/ireveal-mac.png
                  > http://www.wordtech-software.com/ireveal-windows.png
                  > http://www.wordtech-software.com/ireveal-linux.png
                  >
                  > This application was developed in Tcl/Tk.
                  >
                  > I think Tkinter is lagging behind Tk itself in terms of its advances
                  > with theming and native look and feel, especially on OS X and Win XP.
                  > Certainly a lot of Python developers don't seem well-informed about the
                  > work that has been done to bring Tk back into the modern age. The
                  > wrappers I mentioned above (some at a site that is offline but should be
                  > back online shortly, I'm told) are bleeding-edge in Tkinter terms but
                  > reflect work that started a couple of years ago in Tk. (The extension is
                  > called "Tile" and will be part of the Tk core when it's released at v. 8.5).
                  >
                  > That doesn't mean wxPython is out of the question. What I'm trying to
                  > figure out is whether I will be up and running faster with Tkinter +
                  > Tile (leaving me mainly to improve my proficiency with Python itself and
                  > translate Tk into a Python idiom) or whether I should learn wxPython,
                  > with its vastly different GUI paradigm, as well as Python.
                  >[/color]

                  That depends almost totally on you and your skills, doesn't it? I'm an
                  unabashed fan of wxPython, so naturally I lean that way, but I
                  wouldn't deny that is has a learning curve. It's famous "C++ like API"
                  has seen vast improvement in the last few releases, by the way, and is
                  much more pythonic than a lot of people seem to believe - no more
                  from wxPython import *, for example. I certainly find it's API more
                  pythonic than Tkinters.
                  [color=blue]
                  > If Tkinter + Tile + Bwidgets + Tablelist does the job, as I think it may
                  > (and as it does with regular Tcl/Tk), then I will probably stick with
                  > that. And perhaps I can then contribute some documentation somewhere on
                  > how to use the Tile widgets in a Tkinter application, complete with
                  > screen shots and working code for others to use. Such documentation is
                  > sorely lacking right now.
                  >
                  > The vast range of available GUI toolkits is one thing that partially
                  > offsets Python's many virtues as a programming language. I realize I was
                  > stepping into a fire swamp by even broaching the question. However, the
                  > application I'm envisioning (accessing web services from a desktop GUI)
                  > will benefit from the abundant Python libraries/wrappers that have
                  > already been written, which are mostly lacking (or which would require
                  > me to roll my own) in Tcl.
                  >[/color]

                  I can't possibly see how an available range of GUI toolkits is a
                  detriment to a *language*. I can see (but don't neccesarily agree)
                  that is detrimental to a desktop environment or whatever, but not a
                  language. By that standard C is the worst language to ever exist, C++
                  only marginally better, and stuff like Visual FoxPro the best of all.
                  [color=blue]
                  >
                  >
                  > --
                  > Kevin Walzer
                  > iReveal: File Search Tool
                  > http://www.wordtech-software.com
                  >[/color]

                  Comment

                  • Neil Hodgson

                    #24
                    Re: Yet another GUI toolkit question...

                    Kevin Walzer:
                    [color=blue]
                    > Do these screenshots look "non-native" to you?
                    >
                    > http://www.wordtech-software.com/ireveal-mac.png[/color]

                    Yes. I don't use a Mac much but the following are really obvious.
                    The column header icons don't fit within the header. The scroll bar is
                    squished up too thin. The icons are from Windows.
                    [color=blue]
                    > http://www.wordtech-software.com/ireveal-windows.png[/color]

                    Yes. The archetype here is Windows XP Explorer. Icons too large.
                    Icons jaggy due to lack of alpha compositing. Icon text too long but no
                    label for entry field. Weird discontinuity between toolbar and list.
                    List header too tall. List has alternating background. Status bar not
                    indented. No resize indicator in status bar. Line between columns.
                    Vertical scroll bar ends at bottom of horizontal scroll bar rather than
                    top. Scroll bars use dithered background rather than graduated smooth
                    background.
                    [color=blue]
                    > http://www.wordtech-software.com/ireveal-linux.png[/color]

                    Totally native. If you are still using a 10 year old desktop
                    environment.

                    Neil

                    Comment

                    • John J. Lee

                      #25
                      Re: Yet another GUI toolkit question...

                      Kevin Walzer <sw@wordtech-software.com> writes:
                      [...][color=blue]
                      > Commercial Qt is a little out of my price range.[/color]

                      Commercial *PyQt* (including a license for Qt for use only with PyQt)
                      is $400 (USD) per developer (plus an extra $300/year if you want
                      upgrades). That's compared to Qt license for use *with C++* varying
                      from $1690 to $6260. So PyQt is 4-15 times cheaper than old-fashioned
                      C++ Qt!




                      Apparently you get mxODBC in that price, too. And the Blackadder
                      development environment itself, of course, though personally I
                      wouldn't use it.

                      PyQt 4 now seems to exist, though not as a stable release yet, so I
                      imagine it'll be a bit longer untill there's a release of Blackadder
                      that supports Qt 4. I recall the PyQt 2 --> PyQt 3 upgrade as being
                      fairly painless (in terms of code changes), though.


                      John

                      Comment

                      • Phil Thompson

                        #26
                        Re: Yet another GUI toolkit question...

                        On Monday 13 February 2006 12:33 am, John J. Lee wrote:[color=blue]
                        > Kevin Walzer <sw@wordtech-software.com> writes:
                        > [...]
                        >[color=green]
                        > > Commercial Qt is a little out of my price range.[/color]
                        >
                        > Commercial *PyQt* (including a license for Qt for use only with PyQt)
                        > is $400 (USD) per developer (plus an extra $300/year if you want
                        > upgrades). That's compared to Qt license for use *with C++* varying
                        > from $1690 to $6260. So PyQt is 4-15 times cheaper than old-fashioned
                        > C++ Qt!
                        >
                        > http://www.thekompany.com/products/blackadder/
                        >
                        >
                        > Apparently you get mxODBC in that price, too. And the Blackadder
                        > development environment itself, of course, though personally I
                        > wouldn't use it.
                        >
                        > PyQt 4 now seems to exist, though not as a stable release yet, so I
                        > imagine it'll be a bit longer untill there's a release of Blackadder
                        > that supports Qt 4. I recall the PyQt 2 --> PyQt 3 upgrade as being
                        > fairly painless (in terms of code changes), though.[/color]

                        There will never be a release of Blackadder that supports PyQt4.

                        Phil

                        Comment

                        • John J. Lee

                          #27
                          Re: Yet another GUI toolkit question...

                          Phil Thompson <phil@riverbank computing.co.uk > writes:
                          [color=blue]
                          > On Monday 13 February 2006 12:33 am, John J. Lee wrote:[color=green]
                          > > Kevin Walzer <sw@wordtech-software.com> writes:
                          > > [...]
                          > >[color=darkred]
                          > > > Commercial Qt is a little out of my price range.[/color]
                          > >
                          > > Commercial *PyQt* (including a license for Qt for use only with PyQt)
                          > > is $400 (USD) per developer (plus an extra $300/year if you want
                          > > upgrades). That's compared to Qt license for use *with C++* varying
                          > > from $1690 to $6260. So PyQt is 4-15 times cheaper than old-fashioned
                          > > C++ Qt![/color][/color]
                          [...][color=blue][color=green]
                          > > PyQt 4 now seems to exist, though not as a stable release yet, so I
                          > > imagine it'll be a bit longer untill there's a release of Blackadder
                          > > that supports Qt 4. I recall the PyQt 2 --> PyQt 3 upgrade as being
                          > > fairly painless (in terms of code changes), though.[/color]
                          >
                          > There will never be a release of Blackadder that supports PyQt4.[/color]

                          Will there be a licensing deal that allows commercial use of PyQt
                          cheaper than the standard Qt C++ licenses?


                          John

                          Comment

                          Working...