// Code generated by cmd/cgo; DO NOT EDIT. //line /home/josie/.cache/paru/clone/wiiudownloader/src/pkg/mod/github.com/gotk3/gotk3@v0.6.5-0.20240618185848-ff349ae13f56/pango/pango-font.go:1:1 /* * Copyright (c) 2015- terrak * * This file originated from: http://www.terrak.net/ * * Permission to use, copy, modify, and distribute this software for any * purpose with or without fee is hereby granted, provided that the above * copyright notice and this permission notice appear in all copies. * * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. */ package pango // #include // #include "pango.go.h" // #include "fontconfig.go.h" import _ "unsafe" import ( // "github.com/andre-hub/gotk3/glib" // "github.com/andre-hub/gotk3/cairo" "unsafe" "github.com/gotk3/gotk3/glib" ) func init() { tm := []glib.TypeMarshaler{ // Enums // Objects/Interfaces {glib.Type(( /*line :37:14*/_Cfunc_pango_font_description_get_type /*line :37:46*/)()), marshalFontDescription}, } glib.RegisterGValueMarshalers(tm) } // AddFont adds the font to the configuration. func AddFont(fontPath string) { path := (* /*line :44:12*/_Ctype_uchar /*line :44:19*/)(unsafe.Pointer(( /*line :44:36*/_Cfunc_CString /*line :44:44*/)(fontPath))) ( /*line :45:2*/_Cfunc_addFont /*line :45:10*/)(path) } // FontDescription is a representation of PangoFontDescription. type FontDescription struct { pangoFontDescription * /*line :50:24*/_Ctype_PangoFontDescription /*line :50:46*/ } // Native returns a pointer to the underlying PangoLayout. func (v *FontDescription) Native() uintptr { return uintptr(unsafe.Pointer(v.native())) } func (v *FontDescription) native() * /*line :58:37*/_Ctype_PangoFontDescription /*line :58:59*/ { return (* /*line :59:11*/_Ctype_PangoFontDescription /*line :59:33*/)(unsafe.Pointer(v.pangoFontDescription)) } // FontMetrics is a representation of PangoFontMetrics. type FontMetrics struct { pangoFontMetrics * /*line :64:20*/_Ctype_PangoFontMetrics /*line :64:38*/ } // Native returns a pointer to the underlying PangoLayout. func (v *FontMetrics) Native() uintptr { return uintptr(unsafe.Pointer(v.native())) } func (v *FontMetrics) native() * /*line :72:33*/_Ctype_PangoFontMetrics /*line :72:51*/ { return (* /*line :73:11*/_Ctype_PangoFontMetrics /*line :73:29*/)(unsafe.Pointer(v.pangoFontMetrics)) } const ( PANGO_SCALE = ( /*line :77:16*/_Ciconst_PANGO_SCALE /*line :77:28*/) ) type Style int const ( STYLE_NORMAL Style = ( /*line :83:24*/_Ciconst_PANGO_STYLE_NORMAL /*line :83:43*/) STYLE_OBLIQUE Style = ( /*line :84:24*/_Ciconst_PANGO_STYLE_OBLIQUE /*line :84:44*/) STYLE_ITALIC Style = ( /*line :85:24*/_Ciconst_PANGO_STYLE_ITALIC /*line :85:43*/) ) type Variant int const ( VARIANT_NORMAL Variant = ( /*line :91:31*/_Ciconst_PANGO_VARIANT_NORMAL /*line :91:52*/) VARIANT_SMALL_CAPS Variant = ( /*line :92:31*/_Ciconst_PANGO_VARIANT_SMALL_CAPS /*line :92:56*/) ) type Weight int const ( WEIGHT_THIN Weight = ( /*line :98:29*/_Ciconst_PANGO_WEIGHT_THIN /*line :98:47*/) /* 100 */ WEIGHT_ULTRALIGHT Weight = ( /*line :99:29*/_Ciconst_PANGO_WEIGHT_ULTRALIGHT /*line :99:53*/) /* 200 */ WEIGHT_LIGHT Weight = ( /*line :100:29*/_Ciconst_PANGO_WEIGHT_LIGHT /*line :100:48*/) /* 300 */ WEIGHT_SEMILIGHT Weight = 350 /* 350 */ WEIGHT_BOOK Weight = ( /*line :102:29*/_Ciconst_PANGO_WEIGHT_BOOK /*line :102:47*/) /* 380 */ WEIGHT_NORMAL Weight = ( /*line :103:29*/_Ciconst_PANGO_WEIGHT_NORMAL /*line :103:49*/) /* 400 */ WEIGHT_MEDIUM Weight = ( /*line :104:29*/_Ciconst_PANGO_WEIGHT_MEDIUM /*line :104:49*/) /* 500 */ WEIGHT_SEMIBOLD Weight = ( /*line :105:29*/_Ciconst_PANGO_WEIGHT_SEMIBOLD /*line :105:51*/) /* 600 */ WEIGHT_BOLD Weight = ( /*line :106:29*/_Ciconst_PANGO_WEIGHT_BOLD /*line :106:47*/) /* 700 */ WEIGHT_ULTRABOLD Weight = ( /*line :107:29*/_Ciconst_PANGO_WEIGHT_ULTRABOLD /*line :107:52*/) /* 800 */ WEIGHT_HEAVY Weight = ( /*line :108:29*/_Ciconst_PANGO_WEIGHT_HEAVY /*line :108:48*/) /* 900 */ WEIGHT_ULTRAHEAVY Weight = ( /*line :109:29*/_Ciconst_PANGO_WEIGHT_ULTRAHEAVY /*line :109:53*/) /* 1000 */ ) type Stretch int const ( STRETCH_ULTRA_CONDENSED Stretch = ( /*line :116:43*/_Ciconst_PANGO_STRETCH_ULTRA_CONDENSED /*line :116:73*/) STRETCH_EXTRA_CONDENSEDStretch Stretch = ( /*line :117:43*/_Ciconst_PANGO_STRETCH_EXTRA_CONDENSED /*line :117:73*/) STRETCH_CONDENSEDStretch Stretch = ( /*line :118:43*/_Ciconst_PANGO_STRETCH_CONDENSED /*line :118:67*/) STRETCH_SEMI_CONDENSEDStretch Stretch = ( /*line :119:43*/_Ciconst_PANGO_STRETCH_SEMI_CONDENSED /*line :119:72*/) STRETCH_NORMALStretch Stretch = ( /*line :120:43*/_Ciconst_PANGO_STRETCH_NORMAL /*line :120:64*/) STRETCH_SEMI_EXPANDEDStretch Stretch = ( /*line :121:43*/_Ciconst_PANGO_STRETCH_SEMI_EXPANDED /*line :121:71*/) STRETCH_EXPANDEDStretch Stretch = ( /*line :122:43*/_Ciconst_PANGO_STRETCH_EXPANDED /*line :122:66*/) STRETCH_EXTRA_EXPANDEDStretch Stretch = ( /*line :123:43*/_Ciconst_PANGO_STRETCH_EXTRA_EXPANDED /*line :123:72*/) STRETCH_ULTRA_EXPANDEDStretch Stretch = ( /*line :124:43*/_Ciconst_PANGO_STRETCH_ULTRA_EXPANDED /*line :124:72*/) ) type FontMask int const ( FONT_MASK_FAMILY FontMask = ( /*line :130:39*/_Ciconst_PANGO_FONT_MASK_FAMILY /*line :130:62*/) /* 1 << 0 */ FONT_MASK_STYLEFontMask FontMask = ( /*line :131:39*/_Ciconst_PANGO_FONT_MASK_STYLE /*line :131:61*/) /* 1 << 1 */ FONT_MASK_VARIANTFontMask FontMask = ( /*line :132:39*/_Ciconst_PANGO_FONT_MASK_VARIANT /*line :132:63*/) /* 1 << 2 */ FONT_MASK_WEIGHTFontMask FontMask = ( /*line :133:39*/_Ciconst_PANGO_FONT_MASK_WEIGHT /*line :133:62*/) /* 1 << 3 */ FONT_MASK_STRETCHFontMask FontMask = ( /*line :134:39*/_Ciconst_PANGO_FONT_MASK_STRETCH /*line :134:63*/) /* 1 << 4 */ FONT_MASK_SIZEFontMask FontMask = ( /*line :135:39*/_Ciconst_PANGO_FONT_MASK_SIZE /*line :135:60*/) /* 1 << 5 */ FONT_MASK_GRAVITYFontMask FontMask = ( /*line :136:39*/_Ciconst_PANGO_FONT_MASK_GRAVITY /*line :136:63*/) /* 1 << 6 */ ) type Scale float64 const ( SCALE_XX_SMALL Scale = /* C.PANGO_SCALE_XX_SMALL */ 0.5787037037037 SCALE_X_SMALL Scale = /*C.PANGO_SCALE_X_SMALL */ 0.6444444444444 SCALE_SMALL Scale = /*C.PANGO_SCALE_SMALL */ 0.8333333333333 SCALE_MEDIUM Scale = /*C.PANGO_SCALE_MEDIUM */ 1.0 SCALE_LARGE Scale = /*C.PANGO_SCALE_LARGE */ 1.2 SCALE_X_LARGE Scale = /*C.PANGO_SCALE_X_LARGE */ 1.4399999999999 SCALE_XX_LARGE Scale = /*C.PANGO_SCALE_XX_LARGE */ 1.728 ) /* * PangoFontDescription */ func marshalFontDescription(p uintptr) (interface{}, error) { c := ( /*line :156:7*/_Cfunc_g_value_get_boxed /*line :156:25*/)((* /*line :156:29*/_Ctype_GValue /*line :156:37*/)(unsafe.Pointer(p))) c2 := (* /*line :157:10*/_Ctype_PangoFontDescription /*line :157:32*/)(unsafe.Pointer(c)) return wrapFontDescription(c2), nil } func wrapFontDescription(obj * /*line :161:31*/_Ctype_PangoFontDescription /*line :161:53*/) *FontDescription { return &FontDescription{obj} } //PangoFontDescription *pango_font_description_new (void); func FontDescriptionNew() *FontDescription { c := ( /*line :167:7*/_Cfunc_pango_font_description_new /*line :167:34*/)() v := new(FontDescription) v.pangoFontDescription = c return v } //PangoFontDescription *pango_font_description_copy (const PangoFontDescription *desc); func (v *FontDescription) Copy() *FontDescription { c := func() *_Ctype_struct__PangoFontDescription{ _cgo0 := /*line :175:37*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :175:48*/_Cfunc_pango_font_description_copy(_cgo0); }() v2 := new(FontDescription) v2.pangoFontDescription = c return v2 } //PangoFontDescription *pango_font_description_copy_static (const PangoFontDescription *desc); func (v *FontDescription) CopyStatic() *FontDescription { c := func() *_Ctype_struct__PangoFontDescription{ _cgo0 := /*line :183:44*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :183:55*/_Cfunc_pango_font_description_copy_static(_cgo0); }() v2 := new(FontDescription) v2.pangoFontDescription = c return v2 } //guint pango_font_description_hash (const PangoFontDescription *desc) G_GNUC_PURE; func (v *FontDescription) Hash() uint { c := func() _Ctype_guint{ _cgo0 := /*line :191:37*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :191:48*/_Cfunc_pango_font_description_hash(_cgo0); }() return uint(c) } //gboolean pango_font_description_equal (const PangoFontDescription *desc1, // const PangoFontDescription *desc2) G_GNUC_PURE; func (v *FontDescription) Equal(v2 *FontDescription) bool { c := func() _Ctype_gboolean{ _cgo0 := /*line :198:38*/v.native(); _cgo1 := /*line :198:50*/v2.native(); _cgoCheckPointer(_cgo0, nil); _cgoCheckPointer(_cgo1, nil); return /*line :198:62*/_Cfunc_pango_font_description_equal(_cgo0, _cgo1); }() return gobool(c) } //void pango_font_description_free (PangoFontDescription *desc); func (v *FontDescription) Free() { func() { _cgo0 := /*line :204:32*/v.native(); _cgoCheckPointer(_cgo0, nil); /*line :204:43*/_Cfunc_pango_font_description_free(_cgo0); }() } //void pango_font_descriptions_free (PangoFontDescription **descs, // int n_descs); //func (v *FontDescription) FontDescriptionsFree(n_descs int) { // C.pango_font_descriptions_free(v.native(), C.int(n_descs)) //} //void pango_font_description_set_family (PangoFontDescription *desc, // const char *family); func (v *FontDescription) SetFamily(family string) { cstr := ( /*line :216:10*/_Cfunc_CString /*line :216:18*/)(family) defer func() func() { _cgo0 := /*line :217:15*/unsafe.Pointer(cstr); return func() { _cgoCheckPointer(_cgo0, nil); /*line :217:36*/_Cfunc_free(_cgo0); }}()() func() { _cgo0 := /*line :218:38*/v.native(); var _cgo1 *_Ctype_char = /*line :218:50*/(*_Ctype_char /*line :218:58*/)(cstr); _cgoCheckPointer(_cgo0, nil); /*line :218:66*/_Cfunc_pango_font_description_set_family(_cgo0, _cgo1); }() } //void pango_font_description_set_family_static (PangoFontDescription *desc, // const char *family); func (v *FontDescription) SetFamilyStatic(family string) { cstr := ( /*line :224:10*/_Cfunc_CString /*line :224:18*/)(family) defer func() func() { _cgo0 := /*line :225:15*/unsafe.Pointer(cstr); return func() { _cgoCheckPointer(_cgo0, nil); /*line :225:36*/_Cfunc_free(_cgo0); }}()() func() { _cgo0 := /*line :226:45*/v.native(); var _cgo1 *_Ctype_char = /*line :226:57*/(*_Ctype_char /*line :226:65*/)(cstr); _cgoCheckPointer(_cgo0, nil); /*line :226:73*/_Cfunc_pango_font_description_set_family_static(_cgo0, _cgo1); }() } //const char *pango_font_description_get_family (const PangoFontDescription *desc) G_GNUC_PURE; func (v *FontDescription) GetFamily() string { c := func() *_Ctype_char{ _cgo0 := /*line :231:43*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :231:54*/_Cfunc_pango_font_description_get_family(_cgo0); }() return ( /*line :232:9*/_Cfunc_GoString /*line :232:18*/)((* /*line :232:22*/_Ctype_char /*line :232:28*/)(c)) } //void pango_font_description_set_style (PangoFontDescription *desc, // PangoStyle style); func (v *FontDescription) SetStyle(style Style) { func() { _cgo0 := /*line :238:37*/v.native(); var _cgo1 _Ctype_PangoStyle = /*line :238:49*/(_Ctype_PangoStyle /*line :238:62*/)(style); _cgoCheckPointer(_cgo0, nil); /*line :238:71*/_Cfunc_pango_font_description_set_style(_cgo0, _cgo1); }() } //PangoStyle pango_font_description_get_style (const PangoFontDescription *desc) G_GNUC_PURE; func (v *FontDescription) GetStyle() Style { c := func() _Ctype_PangoStyle{ _cgo0 := /*line :243:42*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :243:53*/_Cfunc_pango_font_description_get_style(_cgo0); }() return Style(c) } //void pango_font_description_set_variant (PangoFontDescription *desc, // PangoVariant variant); func (v *FontDescription) SetVariant(variant Variant) { func() { _cgo0 := /*line :250:39*/v.native(); var _cgo1 _Ctype_PangoVariant = /*line :250:51*/(_Ctype_PangoVariant /*line :250:66*/)(variant); _cgoCheckPointer(_cgo0, nil); /*line :250:77*/_Cfunc_pango_font_description_set_variant(_cgo0, _cgo1); }() } //PangoVariant pango_font_description_get_variant (const PangoFontDescription *desc) G_GNUC_PURE; func (v *FontDescription) GetVariant() Variant { c := func() _Ctype_PangoVariant{ _cgo0 := /*line :255:44*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :255:55*/_Cfunc_pango_font_description_get_variant(_cgo0); }() return Variant(c) } //void pango_font_description_set_weight (PangoFontDescription *desc, // PangoWeight weight); func (v *FontDescription) SetWeight(weight Weight) { func() { _cgo0 := /*line :262:38*/v.native(); var _cgo1 _Ctype_PangoWeight = /*line :262:50*/(_Ctype_PangoWeight /*line :262:64*/)(weight); _cgoCheckPointer(_cgo0, nil); /*line :262:74*/_Cfunc_pango_font_description_set_weight(_cgo0, _cgo1); }() } //PangoWeight pango_font_description_get_weight (const PangoFontDescription *desc) G_GNUC_PURE; func (v *FontDescription) GetWeight() Weight { c := func() _Ctype_PangoWeight{ _cgo0 := /*line :267:43*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :267:54*/_Cfunc_pango_font_description_get_weight(_cgo0); }() return Weight(c) } //void pango_font_description_set_stretch (PangoFontDescription *desc, // PangoStretch stretch); func (v *FontDescription) SetStretch(stretch Stretch) { func() { _cgo0 := /*line :274:39*/v.native(); var _cgo1 _Ctype_PangoStretch = /*line :274:51*/(_Ctype_PangoStretch /*line :274:66*/)(stretch); _cgoCheckPointer(_cgo0, nil); /*line :274:77*/_Cfunc_pango_font_description_set_stretch(_cgo0, _cgo1); }() } //PangoStretch pango_font_description_get_stretch (const PangoFontDescription *desc) G_GNUC_PURE; func (v *FontDescription) GetStretch() Stretch { c := func() _Ctype_PangoStretch{ _cgo0 := /*line :279:44*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :279:55*/_Cfunc_pango_font_description_get_stretch(_cgo0); }() return Stretch(c) } //void pango_font_description_set_size (PangoFontDescription *desc, // gint size); func (v *FontDescription) SetSize(size int) { func() { _cgo0 := /*line :286:36*/v.native(); var _cgo1 _Ctype_gint = /*line :286:48*/(_Ctype_gint /*line :286:55*/)(size); _cgoCheckPointer(_cgo0, nil); /*line :286:63*/_Cfunc_pango_font_description_set_size(_cgo0, _cgo1); }() } //gint pango_font_description_get_size (const PangoFontDescription *desc) G_GNUC_PURE; func (v *FontDescription) GetSize() int { c := func() _Ctype_gint{ _cgo0 := /*line :291:41*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :291:52*/_Cfunc_pango_font_description_get_size(_cgo0); }() return int(c) } //void pango_font_description_set_absolute_size (PangoFontDescription *desc, // double size); func (v *FontDescription) SetAbsoluteSize(size float64) { func() { _cgo0 := /*line :298:45*/v.native(); var _cgo1 _Ctype_double = /*line :298:57*/(_Ctype_double /*line :298:66*/)(size); _cgoCheckPointer(_cgo0, nil); /*line :298:74*/_Cfunc_pango_font_description_set_absolute_size(_cgo0, _cgo1); }() } //gboolean pango_font_description_get_size_is_absolute (const PangoFontDescription *desc) G_GNUC_PURE; func (v *FontDescription) GetSizeIsAbsolute() bool { c := func() _Ctype_gboolean{ _cgo0 := /*line :303:53*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :303:64*/_Cfunc_pango_font_description_get_size_is_absolute(_cgo0); }() return gobool(c) } //void pango_font_description_set_gravity (PangoFontDescription *desc, // PangoGravity gravity); func (v *FontDescription) SetGravity(gravity Gravity) { func() { _cgo0 := /*line :310:39*/v.native(); var _cgo1 _Ctype_PangoGravity = /*line :310:51*/(_Ctype_PangoGravity /*line :310:66*/)(gravity); _cgoCheckPointer(_cgo0, nil); /*line :310:77*/_Cfunc_pango_font_description_set_gravity(_cgo0, _cgo1); }() } //PangoGravity pango_font_description_get_gravity (const PangoFontDescription *desc) G_GNUC_PURE; func (v *FontDescription) GetGravity() Gravity { c := func() _Ctype_PangoGravity{ _cgo0 := /*line :315:44*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :315:55*/_Cfunc_pango_font_description_get_gravity(_cgo0); }() return Gravity(c) } //PangoFontMask pango_font_description_get_set_fields (const PangoFontDescription *desc) G_GNUC_PURE; func (v *FontDescription) GetSetFields() FontMask { c := func() _Ctype_PangoFontMask{ _cgo0 := /*line :321:47*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :321:58*/_Cfunc_pango_font_description_get_set_fields(_cgo0); }() return FontMask(c) } //void pango_font_description_unset_fields (PangoFontDescription *desc, // PangoFontMask to_unset); func (v *FontDescription) GetUnsetFields(to_unset FontMask) { func() { _cgo0 := /*line :328:40*/v.native(); var _cgo1 _Ctype_PangoFontMask = /*line :328:52*/(_Ctype_PangoFontMask /*line :328:68*/)(to_unset); _cgoCheckPointer(_cgo0, nil); /*line :328:80*/_Cfunc_pango_font_description_unset_fields(_cgo0, _cgo1); }() } //void pango_font_description_merge (PangoFontDescription *desc, // const PangoFontDescription *desc_to_merge, // gboolean replace_existing); func (v *FontDescription) Merge(desc_to_merge *FontDescription, replace_existing bool) { func() { _cgo0 := /*line :335:33*/v.native(); _cgo1 := /*line :335:45*/desc_to_merge.native(); var _cgo2 _Ctype_gboolean = /*line :335:69*/gbool(replace_existing); _cgoCheckPointer(_cgo0, nil); _cgoCheckPointer(_cgo1, nil); /*line :335:93*/_Cfunc_pango_font_description_merge(_cgo0, _cgo1, _cgo2); }() } //void pango_font_description_merge_static (PangoFontDescription *desc, // const PangoFontDescription *desc_to_merge, // gboolean replace_existing); func (v *FontDescription) MergeStatic(desc_to_merge *FontDescription, replace_existing bool) { func() { _cgo0 := /*line :342:40*/v.native(); _cgo1 := /*line :342:52*/desc_to_merge.native(); var _cgo2 _Ctype_gboolean = /*line :342:76*/gbool(replace_existing); _cgoCheckPointer(_cgo0, nil); _cgoCheckPointer(_cgo1, nil); /*line :342:100*/_Cfunc_pango_font_description_merge_static(_cgo0, _cgo1, _cgo2); }() } //gboolean pango_font_description_better_match (const PangoFontDescription *desc, // const PangoFontDescription *old_match, // const PangoFontDescription *new_match) G_GNUC_PURE; func (v *FontDescription) BetterMatch(old_match, new_match *FontDescription) bool { c := func() _Ctype_gboolean{ _cgo0 := /*line :349:45*/v.native(); _cgo1 := /*line :349:57*/old_match.native(); _cgo2 := /*line :349:77*/new_match.native(); _cgoCheckPointer(_cgo0, nil); _cgoCheckPointer(_cgo1, nil); _cgoCheckPointer(_cgo2, nil); return /*line :349:96*/_Cfunc_pango_font_description_better_match(_cgo0, _cgo1, _cgo2); }() return gobool(c) } //PangoFontDescription *pango_font_description_from_string (const char *str); func FontDescriptionFromString(str string) *FontDescription { cstr := ( /*line :355:10*/_Cfunc_CString /*line :355:18*/)(str) defer func() func() { _cgo0 := /*line :356:15*/unsafe.Pointer(cstr); return func() { _cgoCheckPointer(_cgo0, nil); /*line :356:36*/_Cfunc_free(_cgo0); }}()() c := ( /*line :357:7*/_Cfunc_pango_font_description_from_string /*line :357:42*/)((* /*line :357:46*/_Ctype_char /*line :357:52*/)(cstr)) v := new(FontDescription) v.pangoFontDescription = c return v } //char * pango_font_description_to_string (const PangoFontDescription *desc); func (v *FontDescription) ToString() string { c := func() *_Ctype_char{ _cgo0 := /*line :365:42*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :365:53*/_Cfunc_pango_font_description_to_string(_cgo0); }() return ( /*line :366:9*/_Cfunc_GoString /*line :366:18*/)((* /*line :366:22*/_Ctype_char /*line :366:28*/)(c)) } //char * pango_font_description_to_filename (const PangoFontDescription *desc); func (v *FontDescription) ToFilename() string { c := func() *_Ctype_char{ _cgo0 := /*line :371:44*/v.native(); _cgoCheckPointer(_cgo0, nil); return /*line :371:55*/_Cfunc_pango_font_description_to_filename(_cgo0); }() return ( /*line :372:9*/_Cfunc_GoString /*line :372:18*/)((* /*line :372:22*/_Ctype_char /*line :372:28*/)(c)) } ///* // * PangoFontMetrics // */ // ///** // * PANGO_TYPE_FONT_METRICS: // * // * The #GObject type for #PangoFontMetrics. // */ //#define PANGO_TYPE_FONT_METRICS (pango_font_metrics_get_type ()) //GType pango_font_metrics_get_type (void) G_GNUC_CONST; //PangoFontMetrics *pango_font_metrics_ref (PangoFontMetrics *metrics); //void pango_font_metrics_unref (PangoFontMetrics *metrics); //int pango_font_metrics_get_ascent (PangoFontMetrics *metrics) G_GNUC_PURE; //int pango_font_metrics_get_descent (PangoFontMetrics *metrics) G_GNUC_PURE; //int pango_font_metrics_get_approximate_char_width (PangoFontMetrics *metrics) G_GNUC_PURE; //int pango_font_metrics_get_approximate_digit_width (PangoFontMetrics *metrics) G_GNUC_PURE; //int pango_font_metrics_get_underline_position (PangoFontMetrics *metrics) G_GNUC_PURE; //int pango_font_metrics_get_underline_thickness (PangoFontMetrics *metrics) G_GNUC_PURE; //int pango_font_metrics_get_strikethrough_position (PangoFontMetrics *metrics) G_GNUC_PURE; //int pango_font_metrics_get_strikethrough_thickness (PangoFontMetrics *metrics) G_GNUC_PURE; // //#ifdef PANGO_ENABLE_BACKEND // //PangoFontMetrics *pango_font_metrics_new (void); // //struct _PangoFontMetrics //{ // guint ref_count; // // int ascent; // int descent; // int approximate_char_width; // int approximate_digit_width; // int underline_position; // int underline_thickness; // int strikethrough_position; // int strikethrough_thickness; //}; // //#endif /* PANGO_ENABLE_BACKEND */ // ///* // * PangoFontFamily // */ // ///** // * PANGO_TYPE_FONT_FAMILY: // * // * The #GObject type for #PangoFontFamily. // */ ///** // * PANGO_FONT_FAMILY: // * @object: a #GObject. // * // * Casts a #GObject to a #PangoFontFamily. // */ ///** // * PANGO_IS_FONT_FAMILY: // * @object: a #GObject. // * // * Returns: %TRUE if @object is a #PangoFontFamily. // */ //#define PANGO_TYPE_FONT_FAMILY (pango_font_family_get_type ()) //#define PANGO_FONT_FAMILY(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FONT_FAMILY, PangoFontFamily)) //#define PANGO_IS_FONT_FAMILY(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FONT_FAMILY)) // //typedef struct _PangoFontFamily PangoFontFamily; //typedef struct _PangoFontFace PangoFontFace; // //GType pango_font_family_get_type (void) G_GNUC_CONST; // //void pango_font_family_list_faces (PangoFontFamily *family, // PangoFontFace ***faces, // int *n_faces); //const char *pango_font_family_get_name (PangoFontFamily *family) G_GNUC_PURE; //gboolean pango_font_family_is_monospace (PangoFontFamily *family) G_GNUC_PURE; // //#ifdef PANGO_ENABLE_BACKEND // //#define PANGO_FONT_FAMILY_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PANGO_TYPE_FONT_FAMILY, PangoFontFamilyClass)) //#define PANGO_IS_FONT_FAMILY_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PANGO_TYPE_FONT_FAMILY)) //#define PANGO_FONT_FAMILY_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PANGO_TYPE_FONT_FAMILY, PangoFontFamilyClass)) // //typedef struct _PangoFontFamilyClass PangoFontFamilyClass; // // ///** // * PangoFontFamily: // * // * The #PangoFontFamily structure is used to represent a family of related // * font faces. The faces in a family share a common design, but differ in // * slant, weight, width and other aspects. // */ //struct _PangoFontFamily //{ // GObject parent_instance; //}; // //struct _PangoFontFamilyClass //{ // GObjectClass parent_class; // // /*< public >*/ // // void (*list_faces) (PangoFontFamily *family, // PangoFontFace ***faces, // int *n_faces); // const char * (*get_name) (PangoFontFamily *family); // gboolean (*is_monospace) (PangoFontFamily *family); // // /*< private >*/ // // /* Padding for future expansion */ // void (*_pango_reserved2) (void); // void (*_pango_reserved3) (void); // void (*_pango_reserved4) (void); //}; // //#endif /* PANGO_ENABLE_BACKEND */ // ///* // * PangoFontFace // */ // ///** // * PANGO_TYPE_FONT_FACE: // * // * The #GObject type for #PangoFontFace. // */ ///** // * PANGO_FONT_FACE: // * @object: a #GObject. // * // * Casts a #GObject to a #PangoFontFace. // */ ///** // * PANGO_IS_FONT_FACE: // * @object: a #GObject. // * // * Returns: %TRUE if @object is a #PangoFontFace. // */ //#define PANGO_TYPE_FONT_FACE (pango_font_face_get_type ()) //#define PANGO_FONT_FACE(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FONT_FACE, PangoFontFace)) //#define PANGO_IS_FONT_FACE(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FONT_FACE)) // //GType pango_font_face_get_type (void) G_GNUC_CONST; // //PangoFontDescription *pango_font_face_describe (PangoFontFace *face); //const char *pango_font_face_get_face_name (PangoFontFace *face) G_GNUC_PURE; //void pango_font_face_list_sizes (PangoFontFace *face, // int **sizes, // int *n_sizes); //gboolean pango_font_face_is_synthesized (PangoFontFace *face) G_GNUC_PURE; // //#ifdef PANGO_ENABLE_BACKEND // //#define PANGO_FONT_FACE_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PANGO_TYPE_FONT_FACE, PangoFontFaceClass)) //#define PANGO_IS_FONT_FACE_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PANGO_TYPE_FONT_FACE)) //#define PANGO_FONT_FACE_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PANGO_TYPE_FONT_FACE, PangoFontFaceClass)) // //typedef struct _PangoFontFaceClass PangoFontFaceClass; // ///** // * PangoFontFace: // * // * The #PangoFontFace structure is used to represent a group of fonts with // * the same family, slant, weight, width, but varying sizes. // */ //struct _PangoFontFace //{ // GObject parent_instance; //}; // //struct _PangoFontFaceClass //{ // GObjectClass parent_class; // // /*< public >*/ // // const char * (*get_face_name) (PangoFontFace *face); // PangoFontDescription * (*describe) (PangoFontFace *face); // void (*list_sizes) (PangoFontFace *face, // int **sizes, // int *n_sizes); // gboolean (*is_synthesized) (PangoFontFace *face); // // /*< private >*/ // // /* Padding for future expansion */ // void (*_pango_reserved3) (void); // void (*_pango_reserved4) (void); //}; // //#endif /* PANGO_ENABLE_BACKEND */ // ///* // * PangoFont // */ // ///** // * PANGO_TYPE_FONT: // * // * The #GObject type for #PangoFont. // */ ///** // * PANGO_FONT: // * @object: a #GObject. // * // * Casts a #GObject to a #PangoFont. // */ ///** // * PANGO_IS_FONT: // * @object: a #GObject. // * // * Returns: %TRUE if @object is a #PangoFont. // */ //#define PANGO_TYPE_FONT (pango_font_get_type ()) //#define PANGO_FONT(object) (G_TYPE_CHECK_INSTANCE_CAST ((object), PANGO_TYPE_FONT, PangoFont)) //#define PANGO_IS_FONT(object) (G_TYPE_CHECK_INSTANCE_TYPE ((object), PANGO_TYPE_FONT)) // //GType pango_font_get_type (void) G_GNUC_CONST; // //PangoFontDescription *pango_font_describe (PangoFont *font); //PangoFontDescription *pango_font_describe_with_absolute_size (PangoFont *font); //PangoCoverage * pango_font_get_coverage (PangoFont *font, // PangoLanguage *language); //PangoEngineShape * pango_font_find_shaper (PangoFont *font, // PangoLanguage *language, // guint32 ch); //PangoFontMetrics * pango_font_get_metrics (PangoFont *font, // PangoLanguage *language); //void pango_font_get_glyph_extents (PangoFont *font, // PangoGlyph glyph, // PangoRectangle *ink_rect, // PangoRectangle *logical_rect); //PangoFontMap *pango_font_get_font_map (PangoFont *font); // //#ifdef PANGO_ENABLE_BACKEND // //#define PANGO_FONT_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST ((klass), PANGO_TYPE_FONT, PangoFontClass)) //#define PANGO_IS_FONT_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE ((klass), PANGO_TYPE_FONT)) //#define PANGO_FONT_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS ((obj), PANGO_TYPE_FONT, PangoFontClass)) // //typedef struct _PangoFontClass PangoFontClass; // ///** // * PangoFont: // * // * The #PangoFont structure is used to represent // * a font in a rendering-system-independent matter. // * To create an implementation of a #PangoFont, // * the rendering-system specific code should allocate // * a larger structure that contains a nested // * #PangoFont, fill in the klass member of // * the nested #PangoFont with a pointer to // * a appropriate #PangoFontClass, then call // * pango_font_init() on the structure. // * // * The #PangoFont structure contains one member // * which the implementation fills in. // */ //struct _PangoFont //{ // GObject parent_instance; //}; // //struct _PangoFontClass //{ // GObjectClass parent_class; // // /*< public >*/ // // PangoFontDescription *(*describe) (PangoFont *font); // PangoCoverage * (*get_coverage) (PangoFont *font, // PangoLanguage *lang); // PangoEngineShape * (*find_shaper) (PangoFont *font, // PangoLanguage *lang, // guint32 ch); // void (*get_glyph_extents) (PangoFont *font, // PangoGlyph glyph, // PangoRectangle *ink_rect, // PangoRectangle *logical_rect); // PangoFontMetrics * (*get_metrics) (PangoFont *font, // PangoLanguage *language); // PangoFontMap * (*get_font_map) (PangoFont *font); // PangoFontDescription *(*describe_absolute) (PangoFont *font); // /*< private >*/ // // /* Padding for future expansion */ // void (*_pango_reserved1) (void); // void (*_pango_reserved2) (void); //}; // ///* used for very rare and miserable situtations that we cannot even // * draw a hexbox // */ //#define PANGO_UNKNOWN_GLYPH_WIDTH 10 //#define PANGO_UNKNOWN_GLYPH_HEIGHT 14 // //#endif /* PANGO_ENABLE_BACKEND */ // ///** // * PANGO_GLYPH_EMPTY: // * // * The %PANGO_GLYPH_EMPTY macro represents a #PangoGlyph value that has a // * special meaning, which is a zero-width empty glyph. This is useful for // * example in shaper modules, to use as the glyph for various zero-width // * Unicode characters (those passing pango_is_zero_width()). // */ ///** // * PANGO_GLYPH_INVALID_INPUT: // * // * The %PANGO_GLYPH_INVALID_INPUT macro represents a #PangoGlyph value that has a // * special meaning of invalid input. #PangoLayout produces one such glyph // * per invalid input UTF-8 byte and such a glyph is rendered as a crossed // * box. // * // * Note that this value is defined such that it has the %PANGO_GLYPH_UNKNOWN_FLAG // * on. // * // * Since: 1.20 // */ ///** // * PANGO_GLYPH_UNKNOWN_FLAG: // * // * The %PANGO_GLYPH_UNKNOWN_FLAG macro is a flag value that can be added to // * a #gunichar value of a valid Unicode character, to produce a #PangoGlyph // * value, representing an unknown-character glyph for the respective #gunichar. // */ ///** // * PANGO_GET_UNKNOWN_GLYPH: // * @wc: a Unicode character // * // * The way this unknown glyphs are rendered is backend specific. For example, // * a box with the hexadecimal Unicode code-point of the character written in it // * is what is done in the most common backends. // * // * Returns: a #PangoGlyph value that means no glyph was found for @wc. // */ //#define PANGO_GLYPH_EMPTY ((PangoGlyph)0x0FFFFFFF) //#define PANGO_GLYPH_INVALID_INPUT ((PangoGlyph)0xFFFFFFFF) //#define PANGO_GLYPH_UNKNOWN_FLAG ((PangoGlyph)0x10000000) //#define PANGO_GET_UNKNOWN_GLYPH(wc) ((PangoGlyph)(wc)|PANGO_GLYPH_UNKNOWN_FLAG) // //