WinDockPlugin::WinDockPlugin(unsigned base, Buffer *config) : Plugin(base), EventReceiver(DefaultPriority - 1) { dock = this; load_data(winDockData, &data, config); CmdAutoHide = registerType(); Command cmd; cmd->id = CmdAutoHide; cmd->text = I18N_NOOP("AutoHide"); cmd->menu_id = MenuMain; cmd->menu_grp = 0x7001; cmd->flags = COMMAND_CHECK_STATE; m_bInit = false; m_autoHide = new QTimer(this); connect(m_autoHide, SIGNAL(timeout()), this, SLOT(slotAutoHide())); Event eCmd(EventCommandCreate, cmd); eCmd.process(); WM_APPBAR = RegisterWindowMessageA("AppBarNotify"); init(); }
DCursorTracker::DCursorTracker(const QString& txt, QWidget* const parent, Qt::Alignment align) : QLabel(txt, parent, Qt::ToolTip | Qt::BypassGraphicsProxyWidget), d(new Private) { setForegroundRole(QPalette::ToolTipText); setBackgroundRole(QPalette::ToolTipBase); setPalette(QToolTip::palette()); ensurePolished(); const int fwidth = 1 + style()->pixelMetric(QStyle::PM_ToolTipLabelFrameWidth, 0, this); setContentsMargins(fwidth, fwidth, fwidth, fwidth); setFrameStyle(QFrame::NoFrame); setAlignment(Qt::AlignLeft | Qt::AlignTop); setIndent(1); setWindowOpacity(style()->styleHint(QStyle::SH_ToolTipLabel_Opacity, 0, this) / 255.0); d->alignment = align; d->parent = parent; d->parent->setMouseTracking(true); d->parent->installEventFilter(this); d->autoHideTimer = new QTimer(this); d->autoHideTimer->setSingleShot(true); connect(d->autoHideTimer, SIGNAL(timeout()), this, SLOT(slotAutoHide())); }