diff options
author | Ken Moore <moorekou@gmail.com> | 2016-04-25 13:08:12 -0400 |
---|---|---|
committer | Ken Moore <moorekou@gmail.com> | 2016-04-25 13:08:12 -0400 |
commit | ed5ecf7ea7a482b4649e66ecb35fbc60af680684 (patch) | |
tree | acc0fa17d228259e847f55c678db9fb0a9b50f0c /src-qt5/desktop-utils/lumina-terminal/TrayIcon.h | |
parent | Merge branch 'master' of github.com:pcbsd/lumina (diff) | |
download | lumina-ed5ecf7ea7a482b4649e66ecb35fbc60af680684.tar.gz lumina-ed5ecf7ea7a482b4649e66ecb35fbc60af680684.tar.bz2 lumina-ed5ecf7ea7a482b4649e66ecb35fbc60af680684.zip |
Rearrange the Lumina source tree quite a bit:
Now the utilites are arranged by category (core, core-utils, desktop-utils), so all the -utils may be excluded by a package system (or turned into separate packages) as needed.
Diffstat (limited to 'src-qt5/desktop-utils/lumina-terminal/TrayIcon.h')
-rw-r--r-- | src-qt5/desktop-utils/lumina-terminal/TrayIcon.h | 59 |
1 files changed, 59 insertions, 0 deletions
diff --git a/src-qt5/desktop-utils/lumina-terminal/TrayIcon.h b/src-qt5/desktop-utils/lumina-terminal/TrayIcon.h new file mode 100644 index 00000000..961aaa90 --- /dev/null +++ b/src-qt5/desktop-utils/lumina-terminal/TrayIcon.h @@ -0,0 +1,59 @@ +//=========================================== +// Lumina-DE source code +// Copyright (c) 2015, Ken Moore +// Available under the 3-clause BSD license +// See the LICENSE file for full details +//=========================================== +#ifndef _LUMINA_DESKTOP_UTILITIES_TERMINAL_TRAY_ICON_H +#define _LUMINA_DESKTOP_UTILITIES_TERMINAL_TRAY_ICON_H +// QT Includes +#include <QApplication> +#include <QSystemTrayIcon> +#include <QMenu> +#include <QTimer> +#include <QSettings> + +#include <LuminaXDG.h> + +#include "TermWindow.h" + +class TrayIcon : public QSystemTrayIcon { + Q_OBJECT + +public: + TrayIcon(); + ~TrayIcon(); + + //First run + void parseInputs(QStringList); //Note that this is only run on the primary process - otherwise it gets sent to the singleInstance slot below + +public slots: + void slotSingleInstance(QStringList inputs = QStringList()); + void updateIcons(); + +private: + bool termVisible; + TermWindow *TERM; + QMenu *ScreenMenu; + QStringList adjustInputs(QStringList); + QSettings *settings; +private slots: + //Action Buttons + void startCleanup(); + void stopApplication(); + void ChangeTopBottom(bool ontop); + void ChangeScreen(QAction*); + + //Tray Updates + void setupContextMenu(); + void updateScreenMenu(); + void TrayActivated(QSystemTrayIcon::ActivationReason); + + //Slots for the window visibility + void ToggleVisibility(); + void TermHidden(); + void TermVisible(); + +}; + +#endif |