aboutsummaryrefslogtreecommitdiff
path: root/src/qmmpui/generalhandler.h
diff options
context:
space:
mode:
authortrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-03-12 15:45:54 +0000
committertrialuser02 <trialuser02@90c681e8-e032-0410-971d-27865f9a5e38>2009-03-12 15:45:54 +0000
commit657434a5ec73229ba4211127dce4eef6ff1a8bc9 (patch)
treecb5883539633f6b99dc926bdd563d18e34ab44fd /src/qmmpui/generalhandler.h
parent765b3a9ba1a59ec3248c8948d4cf5a53f92b40d5 (diff)
downloadqmmp-657434a5ec73229ba4211127dce4eef6ff1a8bc9.tar.gz
qmmp-657434a5ec73229ba4211127dce4eef6ff1a8bc9.tar.bz2
qmmp-657434a5ec73229ba4211127dce4eef6ff1a8bc9.zip
general plugin api documentation
git-svn-id: http://svn.code.sf.net/p/qmmp-dev/code/trunk/qmmp@842 90c681e8-e032-0410-971d-27865f9a5e38
Diffstat (limited to 'src/qmmpui/generalhandler.h')
-rw-r--r--src/qmmpui/generalhandler.h74
1 files changed, 61 insertions, 13 deletions
diff --git a/src/qmmpui/generalhandler.h b/src/qmmpui/generalhandler.h
index 295a2dd9c..563ff3f09 100644
--- a/src/qmmpui/generalhandler.h
+++ b/src/qmmpui/generalhandler.h
@@ -28,45 +28,93 @@
class QAction;
class QMenu;
class QWidget;
-
class General;
class Control;
class GeneralFactory;
class CommandLineManager;
-/**
- @author Ilya Kotov <forkotov02@hotmail.ru>
-*/
-
-//TODO add documentation
+/*! @brief The GeneralHandler class provied simple api to access general and command line plugins.
+ * @author Ilya Kotov <forkotov02@hotmail.ru>
+ */
class GeneralHandler : public QObject
{
Q_OBJECT
public:
+ /*!
+ * Object constructor,
+ * @param parent Parent object
+ */
GeneralHandler(QObject *parent = 0);
-
+ /*!
+ * Destructor
+ */
~GeneralHandler();
-
+ /*!
+ * Enum of menu type
+ */
enum MenuType
{
- TOOLS_MENU = 0,
- PLAYLIST_MENU
+ TOOLS_MENU = 0, /*!< tools menu */
+ PLAYLIST_MENU /*!< playlist context menu */
};
-
+ /*!
+ * Sets whether the general plugin is enabled.
+ * @param factory General plugin factory.
+ * @param enabled Plugin enable state (\b true - enable, \b false - disable)
+ */
void setEnabled(GeneralFactory* factory, bool enable);
+ /*!
+ * Shows configuration dialog and updates settings automatically.
+ * @param factory General plugin factory.
+ * @param parentWidget Parent widget.
+ */
void showSettings(GeneralFactory* factory, QWidget* parentWidget);
+ /*!
+ * Returns \b true if one of the general plugin can change visibility, otherwise \b false
+ */
bool visibilityControl();
+ /*!
+ * Executes command by command line plugins
+ * @param opt_str Command line option string
+ */
void executeCommand(const QString &opt_str);
- //actions
+ /*!
+ * Adds the newly created action to the menu with type \b type.
+ * Menu with type \b type should be created first.
+ * @param action Pointer of action.
+ * @param type Menu type.
+ */
void addAction(QAction *action, MenuType type = TOOLS_MENU);
+ /*!
+ * Removes action \b action from created menus.
+ */
void removeAction(QAction *action);
+ /*!
+ * Returns a list of actions of the menu type \b type
+ */
QList<QAction *> actions(MenuType type = TOOLS_MENU);
+ /*!
+ * Creates menu with type \b type
+ * @param type Menu type.
+ * @param title Menu title.
+ * @param paren Parent widget
+ */
QMenu *createMenu(MenuType type, const QString &title = QString(), QWidget *parent = 0);
-
+ /*!
+ * Returns a pointer to the object's instance.
+ */
static GeneralHandler* instance();
signals:
+ /*!
+ * Emited when some general plugin requires to exit.
+ * Use it to quit application.
+ */
void exitCalled();
+ /*!
+ * Emited when some general plugin requires to toggle visibility.
+ * Use it to show/hide player's window.
+ */
void toggleVisibilityCalled();
private slots: