ooptimized code for 8bpp/PseudoColor
[wmaker-crm.git] / src / wcore.h
blob13399c9d5b3ff39b05e133637234001b14fad04d
1 /*
2 * Window Maker window manager
3 *
4 * Copyright (c) 1997, 1998 Alfredo K. Kojima
5 *
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307,
19 * USA.
23 #ifndef WMCORE_H_
24 #define WMCORE_H_
26 #include "screen.h"
28 typedef struct WStacking {
29 struct _WCoreWindow *above;
30 struct _WCoreWindow *under;
31 short window_level;
32 struct _WCoreWindow *child_of; /* owner for transient window */
33 } WStacking;
35 typedef struct _WCoreWindow {
36 Window window;
37 unsigned int width; /* size of the window */
38 unsigned int height;
39 WScreen *screen_ptr; /* ptr to screen of the window */
41 WObjDescriptor descriptor;
42 WStacking *stacking; /* window stacking information */
43 } WCoreWindow;
46 #include "pixmap.h"
47 WCoreWindow *wCoreCreateTopLevel(WScreen *screen, int x, int y, int width,
48 int height, int bwidth);
50 WCoreWindow *wCoreCreate(WCoreWindow *parent, int x, int y,
51 int width, int height);
52 void wCoreDestroy(WCoreWindow *core);
53 void wCoreConfigure(WCoreWindow *core, int req_x, int req_y,
54 int req_w, int req_h);
57 #endif