plugins/win32/winprefs/gtkappbar.h

Fri, 28 Jan 2005 05:01:24 +0000

author
Daniel Atallah <datallah@pidgin.im>
date
Fri, 28 Jan 2005 05:01:24 +0000
changeset 10550
ba4492f86ce3
parent 6436
f2bf79a9db81
permissions
-rw-r--r--

[gaim-migrate @ 11924]
This should fix the annoying problem of the docked buddy list stealing screen real estate when it is hidden. Turns out it was actually using the section of the screen, you just couldn't see it. I think this is the last of the bugs that I introduced into the docking stuff.

6409
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
1 /*
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
2 * gaim - WinGaim Options Plugin
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
3 *
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
4 * File: gtkappbar.h
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
5 * Date: August 2, 2003
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
6 * Description: Appbar functionality for Windows GTK+ applications
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
7 *
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
8 * Copyright (C) 2003, Herman Bloggs <hermanator12002@yahoo.com>
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
9 *
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
10 * This program is free software; you can redistribute it and/or modify
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
11 * it under the terms of the GNU General Public License as published by
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
12 * the Free Software Foundation; either version 2 of the License, or
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
13 * (at your option) any later version.
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
14 *
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
15 * This program is distributed in the hope that it will be useful,
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
16 * but WITHOUT ANY WARRANTY; without even the implied warranty of
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
17 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
18 * GNU General Public License for more details.
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
19 *
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
20 * You should have received a copy of the GNU General Public License
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
21 * along with this program; if not, write to the Free Software
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
22 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
23 *
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
24 */
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
25 #ifndef _GTKAPPBAR_H_
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
26 #define _GTKAPPBAR_H_
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
27
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
28 typedef struct {
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
29 GtkWidget *win;
10550
ba4492f86ce3 [gaim-migrate @ 11924]
Daniel Atallah <datallah@pidgin.im>
parents: 6436
diff changeset
30 /** The rectangle of the screen area used for docking */
6409
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
31 RECT docked_rect;
10550
ba4492f86ce3 [gaim-migrate @ 11924]
Daniel Atallah <datallah@pidgin.im>
parents: 6436
diff changeset
32 /** The height of the window prior to docking */
6409
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
33 UINT undocked_height;
10550
ba4492f86ce3 [gaim-migrate @ 11924]
Daniel Atallah <datallah@pidgin.im>
parents: 6436
diff changeset
34 /** The side of the screen to which the window is docked*/
6409
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
35 UINT side;
10550
ba4492f86ce3 [gaim-migrate @ 11924]
Daniel Atallah <datallah@pidgin.im>
parents: 6436
diff changeset
36 /** Is the window currently docked? */
6409
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
37 gboolean docked;
10550
ba4492f86ce3 [gaim-migrate @ 11924]
Daniel Atallah <datallah@pidgin.im>
parents: 6436
diff changeset
38 /** Is the window currently in the process of docking? */
6409
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
39 gboolean docking;
10550
ba4492f86ce3 [gaim-migrate @ 11924]
Daniel Atallah <datallah@pidgin.im>
parents: 6436
diff changeset
40 /** Is the window currently registered as an appbar */
6409
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
41 gboolean registered;
10550
ba4492f86ce3 [gaim-migrate @ 11924]
Daniel Atallah <datallah@pidgin.im>
parents: 6436
diff changeset
42 /** Callback functions to notify of dock state change */
6436
f2bf79a9db81 [gaim-migrate @ 6944]
Herman Bloggs <herman@bluedigits.com>
parents: 6409
diff changeset
43 GList *dock_cbs;
10550
ba4492f86ce3 [gaim-migrate @ 11924]
Daniel Atallah <datallah@pidgin.im>
parents: 6436
diff changeset
44 /** Is the window currently iconized? */
ba4492f86ce3 [gaim-migrate @ 11924]
Daniel Atallah <datallah@pidgin.im>
parents: 6436
diff changeset
45 gboolean iconized;
6409
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
46 } GtkAppBar;
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
47
6436
f2bf79a9db81 [gaim-migrate @ 6944]
Herman Bloggs <herman@bluedigits.com>
parents: 6409
diff changeset
48 typedef void (*GtkAppBarDockCB)(gboolean);
f2bf79a9db81 [gaim-migrate @ 6944]
Herman Bloggs <herman@bluedigits.com>
parents: 6409
diff changeset
49
6409
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
50 GtkAppBar *gtk_appbar_add(GtkWidget *win);
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
51 void gtk_appbar_remove(GtkAppBar *ab);
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
52 void gtk_appbar_dock(GtkAppBar *ab, UINT side);
6436
f2bf79a9db81 [gaim-migrate @ 6944]
Herman Bloggs <herman@bluedigits.com>
parents: 6409
diff changeset
53 void gtk_appbar_add_dock_cb(GtkAppBar *ab, GtkAppBarDockCB dock_cb);
6409
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
54
ea9ba622db3f [gaim-migrate @ 6915]
Herman Bloggs <herman@bluedigits.com>
parents:
diff changeset
55 #endif /* _GTKAPPBAR_H_ */

mercurial