Exemple #1
0
        // opcode 89 - store colors

        /**
         * @see <a href="XStoreColors.html">XStoreColors</a>
         */
        public void store_colors(int [] pixels, bool [] do_reds,
                                 bool [] do_greens, bool [] do_blues, RGB [] rgbs)
        {
            Request request = new Request(display, 89, 2 + 3 * pixels.Length);

            request.write4(id);

            for (int i = 0; i < pixels.Length; i++)
            {
                request.write4(pixels [i]);
                request.write2(rgbs [i].red);
                request.write2(rgbs [i].green);
                request.write2(rgbs [i].blue);

                int do_color = 0;
                if (do_reds [i])
                {
                    do_color |= 0x01;
                }
                if (do_greens [i])
                {
                    do_color |= 0x02;
                }
                if (do_blues [i])
                {
                    do_color |= 0x04;
                }

                request.write1(do_color);
                request.write1_unused();
            }

            display.send_request(request);
        }
Exemple #2
0
        // opcode 109 - change hosts

        /**
         * @param mode valid:
         * {@link #INSERT},
         * {@link #DELETE}
         *
         * @see <a href="XAddHost.html">XAddHost</a>
         * @see <a href="XRemoveHost.html">XRemoveHost</a>
         */
        public void change_hosts(int mode, int family, byte [] host)
        {
            Request request = new Request(this, 109, mode, 2 + Data.unit(host));

            request.write1(family);
            request.write1_unused();
            request.write2(host.Length);
            request.write1(host);
            send_request(request);
        }
Exemple #3
0
        //throws NotFoundException {
        // xtest opcode 0 - get version
        /**
           * @see <a href="XTestQueryExtension.html">XTestQueryExtension</a>
           */
        public XTest(gnu.x11.Display display)
            : base(display, "XTEST", MINOR_OPCODE_STRINGS)
        {
            // check version before any other operations
            Request request = new Request (display, major_opcode, 0, 2);
            request.write1 (CLIENT_MAJOR_VERSION);
            request.write1_unused ();
            request.write2 (CLIENT_MINOR_VERSION);

            Data reply = display.read_reply (request);
            server_major_version = reply.read1 (1);
            server_minor_version = reply.read2 (10);
        }
Exemple #4
0
 // opcode 28 - grab button
 /**
  * @param button possible: {@link #ANY_BUTTON}
  * @param modifiers possible: {@link #ANY_MODIFIER}
  * @param pointer_mode valid:
  * {@link #SYNCHRONOUS},
  * {@link #ASYNCHRONOUS}
  * 
  * @param keyboard_mode valid:
  * {@link #SYNCHRONOUS},
  * {@link #ASYNCHRONOUS}
  * 
  * @param confine_to possible: {@link #NONE}
  * @param cursor possible: {@link Cursor#NONE}
  * @see <a href="XGrabButton.html">XGrabButton</a>
  */
 public void grab_button (int button, int modifiers, bool owner_events,
   int event_mask, int pointer_mode, int keyboard_mode, Window confine_to,
   Cursor cursor) { 
   
   Request request = new Request (display, 28, owner_events, 6);
   request.write4 (id);
   request.write2 (event_mask);
   request.write1 (pointer_mode);
   request.write1 (keyboard_mode);
   request.write4 (confine_to.id);
   request.write4 (cursor.id);
   request.write1 (button);
   request.write1_unused ();
   request.write2 (modifiers);
   display.send_request (request);
 }
Exemple #5
0
        // opcode 109 - change hosts
        /**
           * @param mode valid:
           * {@link #INSERT},
           * {@link #DELETE}
           *
           * @see <a href="XAddHost.html">XAddHost</a>
           * @see <a href="XRemoveHost.html">XRemoveHost</a>
           */
        public void change_hosts(int mode, int family, byte [] host)
        {
            Request request = new Request (this, 109, mode, 2+Data.unit (host));

            request.write1 (family);
            request.write1_unused ();
            request.write2 (host.Length);
            request.write1 (host);
            send_request (request);
        }
