00001 #ifndef UI_PIHMGISGUIBASE_H
00002 #define UI_PIHMGISGUIBASE_H
00003
00004 #include <QtCore/QVariant>
00005 #include <QtGui/QAction>
00006 #include <QtGui/QApplication>
00007 #include <QtGui/QButtonGroup>
00008 #include <QtGui/QDialog>
00009 #include <QtGui/QGridLayout>
00010 #include <QtGui/QHBoxLayout>
00011 #include <QtGui/QLabel>
00012 #include <QtGui/QPushButton>
00013 #include <QtGui/QSpacerItem>
00014 #include <QtGui/QTextBrowser>
00015
00016 class Ui_PIHMgisGuiBase
00017 {
00018 public:
00019 QGridLayout *gridLayout;
00020 QHBoxLayout *hboxLayout;
00021 QSpacerItem *spacerItem;
00022 QPushButton *pbnOK;
00023 QPushButton *pbnCancel;
00024 QLabel *txtHeading;
00025 QTextBrowser *textBrowser;
00026
00027 void setupUi(QDialog *PIHMgisGuiBase)
00028 {
00029 PIHMgisGuiBase->setObjectName(QString::fromUtf8("PIHMgisGuiBase"));
00030 PIHMgisGuiBase->resize(QSize(491, 435).expandedTo(PIHMgisGuiBase->minimumSizeHint()));
00031 PIHMgisGuiBase->setWindowIcon(QIcon());
00032 gridLayout = new QGridLayout(PIHMgisGuiBase);
00033 gridLayout->setSpacing(6);
00034 gridLayout->setMargin(9);
00035 gridLayout->setObjectName(QString::fromUtf8("gridLayout"));
00036 hboxLayout = new QHBoxLayout();
00037 hboxLayout->setSpacing(6);
00038 hboxLayout->setMargin(0);
00039 hboxLayout->setObjectName(QString::fromUtf8("hboxLayout"));
00040 spacerItem = new QSpacerItem(320, 21, QSizePolicy::Expanding, QSizePolicy::Minimum);
00041
00042 hboxLayout->addItem(spacerItem);
00043
00044 pbnOK = new QPushButton(PIHMgisGuiBase);
00045 pbnOK->setObjectName(QString::fromUtf8("pbnOK"));
00046 pbnOK->setMaximumSize(QSize(32767, 32767));
00047
00048 hboxLayout->addWidget(pbnOK);
00049
00050 pbnCancel = new QPushButton(PIHMgisGuiBase);
00051 pbnCancel->setObjectName(QString::fromUtf8("pbnCancel"));
00052
00053 hboxLayout->addWidget(pbnCancel);
00054
00055
00056 gridLayout->addLayout(hboxLayout, 2, 0, 1, 1);
00057
00058 txtHeading = new QLabel(PIHMgisGuiBase);
00059 txtHeading->setObjectName(QString::fromUtf8("txtHeading"));
00060 QSizePolicy sizePolicy(static_cast<QSizePolicy::Policy>(5), static_cast<QSizePolicy::Policy>(1));
00061 sizePolicy.setHorizontalStretch(0);
00062 sizePolicy.setVerticalStretch(0);
00063 sizePolicy.setHeightForWidth(txtHeading->sizePolicy().hasHeightForWidth());
00064 txtHeading->setSizePolicy(sizePolicy);
00065 QFont font;
00066 font.setFamily(QString::fromUtf8("Sans Serif"));
00067 font.setPointSize(24);
00068 font.setBold(true);
00069 font.setItalic(false);
00070 font.setUnderline(false);
00071 font.setWeight(75);
00072 font.setStrikeOut(false);
00073 txtHeading->setFont(font);
00074 txtHeading->setAlignment(Qt::AlignCenter);
00075
00076 gridLayout->addWidget(txtHeading, 0, 0, 1, 1);
00077
00078 textBrowser = new QTextBrowser(PIHMgisGuiBase);
00079 textBrowser->setObjectName(QString::fromUtf8("textBrowser"));
00080
00081 gridLayout->addWidget(textBrowser, 1, 0, 1, 1);
00082
00083 retranslateUi(PIHMgisGuiBase);
00084 QObject::connect(pbnOK, SIGNAL(clicked()), PIHMgisGuiBase, SLOT(accept()));
00085 QObject::connect(pbnCancel, SIGNAL(clicked()), PIHMgisGuiBase, SLOT(reject()));
00086
00087 QMetaObject::connectSlotsByName(PIHMgisGuiBase);
00088 }
00089
00090 void retranslateUi(QDialog *PIHMgisGuiBase)
00091 {
00092 PIHMgisGuiBase->setWindowTitle(QApplication::translate("PIHMgisGuiBase", "QGIS Plugin Template", 0, QApplication::UnicodeUTF8));
00093 pbnOK->setText(QApplication::translate("PIHMgisGuiBase", "&OK", 0, QApplication::UnicodeUTF8));
00094 pbnOK->setShortcut(QApplication::translate("PIHMgisGuiBase", "Alt+O", 0, QApplication::UnicodeUTF8));
00095 pbnCancel->setText(QApplication::translate("PIHMgisGuiBase", "&Cancel", 0, QApplication::UnicodeUTF8));
00096 pbnCancel->setShortcut(QApplication::translate("PIHMgisGuiBase", "Alt+C", 0, QApplication::UnicodeUTF8));
00097 txtHeading->setText(QApplication::translate("PIHMgisGuiBase", "Plugin Template", 0, QApplication::UnicodeUTF8));
00098 textBrowser->setHtml(QApplication::translate("PIHMgisGuiBase", "<html><head><meta name=\"qrichtext\" content=\"1\" /></head><body style=\" white-space: pre-wrap; font-family:Sans Serif; font-size:9pt; font-weight:400; font-style:normal; text-decoration:none;\"><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:12pt; font-weight:600;\">Welcome to your automatically generated plugin!</span></p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">This is just a starting point. You now need to modify the code to make it do something useful....read on for a more information to get yourself started.</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:12pt; font-weight:600;\">Documentation:</span></p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">You really need to read the QGIS API Documentation now at:</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" color:#0000ff;\">http://svn.qgis.org/api_doc/html/</span></p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">In particular look at the following classes:</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600; color:#dc143c;\">QGisInterface</span> : http://svn.qgis.org/api_doc/html/classQgisInterface.html</p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600; color:#dc143c;\">QGisIface</span> : http://svn.qgis.org/api_doc/html/classQgisIface.html</p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600; color:#dc143c;\">QgsMapTool</span> : http://svn.qgis.org/api_doc/html/classQgsMapTool.html</p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600; color:#dc143c;\">QgsPlugin</span> : http://svn.qgis.org/api_doc/html/classQgisPlugin.html</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">QGisIface is an abstract base class (ABC) that specifies what publicly available features of QGIS are exposed to third party code and plugins. QgisInterface is an concrete implementation of this ABC. The preferred way to carry out operations on QGIS is via the QGisInterface. An instance of the QgisInterface is passed to the plugin when it loads. Please consult the QGIS development team if there is functionality required in the QGisInterface that is not available.</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">QgsPlugin is an ABC that defines required behaviour your plugin must provide. See below for more details.</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:12pt; font-weight:600;\">What are all the files in my generated plugin directory for?</span></p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600; color:#dc143c;\">Makefile.am </span></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">This is the generated Makefile specification for your plugin. You will see that specifies c++ include paths (-I) and library linkages -l) to Qt4, GDAL, GEOS, QGIS Core, QGIS Ui, QGIS Gui and QGis Raster. You should add you application specific dependencies and source files to this Makefile.</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600; color:#dc143c;\">pihmgis.h</span></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-weight:600; color:#dc143c;\">pihmgis.cpp </p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">This is the class that provides the 'glue' between your custom application logic and the QGIS application. You will see that a number of methods are already implemented for you - including some examples of how to add a raster or vector layer to the main application map canvas. This class is a concrete instance of the QgisPlugin interface which defines required behaviour for a plugin. In particular, a plugin has a number of static methods and members so that the QgsPluginManager and plugin loader logic can identify each plugin, create an appropriate menu entry for it etc. Note there is nothing stopping you creating multiple toolbar icons and menu entries for a single plugin. By default though a single menu entry and toolbar button is created and its pre-configured to call the run() method in this class when selected. This default implementation provided for you by the plugin builder is well documented, so please refer to the code for further advice.</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600; color:#dc143c;\">pihmgisguibase.ui </span></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-weight:600; color:#dc143c;\">pihmgisguibase.ui.h<span style=\" font-weight:400; color:#000000;\"> </span></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">This is an Abstract Base Class implemented in Qt4 fashion as a Qt designer 'ui' file. It defines the look of the default plugin dialog without implementing any application logic. You can modify this form to suite your needs or completely remove it if your plugin does not need to display a user form (e.g. for custom MapTools).</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600; color:#dc143c;\">pihmgisgui.cpp </span></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-weight:600; color:#dc143c;\">pihmgisgui.h <span style=\" font-weight:400; color:#000000;\"> </span></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">This is the concrete class where application logic for the above mentioned dialog should go. The world is your oyster here really....</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600; color:#dc143c;\">pihmgis.qrc </span></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-weight:600; color:#dc143c;\"><span style=\" font-weight:400; color:#000000;\">This is the Qt4 resources file for your plugin. The Makefile generated for your plugin is all set up to compile the resource file so all you need to do is add your additional icons etc using the simple xml file format. Note the namespace used for all your resources e.g. (\":/PIHMgis/\"). It is important to use this prefix for all your resources. We suggest you include any other images and run time data in this resurce file too.</span></p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600; color:#dc143c;\">pihmgis.png </span></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-weight:600; color:#dc143c;\"><span style=\" font-weight:400; color:#000000;\">This is the icon that will be used for your plugin menu entry and toolbar icon. Simply replace this icon with your own icon to make your plugin disctinctive from the rest.</span></p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-weight:600; color:#dc143c;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600; color:#dc143c;\">README</span></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">This file contains the documentation you are reading now!</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-size:12pt; font-weight:600;\">Getting developer help:</span></p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">For Questions and Comments regarding the plugin builder template and creating your features in QGIS using the plugin interface please contact us via:</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"> * the QGIS developers mailing list, or</p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"> * IRC (#qgis on freenode.net)</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">QGIS is distributed under the Gnu Public License. If you create a useful plugin please consider contributing it back to the community.</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\">Have fun and thank you for choosing QGIS.</p><p style=\"-qt-paragraph-type:empty; margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px;\"><span style=\" font-weight:600;\">The QGIS Team</span></p><p style=\" margin-top:0px; margin-bottom:0px; margin-left:0px; margin-right:0px; -qt-block-indent:0; text-indent:0px; font-weight:600;\">2006</p></body></html>", 0, QApplication::UnicodeUTF8));
00099 Q_UNUSED(PIHMgisGuiBase);
00100 }
00101
00102 };
00103
00104 namespace Ui {
00105 class PIHMgisGuiBase: public Ui_PIHMgisGuiBase {};
00106 }
00107
00108 #endif // UI_PIHMGISGUIBASE_H