src/gtkticker.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 430
39105dbbbc21
child 1114
a1e5c60bd23d
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.

430
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
1 /* GTK - The GIMP Toolkit
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
2 * Copyright (C) 1995-1997 Peter Mattis, Spencer Kimball and Josh MacDonald
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
3 *
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
4 * This library is free software; you can redistribute it and/or
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
5 * modify it under the terms of the GNU Library General Public
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
6 * License as published by the Free Software Foundation; either
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
7 * version 2 of the License, or (at your option) any later version.
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
8 *
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
9 * This library is distributed in the hope that it will be useful,
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
10 * but WITHOUT ANY WARRANTY; without even the implied warranty of
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
11 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
12 * Library General Public License for more details.
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
13 *
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
14 * You should have received a copy of the GNU Library General Public
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
15 * License along with this library; if not, write to the
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
16 * Free Software Foundation, Inc., 59 Temple Place - Suite 330,
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
17 * Boston, MA 02111-1307, USA.
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
18 */
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
19
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
20 /*
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
21 * Copyright 2000 Syd Logan
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
22 */
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
23
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
24 #ifndef __GTK_TICKER_H__
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
25 #define __GTK_TICKER_H__
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
26
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
27
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
28 #include <gdk/gdk.h>
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
29 #include <gtk/gtkcontainer.h>
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
30
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
31
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
32 #ifdef __cplusplus
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
33 extern "C" {
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
34 #endif /* __cplusplus */
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
35
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
36 #define GTK_TYPE_TICKER (gtk_ticker_get_type ())
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
37 #define GTK_TICKER(obj) (GTK_CHECK_CAST ((obj), GTK_TYPE_TICKER, GtkTicker))
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
38 #define GTK_TICKER_CLASS(klass) (GTK_CHECK_CLASS_CAST ((klass), GTK_TYPE_TICKER, GtkTickerClass))
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
39 #define GTK_IS_TICKER(obj) (GTK_CHECK_TYPE ((obj), GTK_TYPE_TICKER))
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
40 #define GTK_IS_TICKER_CLASS(klass) (GTK_CHECK_CLASS_TYPE ((klass), GTK_TYPE_TICKER))
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
41
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
42
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
43 typedef struct _GtkTicker GtkTicker;
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
44 typedef struct _GtkTickerClass GtkTickerClass;
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
45 typedef struct _GtkTickerChild GtkTickerChild;
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
46
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
47 // XXX children move from right to left, should be able to go other way
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
48
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
49 struct _GtkTicker
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
50 {
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
51 GtkContainer container;
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
52 guint interval; // how often to scootch
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
53 guint spacing; // inter-child horizontal spacing
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
54 guint scootch; // how many pixels to move each scootch
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
55 gint timer; // timer object
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
56 guint total; // total width of widgets
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
57 guint width; // width of containing window
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
58 gboolean dirty;
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
59 GList *children;
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
60 };
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
61
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
62 struct _GtkTickerClass
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
63 {
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
64 GtkContainerClass parent_class;
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
65 };
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
66
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
67 struct _GtkTickerChild
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
68 {
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
69 GtkWidget *widget;
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
70 gint x; // current position
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
71 gint offset; // offset in list
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
72 };
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
73
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
74
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
75 GtkType gtk_ticker_get_type (void);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
76 GtkWidget* gtk_ticker_new (void);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
77 void gtk_ticker_add (GtkTicker *ticker,
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
78 GtkWidget *widget);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
79 void gtk_ticker_remove (GtkTicker *ticker,
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
80 GtkWidget *widget);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
81 void gtk_ticker_set_interval (GtkTicker *ticker,
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
82 gint interval);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
83 guint gtk_ticker_get_interval (GtkTicker *ticker);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
84 void gtk_ticker_set_spacing (GtkTicker *ticker,
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
85 gint spacing);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
86 guint gtk_ticker_get_spacing (GtkTicker *ticker);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
87 void gtk_ticker_set_scootch (GtkTicker *ticker,
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
88 gint scootch);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
89 guint gtk_ticker_get_scootch (GtkTicker *ticker);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
90 void gtk_ticker_start_scroll (GtkTicker *ticker);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
91 void gtk_ticker_stop_scroll (GtkTicker *ticker);
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
92
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
93 #ifdef __cplusplus
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
94 }
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
95 #endif /* __cplusplus */
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
96
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
97
39105dbbbc21 [gaim-migrate @ 440]
Syd Logan <slogan@users.sourceforge.net>
parents:
diff changeset
98 #endif /* __GTK_TICKER_H__ */

mercurial