Exemple #6
0
     // opcode 28 - grab button
     /**
        * @param button possible: {@link #ANY_BUTTON}
        * @param modifiers possible: {@link #ANY_MODIFIER}
        * @param pointer_mode valid:
        * {@link #SYNCHRONOUS},
        * {@link #ASYNCHRONOUS}
        *
        * @param keyboard_mode valid:
        * {@link #SYNCHRONOUS},
        * {@link #ASYNCHRONOUS}
        *
        * @param confine_to possible: {@link #NONE}
        * @param cursor possible: {@link Cursor#NONE}
        * @see <a href="XGrabButton.html">XGrabButton</a>
        */
     public void grab_button(int button, int modifiers, bool owner_events,
 int event_mask, int pointer_mode, int keyboard_mode, Window confine_to,
 Cursor cursor)
     {
         Request request = new Request (display, 28, owner_events, 6);
         request.write4 (id);
         request.write2 (event_mask);
         request.write1 (pointer_mode);
         request.write1 (keyboard_mode);
         request.write4 (confine_to.id);
         request.write4 (cursor.id);
         request.write1 (button);
         request.write1_unused ();
         request.write2 (modifiers);
         display.send_request (request);
     }
Exemple #7
0
        // opcode 89 - store colors
        /**
           * @see <a href="XStoreColors.html">XStoreColors</a>
           */
        public void store_colors(int [] pixels, bool [] do_reds, 
    bool [] do_greens, bool [] do_blues, RGB [] rgbs)
        {
            Request request = new Request (display, 89, 2+3*pixels.Length);
            request.write4 (id);

            for (int i=0; i<pixels.Length; i++) {
              request.write4 (pixels [i]);
              request.write2 (rgbs [i].red);
              request.write2 (rgbs [i].green);
              request.write2 (rgbs [i].blue);

              int do_color = 0;
              if (do_reds [i]) do_color |= 0x01;
              if (do_greens [i]) do_color |= 0x02;
              if (do_blues [i]) do_color |= 0x04;

              request.write1 (do_color);
              request.write1_unused ();
            }

            display.send_request (request);
        }
Exemple #8
0
     // shape opcode 3 - combine
     /**
        * @param dest_kind valid:
        * {@link #BOUNDING},
        * {@link #CLIP}
        *
        * @param src_kind valid:
        * {@link #BOUNDING},
        * {@link #CLIP}
        *
        * @param operation valid:
        * {@link #SET},
        * {@link #UNION},
        * {@link #INTERSECT},
        * {@link #SUBTRACT},
        * {@link #INVERT}
        *
        * @see <a href="XShapeCombineShape.html">XShapeCombineShape</a>
        */
     public void combine_shape(Window dest, int dest_kind, int x_offset,
 int y_offset, Window src, int src_kind, int operation)
     {
         Request request = new Request (display, major_opcode, 3, 5);
         request.write1 (operation);
         request.write1 (dest_kind);
         request.write1 (src_kind);
         request.write1_unused ();
         request.write4 (dest.id);
         request.write2 (x_offset);
         request.write2 (y_offset);
         request.write4 (src.id);
         display.send_request (request);
     }
Exemple #9
0
        // shape opcode 1 - rectangles
        /**
           * @param dest_kind valid:
           * {@link #BOUNDING},
           * {@link #CLIP}
           *
           * @param operation valid:
           * {@link #SET},
           * {@link #UNION},
           * {@link #INTERSECT},
           * {@link #SUBTRACT},
           * {@link #INVERT}
           *
           * @param ordering valid:
           * {@link #UN_SORTED},
           * {@link #Y_SORTED},
           * {@link #YX_SORTED},
           * {@link #YX_BANDED}
           *
           * @see <a href="XShapeCombineRectangles.html">XShapeCombineRectangles</a>
           */
        public void combine_rectangles(Window dest, int dest_kind, int x_offset,
    int y_offset, Rectangle [] rectangles, int operation, int ordering)
        {
            Request request = new Request (display, major_opcode, 1,
              4+2*rectangles.Length);
            request.write1 (operation);
            request.write1 (dest_kind);
            request.write1 (ordering);
            request.write1_unused ();
            request.write4 (dest.id);
            request.write2 (x_offset);
            request.write2 (y_offset);

            for (int i=0; i<rectangles.Length; i++) {
              request.write2 (rectangles [i].x);
              request.write2 (rectangles [i].y);
              request.write2 (rectangles [i].width);
              request.write2 (rectangles [i].height);
            }

            display.send_request (request);
        }