chiark / gitweb /
debian/changelog: start -4~
[vtwm.git] / iconmgr.h
1 /*
2  * Copyright 1989 Massachusetts Institute of Technology
3  *
4  * Permission to use, copy, modify, and distribute this software and its
5  * documentation for any purpose and without fee is hereby granted, provided
6  * that the above copyright notice appear in all copies and that both that
7  * copyright notice and this permission notice appear in supporting
8  * documentation, and that the name of M.I.T. not be used in advertising
9  * or publicity pertaining to distribution of the software without specific,
10  * written prior permission.  M.I.T. makes no representations about the
11  * suitability of this software for any purpose.  It is provided "as is"
12  * without express or implied warranty.
13  *
14  * M.I.T. DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE, INCLUDING ALL
15  * IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL M.I.T.
16  * BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
17  * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
18  * OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN 
19  * CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
20  */
21
22 /***********************************************************************
23  *
24  * $XConsortium: iconmgr.h,v 1.11 89/12/10 17:47:02 jim Exp $
25  *
26  * Icon Manager includes
27  *
28  * 09-Mar-89 Tom LaStrange              File Created
29  *
30  ***********************************************************************/
31
32 #ifndef _ICONMGR_
33 #define _ICONMGR_
34
35 typedef struct WList
36 {
37     struct WList *next;
38     struct WList *prev;
39     struct TwmWindow *twm;
40     struct IconMgr *iconmgr;
41     Window w;
42     Window icon;
43     int x, y, width, height;
44     int row, col;
45     int me;
46
47     /* djhjr - 4/19/96 */
48     ColorPair cp;
49     /* was Pixmap - djhjr - 10/30/02 */
50     Image *iconifypm;
51
52     Pixel fore, back, highlight;
53     unsigned top, bottom;
54     short active;
55     short down;
56 } WList;
57
58 typedef struct IconMgr
59 {
60     struct IconMgr *next;               /* pointer to the next icon manager */
61     struct IconMgr *prev;               /* pointer to the previous icon mgr */
62     struct IconMgr *lasti;              /* pointer to the last icon mgr */
63     struct WList *first;                /* first window in the list */
64     struct WList *last;                 /* last window in the list */
65     struct WList *active;               /* the active entry */
66     TwmWindow *twm_win;                 /* back pointer to the new parent */
67     struct ScreenInfo *scr;             /* the screen this thing is on */
68     Window w;                           /* this icon manager window */
69     char *geometry;                     /* geometry string */
70     char *name;
71     char *icon_name;
72     int x, y, width, height;
73     int columns, cur_rows, cur_columns;
74     int count;
75 } IconMgr;
76
77 extern int iconmgr_textx;
78 extern WList *DownIconManager;
79 extern void SetIconMgrPixmap();
80 extern void CreateIconManagers();
81 extern IconMgr *AllocateIconManager();
82 extern void MoveIconManager();
83 extern void JumpIconManager();
84 extern WList *AddIconManager();
85 extern void InsertInIconManager();
86 extern void RemoveFromIconManager();
87 extern void RemoveIconManager();
88 extern void ActiveIconManager();
89 extern void NotActiveIconManager();
90 extern void DrawIconManagerBorder();
91 extern void SortIconManager();
92 extern void PackIconManager();
93
94 /* djhjr - 5/19/98 */
95 #define VTWM_ICONMGR_CLASS "VTWM Icon Manager"
96
97 #endif /* _ICONMGR_ */