diff options
Diffstat (limited to 'kwin/tools/test_gravity.cpp')
-rw-r--r-- | kwin/tools/test_gravity.cpp | 99 |
1 files changed, 0 insertions, 99 deletions
diff --git a/kwin/tools/test_gravity.cpp b/kwin/tools/test_gravity.cpp deleted file mode 100644 index 618023b5f..000000000 --- a/kwin/tools/test_gravity.cpp +++ /dev/null @@ -1,99 +0,0 @@ -// tests for window gravity - -#include <iostream> -#include <stdlib.h> -#include <X11/Xlib.h> -#include <X11/Xutil.h> - -using namespace std; - -const int gravities[ 10 ] = - { - NorthWestGravity, - NorthGravity, - NorthEastGravity, - WestGravity, - CenterGravity, - EastGravity, - SouthWestGravity, - SouthGravity, - SouthEastGravity, - StaticGravity - }; - -const char* const gravity_names[ 10 ] = - { - "NW", "N", "NE", "W", "C", "E", "SW", "S", "SE", "ST" - }; - -Display* dpy = NULL; - -int get_gravity( const char* name ) - { - for( int i = 0; - i < 10; - ++i ) - if( strcmp( name, gravity_names[ i ] ) == 0 ) - return gravities[ i ]; - cerr << "Wrong gravity name" << endl; - exit( 1 ); - } - -void test( const char* gravity ) - { - XSetWindowAttributes attrs; - XSizeHints hints; - hints.flags = USPosition | PWinGravity; - hints.win_gravity = get_gravity( gravity ); - Window w = XCreateWindow( dpy, DefaultRootWindow( dpy ), 100, 100, 200, 100, 0, CopyFromParent, CopyFromParent, - CopyFromParent, 0, &attrs ); - XSetWMNormalHints( dpy, w, &hints ); - XSelectInput( dpy, w, StructureNotifyMask | ButtonPressMask ); - XMapWindow( dpy, w ); - for(;;) - { - XEvent ev; - XNextEvent( dpy, &ev ); - if( ev.type == ConfigureNotify ) - { - cout << "CONFIGURENOTIFY:" << ev.xany.send_event << ":" << ev.xconfigure.x << ":" << ev.xconfigure.y - << ":" << ev.xconfigure.width << ":" << ev.xconfigure.height << endl; - Window root, child; - int x, x_local, y, y_local; - unsigned int width, height, border, depth; - XGetGeometry( dpy, w, &root, &x_local, &y_local, &width, &height, &border, &depth ); - XTranslateCoordinates( dpy, w, root, 0, 0, &x, &y, &child ); - cout << "GEOMETRY:" << x << ":" << y << ":" << width << ":" << height << ":(" << x_local << ":" << y_local << ")" << endl; - } - else if( ev.type == ButtonPress ) - { - if( ev.xbutton.button == Button1 ) // move - { - cout << "MOVE" << endl; - XMoveWindow( dpy, w, 100, 100 ); - } - else if( ev.xbutton.button == Button2 ) // resize - { - cout << "RESIZE" << endl; - XResizeWindow( dpy, w, 200, 100 ); - } - else if( ev.xbutton.button == Button3 ) // move and resize - { - cout << "MOVERESIZE" << endl; - XMoveResizeWindow( dpy, w, 100, 100, 200, 100 ); - } - } - } - } - -int main( int argc, char* argv[] ) - { - dpy = XOpenDisplay( NULL ); - if( argc != 2 ) - { - cerr << "specify gravity" << endl; - exit( 1 ); - } - test( argv[ 1 ] ); - XCloseDisplay( dpy ); - } |