Sun, 21 Dec 2003 08:16:43 +0000
[gaim-migrate @ 8560]
Cleaned up the main function that builds the field request UI. It's a lot
easier to work with now.
|
5034
077678f7b048
[gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents:
5032
diff
changeset
|
1 | /** |
|
077678f7b048
[gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents:
5032
diff
changeset
|
2 | * @file ui.h Main GTK+ UI include file |
|
077678f7b048
[gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents:
5032
diff
changeset
|
3 | * @defgroup gtkui GTK+ User Interface |
|
077678f7b048
[gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents:
5032
diff
changeset
|
4 | * |
| 2417 | 5 | * gaim |
| 6 | * | |
| 7 | * Copyright (C) 1998-1999, Mark Spencer <markster@marko.net> | |
|
7060
717cbeb22b6d
[gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents:
6982
diff
changeset
|
8 | * |
| 2417 | 9 | * This program is free software; you can redistribute it and/or modify |
| 10 | * it under the terms of the GNU General Public License as published by | |
| 11 | * the Free Software Foundation; either version 2 of the License, or | |
| 12 | * (at your option) any later version. | |
| 13 | * | |
| 14 | * This program is distributed in the hope that it will be useful, | |
| 15 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 16 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 17 | * GNU General Public License for more details. | |
| 18 | * | |
| 19 | * You should have received a copy of the GNU General Public License | |
| 20 | * along with this program; if not, write to the Free Software | |
| 21 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
| 22 | */ | |
| 23 | ||
| 24 | #ifndef _UI_H_ | |
| 25 | #define _UI_H_ | |
| 26 | ||
|
5872
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5779
diff
changeset
|
27 | #include "account.h" |
|
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5779
diff
changeset
|
28 | #include "conversation.h" |
|
5779
8c8b8c8139c2
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
29 | |
|
8c8b8c8139c2
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
30 | /** |
|
8c8b8c8139c2
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
31 | * Our UI's identifier. |
|
8c8b8c8139c2
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
32 | */ |
|
8c8b8c8139c2
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
33 | #define GAIM_GTK_UI "gtk-gaim" |
|
8c8b8c8139c2
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
34 | |
|
8c8b8c8139c2
[gaim-migrate @ 6204]
Christian Hammond <chipx86@chipx86.com>
parents:
5773
diff
changeset
|
35 | |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2699
diff
changeset
|
36 | #define GAIM_DIALOG(x) x = gtk_window_new(GTK_WINDOW_TOPLEVEL); \ |
|
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2699
diff
changeset
|
37 | gtk_window_set_type_hint(GTK_WINDOW(x), GDK_WINDOW_TYPE_HINT_DIALOG) |
|
3554
2e890297b051
[gaim-migrate @ 3644]
Robert McQueen <robot101@debian.org>
parents:
3541
diff
changeset
|
38 | #define GAIM_WINDOW_ICONIFIED(x) (gdk_window_get_state(GTK_WIDGET(x)->window) & GDK_WINDOW_STATE_ICONIFIED) |
| 3517 | 39 | |
|
5105
3565a4c4de6a
[gaim-migrate @ 5468]
David J. Brigada <brigada@prism.net>
parents:
5034
diff
changeset
|
40 | /* This is backwards-compatibility code for old versions of GTK+ (2.2.1 and |
|
3565a4c4de6a
[gaim-migrate @ 5468]
David J. Brigada <brigada@prism.net>
parents:
5034
diff
changeset
|
41 | * earlier). It defines the new wrap behavior (unknown in earlier versions) |
|
3565a4c4de6a
[gaim-migrate @ 5468]
David J. Brigada <brigada@prism.net>
parents:
5034
diff
changeset
|
42 | * as the old (slightly buggy) wrap behavior. |
|
3565a4c4de6a
[gaim-migrate @ 5468]
David J. Brigada <brigada@prism.net>
parents:
5034
diff
changeset
|
43 | */ |
|
3565a4c4de6a
[gaim-migrate @ 5468]
David J. Brigada <brigada@prism.net>
parents:
5034
diff
changeset
|
44 | #ifndef GTK_WRAP_WORD_CHAR |
|
3565a4c4de6a
[gaim-migrate @ 5468]
David J. Brigada <brigada@prism.net>
parents:
5034
diff
changeset
|
45 | #define GTK_WRAP_WORD_CHAR GTK_WRAP_WORD |
|
3565a4c4de6a
[gaim-migrate @ 5468]
David J. Brigada <brigada@prism.net>
parents:
5034
diff
changeset
|
46 | #endif |
|
3565a4c4de6a
[gaim-migrate @ 5468]
David J. Brigada <brigada@prism.net>
parents:
5034
diff
changeset
|
47 | |
| 3473 | 48 | #define DEFAULT_FONT_FACE "Helvetica" |
|
2761
db48e3d8e208
[gaim-migrate @ 2774]
Decklin Foster <decklin@red-bean.com>
parents:
2725
diff
changeset
|
49 | |
| 3376 | 50 | |
|
2438
fcfcd515eebf
[gaim-migrate @ 2451]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2437
diff
changeset
|
51 | /* XXX CUI: away messages aren't really anything more than char* but we need two char*'s |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
52 | * for the UI so that people can name their away messages when they save them. So these |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
53 | * are really a UI function and struct away_message should be removed from the core. */ |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
54 | struct away_message { |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
55 | char name[80]; |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
56 | char message[2048]; |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
57 | }; |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
58 | |
| 2986 | 59 | |
| 60 | ||
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
61 | /* this is used for queuing messages received while away. This is really a UI function |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
62 | * which is why the struct is here. */ |
| 4608 | 63 | |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
64 | struct queued_message { |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
65 | char name[80]; |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
66 | char *message; |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
67 | time_t tm; |
|
5563
d5a7852aa0cb
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
68 | GaimAccount *account; |
|
6621
2a18ef3e5224
[gaim-migrate @ 7145]
Robert McQueen <robot101@debian.org>
parents:
6479
diff
changeset
|
69 | GaimMessageFlags flags; |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
70 | }; |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
71 | |
| 4288 | 72 | struct smiley_theme { |
| 73 | char *path; | |
| 74 | char *name; | |
| 75 | char *desc; | |
| 76 | char *icon; | |
| 77 | char *author; | |
| 78 | ||
| 79 | struct smiley_list *list; | |
| 80 | }; | |
| 81 | ||
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
82 | /* Globals in aim.c */ |
|
2493
ec90aa48cd51
[gaim-migrate @ 2506]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2442
diff
changeset
|
83 | extern GtkWidget *mainwindow; |
| 4687 | 84 | extern int docklet_count; |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
85 | |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
86 | /* Globals in away.c */ |
|
6479
ed29d5b112b5
[gaim-migrate @ 6992]
Robert McQueen <robot101@debian.org>
parents:
6465
diff
changeset
|
87 | extern GSList *away_messages; |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
88 | extern struct away_message *awaymessage; |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
89 | extern GtkWidget *awaymenu; |
| 4412 | 90 | extern GtkWidget *awayqueue; |
| 91 | extern GtkListStore *awayqueuestore; | |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
92 | |
| 2417 | 93 | /* Globals in dialog.c */ |
|
2763
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
94 | extern char fontxfld[256]; |
| 3367 | 95 | extern GtkWidget *fgcseld; |
| 96 | extern GtkWidget *bgcseld; | |
| 2417 | 97 | |
|
4157
5d3d2f6517ae
[gaim-migrate @ 4385]
Robert McQueen <robot101@debian.org>
parents:
4124
diff
changeset
|
98 | /* Globals in session.c */ |
|
5d3d2f6517ae
[gaim-migrate @ 4385]
Robert McQueen <robot101@debian.org>
parents:
4124
diff
changeset
|
99 | extern gboolean session_managed; |
|
5d3d2f6517ae
[gaim-migrate @ 4385]
Robert McQueen <robot101@debian.org>
parents:
4124
diff
changeset
|
100 | |
| 4288 | 101 | /* Globals in themes.c */ |
| 102 | extern struct smiley_theme *current_smiley_theme; | |
| 103 | extern GSList *smiley_themes; | |
| 104 | ||
| 105 | ||
| 2417 | 106 | /* Functions in about.c */ |
| 107 | extern void show_about(GtkWidget *, void *); | |
| 108 | ||
|
5872
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5779
diff
changeset
|
109 | /* Functions in main.c */ |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
110 | extern void show_login(); |
|
5872
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5779
diff
changeset
|
111 | extern void gaim_setup(GaimConnection *); |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
112 | |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
113 | /* Functions in away.c */ |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
114 | extern void rem_away_mess(GtkWidget *, struct away_message *); |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
115 | extern void do_away_message(GtkWidget *, struct away_message *); |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
116 | extern void do_away_menu(); |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
117 | extern void toggle_away_queue(); |
|
4274
2309c547cd6e
[gaim-migrate @ 4525]
Robert McQueen <robot101@debian.org>
parents:
4263
diff
changeset
|
118 | extern void purge_away_queue(GSList**); |
|
5773
ff7abd16aaf1
[gaim-migrate @ 6198]
Christian Hammond <chipx86@chipx86.com>
parents:
5772
diff
changeset
|
119 | extern void do_im_back(GtkWidget *w, GtkWidget *x); |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
120 | |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
121 | /* Functions in dialogs.c */ |
| 6695 | 122 | extern void alias_dialog_bud(GaimBuddy *); |
| 7245 | 123 | extern void alias_dialog_contact(GaimContact *); |
|
7118
280b3b85a28a
[gaim-migrate @ 7685]
Christian Hammond <chipx86@chipx86.com>
parents:
7085
diff
changeset
|
124 | extern void alias_dialog_blist_chat(GaimChat *); |
|
7879
8e5689b82138
[gaim-migrate @ 8533]
Mark Doliner <markdoliner@pidgin.im>
parents:
7757
diff
changeset
|
125 | extern void show_warn_dialog(GaimConnection *, const char *); |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
126 | extern void show_im_dialog(); |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
127 | extern void show_info_dialog(); |
|
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
128 | extern void destroy_all_dialogs(); |
|
5676
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5633
diff
changeset
|
129 | extern void show_fgcolor_dialog(GaimConversation *c, GtkWidget *color); |
|
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5633
diff
changeset
|
130 | extern void show_bgcolor_dialog(GaimConversation *c, GtkWidget *color); |
|
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5633
diff
changeset
|
131 | extern void cancel_fgcolor(GtkWidget *widget, GaimConversation *c); |
|
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5633
diff
changeset
|
132 | extern void cancel_bgcolor(GtkWidget *widget, GaimConversation *c); |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
133 | extern void create_away_mess(GtkWidget *, void *); |
|
5676
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5633
diff
changeset
|
134 | extern void show_insert_link(GtkWidget *,GaimConversation *); |
|
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5633
diff
changeset
|
135 | extern void show_smiley_dialog(GaimConversation *, GtkWidget *); |
|
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5633
diff
changeset
|
136 | extern void close_smiley_dialog(GtkWidget *widget, GaimConversation *c); |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
137 | extern void set_smiley_array(GtkWidget *widget, int smiley_type); |
|
5676
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5633
diff
changeset
|
138 | extern void insert_smiley_text(GtkWidget *widget, GaimConversation *c); |
|
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5633
diff
changeset
|
139 | extern void cancel_link(GtkWidget *, GaimConversation *); |
|
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5633
diff
changeset
|
140 | extern void show_font_dialog(GaimConversation *c, GtkWidget *font); |
|
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5633
diff
changeset
|
141 | extern void cancel_font(GtkWidget *widget, GaimConversation *c); |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
142 | extern void apply_font(GtkWidget *widget, GtkFontSelection *fontsel); |
| 3379 | 143 | extern void destroy_fontsel(GtkWidget *w, gpointer d); |
|
4359
cf899ee07d1d
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4349
diff
changeset
|
144 | extern void join_chat(); |
|
2435
dd274490e14b
[gaim-migrate @ 2448]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2417
diff
changeset
|
145 | |
|
2906
6d1a38606840
[gaim-migrate @ 2919]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2883
diff
changeset
|
146 | /* Functions in server.c */ |
|
6d1a38606840
[gaim-migrate @ 2919]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2883
diff
changeset
|
147 | /* server.c is in desperate need need of a split */ |
|
6d1a38606840
[gaim-migrate @ 2919]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2883
diff
changeset
|
148 | extern int find_queue_total_by_name(char *); |
|
6d1a38606840
[gaim-migrate @ 2919]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2883
diff
changeset
|
149 | |
|
4157
5d3d2f6517ae
[gaim-migrate @ 4385]
Robert McQueen <robot101@debian.org>
parents:
4124
diff
changeset
|
150 | /* Functions in session.c */ |
|
5d3d2f6517ae
[gaim-migrate @ 4385]
Robert McQueen <robot101@debian.org>
parents:
4124
diff
changeset
|
151 | extern void session_init(gchar *, gchar *); |
|
5d3d2f6517ae
[gaim-migrate @ 4385]
Robert McQueen <robot101@debian.org>
parents:
4124
diff
changeset
|
152 | extern void session_end(); |
|
5d3d2f6517ae
[gaim-migrate @ 4385]
Robert McQueen <robot101@debian.org>
parents:
4124
diff
changeset
|
153 | |
| 4263 | 154 | /* Functions in themes.c */ |
| 155 | extern void smiley_themeize(GtkWidget *); | |
| 4298 | 156 | extern void smiley_theme_probe(); |
| 4892 | 157 | extern void load_smiley_theme(const char *file, gboolean load); |
| 4667 | 158 | extern GSList *get_proto_smileys(int protocol); |
| 4263 | 159 | |
| 2417 | 160 | #endif /* _UI_H_ */ |