pango 3.2.5-x86-mingw32 → 3.2.6-x86-mingw32
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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 >*/
|