JWM Source Documentation
border.h
Go to the documentation of this file.
00001 00010 #ifndef BORDER_H 00011 #define BORDER_H 00012 00013 #include "gradient.h" 00014 00015 struct ClientNode; 00016 00018 typedef enum { 00019 BP_CLOSE, 00020 BP_MINIMIZE, 00021 BP_MAXIMIZE, 00022 BP_MAXIMIZE_ACTIVE, 00023 BP_COUNT 00024 } BorderPixmapType; 00025 00027 typedef enum { 00028 BA_NONE = 0, 00029 BA_RESIZE = 1, 00030 BA_MOVE = 2, 00031 BA_CLOSE = 3, 00032 BA_MAXIMIZE = 4, 00033 BA_MINIMIZE = 5, 00034 BA_MENU = 6, 00035 BA_RESIZE_N = 0x10, 00036 BA_RESIZE_S = 0x20, 00037 BA_RESIZE_E = 0x40, 00038 BA_RESIZE_W = 0x80 00039 } BorderActionType; 00040 00042 void InitializeBorders(); 00043 void StartupBorders(); 00044 void ShutdownBorders(); 00045 void DestroyBorders(); 00054 BorderActionType GetBorderActionType(const struct ClientNode *np, int x, int y); 00055 00060 void DrawBorder(const struct ClientNode *np, const XExposeEvent *expose); 00061 00065 int GetBorderIconSize(); 00066 00074 void GetBorderSize(const struct ClientNode *np, 00075 int *north, int *south, int *east, int *west); 00076 00080 void SetBorderWidth(const char *str); 00081 00085 void SetTitleHeight(const char *str); 00086 00088 void ExposeCurrentDesktop(); 00089 00093 void ResetRoundedRectWindow(Window w); 00094 00100 void ShapeRoundedRectWindow(Window w, int width, int height); 00101 00106 void SetButtonMask(BorderPixmapType pt, const char *filename); 00107 00109 void DrawRoundedRectangle(Drawable d, GC gc, int x, int y, 00110 int width, int height, int radius); 00111 00113 void FillRoundedRectangle(Drawable d, GC gc, int x, int y, 00114 int width, int height, int radius); 00115 00116 #endif /* BORDER_H */ 00117