+ void networkDestroyed();
+ void coreIdentityCreated(const Identity &);
+ void coreIdentityRemoved(IdentityId);
+ void coreNetworkCreated(NetworkId);
+ void coreNetworkRemoved(NetworkId);
+
+ void corePasswordChanged(PeerPtr, bool success);
+
+ void finishConnectionInitialization();
+
+ void sendBufferedUserInput();
+
+private:
+ void requestInitialBacklog();
+
+ /**
+ * Deletes and resynchronizes the CoreInfo object for legacy (pre-0.13) cores
+ *
+ * This provides compatibility with updating core information for legacy cores, and can be
+ * removed after protocol break.
+ *
+ * NOTE: On legacy (pre-0.13) cores, any existing connected signals will be destroyed and must
+ * be re-added after calling this, in addition to checking for existing data in coreInfo().
+ */
+ void requestLegacyCoreInfo();
+
+ static void addNetwork(Network *);
+
+ SignalProxy *_signalProxy;
+ std::unique_ptr<AbstractUi> _mainUi;
+ NetworkModel *_networkModel;
+ BufferModel *_bufferModel;
+ BufferSyncer *_bufferSyncer;
+ ClientAliasManager *_aliasManager;
+ ClientBacklogManager *_backlogManager;
+ ClientBufferViewManager *_bufferViewManager;
+ BufferViewOverlay *_bufferViewOverlay;
+ CoreInfo *_coreInfo;
+ DccConfig *_dccConfig;
+ ClientIrcListHelper *_ircListHelper;
+ ClientUserInputHandler *_inputHandler;
+ NetworkConfig *_networkConfig;
+ ClientIgnoreListManager *_ignoreListManager;
+ HighlightRuleManager *_highlightRuleManager;
+ ClientTransferManager *_transferManager;
+ TransferModel *_transferModel;
+
+ MessageModel *_messageModel;
+ AbstractMessageProcessor *_messageProcessor;
+
+ CoreAccountModel *_coreAccountModel;
+ CoreConnection *_coreConnection;
+
+ ClientMode clientMode;
+
+ QHash<NetworkId, Network *> _networks;
+ QHash<IdentityId, Identity *> _identities;
+
+ bool _connected;
+
+ QList<QPair<BufferInfo, QString> > _userInputBuffer;
+
+ friend class CoreConnection;
+};