📄 docking.cpp
字号:
#include <stdio.h>#include <kapp.h>#include <kwinmodule.h>#include <kwin.h>#include <kconfig.h>#include "docking.h"KApplication *mykapp;DockWidget *dock_widget;int main( int argc, char *argv[] ){ mykapp = new KApplication(argc, argv,"zwinkde" ); dock_widget = new DockWidget("ZWinKDE"); dock_widget->dock(); return mykapp->exec();}DockWidget::DockWidget(const char *name) : QWidget(0, name, 0){ if(!pixmap.load("./docking.xpm")){ printf("Cannot load pixmap.\n"); exit(1); }}DockWidget::~DockWidget() {}void DockWidget::dock() { if (!docked) { KWin::setSystemTrayWindowFor(this->winId(), 0); this->setFixedSize(24, 24); this->show(); docked = true; }}void DockWidget::undock(){ if(docked){ //摧毁docking组件 this->destroy(true, true); this->create(0, false, false); docked = false; }}const bool DockWidget::isDocked(){ return docked;}void DockWidget::paintEvent (QPaintEvent *e){ (void) e; paintIcon();}void DockWidget::paintIcon (){ bitBlt(this, 0, 0, &pixmap);}void DockWidget::appexit(){ if(docked)undock(); mykapp->quit(); exit(0);}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -