src/gnome_applet_mgr.h

Mon, 20 Nov 2000 07:24:18 +0000

author
Eric Warmenhoven <warmenhoven@yahoo.com>
date
Mon, 20 Nov 2000 07:24:18 +0000
changeset 1106
7f3041b0632a
parent 1030
b9fa9eadc0a4
permissions
-rw-r--r--

[gaim-migrate @ 1116]
lots of changes.

buddy.c: just in general tried to get things to work better. moving things in the edit list window and signing off should be handled better in the main buddy list window (watch out for flashes).

gaim.h: removed toc-specific things and moved them to toc.c and rvous.c as needed.

gtkhtml.c: possible fix for AOL 6.0 problems (I wasn't able to reproduce the problem before or after the fix, but i fixed what i think might have been causing the problem).

multi.c: moved LOGIN_STEPS from gaim.h here and actually use it now

oscar.c: moved an oscar-specific struct definition from gaim.h here and also handle problems better

perl.c: fix for stupid problem

rvous.c: first pass at attempt to be able to remove toc.c and rvous.c (though this will never happen; gaim will support toc as long as aol does) without cruft. gaim is now only dependent on toc.c and rvous.c for toc_build_config and parse_toc_buddy_list, which gaim needs to save and read its buddy list.

toc.c: rewrote the signin process so that the read()'s won't block. it's not actually a non-blocking read; it's just that it won't ever get to the read until there's data to be read (thanks to the gdk_input watcher). this means the cancel button should work after it's connected, but it's still not a non-blocking connect.

1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
1 /**************************************************************
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
2 **
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
3 ** GaimGnomeAppletMgr
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
4 ** Author - Quinticent (John Palmieri: johnp@martianrock.com)
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
5 **
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
6 ** Purpose - Takes over the task of managing the GNOME applet
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
7 ** code and provides a centralized codebase for
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
8 ** GNOME integration for Gaim.
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
9 **
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
10 ** Legal Stuff -
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
11 **
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
12 ** gaim
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
13 **
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
14 ** Copyright (C) 1998-1999, Mark Spencer <markster@marko.net>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
15 **
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
16 ** This program is free software; you can redistribute it and/or modify
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
17 ** it under the terms of the GNU General Public License as published by
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
18 ** the Free Software Foundation; either version 2 of the License, or
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
19 ** (at your option) any later version.
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
20 **
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
21 ** This program is distributed in the hope that it will be useful,
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
22 ** but WITHOUT ANY WARRANTY; without even the implied warranty of
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
23 ** MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
24 ** GNU General Public License for more details.
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
25 **
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
26 ** You should have received a copy of the GNU General Public License
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
27 ** along with this program; if not, write to the Free Software
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
28 ** Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
29 **
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
30 **************************************************************/
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
31 #ifndef _GAIMGNOMEAPPLETMGR_H_
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
32 #define _GAIMGNOMEAPPLETMGR_H_
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
33 #ifdef USE_APPLET
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
34
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
35 #include <gnome.h>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
36 #include <gtk/gtk.h>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
37 #include <stdio.h>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
38 #include <string.h>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
39 #include <stdarg.h>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
40 #include <stdlib.h>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
41 #include <applet-widget.h>
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
42
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
43 enum gaim_user_states {
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
44 offline = 0,
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
45 signing_on,
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
46 online,
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
47 away
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
48 };
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
49
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
50
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
51 #define _MSG_OFFLINE_ "Offline"
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
52 #define _MSG_CONNECT_ "Connecting"
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
53 #define _MSG_ONLINE_ "Online"
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
54 #define _MSG_FONT_ "-adobe-helvetica-medium-r-normal-*-*-80-*-*-p-*-iso8859-1"
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
55
82
33bc54b6c16a [gaim-migrate @ 92]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 43
diff changeset
56 #define GAIM_GNOME_DEVIL_OFFLINE "gaim/gnome/devil-offline.png"
33bc54b6c16a [gaim-migrate @ 92]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 43
diff changeset
57 #define GAIM_GNOME_DEVIL_CONNECT "gaim/gnome/devil-connect.png"
33bc54b6c16a [gaim-migrate @ 92]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 43
diff changeset
58 #define GAIM_GNOME_DEVIL_ONLINE "gaim/gnome/devil-online.png"
1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
59
82
33bc54b6c16a [gaim-migrate @ 92]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 43
diff changeset
60 #define GAIM_GNOME_PENGUIN_OFFLINE "gaim/gnome/penguin-offline.png"
33bc54b6c16a [gaim-migrate @ 92]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 43
diff changeset
61 #define GAIM_GNOME_PENGUIN_CONNECT "gaim/gnome/penguin-connect.png"
33bc54b6c16a [gaim-migrate @ 92]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 43
diff changeset
62 #define GAIM_GNOME_PENGUIN_ONLINE "gaim/gnome/penguin-online.png"
1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
63
776
445adc75c091 [gaim-migrate @ 786]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 746
diff changeset
64 #define GAIM_GNOME_OFFLINE_ICON "apple-red.png"
445adc75c091 [gaim-migrate @ 786]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 746
diff changeset
65 #define GAIM_GNOME_CONNECT_ICON "gnome-battery.png"
445adc75c091 [gaim-migrate @ 786]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 746
diff changeset
66 #define GAIM_GNOME_ONLINE_ICON "apple-green.png"
445adc75c091 [gaim-migrate @ 786]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 746
diff changeset
67
411
4e2ed8c4c0f8 [gaim-migrate @ 421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 342
diff changeset
68 extern gint init_applet_mgr();
4e2ed8c4c0f8 [gaim-migrate @ 421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 342
diff changeset
69 extern void applet_do_signon(AppletWidget *, gpointer);
4e2ed8c4c0f8 [gaim-migrate @ 421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 342
diff changeset
70 extern void make_buddy();
4e2ed8c4c0f8 [gaim-migrate @ 421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 342
diff changeset
71 extern void cancel_logon();
4e2ed8c4c0f8 [gaim-migrate @ 421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 342
diff changeset
72 extern gint applet_destroy_buddy(GtkWidget *, GdkEvent *, gpointer *);
1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
73
746
16a29fe20b65 [gaim-migrate @ 756]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 411
diff changeset
74 extern void set_user_state( enum gaim_user_states state );
1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
75
411
4e2ed8c4c0f8 [gaim-migrate @ 421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 342
diff changeset
76 extern void insert_applet_away();
4e2ed8c4c0f8 [gaim-migrate @ 421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 342
diff changeset
77 extern void remove_applet_away();
1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
78
411
4e2ed8c4c0f8 [gaim-migrate @ 421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 342
diff changeset
79 extern void update_pixmaps();
4e2ed8c4c0f8 [gaim-migrate @ 421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 342
diff changeset
80 extern void applet_set_tooltips(char *);
1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
81
746
16a29fe20b65 [gaim-migrate @ 756]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 411
diff changeset
82 extern gboolean applet_buddy_show;
16a29fe20b65 [gaim-migrate @ 756]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 411
diff changeset
83
1
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
84 #endif /*USE_APPLET*/
efe077a7e70d [gaim-migrate @ 10]
Rob Flynn <gaim@robflynn.com>
parents:
diff changeset
85 #endif /*_GAIMGNOMEAPPLETMGR_H_*/

mercurial