[Qt Designer] Plug-in (widget personnalisé)
Bonjour à tous.
Je m'amuse beaucoup avec Qt pour le moment et plus spécialement avec ce que propose Qt Designer. J'ai créé un plugin pour qu'un nouveau widget personnalisé soit ajouté à Qt Designer car je vais en avoir besoin souvent et c'est bien pratique.
Tout (presque :cry:) fonctionne bien:
- je peux utiliser le nouveau widget qui est bien présent dans Qt Designer.
- la compilation du projet qui utilise ce widget se déroule bien
Malheureusement, je suis obligé de faire référence aux sources de ce widget pour que tout se passe aussi bien.
Voici le .pro (simplifié) de ce projet:
Code:
1 2 3 4 5 6 7 8 9 10 11 12
|
SOURCES += main.cpp \
(...)
/home/seb/QtWorkspace/TableMultiView/tablemultiview.cpp
HEADERS +=
(...)
/home/seb/QtWorkspace/TableMultiView/tablemultiview.h
FORMS +=
(...)
RESOURCES +=
(...)
INCLUDEPATH += /home/seb/QtWorkspace/TableMultiView/ |
Rien de bien compliqué si ce n'est que dans la liste des fichiers je dois faire référence à mes fichier tablemultiview.cpp et tablemultiview.h du widget TableMultiView.
Je ne trouve pas ca très propre et d'ailleurs j'ai jamais eu à la faire pour les widgets proposés par défaut dans Qt Designer!
Y a-t-il une meilleure solution (de sorte que je ne doivent pas le faire pour chaque widget perso.)?
Peut-être que le .pro du plugin est mal fait:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
|
CONFIG += designer plugin release
TARGET = $$qtLibraryTarget(tablemultiviewplugin)
TEMPLATE = lib
DESTDIR = $$[QT_INSTALL_PLUGINS]/designer
QTDIR_build:DESTDIR = $$QT_BUILD_TREE/plugins/designer
HEADERS = tablemultiviewplugin.h
SOURCES = tablemultiviewplugin.cpp
RESOURCES = icons.qrc
LIBS += -L.
target.path = $$[QT_INSTALL_PLUGINS]/designer
INSTALLS += target
include(tablemultiview.pri) |
tablemultiview.pri:
Code:
1 2 3 4
|
HEADERS += tablemultiview.h
SOURCES += tablemultiview.cpp
FORMS += tablemultiview.ui |
Edit:
Je précise que je suis sous ubuntu