GUI designer for Qt - qt

I want to ask if there are any good GUI designers for Qt that work with PySide beside QtCreator because it's huge. But I think that every will work with PySide, as it don't have to generate python3 code but just .ui file.

Yes, there is Qt Designer, which is part of the Qt toolkit itself.
(NB: Depending on your platform, you may need to install some extra packages to use it).

Related

Qt Designer vs Qt Quick Designer vs Qt Creator?

I have seen references to all three of these applications on various parts of the Qt website but am completely unclear as to the exact differences between them and whether they are actually separate things or just different names for the same thing, or the name changed over time? Or is one no longer supported? What's the deal with these?
Qt Creator is Qt's IDE. You don't have to use it, but it greatly simplifies Qt development.
Qt Designer is a graphical tool that lets you build QWidget GUIs. Qt Quick Designer is similar, but for building QML GUIs. Both are built in to Qt Creator.
This is explained in a little more detail over at Wikipedia.
I will explain to you the difference between these tools by the approach for what they are used:
Qt Designer: Sub tool used to create/edit widget files (.ui). You can use it to create the graphical layouts (.ui files only). The most use is to design the graphical stuff in PyQt apps. It is installed always when you install Qt, for example it is in the path: Qt5.13.1\5.13.1\mingw73_64\bin\designer.exe. It also be used to edit any .ui file of a Qt C++ application, however it is very limited since only allows to edit the graphical stuff (not C++ logic).
Qt Quick Designer (it refers to Qt Creator): It does not exist, it is integrated in Qt Creator (see below). Is normal to say that Qt Quick Designer allows to edit QML files (.qml), however it is integrated in Qt Creator now.
Qt Creator: This is the so defacto and most powerfull IDE to create QT applications natively (C++ with Qt engine). It allows you to create, edit source code, debug applications, etc. In addition to that, yo can open a .ui file or a .qml file in Qt Creator and it will open and allow you to edit. For example if you open an .ui file it will show you the Qt Designer app embedded in the full integrated Qt Creator IDE. In summary, you can use Qt Creator to open/edit any .ui or .qml file and create Qt/C++ applications. Of course, if the file is .ui then Qt Creator will show you the Qt Designer tool, if it is .qml then it will allow you to edit the QML.
Qt Creator is just an IDE used to build QT applications; both Qt Widgets and Qt Quick can be composed. When writing Qt Widgets applications you can edit your GUI in Qt Designer but in case of Qt Quick applications you use Qt Quick Designer, both integrated into Qt Creator.
Also there is this new tool name Qt Design Studio which uses QML too and can integrate with Photoshop.
Easy way : Qt Creator (Editor with intellisence, autocomplete and Manual, etc + Graphical designer + Debug symbols + templates.) all for you...
Medium way : Qt Creator (Editor without designer, handcoding, intellisence, autocomplete, etc).
Medium-hard way : Any plain text editor + Qt Designer (to prototype your interface). This is my favorite way, I like Vim
Hard way : Any plain text editor..... you know.

Embed QtDesigner

Is it possible to embed QtDesigner into a PyQt application. I did some searching but can't really find any examples. Found lots about using the interface API but not really how to get the interface in the first place.
You will need to make 3 steps:
Get QtDesigner & QtCreator source
Create bindings from QtDesigner C++ code to python using SIP or Shiboken
Look at QtCreator source of how to embed QtDesigner into your application
I don't think its possible to do it without the source code. I doubt Qt will hand it out either. https://github.com/qt-creator/qt-creator is the source for QtCreator, but I could not find anything similar for QtDesigner.

Re-built Qt5.0.2 with OpenGL, how to use with Qt Creator

I need to move my code from a C++/OpenGL and Config.txt situation to a UI friendly space. I was told here to try Qt and installed it in Windows.
The issue I ran into is that it did not support the OpenGL version I needed out of the box and I had to rebuild with the -opengl desktop parameter.
First time doing this, but was able to follow the instructions (and a ton of Google) and it "succesfully" was built. My issue now is I am unsure how to make the files I have work with Qt Creator.
I copied over all the folders from the qt5 folder created by git over to the Src folder in Qt5.0.1/5.0.1/Src but the hellogl example still wouldn't build.
I checked the options and it was pointing to a qmake in Qt5.0.1/5.0.1/msvc2010/bin so I copied over the qmake.exe from qtbase/qmake over to this folder (renaming the old one) and now Qt Creator builds the hellogl example on my Windows system.
My worry is, did I do this the right way? I fumbled around and got something, but is this the way I should have proceeded after I built the qt5 from git? If not what was the way I should have gone about making it all work with the Qt Creator?
The typical way to utilize the modern OpenGL the feature set (post fixed-function pipeline) in Qt is by utilizing a extension wrangler (GLEW) that finds all the OpenGL functions your graphics drivers support BEFORE Qt includes any OpenGL headers.
To accomplish this simply do the following:
If you already haven't, download GLEW (or another extension wrangler if you wish) and install it in your system path. I would recommend the 32 bit package as it will be easier to work with.
#include glew.h in your source code before any other Qt header includes that may use OpenGL headers. Just to be safe, make glew.h the first header included in your source code.
In your Qt project's .pro file add the line LIBS += -lGLEW (mac/linux) or LIBS += -lglew32 (windows).
Note: Beware of using Qt OpenGL wrappers when implementing an application that uses post fixed-function pipeline facilities. Qt 5's OpenGL wrappers all operate using the OpenGL ES 2.0 specification which may cause problems when interleaved with your OpenGL 3/4 code. Even QPainter can become troublesome when performing overpainting on a QGLWidget due to it's heavy use of the fixed-function transformation stack. I am currently developing a library called QGLX that provides alternative Qt wrappers designed for complying to the modern desktop OpenGL specification. The beta will hopefully be released by the end of this year for Qt 4 & Qt 5.

installing a qt widget for qt designer

I downloaded a very useful widget for my applications. A LED indicator from http://qt-apps.org/content/show.php/QLedIndicator?content=118610
But there is no README file or any instruction files.
I unzip it and gave qmake QLedIndicator.pro and then make it compiled well without errors.
But I have no idea how to add the widget in Qt Designer, so I can drag and drop it where I need.
I'm using qt 4.8.3 with mingw. qt creator 2.6.0
Under Linux you just need to copy the file libQLedIndicatorPlugin.so in the
/usr/lib/qt/plugins/designer/
directory (or whatever is the directory on your distro).
Under Windows the process is similar, but you need to pay attention to the building process, as explained on the bottom of the page I linked
Qt's plugin architecture allows you to add custom widget to the designer. You can check out this official qt's link to do so - http://doc.qt.digia.com/4.7/designer-customwidgetplugin.html

Is Qt Creator built with Qt Creator?

Questions:
Is Qt Creator built with Qt Creator?
Similarly, is Qt Designer built with Qt Designer?
BTW, why are there two Qt IDEs? Are they competitors? Which one should I use? I am using Creator.
What is Qt SDK? I am asking this because the Qt Designer & Creator 2.2.1 and Qtmake 4.7.4 that I installed thro ubuntu 11.10 s/w centre does not work. The build menu is all greyed out.
When I downloaded the latest QtSDK (2.3.1/4.7.4) into a separate installation into /opt/QtSDK, both the ubuntu sanctioned installation and the /opt/QtSDK would work as expected.
Why did my ubuntu sanctioned installation not work without the SDK? What does the SDK do?
This one is for Ubuntu enthusiasts - Qt IDE requires the SDK to work, and yet ubuntu released both Creator/Designer without checking if they work first? There is no QtSDK installation item in s/w centre. Is that intentional, or a procedural bug?
After I build my desktop app (I am building a tabbed file explorer) on Linux, what steps do I need to make to have it running on Windows 7/Vista? Will I rebuild on a windows version of Qt Creator?
I also notice that Qt Creator code generation is not perfect. It would forget to include some Qt library files in the auto-generated code, and I had to correct that manually.
Is Qt Creator built with Qt Creator?
I believe so.
That doesn't mean that everyone who works on Qt has to use it - just that I believe that lots of people do.
I don't work for any of the companies that have produced Qt, but my reasoning is:
A Google search for "dogfooding qt creator" brings up plenty of hits, including this comment from November 2010:
We’re also “dogfooding” by releasing complex apps like Qt Creator and the Ovi Suite on the desktop ports of Qt
They've put a massive amount of effort into Qt Creator over the last few years. It's hard to imagine that being worthwhile, unless they used it themselves
At recent Qt Developer Days, Qt Developers have spoken really enthusiastically about Qt Creator
Similarly, is Qt Designer built with Qt Designer?
Yes. A look at the Qt Designer source code shows plenty of .ui (Designer) files.
Why are there two Qt IDEs? Are they competitors? Which one should I use? I am using Creator.
When you edit .ui files insiide Qt Creator, you are still running Qt Designer: it's simply showing the Designer window inside Creator, for convenience.
What is Qt SDK? ... What does the SDK do?
Qt SDK is just a convenient way to download all the Qt tools in one go. You don't have to use it.
This one is for Ubuntu enthusiasts ... Is that intentional, or a procedural bug?
Sorry - no idea. It's hard to imagine it being intentional though.
After I build my desktop app (I am building a tabbed file explorer) on Linux, what steps do I need to make to have it running on Windows 7/Vista? Will I rebuild on a windows version of Qt Creator?
You will need to install Qt on a Windows PC, and then build your source code in it.
You can either do that by using Qt Creator and the Windows compiler it includes (mingw) or you can use another compiler, if you have one, e.g. Visual Studio.
I also notice that Qt Creator code generation is not perfect. It would forget to include some Qt library files in the auto-generated code, and I had to correct that manually.
If you've used any non-Qt classes in arguments to signals and slots, then this answer may help you there.

Resources