# FBB::Xpointer(3bobcat)

## Sets the X-pointer
(libbobcat-dev_6.02.02)

## 2005-2022

## NAME

FBB::Xpointer - Sets the location of the X-windows pointer

## SYNOPSIS

#include <bobcat/xpointer>

Linking option: -lbobcat -lX11

## DESCRIPTION

This class allows programs running within the X-graphical environment to set and retrieve the X-windows pointer location.

## NAMESPACE

FBB
All constructors, members, operators and manipulators, mentioned in this man-page, are defined in the namespace FBB.

## INHERITS FROM

-

## CONSTRUCTORS

- Xpointer():
  The default constructor. Connects to the Display. throws an Exception exception if the display cannot be opened. With multiple Xpointer objects, the connection to the display is opened only once.

  This constructor throws an Exception exception if it could not connect to the Display.

Copy and move constructors (and assignment operators) are available.

## MEMBER FUNCTIONS

- bool get(int *x, int *y) const:
  Returns in its arguments the currnet pointer coordinates relative to the root-window. On success true is returned; false is returned if the pointer could not be moved.
- bool set(int x, int y) const:
  Sets the pointer to a location whose pixel coordinates are given with respect to the root-window. A negative x-coordinate is measured from the right screen-margin of the root window (going left), a negative y-coordinate is measured from the bottom screen-margin of the root window (going up). On success true is returned; false is returned if the pointer could not be moved.

## EXAMPLE

    #include <iostream>
    #include <string>

    #include <bobcat/xpointer>

    using namespace FBB;

    int main()
    try
    {
        Xpointer xpointer;
        xpointer.verify();

        if (!xpointer.set(100, 200))
            throw string("Set pointer failed");

        int x;
        int y;

        if (!xpointer.get(&x, &y))
            throw string("Get pointer failed");

        cout << "Pointer now at " << x << ", " << y << '\n';
    }
    catch (string msg)
    {
        cout << msg << '\n';
        return 1;
    }

## FILES

bobcat/xpointer - defines the class interface

## SEE ALSO

bobcat(7)

## BUGS

Note that -lX11 must be specified as well.

## BOBCAT PROJECT FILES

- https://fbb-git.gitlab.io/bobcat/: gitlab project page;
- bobcat_6.02.02-x.dsc: detached signature;
- bobcat_6.02.02-x.tar.gz: source archive;
- bobcat_6.02.02-x_i386.changes: change log;
- libbobcat1_6.02.02-x_*.deb: debian package containing the libraries;
- libbobcat1-dev_6.02.02-x_*.deb: debian package containing the libraries, headers and manual pages;

## BOBCAT

Bobcat is an acronym of `Brokken's Own Base Classes And Templates'.

## COPYRIGHT

This is free software, distributed under the terms of the GNU General Public License (GPL).

## AUTHOR

Frank B. Brokken (f.b.brokken@rug.nl).