Rabbit Remote Control 0.1.0-bate14
Loading...
Searching...
No Matches
OperateTerminal.h
1// Author: Kang Lin <kl222@126.com>
2
3#pragma once
4
5#include "Operate.h"
6#include "Backend.h"
7#include "ParameterTerminalBase.h"
8
18
25class PLUGIN_EXPORT COperateTerminal : public COperate
26{
27 Q_OBJECT
28public:
29 explicit COperateTerminal(CPlugin *parent);
30 virtual ~COperateTerminal() override;
31
41 Q_INVOKABLE virtual CBackend* InstanceBackend() = 0;
43 [[nodiscard]] virtual CParameterTerminalBase* GetParameter() const;
51 virtual int SetParameter(CParameterTerminalBase *pPara);
52
53 [[nodiscard]] virtual const QString Id() override;
54 [[nodiscard]] virtual const QString Name() override;
55 [[nodiscard]] virtual const QString Description() override;
56 [[nodiscard]] virtual const qint16 Version() const override;
57 [[nodiscard]] static const QString Details();
58
59 [[nodiscard]] CStats *GetStats() override;
60 [[nodiscard]] QWidget* GetViewer() override;
61
62public Q_SLOTS:
63 virtual int Start() override;
64 virtual int Stop() override;
65
66protected:
67 virtual int Initial() override;
68 virtual int Clean() override;
74 virtual int SetPluginParameters(CParameterPlugin *pPara) override;
75 int WriteTerminal(const char* buf, int len);
76
77private Q_SLOTS:
78 void slotZoomReset();
79 void slotCustomContextMenu(const QPoint & pos);
80 void slotActivateUrl(const QUrl& url, bool fromContextMenu);
81 void slotTermKeyPressed(QKeyEvent* e);
82 void slotFocusIn();
83 void slotFocusOut();
84protected Q_SLOTS:
85 void slotUpdateParameter(COperate *pOperate);
86
87protected:
88 virtual int Load(QSettings &set) override;
89 virtual int Save(QSettings &set) override;
90 virtual void SetShotcuts(bool bEnable = true);
91
92 QTermWidget* m_pTerminal;
93 CBackendThread* m_pThread;
94 QAction* m_pActionOpenWithSystem;
95 QAction* m_pActionFind;
96
97private:
98 CParameterTerminalBase* m_pParameters;
99
100 QAction* m_pEditCopy;
101 QAction* m_pEditPaste;
102 QAction* m_pZoomIn;
103 QAction* m_pZoomOut;
104 QAction* m_pZoomOriginal;
105 QAction* m_pClear;
106
107 CStats m_Stats;
108};
The backend thread.
Backend interface.
Definition Backend.h:52
virtual int Save(QSettings &set) override
Save parameters.
CStats * GetStats() override
Get statistics.
virtual int Initial() override
Initial parameters and resource.
virtual const QString Name() override
Name.
virtual int Clean() override
Clean parameters and resource.
virtual Q_INVOKABLE CBackend * InstanceBackend()=0
New CBackend.
virtual int Load(QSettings &set) override
Load parameters.
virtual int SetParameter(CParameterTerminalBase *pPara)
Set parameter pointer.
virtual CParameterTerminalBase * GetParameter() const
Get parameters.
virtual const QString Description() override
Description.
QWidget * GetViewer() override
Get Viewer.
virtual int SetPluginParameters(CParameterPlugin *pPara) override
Set Global Parameters.
Global parameters of plugins.
Terminal base parameter.
Plugin interface.
Definition Plugin.h:15
Definition Stats.h:11