Cursor::Cursor(GdkCursor* c) : m_impl(c) { m_impl = c; ASSERT(c); gdk_cursor_ref(c); }
Cursor& Cursor::operator=(const Cursor& other) { gdk_cursor_ref(other.m_impl); gdk_cursor_unref(m_impl); m_impl = other.m_impl; return *this; }
QCursor::QCursor(const QCursor &other) : cursor(other.cursor) { if (cursor) gdk_cursor_ref(cursor); }
QCursor &QCursor::operator=(const QCursor &other) { if (other.cursor) gdk_cursor_ref(other.cursor); if (cursor) gdk_cursor_unref(cursor); cursor = other.cursor; return *this; }
/** * gwy_vector_layer_cursor_new_or_ref: * @cursor: A Gdk cursor, or %NULL. * @type: Cursor type to eventually create. * * Increments reference count of a given Gdk cursor or creates a new one * (if @cursor is NULL) of type @cursor_type. * * This function is intended only for layer implementation. **/ void gwy_vector_layer_cursor_new_or_ref(GdkCursor **cursor, GdkCursorType type) { g_return_if_fail(cursor); if (*cursor) gdk_cursor_ref(*cursor); else *cursor = gdk_cursor_new(type); }
GdkGrabStatus gdk_directfb_pointer_grab (GdkWindow *window, gint owner_events, GdkEventMask event_mask, GdkWindow *confine_to, GdkCursor *cursor, guint32 time, gboolean implicit_grab) { GdkWindow *toplevel; GdkWindowImplDirectFB *impl; if (_gdk_directfb_pointer_grab_window) { if (implicit_grab && !_gdk_directfb_pointer_implicit_grab) return GDK_GRAB_ALREADY_GRABBED; gdk_pointer_ungrab (time); } toplevel = gdk_directfb_window_find_toplevel (window); impl = GDK_WINDOW_IMPL_DIRECTFB (GDK_WINDOW_OBJECT (toplevel)->impl); if (impl->window) { if (impl->window->GrabPointer (impl->window) == DFB_LOCKED) return GDK_GRAB_ALREADY_GRABBED; } if (event_mask & GDK_BUTTON_MOTION_MASK) event_mask |= (GDK_BUTTON1_MOTION_MASK | GDK_BUTTON2_MOTION_MASK | GDK_BUTTON3_MOTION_MASK); _gdk_directfb_pointer_implicit_grab = implicit_grab; _gdk_directfb_pointer_grab_window = g_object_ref (window); _gdk_directfb_pointer_grab_owner_events = owner_events; _gdk_directfb_pointer_grab_confine = (confine_to ? g_object_ref (confine_to) : NULL); _gdk_directfb_pointer_grab_events = event_mask; _gdk_directfb_pointer_grab_cursor = (cursor ? gdk_cursor_ref (cursor) : NULL); gdk_directfb_window_send_crossing_events (NULL, window, GDK_CROSSING_GRAB); return GDK_GRAB_SUCCESS; }
void Cursor::incref() const { if ( m_obj ) gdk_cursor_ref( (GdkCursor*) m_obj ); }
Cursor::Cursor(const Cursor& other) : m_impl(other.m_impl) { if (m_impl) gdk_cursor_ref(m_impl); }