g_j_m 3c40292773 Altered the way in which plugins add items to the plugin menu. Old way
still supported for the moment. New way allows different plugins to use the
same submenu (e.g. Decorations for copyright and north arrow)


git-svn-id: http://svn.osgeo.org/qgis/trunk/qgis@3232 c8812cc2-4d05-0410-92ff-de0c093fc19c
2005-04-27 05:21:34 +00:00

98 lines
3.2 KiB
C++

/***************************************************************************
plugin.h
Functions:
-------------------
begin : Jan 21, 2004
copyright : (C) 2004 by Tim Sutton
email : tim@linfiniti.com
***************************************************************************/
/***************************************************************************
* *
* This program is free software; you can redistribute it and/or modify *
* it under the terms of the GNU General Public License as published by *
* the Free Software Foundation; either version 2 of the License, or *
* (at your option) any later version. *
* *
***************************************************************************/
/* $Id$ */
#ifndef QGSCOPYRIGHTLABELPLUGIN
#define QGSCOPYRIGHTLABELPLUGIN
#include "../qgisplugin.h"
#include "../../src/qgisapp.h"
#include <qwidget.h>
#include <qfont.h>
#include <qcolor.h>
#include <qsimplerichtext.h>
#include <qpainter.h>
/**
* \class Plugin
* \brief OpenModeller plugin for QGIS
*
*/
class QgsCopyrightLabelPlugin:public QObject, public QgisPlugin
{
Q_OBJECT public:
/**
* Constructor for a plugin. The QgisApp and QgisIface pointers are passed by
* QGIS when it attempts to instantiate the plugin.
* @param qgis Pointer to the QgisApp object
* @param qI Pointer to the QgisIface object.
*/
QgsCopyrightLabelPlugin(QgisApp * , QgisIface * );
//! Destructor
virtual ~ QgsCopyrightLabelPlugin();
void writeEntry(QString theScope, QString theProperty, QVariant theValue);
public slots:
//! init the gui
void initGui();
//!set values on the gui when a project is read or the gui first loaded
void projectRead();
//! Show the dialog box
void run();
void renderLabel(QPainter *);
//! Refresh the map display using the mapcanvas exported via the plugin interface
void refreshCanvas();
//! unload the plugin
void unload();
//! show the help document
void help();
//! change the copyright font
void setFont(QFont);
//! change the copyright text
void setLabel(QString);
//! change the copyright font colour
void setColor(QColor);
//! set copyright label placement
void setPlacement(QString);
//! set copyright label enabled
void setEnable(bool);
private:
//! This is the font that will be used for the copyright label
QFont mQFont;
//! This is the string that will be used for the copyright label
QString mLabelQString;
//! This is the colour for the copyright label
QColor mLabelQColor;
//! Placement of the copyright label
QString mPlacement;
//! Copyright label enabled
bool mEnable;
int pluginType;
//! Id of the plugin's menu. Used for unloading
int menuId;
//! Pionter to QGIS main application object
QgisApp *qgisMainWindowPointer;
//! Pointer to the QGIS interface object
QgisIface *qGisInterface;
//! Pointer to the QAction object used in the menu and toolbar
QAction *myQActionPointer;
};
#endif