diff options
Diffstat (limited to 'libs/gtkmm2/gdk/gdkmm/event.cc')
-rw-r--r-- | libs/gtkmm2/gdk/gdkmm/event.cc | 223 |
1 files changed, 223 insertions, 0 deletions
diff --git a/libs/gtkmm2/gdk/gdkmm/event.cc b/libs/gtkmm2/gdk/gdkmm/event.cc new file mode 100644 index 0000000000..e9a71e918c --- /dev/null +++ b/libs/gtkmm2/gdk/gdkmm/event.cc @@ -0,0 +1,223 @@ +// Generated by gtkmmproc -- DO NOT MODIFY! + +#include <gdkmm/event.h> +#include <gdkmm/private/event_p.h> + +#include <gdk/gdkenumtypes.h> +// -*- c++ -*- +/* $Id$ */ + +/* + * + * Copyright 1998-2002 The gtkmm Development Team + * + * This library is free software; you can redistribute it and/or + * modify it under the terms of the GNU Library General Public + * License as published by the Free Software Foundation; either + * version 2 of the License, or (at your option) any later version. + * + * This library is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Library General Public License for more details. + * + * You should have received a copy of the GNU Library General Public + * License along with this library; if not, write to the Free + * Software Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. + */ + +#include <gdkmm/display.h> + +namespace Gdk +{ + +bool Event::send_client_message(const Glib::RefPtr<Display>& display, NativeWindow winid) +{ + return gdk_event_send_client_message_for_display(display->gobj(), gobj(), winid); +} + +} //namespace Gdk + + +namespace +{ +} // anonymous namespace + +// static +GType Glib::Value<Gdk::EventType>::value_type() +{ + return gdk_event_type_get_type(); +} + +// static +GType Glib::Value<Gdk::ExtensionMode>::value_type() +{ + return gdk_extension_mode_get_type(); +} + +// static +GType Glib::Value<Gdk::AxisUse>::value_type() +{ + return gdk_axis_use_get_type(); +} + + +namespace Glib +{ + +Gdk::Event wrap(GdkEvent* object, bool take_copy) +{ + return Gdk::Event(object, take_copy); +} + +} // namespace Glib + + +namespace Gdk +{ + + +// static +GType Event::get_type() +{ + return gdk_event_get_type(); +} + +Event::Event() +: + gobject_ (0) // Allows creation of invalid wrapper, e.g. for output arguments to methods. +{} + +Event::Event(const Event& other) +: + gobject_ ((other.gobject_) ? gdk_event_copy(other.gobject_) : 0) +{} + +Event::Event(GdkEvent* gobject, bool make_a_copy) +: + // For BoxedType wrappers, make_a_copy is true by default. The static + // BoxedType wrappers must always take a copy, thus make_a_copy = true + // ensures identical behaviour if the default argument is used. + gobject_ ((make_a_copy && gobject) ? gdk_event_copy(gobject) : gobject) +{} + +Event& Event::operator=(const Event& other) +{ + Event temp (other); + swap(temp); + return *this; +} + +Event::~Event() +{ + if(gobject_) + gdk_event_free(gobject_); +} + +void Event::swap(Event& other) +{ + GdkEvent *const temp = gobject_; + gobject_ = other.gobject_; + other.gobject_ = temp; +} + +GdkEvent* Event::gobj_copy() const +{ + return gdk_event_copy(gobject_); +} + + +Event Event::get() +{ + return Event(gdk_event_get()); +} + +Event Event::peek() +{ + return Event(gdk_event_peek()); +} + +Event Event::get_graphics_expose(const Glib::RefPtr<Window>& window) +{ + return Event(gdk_event_get_graphics_expose(Glib::unwrap(window))); +} + +void Event::put() +{ + gdk_event_put(gobj()); +} + +bool Event::events_pending() +{ + return gdk_events_pending(); +} + +guint32 Event::get_time() const +{ + return gdk_event_get_time(const_cast<GdkEvent*>(gobj())); +} + +bool Event::get_state(ModifierType& state) const +{ + return gdk_event_get_state(const_cast<GdkEvent*>(gobj()), ((GdkModifierType*) &(state))); +} + +bool Event::get_coords(double& x_win, double& y_win) const +{ + return gdk_event_get_coords(const_cast<GdkEvent*>(gobj()), &(x_win), &(y_win)); +} + +bool Event::get_root_coords(double& x_root, double& y_root) const +{ + return gdk_event_get_root_coords(const_cast<GdkEvent*>(gobj()), &(x_root), &(y_root)); +} + +bool Event::get_axis(AxisUse axis_use, double& value) const +{ + return gdk_event_get_axis(const_cast<GdkEvent*>(gobj()), ((GdkAxisUse)(axis_use)), &(value)); +} + +void Event::set_show_events(bool show_events) +{ + gdk_set_show_events(static_cast<int>(show_events)); +} + +bool Event::get_show_events() +{ + return gdk_get_show_events(); +} + +void Event::set_screen(const Glib::RefPtr<Screen>& screen) +{ + gdk_event_set_screen(gobj(), Glib::unwrap(screen)); +} + +Glib::RefPtr<Screen> Event::get_screen() +{ + + Glib::RefPtr<Screen> retvalue = Glib::wrap(gdk_event_get_screen(gobj())); + + if(retvalue) + retvalue->reference(); //The function does not do a ref for us. + return retvalue; +} + +Glib::RefPtr<const Screen> Event::get_screen() const +{ + + Glib::RefPtr<const Screen> retvalue = Glib::wrap(gdk_event_get_screen(const_cast<GdkEvent*>(gobj()))); + + if(retvalue) + retvalue->reference(); //The function does not do a ref for us. + return retvalue; +} + +bool Event::send_client_message(NativeWindow winid) +{ + return gdk_event_send_client_message(gobj(), (GdkNativeWindow)(winid)); +} + + +} // namespace Gdk + + |