Mercurial > pidgin
comparison console/gntplugin.c @ 14105:eaf7f35635bc
[gaim-migrate @ 16739]
Allow autojoining chat rooms.
Sort the buddies in the buddylist, and the plugins in the plugin list.
committer: Tailor Script <tailor@pidgin.im>
| author | Sadrul Habib Chowdhury <imadil@gmail.com> |
|---|---|
| date | Sun, 13 Aug 2006 23:30:19 +0000 |
| parents | 2d1b41e3cf0d |
| children | 44ec6c7cbc76 |
comparison
equal
deleted
inserted
replaced
| 14104:b0566d50291f | 14105:eaf7f35635bc |
|---|---|
| 66 plugin->info->name, plugin->info->version, plugin->info->description, | 66 plugin->info->name, plugin->info->version, plugin->info->description, |
| 67 plugin->info->author, plugin->info->homepage, plugin->path); | 67 plugin->info->author, plugin->info->homepage, plugin->path); |
| 68 gnt_text_view_append_text_with_flags(GNT_TEXT_VIEW(plugins.aboot), | 68 gnt_text_view_append_text_with_flags(GNT_TEXT_VIEW(plugins.aboot), |
| 69 text, GNT_TEXT_FLAG_NORMAL); | 69 text, GNT_TEXT_FLAG_NORMAL); |
| 70 gnt_text_view_scroll(GNT_TEXT_VIEW(plugins.aboot), 0); | 70 gnt_text_view_scroll(GNT_TEXT_VIEW(plugins.aboot), 0); |
| 71 g_free(text); | |
| 71 } | 72 } |
| 72 | 73 |
| 73 static void | 74 static void |
| 74 reset_plugin_window(GntWidget *window, gpointer null) | 75 reset_plugin_window(GntWidget *window, gpointer null) |
| 75 { | 76 { |
| 76 plugins.window = NULL; | 77 plugins.window = NULL; |
| 77 plugins.tree = NULL; | 78 plugins.tree = NULL; |
| 78 plugins.aboot = NULL; | 79 plugins.aboot = NULL; |
| 80 } | |
| 81 | |
| 82 static int | |
| 83 plugin_compare(GaimPlugin *p1, GaimPlugin *p2) | |
| 84 { | |
| 85 char *s1 = g_utf8_strup(p1->info->name, -1); | |
| 86 char *s2 = g_utf8_strup(p2->info->name, -1); | |
| 87 int ret = g_utf8_collate(s1, s2); | |
| 88 g_free(s1); | |
| 89 g_free(s2); | |
| 90 return ret; | |
| 79 } | 91 } |
| 80 | 92 |
| 81 void gg_plugins_show_all() | 93 void gg_plugins_show_all() |
| 82 { | 94 { |
| 83 GntWidget *window, *tree, *box, *aboot; | 95 GntWidget *window, *tree, *box, *aboot; |
| 100 gnt_box_add_widget(GNT_BOX(window), box); | 112 gnt_box_add_widget(GNT_BOX(window), box); |
| 101 gnt_box_add_widget(GNT_BOX(window), gnt_hline_new()); | 113 gnt_box_add_widget(GNT_BOX(window), gnt_hline_new()); |
| 102 | 114 |
| 103 gnt_box_set_pad(GNT_BOX(box), 0); | 115 gnt_box_set_pad(GNT_BOX(box), 0); |
| 104 plugins.tree = tree = gnt_tree_new(); | 116 plugins.tree = tree = gnt_tree_new(); |
| 117 gnt_tree_set_compare_func(GNT_TREE(tree), (GCompareFunc)plugin_compare); | |
| 105 GNT_WIDGET_SET_FLAGS(tree, GNT_WIDGET_NO_BORDER); | 118 GNT_WIDGET_SET_FLAGS(tree, GNT_WIDGET_NO_BORDER); |
| 106 gnt_box_add_widget(GNT_BOX(box), tree); | 119 gnt_box_add_widget(GNT_BOX(box), tree); |
| 107 gnt_box_add_widget(GNT_BOX(box), gnt_vline_new()); | 120 gnt_box_add_widget(GNT_BOX(box), gnt_vline_new()); |
| 108 | 121 |
| 109 plugins.aboot = aboot = gnt_text_view_new(); | 122 plugins.aboot = aboot = gnt_text_view_new(); |
| 126 gnt_tree_set_col_width(GNT_TREE(tree), 0, 30); | 139 gnt_tree_set_col_width(GNT_TREE(tree), 0, 30); |
| 127 g_signal_connect(G_OBJECT(tree), "toggled", G_CALLBACK(plugin_toggled_cb), NULL); | 140 g_signal_connect(G_OBJECT(tree), "toggled", G_CALLBACK(plugin_toggled_cb), NULL); |
| 128 g_signal_connect(G_OBJECT(tree), "selection_changed", G_CALLBACK(selection_changed), NULL); | 141 g_signal_connect(G_OBJECT(tree), "selection_changed", G_CALLBACK(selection_changed), NULL); |
| 129 g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(reset_plugin_window), NULL); | 142 g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(reset_plugin_window), NULL); |
| 130 | 143 |
| 131 gnt_tree_set_selected(GNT_TREE(tree), gaim_plugins_get_all()->data); | |
| 132 | |
| 133 gnt_widget_show(window); | 144 gnt_widget_show(window); |
| 134 } | 145 } |
| 135 | 146 |
