Mercurial > pidgin
annotate src/ui.h @ 9697:f568b6655331
[gaim-migrate @ 10556]
I'm not sure how this wasn't noticed before, but thanks to hyphenated for
pointing it out. We were checking if the load function pointer was valid
before calling unload. We should have checked unload.
committer: Tailor Script <tailor@pidgin.im>
author | Christian Hammond <chipx86@chipx86.com> |
---|---|
date | Sat, 07 Aug 2004 09:07:20 +0000 |
parents | bc2079a32fd9 |
children |
rev | line source |
---|---|
5034
4691c5936c01
[gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents:
5032
diff
changeset
|
1 /** |
4691c5936c01
[gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents:
5032
diff
changeset
|
2 * @file ui.h Main GTK+ UI include file |
4691c5936c01
[gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents:
5032
diff
changeset
|
3 * @defgroup gtkui GTK+ User Interface |
4691c5936c01
[gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents:
5032
diff
changeset
|
4 * |
2417 | 5 * gaim |
6 * | |
8046 | 7 * Gaim is the legal property of its developers, whose names are too numerous |
8 * to list here. Please refer to the COPYRIGHT file distributed with this | |
9 * source distribution. | |
7060
9946001989a3
[gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents:
6982
diff
changeset
|
10 * |
2417 | 11 * This program is free software; you can redistribute it and/or modify |
12 * it under the terms of the GNU General Public License as published by | |
13 * the Free Software Foundation; either version 2 of the License, or | |
14 * (at your option) any later version. | |
15 * | |
16 * This program is distributed in the hope that it will be useful, | |
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
19 * GNU General Public License for more details. | |
20 * | |
21 * You should have received a copy of the GNU General Public License | |
22 * along with this program; if not, write to the Free Software | |
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
24 */ | |
25 | |
26 #ifndef _UI_H_ | |
27 #define _UI_H_ | |
28 | |
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5779
diff
changeset
|
29 #include "account.h" |
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5779
diff
changeset
|
30 #include "conversation.h" |
5779
758fa27534b3
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
31 |
758fa27534b3
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
32 /** |
758fa27534b3
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
33 * Our UI's identifier. |
758fa27534b3
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
34 */ |
758fa27534b3
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
35 #define GAIM_GTK_UI "gtk-gaim" |
758fa27534b3
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
36 |
758fa27534b3
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
37 |
2725
f3c094e78609
[gaim-migrate @ 2738]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2699
diff
changeset
|
38 #define GAIM_DIALOG(x) x = gtk_window_new(GTK_WINDOW_TOPLEVEL); \ |
f3c094e78609
[gaim-migrate @ 2738]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2699
diff
changeset
|
39 gtk_window_set_type_hint(GTK_WINDOW(x), GDK_WINDOW_TYPE_HINT_DIALOG) |
3554 | 40 #define GAIM_WINDOW_ICONIFIED(x) (gdk_window_get_state(GTK_WIDGET(x)->window) & GDK_WINDOW_STATE_ICONIFIED) |
3517 | 41 |
5105 | 42 /* This is backwards-compatibility code for old versions of GTK+ (2.2.1 and |
43 * earlier). It defines the new wrap behavior (unknown in earlier versions) | |
44 * as the old (slightly buggy) wrap behavior. | |
45 */ | |
46 #ifndef GTK_WRAP_WORD_CHAR | |
47 #define GTK_WRAP_WORD_CHAR GTK_WRAP_WORD | |
48 #endif | |
49 | |
3473 | 50 #define DEFAULT_FONT_FACE "Helvetica" |
2761
367d19133917
[gaim-migrate @ 2774]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2725
diff
changeset
|
51 |
3376 | 52 |
2438
5cbe86a444d9
[gaim-migrate @ 2451]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2437
diff
changeset
|
53 /* XXX CUI: away messages aren't really anything more than char* but we need two char*'s |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
54 * for the UI so that people can name their away messages when they save them. So these |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
55 * are really a UI function and struct away_message should be removed from the core. */ |
7942 | 56 /* WTF? How does having a title for something mean that it is part of the UI? */ |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
57 struct away_message { |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
58 char name[80]; |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
59 char message[2048]; |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
60 }; |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
61 |
2986 | 62 |
63 | |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
64 /* this is used for queuing messages received while away. This is really a UI function |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
65 * which is why the struct is here. */ |
4608 | 66 |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
67 struct queued_message { |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
68 char name[80]; |
8413
f5b0e1a4b0c7
[gaim-migrate @ 9143]
Christian Hammond <chipx86@chipx86.com>
parents:
8319
diff
changeset
|
69 char alias[80]; |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
70 char *message; |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
71 time_t tm; |
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
72 GaimAccount *account; |
6621 | 73 GaimMessageFlags flags; |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
74 }; |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
75 |
4288 | 76 struct smiley_theme { |
77 char *path; | |
78 char *name; | |
79 char *desc; | |
80 char *icon; | |
81 char *author; | |
82 | |
83 struct smiley_list *list; | |
84 }; | |
85 | |
9035
e743bf55dc06
[gaim-migrate @ 9811]
Christian Hammond <chipx86@chipx86.com>
parents:
9032
diff
changeset
|
86 /* Globals in main.c */ |
2493
1b7a1133962d
[gaim-migrate @ 2506]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2442
diff
changeset
|
87 extern GtkWidget *mainwindow; |
4687 | 88 extern int docklet_count; |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
89 |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
90 /* Globals in away.c */ |
6479 | 91 extern GSList *away_messages; |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
92 extern struct away_message *awaymessage; |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
93 extern GtkWidget *awaymenu; |
4412 | 94 extern GtkWidget *awayqueue; |
95 extern GtkListStore *awayqueuestore; | |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
96 |
4288 | 97 /* Globals in themes.c */ |
98 extern struct smiley_theme *current_smiley_theme; | |
99 extern GSList *smiley_themes; | |
100 | |
2417 | 101 /* Functions in about.c */ |
102 extern void show_about(GtkWidget *, void *); | |
103 | |
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5779
diff
changeset
|
104 /* Functions in main.c */ |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
105 extern void show_login(); |
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5779
diff
changeset
|
106 extern void gaim_setup(GaimConnection *); |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
107 |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
108 /* Functions in away.c */ |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
109 extern void rem_away_mess(GtkWidget *, struct away_message *); |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
110 extern void do_away_message(GtkWidget *, struct away_message *); |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
111 extern void do_away_menu(); |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
112 extern void toggle_away_queue(); |
4274 | 113 extern void purge_away_queue(GSList**); |
5773
8107b9ee8789
[gaim-migrate @ 6198]
Christian Hammond <chipx86@chipx86.com>
parents:
5772
diff
changeset
|
114 extern void do_im_back(GtkWidget *w, GtkWidget *x); |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
115 |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
116 /* Functions in dialogs.c */ |
6695 | 117 extern void alias_dialog_bud(GaimBuddy *); |
7245 | 118 extern void alias_dialog_contact(GaimContact *); |
7118
bf630f7dfdcd
[gaim-migrate @ 7685]
Christian Hammond <chipx86@chipx86.com>
parents:
7085
diff
changeset
|
119 extern void alias_dialog_blist_chat(GaimChat *); |
7879 | 120 extern void show_warn_dialog(GaimConnection *, const char *); |
9640 | 121 extern void gaim_gtkdialogs_new_im(GaimAccount *, const char *); |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
122 extern void show_im_dialog(); |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
123 extern void show_info_dialog(); |
8911 | 124 extern void show_log_dialog(); |
2435
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
125 extern void destroy_all_dialogs(); |
b4f2a53c0ee5
[gaim-migrate @ 2448]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2417
diff
changeset
|
126 extern void create_away_mess(GtkWidget *, void *); |
2906
538c58b43eff
[gaim-migrate @ 2919]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2883
diff
changeset
|
127 |
4157 | 128 /* Functions in session.c */ |
8601 | 129 extern void session_init(gchar *, gchar *, gchar *); |
4157 | 130 extern void session_end(); |
131 | |
4263 | 132 /* Functions in themes.c */ |
133 extern void smiley_themeize(GtkWidget *); | |
4298 | 134 extern void smiley_theme_probe(); |
4892 | 135 extern void load_smiley_theme(const char *file, gboolean load); |
7956 | 136 extern GSList *get_proto_smileys(const char *id); |
4263 | 137 |
2417 | 138 #endif /* _UI_H_ */ |