From: Kouhei S. <nu...@co...> - 2015-01-25 11:43:25
|
Kouhei Sutou 2015-01-25 20:42:54 +0900 (Sun, 25 Jan 2015) New Revision: 132135d6a4a7fae2d66b998a7e782b755c4e59af https://github.com/ruby-gnome2/ruby-gnome2/commit/132135d6a4a7fae2d66b998a7e782b755c4e59af Message: pango: add version related methods Modified files: pango/ext/pango/rbpango.c Modified: pango/ext/pango/rbpango.c (+39 -1) =================================================================== --- pango/ext/pango/rbpango.c 2015-01-25 20:07:01 +0900 (902bff1) +++ pango/ext/pango/rbpango.c 2015-01-25 20:42:54 +0900 (1c408ab) @@ -1,6 +1,6 @@ /* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */ /* - * Copyright (C) 2011 Ruby-GNOME2 Project Team + * Copyright (C) 2011-2015 Ruby-GNOME2 Project Team * Copyright (C) 2002-2005 Masao Mutoh * * This library is free software; you can redistribute it and/or @@ -31,6 +31,40 @@ extern void Init_pango(void); * Rendering */ +static VALUE +rg_s_version(G_GNUC_UNUSED VALUE self) +{ + return INT2NUM(pango_version()); +} + +static VALUE +rg_s_version_string(G_GNUC_UNUSED VALUE self) +{ + return CSTR2RVAL(pango_version_string()); +} + +static VALUE +rg_s_check_version(G_GNUC_UNUSED VALUE self, + VALUE major, VALUE minor, VALUE micro) +{ + const gchar *error_message; + error_message = pango_version_check(NUM2INT(major), + NUM2INT(minor), + NUM2INT(micro)); + return CSTR2RVAL(error_message); +} + +static VALUE +rg_s_check_version_p(G_GNUC_UNUSED VALUE self, + VALUE major, VALUE minor, VALUE micro) +{ + const gchar *error_message; + error_message = pango_version_check(NUM2INT(major), + NUM2INT(minor), + NUM2INT(micro)); + return CBOOL2RVAL(!error_message); +} + struct rpango_reorder_items_args { PangoItem *item; VALUE ary; @@ -267,6 +301,10 @@ Init_pango(void) INT2FIX(PANGO_VERSION_MINOR), INT2FIX(PANGO_VERSION_MICRO))); + RG_DEF_SMETHOD(version, 0); + RG_DEF_SMETHOD(version_string, 0); + RG_DEF_SMETHOD(check_version, 3); + RG_DEF_SMETHOD_P(check_version, 3); RG_DEF_SMETHOD(reorder_items, 1); RG_DEF_SMETHOD(unichar_direction, 1); RG_DEF_SMETHOD(find_base_dir, 1); |