Marble/MarbleDesigner: Difference between revisions

From KDE TechBase
No edit summary
 
(6 intermediate revisions by 4 users not shown)
Line 1: Line 1:
{{Template:I18n/Language Navigation Bar|Editing Projects/Marble/MarbleDesigner}}
 
{{TutorialBrowser|
{{TutorialBrowser|


Line 13: Line 13:
=== Compiling the MarbleWidget Plugin ===
=== Compiling the MarbleWidget Plugin ===


The Marble Widget is also offered as a Qt Designer plugin. If you compile Marble yourself you probably need to enable the compilation of the Qt Designer plugin:
The Marble Widget is also offered as a Qt Designer plugin. If you compile Marble yourself you probably need to enable the compilation of the Qt Designer plugin.
 
First you need to [http://doc.qt.digia.com/qtcreator-2.4/adding-plugins.html#locating-qt-designer-plugins locate Qt Designer plugins directory]. Let's say it is ~/QtSDK/plugins/designer


If your source directory is "~/marble" and your build directory is "~/marble_build" then you can enable compilation of the Qt Designer plugin via the cmake call:
If your source directory is "~/marble" and your build directory is "~/marble_build" then you can enable compilation of the Qt Designer plugin via the cmake call:


<code>
<syntaxhighlight lang="text">
cmake -DQTONLY=OFF -DWITH_DESIGNER_PLUGIN=ON ../marble
cmake -DQTONLY=OFF -DWITH_DESIGNER_PLUGIN=ON -DQT_PLUGINS_DIR=~/QtSDK/plugins ../marble
</code>
</syntaxhighlight>




Line 25: Line 27:
Once you have compiled Marble using "make" you can install everything using "make install". This should install the file
Once you have compiled Marble using "make" you can install everything using "make install". This should install the file


<code>
<syntaxhighlight lang="text">
MarbleWidgetPlugin.so
MarbleWidgetPlugin.so
</code>
</syntaxhighlight>




into Qt's designer plugin directory (please check this in case things don't work out).
into Qt's designer plugin directory (please check this in case things don't work out). If you compile the Qt-Only version then the file name is called <b>libMarbleWidgetPlugin.so</b>.


Once you start Qt Designer you should spot a new "Marble Desktop Globe" category in the widget box on the left:
Once you start Qt Designer you should spot a new "Marble Desktop Globe" category in the widget box on the left:
Line 37: Line 39:
[[Image:designer1_thumb.png]]
[[Image:designer1_thumb.png]]


On Windows you must keep in mind that your MarbleWidget.dll must be in the PATH when the designer executable is called. Otherwise the marble plugins will result in a loading error.


=== Using the MarbleWidget Plugin ===
=== Using the MarbleWidget Plugin ===
Line 56: Line 59:
There are two ready-made examples available inside the example directory of the Marble source code:
There are two ready-made examples available inside the example directory of the Marble source code:


<code>
<syntaxhighlight lang="text">
marble/examples/example1.ui
marble/examples/example1.ui
marble/examples/example2.ui
marble/examples/example2.ui
</code>
</syntaxhighlight>





Latest revision as of 21:01, 10 March 2016

Marble Qt Designer Plugin: Look Mom, No Code!
Tutorial Series   Marble Widget Plugin for Qt Designer
Previous   Qt Designer
What's Next   n/a
Further Reading   n/a

The Marble Widget Plugin for Qt Designer

Compiling the MarbleWidget Plugin

The Marble Widget is also offered as a Qt Designer plugin. If you compile Marble yourself you probably need to enable the compilation of the Qt Designer plugin.

First you need to locate Qt Designer plugins directory. Let's say it is ~/QtSDK/plugins/designer

If your source directory is "~/marble" and your build directory is "~/marble_build" then you can enable compilation of the Qt Designer plugin via the cmake call:

cmake -DQTONLY=OFF -DWITH_DESIGNER_PLUGIN=ON -DQT_PLUGINS_DIR=~/QtSDK/plugins ../marble


Choose "-DQTONLY=ON" as a parameter if you don't have KDE installed. Once you have compiled Marble using "make" you can install everything using "make install". This should install the file

MarbleWidgetPlugin.so


into Qt's designer plugin directory (please check this in case things don't work out). If you compile the Qt-Only version then the file name is called libMarbleWidgetPlugin.so.

Once you start Qt Designer you should spot a new "Marble Desktop Globe" category in the widget box on the left:


On Windows you must keep in mind that your MarbleWidget.dll must be in the PATH when the designer executable is called. Otherwise the marble plugins will result in a loading error.

Using the MarbleWidget Plugin

You can use this Marble Widget just like all other widgets inside Qt Designer: Once you have started Qt Designer you can choose a new form from the ready-made templates (e.g. a QWidget). Now you can just drag and drop the Marble Widget from the widget box onto your form:



Alternatively we also provide other widget plugins that allow controlling the Marble Widget: e.g. the navigation widget plugin and the latitude-longitude widget plugin.

The map properties of the Marble Widget can be adjusted in the Property Editor on the right: all properties get assigned and displayed immediately on the map without having to press the "Preview" menu entry.



There are two ready-made examples available inside the example directory of the Marble source code:

marble/examples/example1.ui
marble/examples/example2.ui


The file example2.ui nicely demonstrate how signals and slots work with the MarbleWidget:



You can preview the widget by choosing "Preview" from the "Form" menu. Inside the preview it's possible to pan and zoom the map. Of course the signal-slot connections can be tested inside the preview as well.