dockapps/libwmgeneral/wmgeneral.h
Rodolfo García Peñas (kix) 9b5756d5bd New library wmgeneral
This patch includes the library wmgeneral. The wmgeneral library
is used in a lot of dockapps:

$ find . -name wmgeneral
./wmkeys/wmgeneral
./wmtime/wmgeneral
./wmtz/wmgeneral
./wmsm.app/wmgeneral
./wmcpufreq/wmgeneral
./wmtv/src/wmgeneral
./wmSMPmon/wmgeneral
./wmckgmail/wmgeneral
./wmifs/wmgeneral
./wmbiff/wmgeneral
./wmfsm/wmgeneral
./wmsun/wmgeneral
./wmmon/wmgeneral
./wmitime/wmgeneral
./wmppp.app/wmgeneral

So, any change in the wmgeneral needs change a lot of dockapps.

I used the wmmon dockapp to move the wmgeneral and then I adjust the
wmmon to use the library. The library must be installed in the system
to build wmmon (wmmon uses the .h files) and is needed to run wmmon
(wmmon uses the libwmgeneral.so shared library).

I did not include any Changelog/README/... file to announce the change
in the libwmgeneral folder.

Signed-off-by: Rodolfo García Peñas (kix) <kix@kix.es>
2015-08-13 19:33:19 +01:00

90 lines
2.2 KiB
C

/*
wmgeneral was taken from wmppp.
It has a lot of routines which most of the wm* programs use.
------------------------------------------------------------
Copyright (C) 1998 Martijn Pieterse (pieterse@xs4all.nl)
This program is free software; you can redistribute it and/or
modify it under the terms of the GNU General Public License
as published by the Free Software Foundation; either version 2
of the License, or (at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA
02110-1301, USA.
*/
#ifndef WMGENERAL_H_INCLUDED
#define WMGENERAL_H_INCLUDED
#include <X11/X.h> /* for Pixmap */
#include <X11/Xlib.h> /* for Display */
#include <X11/xpm.h> /* for XpmAttributes */
/***********/
/* Defines */
/***********/
#define MAX_MOUSE_REGION (16)
/************/
/* Typedefs */
/************/
struct _rckeys {
const char *label;
char **var;
};
typedef struct _rckeys rckeys;
struct _rckeys2 {
const char *family;
const char *label;
char **var;
};
typedef struct _rckeys2 rckeys2;
typedef struct {
Pixmap pixmap;
Pixmap mask;
XpmAttributes attributes;
} XpmIcon;
/*******************/
/* Global variable */
/*******************/
Display *display;
/***********************/
/* Function Prototypes */
/***********************/
void AddMouseRegion(int index, int left, int top, int right, int bottom);
int CheckMouseRegion(int x, int y);
void openXwindow(int argc, char *argv[], char **, char *, int, int);
void RedrawWindow(void);
void RedrawWindowXY(int x, int y);
void createXBMfromXPM(char *, char **, int, int);
void copyXPMArea(int, int, int, int, int, int);
void copyXBMArea(int, int, int, int, int, int);
void setMaskXY(int, int);
void parse_rcfile(const char *, rckeys *);
#endif