diff options
| author | Dana Jansens <danakj@orodu.net> | 2003-01-23 00:08:50 +0000 |
|---|---|---|
| committer | Dana Jansens <danakj@orodu.net> | 2003-01-23 00:08:50 +0000 |
| commit | 17d63184998b747e1a0554dc4364a36238b039e1 (patch) | |
| tree | 0b02dc84d79a4d63a2e1e5fcee0adc0c7362925c /otk/renderstyle.cc | |
| parent | 11f59d7925068357e24ca743c23019f671e6a5d7 (diff) | |
hardcode some bitmap masks
Diffstat (limited to 'otk/renderstyle.cc')
| -rw-r--r-- | otk/renderstyle.cc | 83 |
1 files changed, 83 insertions, 0 deletions
diff --git a/otk/renderstyle.cc b/otk/renderstyle.cc index 22622931..8361ce4d 100644 --- a/otk/renderstyle.cc +++ b/otk/renderstyle.cc @@ -5,6 +5,8 @@ #endif // HAVE_CONFIG_H #include "renderstyle.hh" +#include "display.hh" +#include "screeninfo.hh" namespace otk { @@ -166,6 +168,82 @@ RenderStyle::RenderStyle(int screen, const std::string &stylefile) 0x0); _label_font = new Font(_screen, "Arial,Sans-9:bold", true, 1, 0x40); + + XImage *image = XCreateImage(**display, + display->screenInfo(_screen)->visual(), + 2, XYBitmap, 0, NULL, 8, 8, 0, 0); + assert(image); + + _max_mask = new PixmapMask(); + _max_mask->w = _max_mask->h = 8; + { + unsigned char data[] = { + 0,1,1,1,1,1,1,0, + 1,1,1,1,1,1,1,1, + 1,1,0,0,0,0,1,1, + 1,1,0,0,0,0,1,1, + 1,1,0,0,0,0,1,1, + 1,1,0,0,0,0,1,1, + 1,1,1,1,1,1,1,1, + 0,1,1,1,1,1,1,0 }; + image->data = (char*)data; + XPutImage(**display, _max_mask->mask, DefaultGC(**display, _screen), + image, 0, 0, 0, 0, 8, 8); + } + + _icon_mask = new PixmapMask(); + _icon_mask->w = _icon_mask->h = 8; + { + unsigned char data[] = { + 0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0, + 1,1,0,0,0,0,1,1, + 1,1,1,0,0,1,1,1, + 0,1,1,1,1,1,1,0, + 0,0,1,1,1,1,0,0, + 0,0,0,1,1,0,0,0, + 0,0,0,0,0,0,0,0 }; + image->data = (char*)data; + XPutImage(**display, _icon_mask->mask, DefaultGC(**display, _screen), + image, 0, 0, 0, 0, 8, 8); + } + + _stick_mask = new PixmapMask(); + _stick_mask->w = _stick_mask->h = 8; + { + unsigned char data[] = { + 0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0, + 0,0,0,1,1,0,0,0, + 0,0,1,1,1,1,0,0, + 0,0,1,1,1,1,0,0, + 0,0,0,1,1,0,0,0, + 0,0,0,0,0,0,0,0, + 0,0,0,0,0,0,0,0 }; + image->data = (char*)data; + XPutImage(**display, _stick_mask->mask, DefaultGC(**display, _screen), + image, 0, 0, 0, 0, 8, 8); + } + + _close_mask = new PixmapMask(); + _close_mask->w = _close_mask->h = 8; + { + unsigned char data[] = { + 1,1,0,0,0,0,1,1, + 1,1,1,0,0,1,1,1, + 0,1,1,1,1,1,1,0, + 0,0,1,1,1,1,0,0, + 0,0,1,1,1,1,0,0, + 0,1,1,1,1,1,1,0, + 1,1,1,0,0,1,1,1, + 1,1,0,0,0,0,1,1 }; + image->data = (char*)data; + XPutImage(**display, _close_mask->mask, DefaultGC(**display, _screen), + image, 0, 0, 0, 0, 8, 8); + } + + image->data = NULL; + XDestroyImage(image); } RenderStyle::~RenderStyle() @@ -199,6 +277,11 @@ RenderStyle::~RenderStyle() delete _grip_unfocus; delete _label_font; + + delete _max_mask; + delete _icon_mask; + delete _stick_mask; + delete _close_mask; } } |
