diff options
author | Ken Moore <ken@pcbsd.org> | 2015-01-21 09:22:27 -0500 |
---|---|---|
committer | Ken Moore <ken@pcbsd.org> | 2015-01-21 09:22:27 -0500 |
commit | 1b194f252557051d4c625b596f2b7928a6cc01db (patch) | |
tree | c815dff4af1ee69a9b4ee1b469aa0ad2313c2aa3 /lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.h | |
parent | Completely revamp the notepad desktop plugin so that it is now file-based ins... (diff) | |
download | lumina-1b194f252557051d4c625b596f2b7928a6cc01db.tar.gz lumina-1b194f252557051d4c625b596f2b7928a6cc01db.tar.bz2 lumina-1b194f252557051d4c625b596f2b7928a6cc01db.zip |
Add a new panel-plugin: appmenu
This plugin re-creates the classic "start" menu from other OS's.
Also update how panel-plugins open menus, so now the menu will no longer cover the button that opened it.
Diffstat (limited to 'lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.h')
-rw-r--r-- | lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.h | 62 |
1 files changed, 62 insertions, 0 deletions
diff --git a/lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.h b/lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.h new file mode 100644 index 00000000..cd8d1c1e --- /dev/null +++ b/lumina-desktop/panel-plugins/appmenu/LAppMenuPlugin.h @@ -0,0 +1,62 @@ +//=========================================== +// Lumina-DE source code +// Copyright (c) 2015, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +// This panel plugin is a re-creation of the classic "start" menu +//=========================================== +#ifndef _LUMINA_DESKTOP_APP_MENU_PANEL_PLUGIN_H +#define _LUMINA_DESKTOP_APP_MENU_PANEL_PLUGIN_H + +// Qt includes +#include <QMenu> +#include <QToolButton> +#include <QString> +#include <QWidget> + + +// Lumina-desktop includes +#include "../LPPlugin.h" //main plugin widget + + +// PANEL PLUGIN BUTTON +class LAppMenuPlugin : public LPPlugin{ + Q_OBJECT + +public: + LAppMenuPlugin(QWidget *parent = 0, QString id = "appmenu", bool horizontal=true); + ~LAppMenuPlugin(); + +private: + QToolButton *button; + + void updateButtonVisuals(); + +private slots: + //void openMenu(); + //void closeMenu(); + +public slots: + void OrientationChange(){ + if(this->layout()->direction()==QBoxLayout::LeftToRight){ + this->setSizePolicy(QSizePolicy::Preferred, QSizePolicy::MinimumExpanding); + button->setIconSize( QSize(this->height(), this->height()) ); + }else{ + this->setSizePolicy(QSizePolicy::MinimumExpanding, QSizePolicy::Preferred); + button->setIconSize( QSize(this->width(), this->width()) ); + } + this->layout()->update(); + updateButtonVisuals(); + } + + void LocaleChange(){ + updateButtonVisuals(); + } + + void ThemeChange(){ + updateButtonVisuals(); + } +}; + +#endif
\ No newline at end of file |