Panda3D
|
This is the class that defines a rectangular region on the screen for the MouseWatcher. More...
#include "mouseWatcherRegion.h"
Public Types | |
enum | SuppressFlags { SF_mouse_button = 0x001, SF_other_button = 0x002, SF_any_button = 0x003, SF_mouse_position = 0x004 } |
Public Member Functions | |
MouseWatcherRegion (const string &name, PN_stdfloat left, PN_stdfloat right, PN_stdfloat bottom, PN_stdfloat top) | |
MouseWatcherRegion (const string &name, const LVecBase4 &frame) | |
virtual void | candidate (const MouseWatcherParameter ¶m) |
This is a callback hook function, called whenever an IME candidate is highlighted by the user. | |
virtual void | enter_region (const MouseWatcherParameter ¶m) |
This is a callback hook function, called whenever the mouse enters the region. | |
virtual void | exit_region (const MouseWatcherParameter ¶m) |
This is a callback hook function, called whenever the mouse exits the region. | |
virtual TypeHandle | force_init_type () |
bool | get_active () const |
Returns whether the region is active or not. | |
PN_stdfloat | get_area () const |
Returns the area of the rectangular region. | |
const LVecBase4 & | get_frame () const |
bool | get_keyboard () const |
Returns whether the region is interested in global keyboard events; see set_keyboard(). | |
int | get_sort () const |
Returns the current sorting order of this region. | |
int | get_suppress_flags () const |
Returns the current suppress_flags. | |
virtual TypeHandle | get_type () const |
virtual void | keystroke (const MouseWatcherParameter ¶m) |
This is a callback hook function, called whenever a keystroke is generated by the user. | |
virtual void | move (const MouseWatcherParameter ¶m) |
This is a callback hook function, called whenever a mouse is moved within the region. | |
bool | operator< (const MouseWatcherRegion &other) const |
Returns true if this region should be preferred over the other region when they overlap, false otherwise. | |
void | output (ostream &out) const |
Outputs the Namable. | |
virtual void | press (const MouseWatcherParameter ¶m) |
This is a callback hook function, called whenever a mouse or keyboard button is depressed while the mouse is within the region. | |
virtual void | release (const MouseWatcherParameter ¶m) |
This is a callback hook function, called whenever a mouse or keyboard button previously depressed with press() is released. | |
void | set_active (bool active) |
Sets whether the region is active or not. | |
void | set_frame (const LVecBase4 &frame) |
void | set_frame (PN_stdfloat left, PN_stdfloat right, PN_stdfloat bottom, PN_stdfloat top) |
void | set_keyboard (bool keyboard) |
Sets whether the region is interested in global keyboard events. | |
void | set_sort (int sort) |
Changes the sorting order of this particular region. | |
void | set_suppress_flags (int suppress_flags) |
Sets which events are suppressed when the mouse is over the region. | |
virtual void | within_region (const MouseWatcherParameter ¶m) |
This is a callback hook function, called whenever the mouse moves within the boundaries of the region, even if it is also within the boundaries of a nested region. | |
virtual void | without_region (const MouseWatcherParameter ¶m) |
This is a callback hook function, called whenever the mouse moves completely outside the boundaries of the region. | |
void | write (ostream &out, int indent_level=0) const |
Static Public Member Functions | |
static TypeHandle | get_class_type () |
static void | init_type () |
This is the class that defines a rectangular region on the screen for the MouseWatcher.
Definition at line 33 of file mouseWatcherRegion.h.
void MouseWatcherRegion::candidate | ( | const MouseWatcherParameter & | param | ) | [virtual] |
This is a callback hook function, called whenever an IME candidate is highlighted by the user.
Reimplemented in PGMouseWatcherBackground, and PGMouseWatcherRegion.
Definition at line 134 of file mouseWatcherRegion.cxx.
Referenced by MouseWatcher::candidate().
void MouseWatcherRegion::enter_region | ( | const MouseWatcherParameter & | param | ) | [virtual] |
This is a callback hook function, called whenever the mouse enters the region.
The mouse is only considered to be "entered" in one region at a time; in the case of nested regions, it exits the outer region before entering the inner one.
Reimplemented in PGMouseWatcherRegion.
Definition at line 54 of file mouseWatcherRegion.cxx.
Referenced by MouseWatcher::enter_region().
void MouseWatcherRegion::exit_region | ( | const MouseWatcherParameter & | param | ) | [virtual] |
This is a callback hook function, called whenever the mouse exits the region.
The mouse is only considered to be "entered" in one region at a time; in the case of nested regions, it exits the outer region before entering the inner one.
Reimplemented in PGMouseWatcherRegion.
Definition at line 67 of file mouseWatcherRegion.cxx.
Referenced by MouseWatcher::clear_current_regions(), and MouseWatcher::exit_region().
bool MouseWatcherRegion::get_active | ( | ) | const [inline] |
Returns whether the region is active or not.
See set_active().
Definition at line 138 of file mouseWatcherRegion.I.
Referenced by MouseWatcher::get_over_regions().
PN_stdfloat MouseWatcherRegion::get_area | ( | ) | const [inline] |
Returns the area of the rectangular region.
Definition at line 82 of file mouseWatcherRegion.I.
bool MouseWatcherRegion::get_keyboard | ( | ) | const [inline] |
Returns whether the region is interested in global keyboard events; see set_keyboard().
Definition at line 168 of file mouseWatcherRegion.I.
Referenced by MouseWatcher::candidate(), MouseWatcher::global_keyboard_press(), MouseWatcher::global_keyboard_release(), and MouseWatcher::keystroke().
int MouseWatcherRegion::get_sort | ( | ) | const [inline] |
Returns the current sorting order of this region.
See set_sort().
Definition at line 109 of file mouseWatcherRegion.I.
int MouseWatcherRegion::get_suppress_flags | ( | ) | const [inline] |
Returns the current suppress_flags.
See set_suppress_flags().
Definition at line 197 of file mouseWatcherRegion.I.
void MouseWatcherRegion::keystroke | ( | const MouseWatcherParameter & | param | ) | [virtual] |
This is a callback hook function, called whenever a keystroke is generated by the user.
Reimplemented in PGMouseWatcherBackground, and PGMouseWatcherRegion.
Definition at line 124 of file mouseWatcherRegion.cxx.
Referenced by MouseWatcher::keystroke().
void MouseWatcherRegion::move | ( | const MouseWatcherParameter & | param | ) | [virtual] |
This is a callback hook function, called whenever a mouse is moved within the region.
Reimplemented in PGMouseWatcherRegion.
Definition at line 144 of file mouseWatcherRegion.cxx.
bool MouseWatcherRegion::operator< | ( | const MouseWatcherRegion & | other | ) | const [inline] |
Returns true if this region should be preferred over the other region when they overlap, false otherwise.
Definition at line 208 of file mouseWatcherRegion.I.
void MouseWatcherRegion::output | ( | ostream & | out | ) | const |
Outputs the Namable.
This function simply writes the name to the output stream; most Namable derivatives will probably redefine this.
Reimplemented from Namable.
Definition at line 28 of file mouseWatcherRegion.cxx.
void MouseWatcherRegion::press | ( | const MouseWatcherParameter & | param | ) | [virtual] |
This is a callback hook function, called whenever a mouse or keyboard button is depressed while the mouse is within the region.
Reimplemented in PGMouseWatcherBackground, and PGMouseWatcherRegion.
Definition at line 103 of file mouseWatcherRegion.cxx.
Referenced by MouseWatcher::enter_region(), and MouseWatcher::global_keyboard_press().
void MouseWatcherRegion::release | ( | const MouseWatcherParameter & | param | ) | [virtual] |
This is a callback hook function, called whenever a mouse or keyboard button previously depressed with press() is released.
Reimplemented in PGMouseWatcherBackground, and PGMouseWatcherRegion.
Definition at line 114 of file mouseWatcherRegion.cxx.
Referenced by MouseWatcher::exit_region(), MouseWatcher::global_keyboard_release(), and MouseWatcher::release().
void MouseWatcherRegion::set_active | ( | bool | active | ) | [inline] |
Sets whether the region is active or not.
If it is not active, the MouseWatcher will never consider the mouse to be over the region. The region might still receive keypress events if its set_keyboard() flag is true.
Definition at line 123 of file mouseWatcherRegion.I.
void MouseWatcherRegion::set_keyboard | ( | bool | keyboard | ) | [inline] |
Sets whether the region is interested in global keyboard events.
If this is true, then any keyboard button events will be passed to press() and release() regardless of the position of the mouse onscreen; otherwise, these events will only be passed if the mouse is over the region.
Definition at line 153 of file mouseWatcherRegion.I.
void MouseWatcherRegion::set_sort | ( | int | sort | ) | [inline] |
Changes the sorting order of this particular region.
The sorting order is used to resolve conflicts in the case of overlapping region; the region with the highest sort value will be preferred, and between regions of the same sort value, the smallest region will be preferred. The default sorting order, if none is explicitly specified, is 0.
Definition at line 98 of file mouseWatcherRegion.I.
void MouseWatcherRegion::set_suppress_flags | ( | int | suppress_flags | ) | [inline] |
Sets which events are suppressed when the mouse is over the region.
This is the union of zero or more various SF_* values. Normally, this is 0, indicating that no events are suppressed.
If you set this to a non-zero value, for instance SF_mouse_position, then the mouse position will not be sent along the data graph when the mouse is over this particular region.
Definition at line 186 of file mouseWatcherRegion.I.
void MouseWatcherRegion::within_region | ( | const MouseWatcherParameter & | param | ) | [virtual] |
This is a callback hook function, called whenever the mouse moves within the boundaries of the region, even if it is also within the boundaries of a nested region.
This is different from "enter", which is only called whenever the mouse is within only that region.
Reimplemented in PGMouseWatcherRegion.
Definition at line 81 of file mouseWatcherRegion.cxx.
Referenced by MouseWatcher::within_region().
void MouseWatcherRegion::without_region | ( | const MouseWatcherParameter & | param | ) | [virtual] |
This is a callback hook function, called whenever the mouse moves completely outside the boundaries of the region.
See within_region().
Reimplemented in PGMouseWatcherRegion.
Definition at line 92 of file mouseWatcherRegion.cxx.
Referenced by MouseWatcher::without_region().