pango 3.2.5-x86-mingw32 → 3.2.6-x86-mingw32
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/COPYING.LIB +502 -0
- data/README.md +25 -0
- data/Rakefile +8 -8
- data/ext/pango/extconf.rb +4 -1
- data/ext/pango/pango.def +1 -0
- data/ext/pango/rb-pango-attr-list.c +3 -3
- data/ext/pango/rb-pango-attribute.c +67 -57
- data/ext/pango/rb-pango-conversions.h +3 -3
- data/ext/pango/rb-pango-private.h +0 -1
- data/ext/pango/rb-pango.c +0 -1
- data/ext/pango/rb-pango.h +2 -1
- data/lib/2.2/pango.so +0 -0
- data/lib/2.3/pango.so +0 -0
- data/lib/2.4/pango.so +0 -0
- data/lib/2.5/pango.so +0 -0
- data/lib/pango/loader.rb +13 -1
- data/lib/pango/rectangle.rb +7 -1
- data/pango.gemspec +43 -0
- data/vendor/local/bin/derb.exe +0 -0
- data/vendor/local/bin/fribidi.exe +0 -0
- data/vendor/local/bin/genbrk.exe +0 -0
- data/vendor/local/bin/genccode.exe +0 -0
- data/vendor/local/bin/gencfu.exe +0 -0
- data/vendor/local/bin/gencmn.exe +0 -0
- data/vendor/local/bin/gencnval.exe +0 -0
- data/vendor/local/bin/gendict.exe +0 -0
- data/vendor/local/bin/gennorm2.exe +0 -0
- data/vendor/local/bin/genrb.exe +0 -0
- data/vendor/local/bin/gensprep.exe +0 -0
- data/vendor/local/bin/hb-ot-shape-closure.exe +0 -0
- data/vendor/local/bin/hb-shape.exe +0 -0
- data/vendor/local/bin/hb-subset.exe +0 -0
- data/vendor/local/bin/hb-view.exe +0 -0
- data/vendor/local/bin/icuinfo.exe +0 -0
- data/vendor/local/bin/icupkg.exe +0 -0
- data/vendor/local/bin/libfribidi-0.dll +0 -0
- data/vendor/local/bin/libgraphene-1.0-0.dll +0 -0
- data/vendor/local/bin/libharfbuzz-0.dll +0 -0
- data/vendor/local/bin/libharfbuzz-subset-0.dll +0 -0
- data/vendor/local/bin/libpango-1.0-0.dll +0 -0
- data/vendor/local/bin/libpangocairo-1.0-0.dll +0 -0
- data/vendor/local/bin/libpangoft2-1.0-0.dll +0 -0
- data/vendor/local/bin/libpangowin32-1.0-0.dll +0 -0
- data/vendor/local/bin/makeconv.exe +0 -0
- data/vendor/local/bin/pango-view.exe +0 -0
- data/vendor/local/bin/pkgdata.exe +0 -0
- data/vendor/local/bin/uconv.exe +0 -0
- data/vendor/local/include/fribidi/fribidi-config.h +2 -2
- data/vendor/local/include/harfbuzz/hb-blob.h +2 -0
- data/vendor/local/include/harfbuzz/hb-common.h +24 -3
- data/vendor/local/include/harfbuzz/hb-face.h +4 -0
- data/vendor/local/include/harfbuzz/hb-map.h +104 -0
- data/vendor/local/include/harfbuzz/hb-ot-layout.h +1 -1
- data/vendor/local/include/harfbuzz/hb-set.h +0 -2
- data/vendor/local/include/harfbuzz/hb-subset-plan.hh +46 -25
- data/vendor/local/include/harfbuzz/hb-subset.h +4 -1
- data/vendor/local/include/harfbuzz/hb-version.h +3 -3
- data/vendor/local/include/harfbuzz/hb.h +1 -0
- data/vendor/local/include/pango-1.0/pango/pango-features.h +2 -2
- data/vendor/local/lib/cmake/harfbuzz/harfbuzz-config.cmake +1 -1
- data/vendor/local/lib/icudt.dll +0 -0
- data/vendor/local/lib/icudt58.dll +0 -0
- data/vendor/local/lib/icuin.dll +0 -0
- data/vendor/local/lib/icuin58.dll +0 -0
- data/vendor/local/lib/icuio.dll +0 -0
- data/vendor/local/lib/icuio58.dll +0 -0
- data/vendor/local/lib/icutest.dll +0 -0
- data/vendor/local/lib/icutest58.dll +0 -0
- data/vendor/local/lib/icutu.dll +0 -0
- data/vendor/local/lib/icutu58.dll +0 -0
- data/vendor/local/lib/icuuc.dll +0 -0
- data/vendor/local/lib/icuuc58.dll +0 -0
- data/vendor/local/lib/libfribidi.dll.a +0 -0
- data/vendor/local/lib/libgraphene-1.0.dll.a +0 -0
- data/vendor/local/lib/libharfbuzz-icu.a +0 -0
- data/vendor/local/lib/libharfbuzz-icu.la +3 -3
- data/vendor/local/lib/libharfbuzz-subset.dll.a +0 -0
- data/vendor/local/lib/libharfbuzz-subset.la +3 -3
- data/vendor/local/lib/libharfbuzz.dll.a +0 -0
- data/vendor/local/lib/libharfbuzz.la +3 -3
- data/vendor/local/lib/libicudt.dll.a +0 -0
- data/vendor/local/lib/libicudt58.dll +0 -0
- data/vendor/local/lib/libicuin.dll.a +0 -0
- data/vendor/local/lib/libicuio.dll.a +0 -0
- data/vendor/local/lib/libicutest.dll.a +0 -0
- data/vendor/local/lib/libicutu.dll.a +0 -0
- data/vendor/local/lib/libicuuc.dll.a +0 -0
- data/vendor/local/lib/libpango-1.0.dll.a +0 -0
- data/vendor/local/lib/libpango-1.0.la +2 -2
- data/vendor/local/lib/libpangocairo-1.0.dll.a +0 -0
- data/vendor/local/lib/libpangocairo-1.0.la +2 -2
- data/vendor/local/lib/libpangoft2-1.0.dll.a +0 -0
- data/vendor/local/lib/libpangoft2-1.0.la +2 -2
- data/vendor/local/lib/libpangowin32-1.0.dll.a +0 -0
- data/vendor/local/lib/libpangowin32-1.0.la +2 -2
- data/vendor/local/lib/pkgconfig/fribidi.pc +1 -1
- data/vendor/local/lib/pkgconfig/harfbuzz-icu.pc +1 -1
- data/vendor/local/lib/pkgconfig/harfbuzz-subset.pc +1 -1
- data/vendor/local/lib/pkgconfig/harfbuzz.pc +1 -1
- data/vendor/local/lib/pkgconfig/pango.pc +2 -2
- data/vendor/local/lib/pkgconfig/pangocairo.pc +2 -2
- data/vendor/local/lib/pkgconfig/pangoft2.pc +2 -2
- data/vendor/local/lib/pkgconfig/pangowin32.pc +1 -1
- data/vendor/local/libexec/installed-tests/graphene-1.0/box.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/euler.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/frustum.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/matrix.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/plane.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/point.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/point3d.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/quad.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/quaternion.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/ray.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/rect.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/simd.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/size.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/sphere.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/triangle.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/vec2.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/vec3.exe +0 -0
- data/vendor/local/libexec/installed-tests/graphene-1.0/vec4.exe +0 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-Buffers.html +5 -3
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz-hb-common.html +5 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/harfbuzz.devhelp2 +1 -0
- data/vendor/local/share/gtk-doc/html/harfbuzz/pt02.html +1 -1
- data/vendor/local/share/gtk-doc/html/pango/index.html +1 -1
- data/vendor/local/share/gtk-doc/html/pango/pango-Version-Checking.html +2 -2
- data/vendor/local/share/man/man3/fribidi_charset_to_unicode.3 +98 -0
- data/vendor/local/share/man/man3/fribidi_debug_status.3 +44 -0
- data/vendor/local/share/man/man3/fribidi_get_bidi_type.3 +58 -0
- data/vendor/local/share/man/man3/fribidi_get_bidi_type_name.3 +56 -0
- data/vendor/local/share/man/man3/fribidi_get_bidi_types.3 +68 -0
- data/vendor/local/share/man/man3/fribidi_get_bracket.3 +59 -0
- data/vendor/local/share/man/man3/fribidi_get_bracket_types.3 +73 -0
- data/vendor/local/share/man/man3/fribidi_get_joining_type.3 +87 -0
- data/vendor/local/share/man/man3/fribidi_get_joining_type_name.3 +83 -0
- data/vendor/local/share/man/man3/fribidi_get_joining_types.3 +96 -0
- data/vendor/local/share/man/man3/fribidi_get_mirror_char.3 +68 -0
- data/vendor/local/share/man/man3/fribidi_get_par_direction.3 +100 -0
- data/vendor/local/share/man/man3/fribidi_get_par_embedding_levels.3 +98 -0
- data/vendor/local/share/man/man3/fribidi_get_par_embedding_levels_ex.3 +114 -0
- data/vendor/local/share/man/man3/fribidi_get_type.3 +50 -0
- data/vendor/local/share/man/man3/fribidi_get_type_internal.3 +50 -0
- data/vendor/local/share/man/man3/fribidi_join_arabic.3 +92 -0
- data/vendor/local/share/man/man3/fribidi_log2vis.3 +124 -0
- data/vendor/local/share/man/man3/fribidi_log2vis_get_embedding_levels.3 +97 -0
- data/vendor/local/share/man/man3/fribidi_mirroring_status.3 +44 -0
- data/vendor/local/share/man/man3/fribidi_parse_charset.3 +78 -0
- data/vendor/local/share/man/man3/fribidi_remove_bidi_marks.3 +96 -0
- data/vendor/local/share/man/man3/fribidi_reorder_line.3 +146 -0
- data/vendor/local/share/man/man3/fribidi_reorder_nsm_status.3 +44 -0
- data/vendor/local/share/man/man3/fribidi_set_debug.3 +48 -0
- data/vendor/local/share/man/man3/fribidi_set_mirroring.3 +58 -0
- data/vendor/local/share/man/man3/fribidi_set_reorder_nsm.3 +60 -0
- data/vendor/local/share/man/man3/fribidi_shape.3 +89 -0
- data/vendor/local/share/man/man3/fribidi_shape_arabic.3 +95 -0
- data/vendor/local/share/man/man3/fribidi_shape_mirroring.3 +71 -0
- data/vendor/local/share/man/man3/fribidi_unicode_to_charset.3 +99 -0
- metadata +39 -47
- data/ext/pango/rb-pango-context.c +0 -79
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2017 Ruby-GNOME2 Project Team
|
3
|
+
* Copyright (C) 2017-2018 Ruby-GNOME2 Project Team
|
4
4
|
*
|
5
5
|
* This library is free software; you can redistribute it and/or
|
6
6
|
* modify it under the terms of the GNU Lesser General Public
|
@@ -20,6 +20,17 @@
|
|
20
20
|
|
21
21
|
#include "rb-pango-private.h"
|
22
22
|
|
23
|
+
static GType
|
24
|
+
pango_attribute_get_type(void)
|
25
|
+
{
|
26
|
+
static GType our_type = 0;
|
27
|
+
if (our_type == 0)
|
28
|
+
our_type = g_boxed_type_register_static("PangoAttribute",
|
29
|
+
(GBoxedCopyFunc)pango_attribute_copy,
|
30
|
+
(GBoxedFreeFunc)pango_attribute_destroy);
|
31
|
+
return our_type;
|
32
|
+
}
|
33
|
+
|
23
34
|
VALUE
|
24
35
|
rbpango_attribute_to_ruby(PangoAttribute *attribute)
|
25
36
|
{
|
@@ -30,26 +41,16 @@ rbpango_attribute_to_ruby(PangoAttribute *attribute)
|
|
30
41
|
rb_attr_type = GENUM2RVAL(attribute->klass->type, PANGO_TYPE_ATTR_TYPE);
|
31
42
|
CONST_ID(id_to_class, "to_class");
|
32
43
|
klass = rb_funcall(rb_attr_type, id_to_class, 0);
|
33
|
-
return
|
34
|
-
|
35
|
-
|
36
|
-
|
44
|
+
return rbgobj_make_boxed_raw(pango_attribute_copy(attribute),
|
45
|
+
pango_attribute_get_type(),
|
46
|
+
klass,
|
47
|
+
0);
|
37
48
|
}
|
38
49
|
|
39
50
|
PangoAttribute *
|
40
51
|
rbpango_attribute_from_ruby(VALUE rb_attribute)
|
41
52
|
{
|
42
|
-
|
43
|
-
|
44
|
-
Data_Get_Struct(rb_attribute, PangoAttribute, attribute);
|
45
|
-
|
46
|
-
return attribute;
|
47
|
-
}
|
48
|
-
|
49
|
-
static VALUE
|
50
|
-
rbpango_attribute_allocate(VALUE klass)
|
51
|
-
{
|
52
|
-
return Data_Wrap_Struct(klass, NULL, pango_attribute_destroy, 0);
|
53
|
+
return rbgobj_boxed_get(rb_attribute, pango_attribute_get_type());
|
53
54
|
}
|
54
55
|
|
55
56
|
static VALUE
|
@@ -68,7 +69,7 @@ rbpango_attr_language_initialize(VALUE self, VALUE rb_language)
|
|
68
69
|
PangoLanguage *language;
|
69
70
|
|
70
71
|
language = RVAL2PANGOLANGUAGE(rb_language);
|
71
|
-
|
72
|
+
G_INITIALIZE(self, pango_attr_language_new(language));
|
72
73
|
|
73
74
|
return Qnil;
|
74
75
|
}
|
@@ -76,7 +77,7 @@ rbpango_attr_language_initialize(VALUE self, VALUE rb_language)
|
|
76
77
|
static VALUE
|
77
78
|
rbpango_attr_family_initialize(VALUE self, VALUE rb_family)
|
78
79
|
{
|
79
|
-
|
80
|
+
G_INITIALIZE(self, pango_attr_family_new(RVAL2CSTR(rb_family)));
|
80
81
|
|
81
82
|
return Qnil;
|
82
83
|
}
|
@@ -84,7 +85,7 @@ rbpango_attr_family_initialize(VALUE self, VALUE rb_family)
|
|
84
85
|
static VALUE
|
85
86
|
rbpango_attr_style_initialize(VALUE self, VALUE rb_style)
|
86
87
|
{
|
87
|
-
|
88
|
+
G_INITIALIZE(self, pango_attr_style_new(RVAL2PANGOSTYLE(rb_style)));
|
88
89
|
|
89
90
|
return Qnil;
|
90
91
|
}
|
@@ -102,7 +103,7 @@ rbpango_attr_style_get_value(VALUE self)
|
|
102
103
|
static VALUE
|
103
104
|
rbpango_attr_weight_initialize(VALUE self, VALUE rb_weight)
|
104
105
|
{
|
105
|
-
|
106
|
+
G_INITIALIZE(self, pango_attr_weight_new(RVAL2PANGOWEIGHT(rb_weight)));
|
106
107
|
|
107
108
|
return Qnil;
|
108
109
|
}
|
@@ -120,7 +121,7 @@ rbpango_attr_weight_get_value(VALUE self)
|
|
120
121
|
static VALUE
|
121
122
|
rbpango_attr_variant_initialize(VALUE self, VALUE rb_variant)
|
122
123
|
{
|
123
|
-
|
124
|
+
G_INITIALIZE(self, pango_attr_variant_new(RVAL2PANGOVARIANT(rb_variant)));
|
124
125
|
|
125
126
|
return Qnil;
|
126
127
|
}
|
@@ -138,7 +139,7 @@ rbpango_attr_variant_get_value(VALUE self)
|
|
138
139
|
static VALUE
|
139
140
|
rbpango_attr_stretch_initialize(VALUE self, VALUE rb_stretch)
|
140
141
|
{
|
141
|
-
|
142
|
+
G_INITIALIZE(self, pango_attr_stretch_new(RVAL2PANGOSTRETCH(rb_stretch)));
|
142
143
|
|
143
144
|
return Qnil;
|
144
145
|
}
|
@@ -159,7 +160,7 @@ rbpango_attr_size_initialize(VALUE self, VALUE rb_size)
|
|
159
160
|
gint size;
|
160
161
|
|
161
162
|
size = NUM2INT(rb_size);
|
162
|
-
|
163
|
+
G_INITIALIZE(self, pango_attr_size_new(size));
|
163
164
|
|
164
165
|
return Qnil;
|
165
166
|
}
|
@@ -180,7 +181,7 @@ rbpango_attr_font_desc_initialize(VALUE self, VALUE rb_font_desc)
|
|
180
181
|
rb_intern("new"), 1, rb_font_desc);
|
181
182
|
}
|
182
183
|
font_desc = RVAL2PANGOFONTDESCRIPTION(rb_font_desc);
|
183
|
-
|
184
|
+
G_INITIALIZE(self, pango_attr_font_desc_new(font_desc));
|
184
185
|
|
185
186
|
return Qnil;
|
186
187
|
}
|
@@ -191,9 +192,10 @@ rbpango_attr_foregound_initialize(VALUE self,
|
|
191
192
|
VALUE rb_green,
|
192
193
|
VALUE rb_blue)
|
193
194
|
{
|
194
|
-
|
195
|
-
|
196
|
-
|
195
|
+
G_INITIALIZE(self,
|
196
|
+
pango_attr_foreground_new(NUM2UINT(rb_red),
|
197
|
+
NUM2UINT(rb_green),
|
198
|
+
NUM2UINT(rb_blue)));
|
197
199
|
|
198
200
|
return Qnil;
|
199
201
|
}
|
@@ -204,9 +206,10 @@ rbpango_attr_background_initialize(VALUE self,
|
|
204
206
|
VALUE rb_green,
|
205
207
|
VALUE rb_blue)
|
206
208
|
{
|
207
|
-
|
208
|
-
|
209
|
-
|
209
|
+
G_INITIALIZE(self,
|
210
|
+
pango_attr_background_new(NUM2UINT(rb_red),
|
211
|
+
NUM2UINT(rb_green),
|
212
|
+
NUM2UINT(rb_blue)));
|
210
213
|
|
211
214
|
return Qnil;
|
212
215
|
}
|
@@ -214,7 +217,8 @@ rbpango_attr_background_initialize(VALUE self,
|
|
214
217
|
static VALUE
|
215
218
|
rbpango_attr_underline_initialize(VALUE self, VALUE rb_underline)
|
216
219
|
{
|
217
|
-
|
220
|
+
G_INITIALIZE(self,
|
221
|
+
pango_attr_underline_new(RVAL2PANGOUNDERLINE(rb_underline)));
|
218
222
|
|
219
223
|
return Qnil;
|
220
224
|
}
|
@@ -232,7 +236,8 @@ rbpango_attr_underline_get_value(VALUE self)
|
|
232
236
|
static VALUE
|
233
237
|
rbpango_attr_strikethrough_initialize(VALUE self, VALUE rb_strikethrough)
|
234
238
|
{
|
235
|
-
|
239
|
+
G_INITIALIZE(self,
|
240
|
+
pango_attr_strikethrough_new(RVAL2CBOOL(rb_strikethrough)));
|
236
241
|
|
237
242
|
return Qnil;
|
238
243
|
}
|
@@ -240,7 +245,7 @@ rbpango_attr_strikethrough_initialize(VALUE self, VALUE rb_strikethrough)
|
|
240
245
|
static VALUE
|
241
246
|
rbpango_attr_rise_initialize(VALUE self, VALUE rb_rise)
|
242
247
|
{
|
243
|
-
|
248
|
+
G_INITIALIZE(self, pango_attr_rise_new(NUM2INT(rb_rise)));
|
244
249
|
|
245
250
|
return Qnil;
|
246
251
|
}
|
@@ -260,14 +265,15 @@ rbpango_attr_shape_initialize(int argc, VALUE *argv, VALUE self)
|
|
260
265
|
logical_rect = RVAL2PANGORECTANGLE(rb_logical_rect);
|
261
266
|
|
262
267
|
if (NIL_P(rb_data)) {
|
263
|
-
|
268
|
+
G_INITIALIZE(self, pango_attr_shape_new(ink_rect, logical_rect));
|
264
269
|
} else {
|
265
270
|
G_RELATIVE(self, rb_data);
|
266
|
-
|
267
|
-
|
268
|
-
|
269
|
-
|
270
|
-
|
271
|
+
G_INITIALIZE(self,
|
272
|
+
pango_attr_shape_new_with_data(ink_rect,
|
273
|
+
logical_rect,
|
274
|
+
(gpointer)rb_data,
|
275
|
+
NULL,
|
276
|
+
NULL));
|
271
277
|
}
|
272
278
|
|
273
279
|
return Qnil;
|
@@ -279,7 +285,7 @@ rbpango_attr_shape_get_data(VALUE self)
|
|
279
285
|
PangoAttrShape *attr_shape;
|
280
286
|
VALUE rb_data;
|
281
287
|
|
282
|
-
|
288
|
+
attr_shape = (PangoAttrShape *)rbpango_attribute_from_ruby(self);
|
283
289
|
rb_data = (VALUE)(attr_shape->data);
|
284
290
|
return rb_data;
|
285
291
|
}
|
@@ -287,7 +293,7 @@ rbpango_attr_shape_get_data(VALUE self)
|
|
287
293
|
static VALUE
|
288
294
|
rbpango_attr_scale_initialize(VALUE self, VALUE rb_scale)
|
289
295
|
{
|
290
|
-
|
296
|
+
G_INITIALIZE(self, pango_attr_scale_new(NUM2DBL(rb_scale)));
|
291
297
|
|
292
298
|
return Qnil;
|
293
299
|
}
|
@@ -295,7 +301,7 @@ rbpango_attr_scale_initialize(VALUE self, VALUE rb_scale)
|
|
295
301
|
static VALUE
|
296
302
|
rbpango_attr_fallback_initialize(VALUE self, VALUE rb_enable_fallback)
|
297
303
|
{
|
298
|
-
|
304
|
+
G_INITIALIZE(self, pango_attr_fallback_new(RVAL2CBOOL(rb_enable_fallback)));
|
299
305
|
|
300
306
|
return Qnil;
|
301
307
|
}
|
@@ -303,7 +309,8 @@ rbpango_attr_fallback_initialize(VALUE self, VALUE rb_enable_fallback)
|
|
303
309
|
static VALUE
|
304
310
|
rbpango_attr_letter_spacing_initialize(VALUE self, VALUE rb_letter_spacing)
|
305
311
|
{
|
306
|
-
|
312
|
+
G_INITIALIZE(self,
|
313
|
+
pango_attr_letter_spacing_new(NUM2INT(rb_letter_spacing)));
|
307
314
|
|
308
315
|
return Qnil;
|
309
316
|
}
|
@@ -314,9 +321,10 @@ rbpango_attr_underline_color_initialize(VALUE self,
|
|
314
321
|
VALUE rb_green,
|
315
322
|
VALUE rb_blue)
|
316
323
|
{
|
317
|
-
|
318
|
-
|
319
|
-
|
324
|
+
G_INITIALIZE(self,
|
325
|
+
pango_attr_underline_color_new(NUM2UINT(rb_red),
|
326
|
+
NUM2UINT(rb_green),
|
327
|
+
NUM2UINT(rb_blue)));
|
320
328
|
|
321
329
|
return Qnil;
|
322
330
|
}
|
@@ -327,9 +335,10 @@ rbpango_attr_strikethrough_color_initialize(VALUE self,
|
|
327
335
|
VALUE rb_green,
|
328
336
|
VALUE rb_blue)
|
329
337
|
{
|
330
|
-
|
331
|
-
|
332
|
-
|
338
|
+
G_INITIALIZE(self,
|
339
|
+
pango_attr_strikethrough_color_new(NUM2UINT(rb_red),
|
340
|
+
NUM2UINT(rb_green),
|
341
|
+
NUM2UINT(rb_blue)));
|
333
342
|
|
334
343
|
return Qnil;
|
335
344
|
}
|
@@ -337,7 +346,8 @@ rbpango_attr_strikethrough_color_initialize(VALUE self,
|
|
337
346
|
static VALUE
|
338
347
|
rbpango_attr_absolute_size_initialize(VALUE self, VALUE rb_absolute_size)
|
339
348
|
{
|
340
|
-
|
349
|
+
G_INITIALIZE(self,
|
350
|
+
pango_attr_size_new_absolute(NUM2INT(rb_absolute_size)));
|
341
351
|
|
342
352
|
return Qnil;
|
343
353
|
}
|
@@ -345,7 +355,7 @@ rbpango_attr_absolute_size_initialize(VALUE self, VALUE rb_absolute_size)
|
|
345
355
|
static VALUE
|
346
356
|
rbpango_attr_gravity_initialize(VALUE self, VALUE rb_gravity)
|
347
357
|
{
|
348
|
-
|
358
|
+
G_INITIALIZE(self, pango_attr_gravity_new(RVAL2PANGOGRAVITY(rb_gravity)));
|
349
359
|
|
350
360
|
return Qnil;
|
351
361
|
}
|
@@ -366,7 +376,7 @@ rbpango_attr_gravity_hint_initialize(VALUE self, VALUE rb_gravity_hint)
|
|
366
376
|
PangoGravityHint hint;
|
367
377
|
|
368
378
|
hint = RVAL2PANGOGRAVITYHINT(rb_gravity_hint);
|
369
|
-
|
379
|
+
G_INITIALIZE(self, pango_attr_gravity_hint_new(hint));
|
370
380
|
|
371
381
|
return Qnil;
|
372
382
|
}
|
@@ -384,7 +394,8 @@ rbpango_attr_gravity_hint_get_value(VALUE self)
|
|
384
394
|
static VALUE
|
385
395
|
rbpango_attr_font_features_initialize(VALUE self, VALUE rb_font_features)
|
386
396
|
{
|
387
|
-
|
397
|
+
G_INITIALIZE(self,
|
398
|
+
pango_attr_font_features_new(RVAL2CSTR(rb_font_features)));
|
388
399
|
|
389
400
|
return Qnil;
|
390
401
|
}
|
@@ -392,7 +403,7 @@ rbpango_attr_font_features_initialize(VALUE self, VALUE rb_font_features)
|
|
392
403
|
static VALUE
|
393
404
|
rbpango_attr_foreground_alpha_initialize(VALUE self, VALUE rb_alpha)
|
394
405
|
{
|
395
|
-
|
406
|
+
G_INITIALIZE(self, pango_attr_foreground_alpha_new(NUM2UINT(rb_alpha)));
|
396
407
|
|
397
408
|
return Qnil;
|
398
409
|
}
|
@@ -400,7 +411,7 @@ rbpango_attr_foreground_alpha_initialize(VALUE self, VALUE rb_alpha)
|
|
400
411
|
static VALUE
|
401
412
|
rbpango_attr_background_alpha_initialize(VALUE self, VALUE rb_alpha)
|
402
413
|
{
|
403
|
-
|
414
|
+
G_INITIALIZE(self, pango_attr_background_alpha_new(NUM2UINT(rb_alpha)));
|
404
415
|
|
405
416
|
return Qnil;
|
406
417
|
}
|
@@ -440,8 +451,7 @@ rbpango_attribute_init(VALUE mPango)
|
|
440
451
|
VALUE cAttrForegroundAlpha;
|
441
452
|
VALUE cAttrBackgroundAlpha;
|
442
453
|
|
443
|
-
cAttribute =
|
444
|
-
rb_define_alloc_func(cAttribute, rbpango_attribute_allocate);
|
454
|
+
cAttribute = G_DEF_CLASS(pango_attribute_get_type(), "Attribute", mPango);
|
445
455
|
|
446
456
|
#define DEFINE_ABSTRACT_ATTRIBUTE_BEGIN(ClassName, parent) do { \
|
447
457
|
c ## ClassName = rb_define_class_under(mPango, \
|
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2017 Ruby-GNOME2 Project Team
|
3
|
+
* Copyright (C) 2017-2018 Ruby-GNOME2 Project Team
|
4
4
|
*
|
5
5
|
* This library is free software; you can redistribute it and/or
|
6
6
|
* modify it under the terms of the GNU Lesser General Public
|
@@ -75,7 +75,7 @@ extern PangoAttribute *rbpango_attribute_from_ruby(VALUE rb_attribute);
|
|
75
75
|
#define PANGOLOGATTR2RVAL(o) (BOXED2RVAL(o, PANGO_TYPE_LOG_ATTR))
|
76
76
|
#define RVAL2PANGOMATRIX(o) ((PangoMatrix*)RVAL2BOXED(o, PANGO_TYPE_MATRIX))
|
77
77
|
#define PANGOMATRIX2RVAL(o) (BOXED2RVAL(o, PANGO_TYPE_MATRIX))
|
78
|
-
#define RVAL2PANGORECTANGLE(o) ((PangoRectangle *)
|
78
|
+
#define RVAL2PANGORECTANGLE(o) ((PangoRectangle *)rb_gi_struct_get_raw(o, G_TYPE_NONE))
|
79
79
|
#define RVAL2PANGOSCRIPTITER(o) ((PangoScriptIter*)RVAL2BOXED(o, PANGO_TYPE_SCRIPT_ITER))
|
80
80
|
#define PANGOSCRIPTITER2RVAL(o) (BOXED2RVAL(o, PANGO_TYPE_SCRIPT_ITER))
|
81
81
|
#define RVAL2PANGOTABARRAY(o) ((PangoTabArray*)RVAL2BOXED(o, PANGO_TYPE_TAB_ARRAY))
|
@@ -115,4 +115,4 @@ extern PangoAttribute *rbpango_attribute_from_ruby(VALUE rb_attribute);
|
|
115
115
|
#define RVAL2PANGOFONTMASK(o) (RVAL2GFLAGS(o, PANGO_TYPE_FONT_MASK))
|
116
116
|
#define PANGOFONTMASK2RVAL(o) (GFLAGS2RVAL(o, PANGO_TYPE_FONT_MASK))
|
117
117
|
|
118
|
-
#define RVAL2PANGOATTR(o) (
|
118
|
+
#define RVAL2PANGOATTR(o) (rbpango_attribute_from_ruby(o))
|
@@ -25,5 +25,4 @@
|
|
25
25
|
G_GNUC_INTERNAL void rbpango_attribute_init(VALUE mPango);
|
26
26
|
G_GNUC_INTERNAL void rbpango_attr_iterator_init(VALUE mPango);
|
27
27
|
G_GNUC_INTERNAL void rbpango_attr_list_init(VALUE mPango);
|
28
|
-
G_GNUC_INTERNAL void rbpango_context_init(VALUE mPango);
|
29
28
|
G_GNUC_INTERNAL void rbpango_scale_init(VALUE mPango);
|
data/ext/pango/rb-pango.c
CHANGED
data/ext/pango/rb-pango.h
CHANGED
@@ -1,6 +1,6 @@
|
|
1
1
|
/* -*- c-file-style: "ruby"; indent-tabs-mode: nil -*- */
|
2
2
|
/*
|
3
|
-
* Copyright (C) 2017 Ruby-GNOME2 Project Team
|
3
|
+
* Copyright (C) 2017-2018 Ruby-GNOME2 Project Team
|
4
4
|
*
|
5
5
|
* This library is free software; you can redistribute it and/or
|
6
6
|
* modify it under the terms of the GNU Lesser General Public
|
@@ -23,6 +23,7 @@
|
|
23
23
|
#include <pango/pango.h>
|
24
24
|
|
25
25
|
#include <rbgobject.h>
|
26
|
+
#include <rb-gobject-introspection.h>
|
26
27
|
|
27
28
|
#include "rb-pango-conversions.h"
|
28
29
|
|
data/lib/2.2/pango.so
CHANGED
Binary file
|
data/lib/2.3/pango.so
CHANGED
Binary file
|
data/lib/2.4/pango.so
CHANGED
Binary file
|
data/lib/2.5/pango.so
CHANGED
Binary file
|
data/lib/pango/loader.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright (C) 2017 Ruby-GNOME2 Project Team
|
1
|
+
# Copyright (C) 2017-2018 Ruby-GNOME2 Project Team
|
2
2
|
#
|
3
3
|
# This library is free software; you can redistribute it and/or
|
4
4
|
# modify it under the terms of the GNU Lesser General Public
|
@@ -30,10 +30,22 @@ module Pango
|
|
30
30
|
load_methods(info, klass)
|
31
31
|
end
|
32
32
|
require_libraries
|
33
|
+
convert_attribute_classes
|
34
|
+
end
|
35
|
+
|
36
|
+
def convert_attribute_classes
|
37
|
+
self.class.register_boxed_class_converter(Attribute.gtype) do |attribute|
|
38
|
+
attribute.klass.type.to_class
|
39
|
+
end
|
33
40
|
end
|
34
41
|
|
35
42
|
def load_struct_info(info)
|
36
43
|
case info.name
|
44
|
+
when "AttrClass"
|
45
|
+
klass = self.class.define_struct(info.size,
|
46
|
+
info.name,
|
47
|
+
@base_module)
|
48
|
+
load_fields(info, klass)
|
37
49
|
when /Class\z/
|
38
50
|
super
|
39
51
|
when "Attribute", /\AAttr[A-Z]/
|
data/lib/pango/rectangle.rb
CHANGED
@@ -1,4 +1,4 @@
|
|
1
|
-
# Copyright (C) 2017 Ruby-GNOME2 Project Team
|
1
|
+
# Copyright (C) 2017-2018 Ruby-GNOME2 Project Team
|
2
2
|
#
|
3
3
|
# This library is free software; you can redistribute it and/or
|
4
4
|
# modify it under the terms of the GNU Lesser General Public
|
@@ -28,5 +28,11 @@ module Pango
|
|
28
28
|
def to_a
|
29
29
|
[x, y, width, height]
|
30
30
|
end
|
31
|
+
|
32
|
+
def dup
|
33
|
+
duplicated = self.class.new(x, y, width, height)
|
34
|
+
duplicated.taint if tainted?
|
35
|
+
duplicated
|
36
|
+
end
|
31
37
|
end
|
32
38
|
end
|
data/pango.gemspec
ADDED
@@ -0,0 +1,43 @@
|
|
1
|
+
# -*- ruby -*-
|
2
|
+
#
|
3
|
+
# Copyright (C) 2018 Ruby-GNOME2 Project Team
|
4
|
+
#
|
5
|
+
# This library is free software; you can redistribute it and/or
|
6
|
+
# modify it under the terms of the GNU Lesser General Public
|
7
|
+
# License as published by the Free Software Foundation; either
|
8
|
+
# version 2.1 of the License, or (at your option) any later version.
|
9
|
+
#
|
10
|
+
# This library is distributed in the hope that it will be useful,
|
11
|
+
# but WITHOUT ANY WARRANTY; without even the implied warranty of
|
12
|
+
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
13
|
+
# Lesser General Public License for more details.
|
14
|
+
#
|
15
|
+
# You should have received a copy of the GNU Lesser General Public
|
16
|
+
# License along with this library; if not, write to the Free Software
|
17
|
+
# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
|
18
|
+
|
19
|
+
require_relative "../glib2/version"
|
20
|
+
|
21
|
+
Gem::Specification.new do |s|
|
22
|
+
s.name = "pango"
|
23
|
+
s.summary = "Ruby/Pango is a Ruby binding of pango-1.x."
|
24
|
+
s.description = "Ruby/Pango is a Ruby binding of pango-1.x."
|
25
|
+
s.author = "The Ruby-GNOME2 Project Team"
|
26
|
+
s.email = "ruby-gnome2-devel-en@lists.sourceforge.net"
|
27
|
+
s.homepage = "https://ruby-gnome2.osdn.jp/"
|
28
|
+
s.licenses = ["LGPL-2.1+"]
|
29
|
+
s.version = ruby_glib2_version
|
30
|
+
s.extensions = ["ext/#{s.name}/extconf.rb"]
|
31
|
+
s.require_paths = ["lib"]
|
32
|
+
s.files = [
|
33
|
+
"COPYING.LIB",
|
34
|
+
"README.md",
|
35
|
+
"Rakefile",
|
36
|
+
"#{s.name}.gemspec",
|
37
|
+
"extconf.rb",
|
38
|
+
"ext/#{s.name}/depend",
|
39
|
+
]
|
40
|
+
s.files += Dir.glob("lib/**/*.rb")
|
41
|
+
s.files += Dir.glob("ext/#{s.name}/*.{c,h,def,rb}")
|
42
|
+
s.files += Dir.glob("test/**/*")
|
43
|
+
end
|
data/vendor/local/bin/derb.exe
CHANGED
Binary file
|
Binary file
|
data/vendor/local/bin/genbrk.exe
CHANGED
Binary file
|
Binary file
|
data/vendor/local/bin/gencfu.exe
CHANGED
Binary file
|
data/vendor/local/bin/gencmn.exe
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/vendor/local/bin/genrb.exe
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/vendor/local/bin/icupkg.exe
CHANGED
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
Binary file
|
data/vendor/local/bin/uconv.exe
CHANGED
Binary file
|
@@ -7,10 +7,10 @@
|
|
7
7
|
#define FRIBIDI_NAME "GNU FriBidi"
|
8
8
|
#define FRIBIDI_BUGREPORT "https://github.com/fribidi/fribidi/issues/new"
|
9
9
|
|
10
|
-
#define FRIBIDI_VERSION "1.0.
|
10
|
+
#define FRIBIDI_VERSION "1.0.3"
|
11
11
|
#define FRIBIDI_MAJOR_VERSION 1
|
12
12
|
#define FRIBIDI_MINOR_VERSION 0
|
13
|
-
#define FRIBIDI_MICRO_VERSION
|
13
|
+
#define FRIBIDI_MICRO_VERSION 3
|
14
14
|
#define FRIBIDI_INTERFACE_VERSION 4
|
15
15
|
#define FRIBIDI_INTERFACE_VERSION_STRING "4"
|
16
16
|
|
@@ -123,6 +123,8 @@ hb_blob_get_data (hb_blob_t *blob, unsigned int *length);
|
|
123
123
|
HB_EXTERN char *
|
124
124
|
hb_blob_get_data_writable (hb_blob_t *blob, unsigned int *length);
|
125
125
|
|
126
|
+
HB_EXTERN hb_blob_t *
|
127
|
+
hb_blob_create_from_file (const char *file_name);
|
126
128
|
|
127
129
|
HB_END_DECLS
|
128
130
|
|
@@ -49,6 +49,16 @@
|
|
49
49
|
# include <inttypes.h>
|
50
50
|
#elif defined (_AIX)
|
51
51
|
# include <sys/inttypes.h>
|
52
|
+
#elif defined (_MSC_VER) && _MSC_VER < 1600
|
53
|
+
/* VS 2010 (_MSC_VER 1600) has stdint.h */
|
54
|
+
typedef __int8 int8_t;
|
55
|
+
typedef unsigned __int8 uint8_t;
|
56
|
+
typedef __int16 int16_t;
|
57
|
+
typedef unsigned __int16 uint16_t;
|
58
|
+
typedef __int32 int32_t;
|
59
|
+
typedef unsigned __int32 uint32_t;
|
60
|
+
typedef __int64 int64_t;
|
61
|
+
typedef unsigned __int64 uint64_t;
|
52
62
|
#else
|
53
63
|
# include <stdint.h>
|
54
64
|
#endif
|
@@ -142,8 +152,8 @@ hb_language_get_default (void);
|
|
142
152
|
|
143
153
|
/* hb_script_t */
|
144
154
|
|
145
|
-
/*
|
146
|
-
/*
|
155
|
+
/* https://unicode.org/iso15924/ */
|
156
|
+
/* https://docs.google.com/spreadsheets/d/1Y90M0Ie3MUJ6UVCRDOypOtijlMDLNNyyLk36T6iMu0o */
|
147
157
|
/* Unicode Character Database property: Script (sc) */
|
148
158
|
typedef enum
|
149
159
|
{
|
@@ -315,6 +325,17 @@ typedef enum
|
|
315
325
|
/*10.0*/HB_SCRIPT_SOYOMBO = HB_TAG ('S','o','y','o'),
|
316
326
|
/*10.0*/HB_SCRIPT_ZANABAZAR_SQUARE = HB_TAG ('Z','a','n','b'),
|
317
327
|
|
328
|
+
/*
|
329
|
+
* Since 1.8.0
|
330
|
+
*/
|
331
|
+
/*11.0*/HB_SCRIPT_DOGRA = HB_TAG ('D','o','g','r'),
|
332
|
+
/*11.0*/HB_SCRIPT_GUNJALA_GONDI = HB_TAG ('G','o','n','g'),
|
333
|
+
/*11.0*/HB_SCRIPT_HANIFI_ROHINGYA = HB_TAG ('R','o','h','g'),
|
334
|
+
/*11.0*/HB_SCRIPT_MAKASAR = HB_TAG ('M','a','k','a'),
|
335
|
+
/*11.0*/HB_SCRIPT_MEDEFAIDRIN = HB_TAG ('M','e','d','f'),
|
336
|
+
/*11.0*/HB_SCRIPT_OLD_SOGDIAN = HB_TAG ('S','o','g','o'),
|
337
|
+
/*11.0*/HB_SCRIPT_SOGDIAN = HB_TAG ('S','o','g','d'),
|
338
|
+
|
318
339
|
/* No script set. */
|
319
340
|
HB_SCRIPT_INVALID = HB_TAG_NONE,
|
320
341
|
|
@@ -323,7 +344,7 @@ typedef enum
|
|
323
344
|
* since technically enums are int, and indeed, hb_script_t ends up being signed.
|
324
345
|
* See this thread for technicalities:
|
325
346
|
*
|
326
|
-
*
|
347
|
+
* https://lists.freedesktop.org/archives/harfbuzz/2014-March/004150.html
|
327
348
|
*/
|
328
349
|
_HB_SCRIPT_MAX_VALUE = HB_TAG_MAX, /*< skip >*/
|
329
350
|
_HB_SCRIPT_MAX_VALUE_SIGNED = HB_TAG_MAX_SIGNED /*< skip >*/
|