00001 // Copyright (c) 2003 - 2004 Anselm R. Garbe <anselmg at t-online.de> 00002 // See ../LICENSE.txt for license details. 00003 // 00004 // $Id: cursors.cpp 7 2007-05-24 11:03:53Z eg1981 $ 00005 00006 extern "C" { 00007 #include <X11/cursorfont.h> 00008 } 00009 00010 #include "cursors.h" 00011 00012 #include "kernel.h" 00013 #include "ncwm.h" 00014 #include "xcore.h" 00015 00016 Cursor Cursors::NORMAL_CURSOR = 0; 00017 Cursor Cursors::RESIZE_LEFT_CURSOR = 0; 00018 Cursor Cursors::RESIZE_RIGHT_CURSOR = 0; 00019 Cursor Cursors::RESIZE_UP_CURSOR = 0; 00020 Cursor Cursors::RESIZE_DOWN_CURSOR = 0; 00021 00022 Cursor Cursors::RESIZE_NORTH_WEST_CURSOR = 0; 00023 Cursor Cursors::RESIZE_NORTH_EAST_CURSOR = 0; 00024 Cursor Cursors::RESIZE_SOUTH_EAST_CURSOR = 0; 00025 Cursor Cursors::RESIZE_SOUTH_WEST_CURSOR = 0; 00026 00027 bool Cursors::initialized_ = false; 00028 00029 void Cursors::cleanup() { 00030 00031 XCORE->freeCursor(NORMAL_CURSOR); 00032 XCORE->freeCursor(RESIZE_LEFT_CURSOR); 00033 XCORE->freeCursor(RESIZE_RIGHT_CURSOR); 00034 XCORE->freeCursor(RESIZE_UP_CURSOR); 00035 XCORE->freeCursor(RESIZE_DOWN_CURSOR); 00036 00037 XCORE->freeCursor(RESIZE_NORTH_WEST_CURSOR); 00038 XCORE->freeCursor(RESIZE_NORTH_EAST_CURSOR); 00039 XCORE->freeCursor(RESIZE_SOUTH_WEST_CURSOR); 00040 XCORE->freeCursor(RESIZE_SOUTH_EAST_CURSOR); 00041 } 00042 00043 void Cursors::initCursors() 00044 { 00045 if (initialized_) { 00046 return; 00047 } 00048 00049 NORMAL_CURSOR = XCORE->createFontCursor(XC_left_ptr); 00050 RESIZE_LEFT_CURSOR = XCORE->createFontCursor(XC_left_side); 00051 RESIZE_RIGHT_CURSOR = XCORE->createFontCursor(XC_right_side); 00052 RESIZE_UP_CURSOR = XCORE->createFontCursor(XC_top_side); 00053 RESIZE_DOWN_CURSOR = XCORE->createFontCursor(XC_bottom_side); 00054 00055 RESIZE_NORTH_WEST_CURSOR = XCORE->createFontCursor(XC_top_left_corner); 00056 RESIZE_NORTH_EAST_CURSOR = XCORE->createFontCursor(XC_top_right_corner); 00057 RESIZE_SOUTH_WEST_CURSOR = XCORE->createFontCursor(XC_bottom_left_corner); 00058 RESIZE_SOUTH_EAST_CURSOR = XCORE->createFontCursor(XC_bottom_right_corner); 00059 00060 initialized_ = true; 00061 }