1
0
mirror of https://github.com/gryf/wmaker.git synced 2025-12-21 13:28:05 +01:00
This commit is contained in:
kojima
2005-03-11 21:51:49 +00:00
parent 9bd4abb288
commit 53db5fc4a5

96
src/wsmap.c Normal file
View File

@@ -0,0 +1,96 @@
#include "WindowMaker.h"
#include "window.h"
typedef struct {
WWindow *wwin;
WMLabel *mini;
} WSMWindow;
typedef struct {
WScreen *scr;
WMWindow *win;
WSMWindow *windows;
int windowCount;
int xcount, ycount;
int wswidth, wsheight;
} WWorkspaceMap;
#define WSMAP_DEFAULT_WIDTH 150
static WWorkspaceMap *createWorkspaceMap(WMScreen *scr, int xcount, int ycount)
{
WWorkspaceMap *wsm= wnew0(WWorkspaceMap, 1);
WMRect rect;
//
rect.width= 1024;
rect.height= 768;
wsm->win= WMCreateWindow(scr, "wsmap");
/* find out the ideal size of the mini-workspaces */
wsm->wswidth = WSMAP_DEFAULT_WIDTH;
wsm->wsheight = (wsm->wswidth*rect.height) / rect.width;
// check if it fits screen
wsm->xcount = xcount;
wsm->ycount = ycount;
return wsm;
}
static void handleEvent(WWorkspaceMap *map, XEvent *event)
{
switch (event->type)
{
}
}
void wShowWorkspaceMap(WScreen *scr)
{
}
Display *dpy;
int main(int argc, char **argv)
{
WWorkspaceMap *wsmap;
WMScreen *scr;
WMInitializeApplication("WSMap", &argc, argv);
dpy = XOpenDisplay("");
if (!dpy) {
wfatal("cant open display");
exit(0);
}
scr = WMCreateSimpleApplicationScreen(dpy);
wsmap= createWorkspaceMap(scr);
WMRealizeWidget(wsmap->win);
WMMapWidget(wsmap->win);
WMScreenMainLoop(scr);
return 0;
}