这篇教程C++ BOXED2RVAL函数代码示例写得很实用,希望能帮到您。
本文整理汇总了C++中BOXED2RVAL函数的典型用法代码示例。如果您正苦于以下问题:C++ BOXED2RVAL函数的具体用法?C++ BOXED2RVAL怎么用?C++ BOXED2RVAL使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。 在下文中一共展示了BOXED2RVAL函数的30个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。 示例1: rg_get_cursor_posstatic VALUErg_get_cursor_pos(VALUE self, VALUE index){ PangoRectangle strong_pos, weak_pos; pango_layout_get_cursor_pos(_SELF(self), NUM2INT(index), &strong_pos, &weak_pos); return rb_ary_new3(2, BOXED2RVAL(&strong_pos, PANGO_TYPE_RECTANGLE), BOXED2RVAL(&weak_pos, PANGO_TYPE_RECTANGLE));}
开发者ID:msakai,项目名称:ruby-gnome2,代码行数:8,
示例2: layout_iter_get_layout_extentsstatic VALUElayout_iter_get_layout_extents(VALUE self){ PangoRectangle ink_rect, logical_rect; pango_layout_iter_get_layout_extents(_SELF(self), &ink_rect, &logical_rect); return rb_assoc_new(BOXED2RVAL(&ink_rect, PANGO_TYPE_RECTANGLE), BOXED2RVAL(&logical_rect, PANGO_TYPE_RECTANGLE));}
开发者ID:geoffyoungs,项目名称:ruby-gnome2,代码行数:10,
示例3: sort_funcstatic gintsort_func(GtkRecentInfo *a, GtkRecentInfo *b, gpointer func){ struct callback_arg arg; arg.callback = (VALUE)func; arg.a = BOXED2RVAL(a, GTK_TYPE_RECENT_INFO); arg.b = BOXED2RVAL(b, GTK_TYPE_RECENT_INFO); return NUM2INT(G_PROTECT_CALLBACK(invoke_callback, &arg));}
开发者ID:geoffyoungs,项目名称:ruby-gnome2,代码行数:10,
示例4: rg_pixel_extentsstatic VALUErg_pixel_extents(VALUE self){ PangoRectangle rink = {0, 0, 0, 0}; PangoRectangle rlog = {0, 0, 0, 0}; pango_layout_get_pixel_extents(_SELF(self), &rink, &rlog); return rb_assoc_new(BOXED2RVAL(&rink, PANGO_TYPE_RECTANGLE), BOXED2RVAL(&rlog, PANGO_TYPE_RECTANGLE));}
开发者ID:msakai,项目名称:ruby-gnome2,代码行数:10,
示例5: rg_regexstatic VALUErg_regex(VALUE self){ GRegex *regex; regex = g_match_info_get_regex(_SELF(self)); return BOXED2RVAL(regex, G_TYPE_REGEX);}
开发者ID:adamhooper,项目名称:ruby-gnome2,代码行数:7,
示例6: rg_wait_for_targetsstatic VALUErg_wait_for_targets(VALUE self){ gint i; VALUE ary = Qnil; GdkAtom* targets; gint n_targets = 0; gboolean ret = gtk_clipboard_wait_for_targets(_SELF(self), &targets, &n_targets); if (ret){ ary = rb_ary_new(); for (i = 0; i < n_targets; i++){ if ((GdkAtom)targets == (GdkAtom)GDK_NONE){ rb_ary_push(ary, rb_eval_string("Gdk::Atom::NONE")); } else rb_ary_push(ary, BOXED2RVAL(targets, GDK_TYPE_ATOM)); targets++; } /* How can I this ? g_free(&o_targets); */ } return ary;}
开发者ID:msakai,项目名称:ruby-gnome2,代码行数:25,
示例7: tvc_cell_get_sizestatic VALUEtvc_cell_get_size(VALUE self){ GdkRectangle cell_area; gint x_offset, y_offset, width, height; VALUE cell; /* Is this collect implement for cell_area ? */ cell_area.x = -1; cell_area.y = -1; cell_area.width = -1; cell_area.height = -1; gtk_tree_view_column_cell_get_size(_SELF(self), &cell_area, &x_offset, &y_offset, &width, &height); if (cell_area.x == -1 || cell_area.y == -1 || cell_area.width == -1 || cell_area.height == -1){ cell = Qnil; } else { cell = BOXED2RVAL(&cell_area, GDK_TYPE_RECTANGLE); } return rb_ary_new3(5, cell, x_offset ? INT2NUM(x_offset) : Qnil, y_offset ? INT2NUM(y_offset) : Qnil, width ? INT2NUM(width) : Qnil, height ? INT2NUM(height) : Qnil);}
开发者ID:benolee,项目名称:ruby-gnome2,代码行数:28,
示例8: io_funcstatic gbooleanio_func(GIOChannel *source, GIOCondition condition, gpointer func){ return RVAL2CBOOL(rb_funcall((VALUE)func, id_call, 2, BOXED2RVAL(source, G_TYPE_IO_CHANNEL), INT2NUM(condition)));}
开发者ID:htrb,项目名称:ruby-gnome2,代码行数:7,
示例9: rg_unionstatic VALUErg_union(VALUE self, VALUE other){ GdkRectangle dest; gdk_rectangle_union(_SELF(self), _SELF(other), &dest); return BOXED2RVAL(&dest, GDK_TYPE_RECTANGLE);}
开发者ID:Mazwak,项目名称:ruby-gnome2,代码行数:7,
示例10: rg_s_openstatic VALUErg_s_open(gint argc, VALUE *argv, G_GNUC_UNUSED VALUE self){ VALUE arg1, arg2; VALUE rio; GIOChannel* io = NULL; rb_scan_args(argc, argv, "11", &arg1, &arg2); if (TYPE(arg1) == T_FIXNUM){#ifdef G_OS_UNIX io = g_io_channel_unix_new(NUM2INT(arg1));#elif defined(G_OS_WIN32) io = g_io_channel_win32_new_fd(NUM2INT(arg1));#else rb_raise(rb_eRuntimeError, "GLib::IOChannel.new(fd) is supported on " "UNIX and Windows environment only");#endif } else { GError* err = NULL; io = g_io_channel_new_file(RVAL2CSTR(arg1), NIL_P(arg2) ? "r" : RVAL2CSTR(arg2), &err); if (err != NULL) RAISE_GERROR(err); } rio = BOXED2RVAL(io, G_TYPE_IO_CHANNEL); if (rb_block_given_p()) { return rb_ensure(rb_yield, rio, ioc_close, rio); } return rio;}
开发者ID:htrb,项目名称:ruby-gnome2,代码行数:34,
示例11: rg_colorsstatic VALUErg_colors(VALUE self){ GdkColormap *cmap; GdkColor *colors; GdkVisual *visual; VALUE ary; int i; cmap = _SELF(self); colors = cmap->colors; visual = gdk_colormap_get_visual(cmap); if (visual->type == GDK_VISUAL_GRAYSCALE || visual->type == GDK_VISUAL_PSEUDO_COLOR) { ary = rb_ary_new2(cmap->size); for (i = 0; i < cmap->size; i++) { rb_ary_push(ary, BOXED2RVAL(colors, GDK_TYPE_COLOR)); colors++; } return ary; } else { return Qnil; }}
开发者ID:aurelj,项目名称:ruby-gnome2,代码行数:26,
示例12: rg_region_intersectstatic VALUErg_region_intersect(VALUE self, VALUE region){ return BOXED2RVAL(gtk_widget_region_intersect(_SELF(self), (GdkRegion*)RVAL2BOXED(region, GDK_TYPE_REGION)), GDK_TYPE_REGION);}
开发者ID:adamhooper,项目名称:ruby-gnome2,代码行数:7,
示例13: textview_get_iter_locationstatic VALUEtextview_get_iter_location(VALUE self, VALUE iter){ GdkRectangle rect; gtk_text_view_get_iter_location(_SELF(self), RVAL2ITR(iter), &rect); return BOXED2RVAL(&rect, GDK_TYPE_RECTANGLE);}
开发者ID:geoffyoungs,项目名称:ruby-gnome2,代码行数:7,
示例14: rg_clipboxstatic VALUErg_clipbox(VALUE self){ GdkRectangle rect; gdk_region_get_clipbox(_SELF(self), &rect); return BOXED2RVAL(&rect, GDK_TYPE_RECTANGLE);}
开发者ID:msakai,项目名称:ruby-gnome2,代码行数:7,
示例15: textview_get_visible_rectstatic VALUEtextview_get_visible_rect(VALUE self){ GdkRectangle rect; gtk_text_view_get_visible_rect(_SELF(self), &rect); return BOXED2RVAL(&rect, GDK_TYPE_RECTANGLE);}
开发者ID:geoffyoungs,项目名称:ruby-gnome2,代码行数:7,
示例16: gdkwin_get_frame_extentsstatic VALUEgdkwin_get_frame_extents(VALUE self){ GdkRectangle rect; gdk_window_get_frame_extents(_SELF(self), &rect); return BOXED2RVAL(&rect, GDK_TYPE_RECTANGLE);}
开发者ID:geoffyoungs,项目名称:ruby-gnome2,代码行数:7,
示例17: rg_intersectstatic VALUErg_intersect(VALUE self, VALUE other){ GdkRectangle dest; gboolean ret = gdk_rectangle_intersect(_SELF(self), _SELF(other), &dest); return ret ? BOXED2RVAL(&dest, GDK_TYPE_RECTANGLE) : Qnil;}
开发者ID:Mazwak,项目名称:ruby-gnome2,代码行数:7,
示例18: rg_index_to_posstatic VALUErg_index_to_pos(VALUE self, VALUE index){ PangoRectangle pos; pango_layout_index_to_pos(_SELF(self), NUM2INT(index), &pos); return BOXED2RVAL(&pos, PANGO_TYPE_RECTANGLE);}
开发者ID:msakai,项目名称:ruby-gnome2,代码行数:7,
示例19: rpango_breakstatic VALUErpango_break(VALUE self, VALUE text, VALUE analysis){ gint i, len; glong attrs_len; PangoLogAttr *attrs; const gchar *gtext; VALUE ret; gtext = StringValuePtr(text); len = RSTRING_LEN(text); attrs_len = g_utf8_strlen(gtext, (gssize)len) + 1l; attrs = g_new0(PangoLogAttr, attrs_len); pango_break(gtext, len, NIL_P(analysis) ? NULL : RVAL2BOXED(analysis, PANGO_TYPE_ANALYSIS), attrs, attrs_len); ret = rb_ary_new(); for (i = 0; i < attrs_len; i++){ rb_ary_push(ret, BOXED2RVAL(&attrs[i], PANGO_TYPE_LOG_ATTR)); } g_free(attrs); return ret;}
开发者ID:geoffyoungs,项目名称:ruby-gnome2,代码行数:25,
示例20: rpango_get_log_attrsstatic VALUErpango_get_log_attrs(VALUE self, VALUE text, VALUE level, VALUE language){ gint i, len; glong attrs_len; PangoLogAttr *attrs; const gchar *gtext; VALUE ret; gtext = StringValuePtr(text); len = RSTRING_LEN(text); attrs_len = g_utf8_strlen(gtext, (gssize)len) + 1l; attrs = g_new0(PangoLogAttr, attrs_len); pango_get_log_attrs(gtext, len, NUM2INT(level), RVAL2BOXED(language, PANGO_TYPE_LANGUAGE), attrs, attrs_len); ret = rb_ary_new(); for (i = 0; i < attrs_len; i++){ rb_ary_push(ret, BOXED2RVAL(&attrs[i], PANGO_TYPE_LOG_ATTR)); } g_free(attrs); return ret;}
开发者ID:geoffyoungs,项目名称:ruby-gnome2,代码行数:25,
示例21: item_splitstatic VALUEitem_split(VALUE self, VALUE split_index, VALUE split_offset){ return BOXED2RVAL(pango_item_split(_SELF(self), NUM2INT(split_index), NUM2INT(split_offset)), PANGO_TYPE_ITEM);}
开发者ID:benolee,项目名称:ruby-gnome2,代码行数:8,
示例22: rg_s_lookup_defaultstatic VALUErg_s_lookup_default(G_GNUC_UNUSED VALUE self, VALUE id){ GtkIconSet *icon_set; icon_set = gtk_icon_factory_lookup_default(RVAL2CSTR(id)); return BOXED2RVAL(icon_set, GTK_TYPE_ICON_SET);}
开发者ID:Mazwak,项目名称:ruby-gnome2,代码行数:8,
示例23: rg_backgroundstatic VALUErg_background(VALUE self){ GdkGCValues val; gdk_gc_get_values(_SELF(self), &val); return BOXED2RVAL(&val.background, GDK_TYPE_COLOR);}
开发者ID:tec,项目名称:ruby-gnome2,代码行数:8,
示例24: layout_iter_get_char_extentsstatic VALUElayout_iter_get_char_extents(VALUE self){ PangoRectangle logical_rect; pango_layout_iter_get_char_extents(_SELF(self), &logical_rect); return BOXED2RVAL(&logical_rect, PANGO_TYPE_RECTANGLE);}
开发者ID:geoffyoungs,项目名称:ruby-gnome2,代码行数:8,
示例25: coverage_s_from_bytesstatic VALUEcoverage_s_from_bytes(VALUE self, VALUE bytes){ StringValue(bytes); return BOXED2RVAL(pango_coverage_from_bytes((guchar *)RSTRING_PTR(bytes), RSTRING_LEN(bytes)), PANGO_TYPE_COVERAGE);}
开发者ID:geoffyoungs,项目名称:ruby-gnome2,代码行数:8,
示例26: rg_lookupstatic VALUErg_lookup(VALUE self, VALUE id){ GtkIconSet *icon_set; icon_set = gtk_icon_factory_lookup(_SELF(self), RVAL2CSTR(id)); return BOXED2RVAL(icon_set, GTK_TYPE_ICON_SET);}
开发者ID:Mazwak,项目名称:ruby-gnome2,代码行数:8,
示例27: make_gdkeventVALUEmake_gdkevent(GdkEvent *event){ if (!event) return Qnil; return BOXED2RVAL(event, rb_gdk_event_type_to_gtype(event->any.type));}
开发者ID:Vasfed,项目名称:ruby-gnome2,代码行数:8,
示例28: rg_wait_for_contentsstatic VALUErg_wait_for_contents(VALUE self, VALUE target){ return BOXED2RVAL(gtk_clipboard_wait_for_contents( _SELF(self), RVAL2ATOM(target)), GTK_TYPE_SELECTION_DATA);}
开发者ID:msakai,项目名称:ruby-gnome2,代码行数:8,
示例29: rg_wait_for_rich_textstatic VALUErg_wait_for_rich_text(VALUE self, VALUE buffer){ GdkAtom format; gsize length; guint8* data = gtk_clipboard_wait_for_rich_text(_SELF(self), GTK_TEXT_BUFFER(RVAL2GOBJ(buffer)), &format, &length); if (data){ VALUE str = rb_str_new((char*)data, length); g_free(data); return rb_assoc_new(str, BOXED2RVAL(format, GDK_TYPE_ATOM)); } else { return rb_assoc_new(Qnil, BOXED2RVAL(format, GDK_TYPE_ATOM)); }}
开发者ID:msakai,项目名称:ruby-gnome2,代码行数:17,
示例30: rg_lookup_itemstatic VALUErg_lookup_item(VALUE self, VALUE uri){ GError* error = NULL; GtkRecentInfo* info = gtk_recent_manager_lookup_item(_SELF(self), RVAL2CSTR(uri), &error); if (error) RAISE_GERROR(error); return BOXED2RVAL(info, GTK_TYPE_RECENT_INFO);}
开发者ID:msakai,项目名称:ruby-gnome2,代码行数:9,
注:本文中的BOXED2RVAL函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。 C++ BPF_STMT函数代码示例 C++ BOTAN_ASSERT函数代码示例 |