public InsertSnippetAction(QWidget parent) : base(parent) { m_ChatWindow = (ChatWindow)parent; QObject.Connect<bool>(this, Qt.SIGNAL("triggered(bool)"), HandleOnTriggered); base.Text = "Code Snippet..."; base.icon = Gui.LoadIcon("stock_script", 16); }
public InsertSnippetAction(QWidget parent) : base(parent) { m_ChatWindow = (ChatWindow)parent; QObject.Connect<bool>(this, Qt.SIGNAL("triggered(bool)"), HandleOnTriggered); base.Text = "Code Snippet..."; base.icon = new QIcon(new QPixmap("resource:/codesnippets/insert-code.png")); }
void HandleOnJoin(Room room) { var handler = new MucHandler(m_Account, room); QApplication.Invoke(delegate { if (!m_MucWindows.ContainsKey(room)) { var window = new ChatWindow(handler); window.Closed += HandleMucWindowClosed; m_MucWindows[room] = window; Gui.TabbedChatsWindow.AddChatWindow(window, true); } }); }
public void OpenChatWindow(JID jid, bool isMucUser, bool focus, ChatHandlerEvent callback) { QApplication.Invoke(delegate { IChatHandler handler = null; string windowJid = isMucUser ? jid.ToString() : jid.Bare; lock (m_ChatWindows) { if (!m_ChatWindows.ContainsKey(windowJid)) { handler = new ChatHandler(m_Account, isMucUser, windowJid); var window = new ChatWindow(handler); window.Closed += HandleChatWindowClosed; m_ChatWindows.Add(windowJid, window); Gui.TabbedChatsWindow.AddChatWindow(window, focus); } else { var window = m_ChatWindows[windowJid]; if (focus) { Gui.TabbedChatsWindow.FocusChatWindow(window); } handler = (ChatHandler)window.Handler; } } if (callback != null) { callback(handler); } }); }
void RemoveChatWindow(ChatWindow window) { int index = m_Tabs.IndexOf(window); m_Tabs.RemoveTab(index); TabClosed(); window.UrgencyHintChanged -= HandleChatUrgencyHintChanged; }
void FocusChatWindow(ChatWindow window) { window.Show(); int newIndex = m_Tabs.IndexOf(window); m_Tabs.SetCurrentIndex(newIndex); if (this.Minimized) this.ShowNormal(); this.ActivateWindow(); this.Raise(); window.SetFocus(); }
void AddChatWindow(ChatWindow window, bool focus) { int oldIndex = m_Tabs.CurrentIndex; m_Tabs.InsertTab(oldIndex + 1, window, window.WindowIcon, window.WindowTitle); if (focus) { FocusChatWindow(window); } else { m_Tabs.SetCurrentIndex(oldIndex); } TabAdded(); window.UrgencyHintChanged += HandleChatUrgencyHintChanged; }