CCIMXDesktop
 
Loading...
Searching...
No Matches
appwidget.h
1#ifndef APPWIDGET_H
2#define APPWIDGET_H
3
4#include <QIcon>
5#include <QWidget>
6
8
9namespace Ui {
10class AppWidget;
11}
12
19class AppWidget : public QWidget {
20 Q_OBJECT
21
22public:
29 explicit AppWidget(const QPixmap& icon, const QString& name, QWidget* parent = nullptr);
30
35 void bindApp(ApplicationWrapper* wrapper);
36
42
47 void setIcon(const QPixmap& icon) noexcept;
48
53 void setAppName(const QString& name) noexcept;
54
62 void setDummy(bool dummy);
63
68 QPixmap icon() const;
69
75 void setIconSize(int iconSize);
76
81 int iconSize() const;
82
87 void showIconOnly(bool st);
88
93 QString app_name() const;
94
99 void set_displayed_font(const QFont& f);
100
105 QFont currentFont() const;
106
111 void setFontColor(const QColor& color);
112
116 ~AppWidget();
117
121 enum class AppStatus {
122 AppOk,
124 };
125
126signals:
132
133protected:
140 bool eventFilter(QObject* watched, QEvent* event) override;
141
145 virtual void do_daptch();
146
147private:
148 Ui::AppWidget* ui;
149 bool dummy_state { false };
150 ApplicationWrapper* app_internal { nullptr };
151 int icon_size;
152};
153
154#endif // APPWIDGET_H
The AppWidget class represents an application widget placed on the desktop.
Definition appwidget.h:19
~AppWidget()
Destructor.
Definition appwidget.cpp:113
ApplicationWrapper * get_app() const
Get the bound ApplicationWrapper.
Definition appwidget.cpp:41
AppStatus
Enum representing the application status.
Definition appwidget.h:121
@ AppNonExsits
Application does not exist.
@ AppOk
Application is running or available.
void postAppStatus(AppWidget::AppStatus status)
Signal emitted to notify about the application status.
void setDummy(bool dummy)
Set this widget as dummy mode.
Definition appwidget.cpp:67
void setIconSize(int iconSize)
Set the Icon size.
Definition appwidget.cpp:75
void set_displayed_font(const QFont &f)
set_displayed_font setFonts of displayed label
Definition appwidget.cpp:92
bool eventFilter(QObject *watched, QEvent *event) override
Event filter to handle user interaction events.
Definition appwidget.cpp:117
void setAppName(const QString &name) noexcept
Set the application name displayed by this widget.
Definition appwidget.cpp:56
void setIcon(const QPixmap &icon) noexcept
Set the icon displayed by this widget.
Definition appwidget.cpp:45
QFont currentFont() const
currentFont get the current displaying font
Definition appwidget.cpp:96
void showIconOnly(bool st)
Show or hide only the icon (hides other UI elements).
Definition appwidget.cpp:84
QPixmap icon() const
Get the current icon pixmap.
Definition appwidget.cpp:71
void setFontColor(const QColor &color)
setFontColor set the font color
Definition appwidget.cpp:100
virtual void do_daptch()
Dispatch the application via the ApplicationWrapper.
Definition appwidget.cpp:127
int iconSize() const
iconSize
Definition appwidget.cpp:80
QString app_name() const
Get the application name.
Definition appwidget.cpp:88
void bindApp(ApplicationWrapper *wrapper)
Bind an ApplicationWrapper instance to this widget.
Definition appwidget.cpp:35
The ApplicationWrapper class is the process wrapper.
Definition applicationwrapper.h:16