Portable C++ GUI framework

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • Ioannis Vranos

    Portable C++ GUI framework

    I think this is on topic here, because it is about C++ and available
    portable C++ GUI frameworks.


    I am looking for a decent portable C++ (meaning C++ API, not C) GUI
    framework that works both on Linux and Windows, so as to study and learn
    it. That is, there should be at least one good decent book about it.


    One option is QT. QT licensing however, is to pay for the QT framework,
    for running non GPL applications on Windows.

    Does anyone know any decent (like QT) portable C++ GUI framework for
    Linux and Windows with good documentation (books) available?
  • Michael Oswald

    #2
    Re: Portable C++ GUI framework

    Ioannis Vranos wrote:
    I think this is on topic here, because it is about C++ and available
    portable C++ GUI frameworks.
    >
    >
    I am looking for a decent portable C++ (meaning C++ API, not C) GUI
    framework that works both on Linux and Windows, so as to study and learn
    it. That is, there should be at least one good decent book about it.
    >
    >
    One option is QT. QT licensing however, is to pay for the QT framework,
    for running non GPL applications on Windows.
    >
    Does anyone know any decent (like QT) portable C++ GUI framework for
    Linux and Windows with good documentation (books) available?
    I think it's still off-topic here, because this has only little to do
    with the language itself. The new comp.lang.c++.m isc group might be
    better (if it's already available at your news server).


    Nevertheless: e.g. GTKmm, wxWidgets

    Though, I think there is no book on GTKmm (the C++ library
    http://www.gtkmm.org) but only on GTK (the C Library). GTK is really
    widely used (e.g. Firefox under Linux or Adobe Acrobat under Linux, GIMP
    on Windows and Linux etc).

    wxWidgets is ported to many OS's and architectures
    (http://www.wxwidgets.org). The IDE Code::Blocks uses it for Windows and
    Linux for example.


    hth,
    Michael



    Comment

    • Lionel B

      #3
      Re: Portable C++ GUI framework

      On Thu, 26 Jun 2008 11:18:31 +0300, Ioannis Vranos wrote:
      I think this is on topic here, because it is about C++ and available
      portable C++ GUI frameworks.
      >
      >
      I am looking for a decent portable C++ (meaning C++ API, not C) GUI
      framework that works both on Linux and Windows, so as to study and learn
      it. That is, there should be at least one good decent book about it.
      >
      >
      One option is QT. QT licensing however, is to pay for the QT framework,
      for running non GPL applications on Windows.
      >
      Does anyone know any decent (like QT) portable C++ GUI framework for
      Linux and Windows with good documentation (books) available?




      --
      Lionel B

      Comment

      • Ioannis Vranos

        #4
        Re: Portable C++ GUI framework

        Michael Oswald wrote:
        Ioannis Vranos wrote:
        >I think this is on topic here, because it is about C++ and available
        >portable C++ GUI frameworks.
        >>
        >>
        >I am looking for a decent portable C++ (meaning C++ API, not C) GUI
        >framework that works both on Linux and Windows, so as to study and learn
        >it. That is, there should be at least one good decent book about it.
        >>
        >>
        >One option is QT. QT licensing however, is to pay for the QT framework,
        >for running non GPL applications on Windows.
        >>
        >Does anyone know any decent (like QT) portable C++ GUI framework for
        >Linux and Windows with good documentation (books) available?
        >
        I think it's still off-topic here, because this has only little to do
        with the language itself. The new comp.lang.c++.m isc group might be
        better (if it's already available at your news server).

        It isn't, I "refreshed" the newsgroup list in an attempt to find it.

        Comment

        • James Kanze

          #5
          Re: Portable C++ GUI framework

          On Jun 26, 10:50 am, Michael Oswald <muell...@gmx.n etwrote:
          Ioannis Vranos wrote:
          I think this is on topic here, because it is about C++ and
          available portable C++ GUI frameworks.
          I am looking for a decent portable C++ (meaning C++ API, not
          C) GUI framework that works both on Linux and Windows, so as
          to study and learn it. That is, there should be at least one
          good decent book about it.
          One option is QT. QT licensing however, is to pay for the QT
          framework, for running non GPL applications on Windows.
          Does anyone know any decent (like QT) portable C++ GUI
          framework for Linux and Windows with good documentation
          (books) available?
          I think it's still off-topic here, because this has only
          little to do with the language itself.
          I don't see anything that would make it off-topic here, since it
          is about C++ in general, and not specific to a given platform.
          (Once he's chosen a framework, questions about that framework
          are probably best asked in a group or mailing list specialized
          in the framework. If only because that's where he's most likely
          to find the people who know it well.)
          The new comp.lang.c++.m isc group might be better (if it's
          already available at your news server).
          I've yet to figure out the purpose of that group, since I can't
          see any question appropriate to it which wouldn't be appropriate
          here.
          Nevertheless: e.g. GTKmm, wxWidgets
          Though, I think there is no book on GTKmm (the C++
          libraryhttp://www.gtkmm.org) but only on GTK (the C Library).
          GTK is really widely used (e.g. Firefox under Linux or Adobe
          Acrobat under Linux, GIMP on Windows and Linux etc).
          >
          wxWidgets is ported to many OS's and architectures
          (http://www.wxwidgets.org). The IDE Code::Blocks uses it for
          Windows and Linux for example.
          From what little I've seen, wxWidgets seems to be one of the
          more popular frameworks.

          --
          James Kanze (GABI Software) email:james.kan ze@gmail.com
          Conseils en informatique orientée objet/
          Beratung in objektorientier ter Datenverarbeitu ng
          9 place Sémard, 78210 St.-Cyr-l'École, France, +33 (0)1 30 23 00 34

          Comment

          • Michael Oswald

            #6
            Re: Portable C++ GUI framework

            James Kanze wrote:
            >The new comp.lang.c++.m isc group might be better (if it's
            >already available at your news server).
            >
            I've yet to figure out the purpose of that group, since I can't
            see any question appropriate to it which wouldn't be appropriate
            here.
            I don't know. At least it seems, that some things, which would be
            off-topic here would be more on-topic there. Though I could imagine,
            that there would be better support in more specific groups.

            From what little I've seen, wxWidgets seems to be one of the
            more popular frameworks.
            Yup. But to me the C++ API of GTKmm is a lot cleaner. For Example,
            wxWidgets uses some sort of macro processing for coupling of widgets
            with callbacks (which somehow reminds me on MFC), whereas GTKmm uses
            signals (like libsigc++ or boost::signal).


            lg,
            Michael

            Comment

            • R.A. Nagy

              #7
              Re: Portable C++ GUI framework


              "Ioannis Vranos" <ivranos@nospam .no.spamfreemai l.grwrote in message
              news:g3vjcn$291 l$1@ulysses.noc .ntua.gr...
              >I think this is on topic here, because it is about C++ and available
              portable C++ GUI frameworks.
              >
              >
              I am looking for a decent portable C++ (meaning C++ API, not C) GUI
              framework that works both on Linux and Windows, so as to study and learn
              it. That is, there should be at least one good decent book about it.
              >
              >
              One option is QT. QT licensing however, is to pay for the QT framework,
              for running non GPL applications on Windows.
              >
              Does anyone know any decent (like QT) portable C++ GUI framework for
              Linux and Windows with good documentation (books) available?
              Cross-Platform GUI frameworks are great, but does anyone have as good of a
              UI designer / toolset as C++Builder? (This is not a rhetorical question - I
              would sincerely like to know!) I have been waiting for the Java camp to
              catch up with Borland for decades...

              As for the Borland / CodeGear cross platform C++ offering, the CLX widget
              set seamlessly ports to both Linux and WIN32. (Kylix is the version to look
              for on Linux... I will get my license to the most recent version of the
              product next week - I can let everyone know if the cross platform is as good
              as it was a few years back if there is any interest.)

              R.A. Nagy



              Comment

              • Jon

                #8
                Re: Portable C++ GUI framework

                On Jun 26, 3:58 am, Michael Oswald <muell...@gmx.n etwrote:
                Yup. But to me the C++ API of GTKmm is a lot cleaner. For Example,
                wxWidgets uses some sort of macro processing for coupling of widgets
                with callbacks (which somehow reminds me on MFC), whereas GTKmm uses
                signals (like libsigc++ or boost::signal).

                I have had some experience with wxWidgets. wxWidgets event handler IS
                quite similar to that used by MFC. I believe that they both use
                tables that map event identifiers to member function pointers. The
                macros merely serve to build up static versions of these tables and to
                hide the not insignificant complexity of building them up. wxWidgets
                also implements what are called "pluggable" event handlers which allow
                you to construct the event handler tables for an object at run time
                and is actually quite clean. The strangest thing about the whole
                event handling system is the use of member function pointers which
                bypass the type system when the bound functions happen to be declared
                virtual leading to occasionally unexpected results.

                Regards,

                Jon Trauntvein

                Comment

                • Matthias Buelow

                  #9
                  Re: Portable C++ GUI framework

                  Michael Oswald wrote:
                  Yup. But to me the C++ API of GTKmm is a lot cleaner. For Example,
                  wxWidgets uses some sort of macro processing for coupling of widgets
                  with callbacks (which somehow reminds me on MFC), whereas GTKmm uses
                  signals (like libsigc++ or boost::signal).
                  Using macros is only one of two methods, the other is connecting event
                  handlers programmaticall y with an event handler (for example, a window).

                  GTKmm is, well, GTK. Probably not of much use outside of the X11
                  universe, especially if you have users expecting your application to
                  look&work like a native one. WxWidgets uses native widgets where applicable.

                  Comment

                  • Victor Bazarov

                    #10
                    Re: Portable C++ GUI framework

                    Ioannis Vranos wrote:
                    I think this is on topic here, because it is about C++ and available
                    portable C++ GUI frameworks.
                    There is no truly portable C++ GUI framework simply because there is no
                    GUI on many platforms that support C++ programming. While you received
                    some good answers describing the existing *cross-platform* GUI toolkits
                    (there seems to be about four of them), I would strongly recommend
                    asking in the newsgroups for the platforms to which you want to port
                    your application. It is very likely there are only three platforms that
                    you're interested in (Windows, Unix, Linux), maybe four (add MacOS).
                    So, pick one of the toolkits and post your questions about it to the
                    online forum it already undoubtedly has. You would get much more useful
                    information there than here.
                    [..]
                    V
                    --
                    Please remove capital 'A's when replying by e-mail
                    I do not respond to top-posted replies, please don't ask

                    Comment

                    • Ioannis Vranos

                      #11
                      Re: Portable C++ GUI framework

                      R.A. Nagy wrote:
                      "Ioannis Vranos" <ivranos@nospam .no.spamfreemai l.grwrote in message
                      news:g3vjcn$291 l$1@ulysses.noc .ntua.gr...
                      >I think this is on topic here, because it is about C++ and available
                      >portable C++ GUI frameworks.
                      >>
                      >>
                      >I am looking for a decent portable C++ (meaning C++ API, not C) GUI
                      >framework that works both on Linux and Windows, so as to study and learn
                      >it. That is, there should be at least one good decent book about it.
                      >>
                      >>
                      >One option is QT. QT licensing however, is to pay for the QT framework,
                      >for running non GPL applications on Windows.
                      >>
                      >Does anyone know any decent (like QT) portable C++ GUI framework for
                      >Linux and Windows with good documentation (books) available?
                      >
                      Cross-Platform GUI frameworks are great, but does anyone have as good of a
                      UI designer / toolset as C++Builder? (This is not a rhetorical question - I
                      would sincerely like to know!) I have been waiting for the Java camp to
                      catch up with Borland for decades...

                      From a quick look, QT4 on Linux has a decent designer. Not like C++
                      Builder on Windows of course.

                      As for the Borland / CodeGear cross platform C++ offering, the CLX widget
                      set seamlessly ports to both Linux and WIN32. (Kylix is the version to look
                      for on Linux... I will get my license to the most recent version of the
                      product next week - I can let everyone know if the cross platform is as good
                      as it was a few years back if there is any interest.)

                      Those are old stuff. As in my case, I suggest you check out QT first. It
                      is free for open source apps.

                      Comment

                      • Ioannis Vranos

                        #12
                        Re: Portable C++ GUI framework

                        Victor Bazarov wrote:
                        >
                        While you received
                        some good answers describing the existing *cross-platform* GUI toolkits
                        (there seems to be about four of them), I would strongly recommend
                        asking in the newsgroups for the platforms to which you want to port
                        your application. It is very likely there are only three platforms that
                        you're interested in (Windows, Unix, Linux), maybe four (add MacOS). So,
                        pick one of the toolkits and post your questions about it to the online
                        forum it already undoubtedly has. You would get much more useful
                        information there than here.

                        I think you do not mean something like asking about C++ portable GUI
                        frameworks on a Windows user forum for example. May you clarify?

                        Thanks.

                        Comment

                        • Michael Oswald

                          #13
                          Re: Portable C++ GUI framework

                          Jon wrote:
                          wxWidgets
                          also implements what are called "pluggable" event handlers which allow
                          you to construct the event handler tables for an object at run time
                          and is actually quite clean.
                          Ah, didn't know that. Well, I personally haven't used wxWidgets, just
                          had to debug some code with it.
                          The strangest thing about the whole
                          event handling system is the use of member function pointers which
                          bypass the type system when the bound functions happen to be declared
                          virtual leading to occasionally unexpected results.
                          Good to know.
                          I have to use mostly the commercial ILOG Views which uses the old system
                          of pointers to extern C declared functions which then redirect to a
                          member call which is not really not better at all.



                          lg,
                          Michael

                          Comment

                          • Michael Oswald

                            #14
                            Re: Portable C++ GUI framework

                            Matthias Buelow wrote:
                            Using macros is only one of two methods, the other is connecting event
                            handlers programmaticall y with an event handler (for example, a window).
                            Yup, as said in another post, I didn't know that.
                            GTKmm is, well, GTK. Probably not of much use outside of the X11
                            universe, especially if you have users expecting your application to
                            look&work like a native one. WxWidgets uses native widgets where applicable.
                            That's quite right. I work most of the time under Linux/Unix, so this is
                            not an issue for me, but of course for the OP.

                            Another point is the GUI builder tools. Compared with QT's designer or
                            ILOGs Studio, GTK-GLADE is somehow poor. Don't know, if there is
                            something comparable available for wxWidgets, with exception of the
                            wxSmith plugin for Code::Blocks.


                            lg,
                            Michael

                            Comment

                            • Victor Bazarov

                              #15
                              Re: Portable C++ GUI framework

                              Ioannis Vranos wrote:
                              Victor Bazarov wrote:
                              >While you received
                              >some good answers describing the existing *cross-platform* GUI toolkits
                              >(there seems to be about four of them), I would strongly recommend
                              >asking in the newsgroups for the platforms to which you want to port
                              >your application. It is very likely there are only three platforms that
                              >you're interested in (Windows, Unix, Linux), maybe four (add MacOS). So,
                              >pick one of the toolkits and post your questions about it to the online
                              >forum it already undoubtedly has. You would get much more useful
                              >information there than here.
                              >
                              >
                              I think you do not mean something like asking about C++ portable GUI
                              frameworks on a Windows user forum for example. May you clarify?
                              I can clarify, I think. Ask not in the Windows *user* forum, but ask in
                              the Windows *programming* forum. Or in the Linux *programming* forum.

                              V
                              --
                              Please remove capital 'A's when replying by e-mail
                              I do not respond to top-posted replies, please don't ask

                              Comment

                              Working...