FloatyPlugin::FloatyPlugin(unsigned base) : Plugin(base) { CmdFloaty = registerType(); user_data_id = getContacts()->registerUserData(info.title, floatyUserData); IconDef icon; icon.name = "floating"; icon.xpm = floating; m_bBlink = false; unreadTimer = new QTimer(this); connect(unreadTimer, SIGNAL(timeout()), this, SLOT(unreadBlink())); Event eIcon(EventAddIcon, &icon); eIcon.process(); Command cmd; cmd->id = CmdFloaty; cmd->text = I18N_NOOP("Floating on"); cmd->icon = "floating"; cmd->menu_id = MenuContact; cmd->menu_grp = 0xB000; cmd->flags = COMMAND_CHECK_STATE; Event e(EventCommandCreate, cmd); e.process(); Event ePlugin(EventGetPluginInfo, (void*)"_core"); pluginInfo *info = (pluginInfo*)(ePlugin.process()); core = static_cast<CorePlugin*>(info->plugin); }
UserView::UserView() : UserListBase(NULL) { m_bBlink = false; m_bUnreadBlink = false; m_bShowOnline = CorePlugin::m_plugin->getShowOnLine(); setBackgroundMode(NoBackground); viewport()->setBackgroundMode(NoBackground); mTipItem = NULL; m_tip = NULL; m_searchTip = NULL; m_current = NULL; setTreeStepSize(0); tipTimer = new QTimer(this); connect(tipTimer, SIGNAL(timeout()), this, SLOT(showTip())); blinkTimer = new QTimer(this); connect(blinkTimer, SIGNAL(timeout()), this, SLOT(blink())); unreadTimer = new QTimer(this); connect(unreadTimer, SIGNAL(timeout()), this, SLOT(unreadBlink())); topLevelWidget()->installEventFilter(this); viewport()->installEventFilter(this); m_dropContactId = 0; m_dropItem = NULL; m_searchItem = NULL; setFrameStyle(QFrame::Panel); setFrameShadow(QFrame::Sunken); WindowDef wnd; wnd.widget = this; wnd.bDown = true; Event e(EventAddWindow, &wnd); e.process(); clear(); setGroupMode(CorePlugin::m_plugin->getGroupMode(), true); edtGroup = new IntLineEdit(viewport()); edtContact = new IntLineEdit(viewport()); edtGroup->hide(); edtContact->hide(); QFont font(font()); int size = font.pixelSize(); if (size <= 0){ size = font.pointSize(); font.setPointSize(size * 3 / 4); }else{ font.setPixelSize(size * 3 / 4); } font.setBold(true); edtGroup->setFont(font); connect(edtGroup, SIGNAL(escape()), this, SLOT(editEscape())); connect(edtGroup, SIGNAL(returnPressed()), this, SLOT(editGroupEnter())); connect(edtGroup, SIGNAL(focusOut()), this, SLOT(editGroupEnter())); connect(edtContact, SIGNAL(escape()), this, SLOT(editEscape())); connect(edtContact, SIGNAL(returnPressed()), this, SLOT(editContactEnter())); connect(edtContact, SIGNAL(focusOut()), this, SLOT(editContactEnter())); }