void HandleShoutHandlerRemoved(IShoutHandler handler) { QApplication.Invoke(delegate { for (int x = 0; x < shoutHandlersContainer.Layout().Count(); x++) { var item = shoutHandlersContainer.Layout().ItemAt(x); if (item is QWidgetItem) { var check = ((ShoutHandlerCheckBox)((QWidgetItem)item).Widget()); if (check.Handler == handler) { shoutHandlersContainer.Layout().RemoveWidget(check); check.SetParent(null); check.Dispose(); break; } } } var shoutService = ServiceManager.Get <ShoutService>(); if (shoutService.Handlers.Count() == 0) { shoutHandlersBox.Hide(); } }); }
public void RemoveHandler(IShoutHandler handler) { m_ShoutHandlers.Remove(handler); if (HandlerRemoved != null) { HandlerRemoved(handler); } }
public void AddHandler(IShoutHandler handler) { m_ShoutHandlers.Add(handler); if (HandlerAdded != null) { HandlerAdded(handler); } }
void HandleShoutHandlerAdded(IShoutHandler handler) { QApplication.Invoke(delegate { QCheckBox check = new ShoutHandlerCheckBox(handler, shoutHandlersContainer); check.Checked = true; shoutHandlersContainer.Layout().AddWidget(check); shoutHandlersBox.Show(); }); }
public void DelayedInitialize() { var feed = ServiceManager.Get <ActivityFeedService>(); feed.AddTemplate("shout", "Friend Events", "shouts", "shout"); var nodes = AddinManager.GetExtensionNodes("/Synapse/Xmpp/ActivityFeed/ShoutHandlers"); foreach (var node in nodes) { IShoutHandler handler = (IShoutHandler)((TypeExtensionNode)node).CreateInstance(); AddHandler(handler); } }
public ShoutHandlerCheckBox(IShoutHandler handler, QWidget parent) : base(handler.Name, parent) { m_Handler = handler; }
void HandleShoutHandlerRemoved(IShoutHandler handler) { QApplication.Invoke(delegate { for (int x = 0; x < shoutHandlersContainer.Layout().Count(); x++) { var item = shoutHandlersContainer.Layout().ItemAt(x); if (item is QWidgetItem) { var check = ((ShoutHandlerCheckBox)((QWidgetItem)item).Widget()); if (check.Handler == handler) { shoutHandlersContainer.Layout().RemoveWidget(check); check.SetParent(null); check.Dispose(); break; } } } var shoutService = ServiceManager.Get<ShoutService>(); if (shoutService.Handlers.Count() == 0) { shoutHandlersBox.Hide(); } }); }
public void AddHandler(IShoutHandler handler) { m_ShoutHandlers.Add(handler); if (HandlerAdded != null) HandlerAdded(handler); }
public void Shout(string message, IShoutHandler[] handlers) { var accountService = ServiceManager.Get<AccountService>(); if (accountService.ConnectedAccounts.Count == 0 && handlers.Length == 0) { throw new UserException("You are not connected."); } foreach (var account in accountService.ConnectedAccounts) { account.GetFeature<Microblogging>().Post(message); } foreach (var handler in handlers) { handler.Shout(message); } }
public void RemoveHandler(IShoutHandler handler) { m_ShoutHandlers.Remove(handler); if (HandlerRemoved != null) HandlerRemoved(handler); }