Announcement

Collapse
No announcement yet.

The Biggest Problem With GTK & What Qt Does Good

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • #31
    @bnolsen, for me whole QML concept seems like idea from Nokia (which used to own Qt at that time), mostly for use with their platforms (which they abandoned, after switching to Windows Phone).
    QML is currently only useful for small applications, only since introduction of... (almost) real widgets. :-D
    Hopefully nobody will ever force me to use it instead of QtWidgets.

    JavaScript was available for much longer as scripting language, very useful thing (and integrates well with C++, even including exposing C++ objects to QtWebKit), if not abused.

    And one of these additions in QtWidgets in 5.2 was QKeySequenceEdit.
    I'm not sure if maintenance only is really true after departure of Nokia. Also there are widgets modules for QtMultimedia and QtWebkit (and there will be for QtWebEngine too).

    Comment


    • #32
      if qtcreator is so cool how can i open automake project eazily or import anything ??

      I can't , right? So pls dont say its awesome IDE ...

      Comment


      • #33
        Originally posted by mir3x View Post
        if qtcreator is so cool how can i open automake project eazily or import anything ??

        I can't , right? So pls dont say its awesome IDE ...
        File -> New -> Import Project -> Import Existing Project. Then you type the path and select the files you want included and it's done. It should run "make" when you build the project.

        If there is any other way to setup a Makefile-based build (automake, cmake, etc.), I don't use it.

        Comment


        • #34
          I prefer Kdevelop than QtCreator, I feel the parser more complete and it has great integration with cmake

          Comment


          • #35
            I have literally created an account to say QtCreator is something. The not intrusive CMake importer (more like plugin) got me. It feels modern and way more responsive than Eclipse (I have always thought Eclipse was a disaster anyway, so many bugs that can be encountered regular basic tasks). However the UI is somewhat complicated, different maybe, so I feel like I need to get used to it.

            I can't say anything on GTK vs. Qt though since I never developed UI apps. But the fact that QtCreator is written in Qt it shows that Qt is far from being a slow unresponsive framework. But having QtCreator on Qt's side seems like a big bonus for Qt. However total binary size that I need to distribute will be a deal breaker if I ever need to choose GUI lib. GNOME 3's looks vs KDE makes me lean towards GTK. On the other hand QtCreator also shows what is possible with Qt and the (possibly) well integrated helpers into QtCreator for Qt makes me lean towards Qt.

            I was also a Geany user but will definitely give QtCreator a try in the future.

            Comment


            • #36
              Originally posted by JS987 View Post
              You can't use hardware accelerated QML widgets in C++ application without using QML language and Javascript.
              QML obviously implies the existence of a JavaScript interpreter, though it might not be used if all bindings are trivial enough.
              But also obvious, using QML is not the prerequiste for using hardware accelerated UI.

              Hardware accelerated drawing is a property of the used component technology, not a property of the technology used to create the scene's objects.
              For example:
              if you use QML with QtWidgets, then the drawing will most likely not be hardware accelerated (depends on the QPA plugin). On the other hand, if you use QML with QtQuick2 or BB10 Cascades, then it will be.

              Same for C++: If you use C++ with QtWidgets then the drawing won't be hardware accelerated, on the other hand if you use C++ with a hardware accelerated component set such as BB10 Cascades, it will be.

              QML is just another way to create an object tree. A UI component set can be hardware accelerated and be used through C++ and QML.

              Originally posted by JS987 View Post
              New QWidget class couldn't be added because you can't have two QWidget classes in same namespace. Extending one class isn't big change as Widgets consist of many classes.
              Obviously it meant that a new widget, i.e. a direct or indirect subclass of QWidget, was added to the QtWidget module.

              Cheers,
              _

              Comment


              • #37
                Originally posted by Emdek View Post
                QML is currently only useful for small applications, only since introduction of... (almost) real widgets. :-D
                You probably meant to write QtQuick, i.e. refer to the UI component set.

                Originally posted by Emdek View Post
                Hopefully nobody will ever force me to use it instead of QtWidgets.
                Just to be sure there is no misunderstanding (like the possible QML <-> QtQuick mixup in the previous sentence), QML can obviously also be used for development of QtWidget UIs.

                Cheers,
                _

                Comment


                • #38
                  @anda_skoa, yeah, QtQuick and stuff, for me they mean almost one and the same thing (since they are closely related), but yeah, they are not exactly the same thing. ;-)
                  And yes, I'm aware that it is possible to combine them, just it is not as easy as it used to be with QGraphicsView.

                  Comment


                  • #39
                    Originally posted by Emdek View Post
                    @anda_skoa, yeah, QtQuick and stuff, for me they mean almost one and the same thing (since they are closely related), but yeah, they are not exactly the same thing. ;-)
                    The two technology names are often used synonymous but they are not. One is basically the enabled of the other. A bit like C++ and Qt not being the same thing. Qt implies C++, C++ does not imply Qt.

                    QML is, for example, also being used on BlackBerry's BB10 platform, which does not use QtQuick.
                    QML can also be used for QtWidget programming. E.g. see https://conf.kde.org/en/Akademy2013/public/events/20

                    Cheers,
                    _

                    Comment


                    • #40
                      Originally posted by JS987 View Post
                      You can't use hardware accelerated QML widgets in C++ application without using QML language and Javascript. Using QML and Javascript during runtime isn't necessary.
                      First sentence wrong, second one is right

                      New QWidget class couldn't be added because you can't have two QWidget classes in same namespace. Extending one class isn't big change as Widgets consist of many classes.
                      I think he meant a new widget, it means the development of the widgets module is not dead.

                      Non-trival QML application is written in 3 languages: QML, Javascript, C++. C++ and Javascript are incompatible with each other. You can't e.g. use regular C++ classes in Javascript code.
                      Javascript is very defective language compared to C++ because it is dynamically typed, prototype based, JIT compiled, garbage collected.
                      QML has syntax that is similar to JavaScript, but it is just QML, but there is no actual JavaScript in there. Also you can use Qt classes from QML. You can even access Qt in the two JavaScript engines Qt has (QtScript and QtWebKit).
                      Last edited by carewolf; 12 January 2014, 04:43 PM.

                      Comment

                      Working...
                      X