1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
|
/****************************************************************************
**
** 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 the Mac, 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 Mac OS, see
\l{Qt for Mac 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:
\snippet doc_src_plugins.qdoc 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:
\snippet doc_src_plugins.qdoc 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:
\snippet doc_src_plugins.qdoc 4
\li Enter the following \c otool command to check the libraries that are
used by the Qwt library:
\snippet doc_src_plugins.qdoc 2
The command returns the following output:
\snippet doc_src_plugins.qdoc 3
\li Enter the following \c install_name_tool command to fix the
references of the libraries:
\snippet doc_src_plugins.qdoc 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.
*/
|