private void DrawGuiLineHandler(string line) { // TODO we need to pass the server around whenever we support multiple simultaneous connections TreeNode server_node = TreeServerNodeLookup[DefaultNetworkForDebugging.Server]; /// Create the category node if needed string line_category = ParseIRC.GetMessageWindowContext(line); TreeNode category_node = FindOrCreateCategoryNodeByName(server_node, line_category); // Create the category listview if needed ListView message_view = FindOrCreateCategoryListViewByName(server_node, category_node); // Add the message to the message_view AddMessageToMessageView(message_view, line); }