/**************************************************************************** ** ** Copyright (c) 2014 Digia Plc and/or its subsidiary(-ies). ** Contact: http://www.qt-project.org/legal ** ** This file is part of Qt Creator ** ** ** GNU Free Documentation License ** ** Alternatively, this file may be used under the terms of the GNU Free ** Documentation License version 1.3 as published by the Free Software ** Foundation and appearing in the file included in the packaging of this ** file. ** ** ****************************************************************************/ // ********************************************************************** // NOTE: the sections are not ordered by their logical order to avoid // reshuffling the file each time the index order changes (i.e., often). // Run the fixnavi.pl script to adjust the links to the index order. // ********************************************************************** /*! \contentspage {Qt Creator Manual} \previouspage creator-using-qt-designer.html \page adding-plugins.html \nextpage creator-usability.html \title Adding Qt Designer Plugins You can use Qt APIs to create plugins that extend Qt applications. This enables you to add your own widgets to \QD. The most flexible way to include a plugin with an application is to compile it into a dynamic library that is shipped separately, and detected and loaded at runtime. The applications can detect plugins that are stored in the standard plugin subdirectories. For more information on how to create and locate plugins and to change the default plugin path, see \l{How to Create Qt Plugins}. For more information about how to create plugins for \QD, see \l{Using Custom Widgets with Qt Designer}. \section1 Locating Qt Designer Plugins \QD fetches plugins from the standard locations and loads the plugins that match its build key. \QD is delivered both as a standalone application and integrated into \QC. The correct folder to place the plugins depends on whether you use the standalone \QD or the integrated \QD. The integrated \QD fetches plugins from the \c {%SDK%\bin\designer} folder on Windows and Linux. For information about how to configure plugins on OS X, see \l{Configuring Qt Designer Plugins on OS X}. To check which plugins were loaded successfully and which failed, choose \gui{Tools > Form Editor > About Qt Designer Plugins}. The standalone \QD is part of the Qt library used for building projects, located under \c {%SDK%\qt}. Therefore, it fetches plugins from the following folder: \c {%SDK%\qt\plugins\designer}. To check which plugins were loaded successfully and which failed, choose \gui{Help > About Plugins}. \section2 Configuring Qt Designer Plugins on OS X On OS X, a GUI application must be built and run from a bundle. A bundle is a directory structure that appears as a single entity when viewed in the Finder. A bundle for an application typcially contains the executable and all the resources it needs. \QC uses its own set of Qt Libraries located in the bundle, and therefore, you need to configure the \QD plugins that you want to use with \QC. Fore more information about how to deploy applications to OS X, see \l{Qt for OS X - Deployment}. The following example illustrates how to configure version 5.2.1 of the \l{http://qwt.sourceforge.net/}{Qwt - Qt Widgets for Technical Applications} library for use with \QC: \list 1 \li To check the paths used in the Qwt library, enter the following \c otool command: \include doc_src_plugins.qdocinc 0 The output for Qwt 5.2.1 indicates that the plugin uses Qt core libraries (QtDesigner, QtScript, QtXml, QtGui and QtCore) and libqwt.5.dylib: \include doc_src_plugins.qdocinc 1 \li You must copy the \QD plugin and the Qwt library files to the following locations: \list \li \c {libqwt_designer_plugin.dylib} to \c {QtCreator.app/Contents/MacOS/designer} \li \c {libqwt.*.dylib} to \c {QtCreator.app/Contents/Frameworks} \endlist Enter the following commands: \include doc_src_plugins.qdocinc 4 \li Enter the following \c otool command to check the libraries that are used by the Qwt library: \include doc_src_plugins.qdocinc 2 The command returns the following output: \include doc_src_plugins.qdocinc 3 \li Enter the following \c install_name_tool command to fix the references of the libraries: \include doc_src_plugins.qdocinc 5 \endlist \section1 Matching Build Keys The \QC that is included in pre-built Qt packages on Windows is built with the Microsoft Visual Studio compiler, whereas the version of Qt shipped for building applications is configured and built to use the MinGW/g++ compiler. Plugins built by using this version of Qt cannot be loaded by \QC because the build-keys do not match. The plugins can only be used in the standalone version of \QD. Choose \gui{Help > About \QC} to check the Qt version \QC was built with. To use \QD plugins that were built for the shipped Qt version, make sure that \QC is built with the same compiler by either recompiling \QC using MinGW or recompiling Qt with Microsoft Visual Studio, depending on which configuration you want to use for your applications. */