示例#1
0
static VALUE
lstore_remove(VALUE self, VALUE iter)
{
    G_CHILD_REMOVE(self, iter);
#if GTK_CHECK_VERSION(2,2,0)
    return CBOOL2RVAL(gtk_list_store_remove(_SELF(self), RVAL2GTKTREEITER(iter)));
#else
    gtk_list_store_remove(_SELF(self), RVAL2GTKTREEITER(iter));
    return Qtrue;
#endif
}
示例#2
0
static VALUE
rg_set_colormap(VALUE self, VALUE colormap)
{
    VALUE old_colormap;

    old_colormap = GOBJ2RVAL(gdk_drawable_get_colormap(_SELF(self)));
    G_CHILD_REMOVE(self, old_colormap);

    G_CHILD_ADD(self, colormap);
    gdk_drawable_set_colormap(_SELF(self), GDK_COLORMAP(RVAL2GOBJ(colormap)));
    return self;
}
示例#3
0
/*
 * Method: remove(*elements)
 * elements: a list of Gst::Element objects.
 *
 * Removes one or more Gst::Element objects from the bin, unparenting
 * as well.
 *
 * Returns: nil.
 */
static VALUE
rb_gst_bin_remove(int argc, VALUE *argv, VALUE self)
{
    int i;
    GstBin *bin;

    bin = SELF(self);
    for (i = 0; i < argc; i++) {
        G_CHILD_REMOVE(self, argv[i]);
        gst_bin_remove(bin, RVAL2GST_ELEMENT(argv[i]));
    }
    return Qnil;
}
示例#4
0
static VALUE
mitem_remove_submenu(VALUE self)
{
    GtkMenuItem *item;
    GtkWidget *submenu;

    item = _SELF(self);
    submenu = gtk_menu_item_get_submenu(item);
    gtk_menu_item_remove_submenu(item);
    if (submenu)
        G_CHILD_REMOVE(self, GOBJ2RVAL(submenu));

    return self;
}
示例#5
0
static VALUE
mitem_set_submenu(VALUE self, VALUE child)
{
    GtkMenuItem *item;
    GtkWidget *submenu;

    item = _SELF(self);
    submenu = gtk_menu_item_get_submenu(item);
    if (submenu)
        G_CHILD_REMOVE(self, GOBJ2RVAL(submenu));

    gtk_menu_item_set_submenu(item, GTK_WIDGET(RVAL2GOBJ(child)));
    G_CHILD_ADD(self, child);
    return self;
}
示例#6
0
/*
 * Remove media instance from media list on a position
 * The {#lock} should be held upon entering this function.
 *
 * @param [VLC::Media, Integer] media the media instance or position in array
 * @return [Boolean] true on success, false if the list is read-only or the item was not found
 * @todo fixme
 */
static VALUE
rg_remove_media(VALUE self, VALUE media)
{
    int pos;

    if (TYPE(media) == T_FIXNUM) {
        pos = NUM2INT(media);
        /* TODO: G_CHILD_REMOVE */
    } else {
        pos = libvlc_media_list_index_of_item(_SELF(self), RVAL2VLCMEDIA(media));
        G_CHILD_REMOVE(self, media);
    }

    return ZEROBOOL2RVAL(libvlc_media_list_remove_index(_SELF(self), pos));
}
示例#7
0
static void
remove_callback_reference(gpointer data)
{
    G_CHILD_REMOVE(mGtk, (VALUE)data);
}
示例#8
0
static VALUE
rg_remove(VALUE self, VALUE iter)
{
    G_CHILD_REMOVE(self, iter);
    return CBOOL2RVAL(gtk_list_store_remove(_SELF(self), RVAL2GTKTREEITER(iter)));
}
示例#9
0
static void
remove_callback_reference(gpointer data)
{
    VALUE callback = (VALUE)data;
    G_CHILD_REMOVE(mGtk, callback);
}