diff options
Diffstat (limited to 'src/qmmpui/generalhandler.h')
| -rw-r--r-- | src/qmmpui/generalhandler.h | 74 |
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: |
