How to prevent Qt Designer from loading incompatible plugins? - qt

Qt Designer and Qt Creator when trying to edit ui files have started to crash recently. I've found it's because of KDE widget plugins that are built for a previous version. However, I can't find a way to disable them. Is there a way to do this?

For Qt Designer, there is a config option that allows you to disable specific plugins. Exactly how you do this may differ for each platform, but on my Arch Linux system I have the following config files:
Qt5: $HOME/.config/QtProject/Designer.conf
Qt4: $HOME/.config/Trolltech/Designer.conf
And in the Qt5 file, I have disabled all the KDE plugins by adding a section like this:
[PluginManager]
DisabledPlugins=/usr/lib/qt/plugins/designer/kdewebkit5widgets.so, /usr/lib/qt/plugins/designer/kf5deprecatedwidgets.so, /usr/lib/qt/plugins/designer/kf5widgets.so
So it's just a matter of adding the full path of any plugin you want to disable to a comma-separated list.
I don't use Qt Creator, but if the above doesn't work, I understand it may also be possible to disable plugins via Help -> About Plugins.

Related

How to disable version control features in Qt Creator?

I am using an independent version control management program (SmartGit) alongside Qt Creator, and I would prefer not to use Qt Creator for version control management.
It is becoming a nuisance that Qt always prompts me regarding whether I'd like to add new files to Git (when I add new files to the Qt Creator project), and whether I'd like to remove files from Git (when I remove files from the project).
Earlier today, I mistakenly added a file to Git through Qt Creator when adding a new file to the Qt Creator project. A few minutes later, I wished to temporarily remove the file from the project (likely to be re-added later). When I removed the file, Qt Creator dutifully asked me if I'd like to remove the file from version control - giving me a warning that the file might be removed permanently from the file system. Understanding the risk, I nonetheless decided to test the behavior and I said "yes, remove the file from Git as well as removing it from the project". Just as the warning forewarned, the file was removed from the file system and I then had to reconstruct it.
I could simply live with it and occasionally use Qt Creator's version control features in addition to SmartGit's, and/or I could use SmartGit directly to deal with any mistaken occasional uses ogreatf Qt Creator's version control features. However, I'd rather simply disable Qt Creator's version control features entirely, for convenience.
I looked through every Qt Creator option I could find in order to see if it is possible to disable Qt Creator's version control features (even if the project's files are under version control). Unfortunately, I cannot find an option to disable Qt Creator's version control features, anywhere. A careful Google search also revealed nothing.
Is it possible to disable Qt Creator's version control features, even if the project's files are under version control? If so, how is it done?
Help->About Plugins... and deselect the version control plugins.

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

Why Qt plugins compiled as .so don't work when deployed in a MacOSX bundle?

I have a CMake project for a Qt based application using plugins.
The standard way to create a plugin is CMake (on all platforms) is with:
ADD_LIBRARY(${PROJECT_NAME} MODULE ...)
This creates a libxxx.so plugin (instead of a libxxx.dylib, if SHARED is used instead of MODULE above).
Now, when running inside an IDE like Xcode or QtCreator, the application works fine, the plugin is loaded and works.
But if I create the .app bundle, the application does not start, saying "libxxx.so is not a valid Qt plugin"! How could be that possible? Maybe some library dependency is not found, but how can i check that? I have used tool -L and I think all the libraries are ok.
You may need a "qt.conf" file in your bundle to tell Qt where the plugins are.
You should read up on CMake's BundleUtilities fixup_bundle function and let it do all that "otool -L" and "install_name_tool" stuff for you.
See this recent related stackoverflow question and answer:
CMake: Copy Frameworks into App Bundle

how to change the look and feel for Qt form?

i need to change my form look and feel and i dont know :
what i need to download and install ?
is there any ready to use look and feel installed into qt library ?
i am using windows and qt 4.4.3
Take a look at Widget Styles and Stylesheets (both linked to Qt 4.4 since that's your version).
Edit: In other words, you don't need to install anything else. Styles are built into Qt.
Look-and-feel is pretty vague -- you can change the GUI application style by adding the -style STYLENAME command line argument when you run the program. You can change to the application to run under motif, windows, platinum, or any other custom styles that you might have compiled (such as plastique).
Here is more information about it in the Qt Docs: http://doc.trolltech.com/4.6/qapplication.html#QApplication

how can I find out why a custom widget isn't showing up in the Qt Designer?

I created a custom widget by following the instructions provided in Qt Creator's help. I followed everything exactly as they said there. My widget isn't showing up with the other widgets. I even tried their WorldTimeClock example. That doesn't show in the Qt Designer either.
How can I debug this?
If you go to Tools -> Form Editor -> About Qt Designer plugins, you will find a list of loaded qt plugins, and you will see an error message next to the ones that failed to load. I think that's the best you can get.
I just encountered this situation. From what I could find, the distributed version of Qt Creator was compiled with msvc, not mingw. Try opening Qt Designer. Do you see your (and the built-in) custom widgets? If so, follow the instructions here to build Qt Creator with mingw. When I did this, my custom widgets appeared in the new build.

Resources