示例#1
0
JabberPlugin::~JabberPlugin()
{
    unregisterMessages();

    Event eMenuSearch(EventMenuRemove, (void*)MenuSearchResult);
    eMenuSearch.process();

    Event eMenuGroups(EventMenuRemove, (void*)MenuGroups);
    eMenuGroups.process();

    Event eCmdBrowser(EventCommandRemove, (void*)CmdBrowser);
    eMenuGroups.process();

    Event eToolbar(EventToolbarRemove, (void*)BarBrowser);
    eToolbar.process();

    delete m_protocol;
    getContacts()->removePacketType(JabberPacket);
}
示例#2
0
JabberPlugin::JabberPlugin(unsigned base)
        : Plugin(base)
{
#ifdef WIN32
    qInitJpeg();
#endif

    JabberPacket = registerType();
    getContacts()->addPacketType(JabberPacket, jabber_descr.text, true);

    EventAgentFound = registerType();
    EventAgentInfo	= registerType();
    EventAgentRegister = registerType();
    EventSearch		= registerType();
    EventSearchDone	= registerType();

    MenuSearchResult = registerType();
    MenuGroups		 = registerType();
    CmdSendMessage	 = registerType();
    CmdGroups		 = registerType();
    CmdBrowser		 = registerType();
    BarBrowser		 = registerType();
    CmdBack			 = registerType();
    CmdForward		 = registerType();
    CmdUrl			 = registerType();
    EventDiscoItem	 = registerType();
    CmdInfo			 = registerType();
    CmdRegister		 = registerType();
    CmdSearch		 = registerType();
	CmdNode			 = registerType();

    IconDef icon;
    icon.name = "Jabber_online";
    icon.xpm = jabber_online;
    icon.isSystem = false;

    Event eIcon(EventAddIcon, &icon);
    eIcon.process();

    icon.name = "Jabber_offline";
    icon.xpm = jabber_offline;
    eIcon.process();

    icon.name = "Jabber_away";
    icon.xpm = jabber_away;
    eIcon.process();

    icon.name = "Jabber_na";
    icon.xpm = jabber_na;
    eIcon.process();

    icon.name = "Jabber_dnd";
    icon.xpm = jabber_dnd;
    eIcon.process();

    icon.name = "Jabber_ffc";
    icon.xpm = jabber_ffc;
    eIcon.process();

    icon.name = "Jabber_invisible";
    icon.xpm = jabber_invisible;
    eIcon.process();

    icon.name = "ICQ_offline";
    icon.xpm = icq_offline;
    eIcon.process();

    icon.name = "ICQ_online";
    icon.xpm = icq_online;
    eIcon.process();

    icon.name = "ICQ_away";
    icon.xpm = icq_away;
    eIcon.process();

    icon.name = "ICQ_na";
    icon.xpm = icq_na;
    eIcon.process();

    icon.name = "ICQ_dnd";
    icon.xpm = icq_dnd;
    eIcon.process();

    icon.name = "ICQ_ffc";
    icon.xpm = icq_ffc;
    eIcon.process();

    icon.name = "ICQ_invisible";
    icon.xpm = icq_invisible;
    eIcon.process();

    icon.name = "MSN_offline";
    icon.xpm = msn_offline;
    eIcon.process();

    icon.name = "MSN_online";
    icon.xpm = msn_online;
    eIcon.process();

    icon.name = "MSN_away";
    icon.xpm = msn_away;
    eIcon.process();

    icon.name = "MSN_na";
    icon.xpm = msn_na;
    eIcon.process();

    icon.name = "MSN_dnd";
    icon.xpm = msn_dnd;
    eIcon.process();

    icon.name = "MSN_invisible";
    icon.xpm = msn_invisible;
    eIcon.process();

    icon.name = "AIM_offline";
    icon.xpm = aim_offline;
    eIcon.process();

    icon.name = "AIM_online";
    icon.xpm = aim_online;
    eIcon.process();

    icon.name = "AIM_away";
    icon.xpm = aim_away;
    eIcon.process();

    icon.name = "Yahoo_offline";
    icon.xpm = yahoo_offline;
    eIcon.process();

    icon.name = "Yahoo_away";
    icon.xpm = yahoo_away;
    eIcon.process();

    icon.name = "Yahoo_na";
    icon.xpm = yahoo_na;
    eIcon.process();

    icon.name = "Yahoo_dnd";
    icon.xpm = yahoo_dnd;
    eIcon.process();

    icon.name = "Yahoo_ffc";
    icon.xpm = yahoo_ffc;
    eIcon.process();

    icon.name = "reg";
    icon.xpm = reg;
    eIcon.process();

    Event eMenuSearch(EventMenuCreate, (void*)MenuSearchResult);
    eMenuSearch.process();
    Event eMenuGroups(EventMenuCreate, (void*)MenuGroups);
    eMenuGroups.process();
    Event eToolbar(EventToolbarCreate, (void*)BarBrowser);
    eToolbar.process();

    Command	cmd;
    cmd->id			 = CmdSendMessage;
    cmd->text		 = I18N_NOOP("&Message");
    cmd->icon		 = "message";
    cmd->menu_id	 = MenuSearchResult;
    cmd->menu_grp	 = 0x1000;
    cmd->flags		 = COMMAND_DEFAULT;
    Event eCmd(EventCommandCreate, cmd);
    eCmd.process();

    cmd->id			 = CmdInfo;
    cmd->text		 = I18N_NOOP("User &info");
    cmd->icon		 = "info";
    cmd->menu_grp	 = 0x1001;
    eCmd.process();

    cmd->id			 = CmdGroups;
    cmd->text		 = I18N_NOOP("&Add to group");
    cmd->icon		 = NULL;
    cmd->menu_grp	 = 0x1002;
    cmd->popup_id	 = MenuGroups;
    eCmd.process();

    cmd->id			 = CmdGroups;
    cmd->text		 = "_";
    cmd->menu_id	 = MenuGroups;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdBrowser;
    cmd->text		 = I18N_NOOP("Jabber browser");
    cmd->icon		 = "Jabber_online";
    cmd->menu_grp	 = 0x20F0;
    cmd->menu_id	 = MenuMain;
    cmd->popup_id	 = NULL;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdBrowser;
    cmd->text		 = I18N_NOOP("Jabber browser");
    cmd->icon		 = "Jabber_online";
    cmd->menu_grp	 = 0x20F0;
    cmd->menu_id	 = MenuContact;
    cmd->popup_id	 = NULL;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdBack;
    cmd->text		 = I18N_NOOP("&Back");
    cmd->icon		 = "1leftarrow";
    cmd->bar_grp	 = 0x1000;
    cmd->bar_id		 = BarBrowser;
    cmd->menu_id	 = 0;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdForward;
    cmd->text		 = I18N_NOOP("&Next");
    cmd->icon		 = "1rightarrow";
    cmd->bar_grp	 = 0x1001;
    eCmd.process();

    cmd->id			 = CmdUrl;
    cmd->text		 = I18N_NOOP("JID");
    cmd->icon		 = "run";
    cmd->bar_grp	 = 0x2000;
    cmd->flags		 = BTN_COMBO_CHECK;
    eCmd.process();

    cmd->id			 = CmdNode;
    cmd->text		 = I18N_NOOP("Node");
    cmd->bar_grp	 = 0x2001;
    cmd->flags		 = BTN_COMBO | BTN_NO_BUTTON;
    eCmd.process();

    cmd->id			 = CmdSearch;
    cmd->text		 = I18N_NOOP("&Search");
    cmd->icon		 = "find";
    cmd->bar_grp	 = 0x3000;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdRegister;
    cmd->text		 = I18N_NOOP("&Register");
    cmd->icon		 = "reg";
    cmd->bar_grp	 = 0x3001;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdInfo;
    cmd->text		 = I18N_NOOP("Info");
    cmd->icon		 = "info";
    cmd->bar_grp	 = 0x3010;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdConfigure;
    cmd->text		 = I18N_NOOP("Configure");
    cmd->icon		 = "configure";
    cmd->bar_grp	 = 0x3020;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    m_protocol = new JabberProtocol(this);
    registerMessages();
}
示例#3
0
JabberPlugin::JabberPlugin(unsigned base, Buffer *cfg)
        : Plugin(base)
{
#if defined(WIN32) && (COMPAT_QT_VERSION < 0x030000)
    qInitJpeg();
#endif
    plugin = this;
    load_data(jabberData, &data, cfg);
    JabberPacket = registerType();
    getContacts()->addPacketType(JabberPacket, jabber_descr.text, true);

    IconDef icon;
    icon.name = "Jabber";
    icon.xpm  = jabber;
    Event eIcon(EventAddIcon, &icon);
    eIcon.process();

    icon.name = "reg";
    icon.xpm  = reg;
    eIcon.process();

    icon.name = "connect";
    icon.xpm  = connect_xpm;
	icon.system = "connect_established";
    eIcon.process();

    Event eMenuSearch(EventMenuCreate, (void*)MenuSearchResult);
    eMenuSearch.process();
    Event eMenuGroups(EventMenuCreate, (void*)MenuJabberGroups);
    eMenuGroups.process();
    Event eMenuBrowser(EventMenuCreate, (void*)MenuBrowser);
    eMenuBrowser.process();
    Event eToolbar(EventToolbarCreate, (void*)BarBrowser);
    eToolbar.process();

    Command	cmd;
    cmd->id			 = CmdJabberMessage;
    cmd->text		 = I18N_NOOP("&Message");
    cmd->icon		 = "message";
    cmd->menu_id	 = MenuSearchResult;
    cmd->menu_grp	 = 0x1000;
    cmd->flags		 = COMMAND_DEFAULT;
    Event eCmd(EventCommandCreate, cmd);
    eCmd.process();

    cmd->id			 = CmdBrowseInfo;
    cmd->text		 = I18N_NOOP("User &info");
    cmd->icon		 = "info";
    cmd->menu_grp	 = 0x1001;
    eCmd.process();

    cmd->id			 = CmdGroups;
    cmd->text		 = I18N_NOOP("&Add to group");
    cmd->icon		 = NULL;
    cmd->menu_grp	 = 0x1002;
    cmd->popup_id	 = MenuJabberGroups;
    eCmd.process();

    cmd->id			 = CmdGroups;
    cmd->text		 = "_";
    cmd->menu_id	 = MenuJabberGroups;
    cmd->popup_id	 = 0;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdBack;
    cmd->text		 = I18N_NOOP("&Back");
    cmd->icon		 = "1leftarrow";
    cmd->bar_grp	 = 0x1000;
    cmd->bar_id		 = BarBrowser;
    cmd->menu_id	 = 0;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdForward;
    cmd->text		 = I18N_NOOP("&Next");
    cmd->icon		 = "1rightarrow";
    cmd->bar_grp	 = 0x1001;
    eCmd.process();

    cmd->id			 = CmdUrl;
    cmd->text		 = I18N_NOOP("JID");
    cmd->icon		 = "run";
    cmd->bar_grp	 = 0x2000;
    cmd->flags		 = BTN_COMBO_CHECK;
    eCmd.process();

    cmd->id			 = CmdNode;
    cmd->text		 = I18N_NOOP("Node");
    cmd->bar_grp	 = 0x2001;
    cmd->flags		 = BTN_COMBO | BTN_NO_BUTTON;
    eCmd.process();

    cmd->id			 = CmdBrowseSearch;
    cmd->text		 = I18N_NOOP("&Search");
    cmd->icon		 = "find";
    cmd->bar_grp	 = 0x3000;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdRegister;
    cmd->text		 = I18N_NOOP("&Register");
    cmd->icon		 = "reg";
    cmd->bar_grp	 = 0x3001;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdBrowseInfo;
    cmd->text		 = I18N_NOOP("Info");
    cmd->icon		 = "info";
    cmd->bar_grp	 = 0x3010;
    eCmd.process();

    cmd->id			 = CmdBrowseConfigure;
    cmd->text		 = I18N_NOOP("Configure");
    cmd->icon		 = "configure";
    cmd->bar_grp	 = 0x3020;
    eCmd.process();

    cmd->id			 = CmdBrowseMode;
    cmd->text		 = I18N_NOOP("Browser mode");
    cmd->icon		 = "configure";
    cmd->bar_grp	 = 0x5000;
    cmd->flags		 = COMMAND_DEFAULT;
    cmd->popup_id	 = MenuBrowser;
    eCmd.process();

    cmd->id			 = CmdOneLevel;
    cmd->text		 = I18N_NOOP("Load one level");
    cmd->icon		 = NULL;
    cmd->bar_id		 = 0;
    cmd->bar_grp	 = 0;
    cmd->menu_id	 = MenuBrowser;
    cmd->menu_grp	 = 0x1000;
    cmd->popup_id	 = 0;
    cmd->flags		 = COMMAND_CHECK_STATE;
    eCmd.process();

    cmd->id			 = CmdAllLevels;
    cmd->text		 = I18N_NOOP("Load all levels");
    cmd->menu_grp	 = 0x1001;
    eCmd.process();

    cmd->id			 = CmdModeDisco;
    cmd->text		 = "Discovery";
    cmd->menu_grp	 = 0x2000;
    eCmd.process();

    cmd->id			 = CmdModeBrowse;
    cmd->text		 = "Browse";
    cmd->menu_grp	 = 0x2001;
    eCmd.process();

    cmd->id			 = CmdModeAgents;
    cmd->text		 = "Agents";
    cmd->menu_grp	 = 0x2002;
    eCmd.process();

    m_protocol = new JabberProtocol(this);
    registerMessages();
}