### ----------------------------------------------------
### -- Gnome::Gtk3
### -- Licenses: Artistic-2.0
### -- Authors: Marcel Timmerman
### -- File: lib/Gnome/Gtk3/Label.rakumod
### ----------------------------------------------------
### -- Chunk 2 of 2
<s></span>";
  my Str $markup =


const char *format = "<span style=\"italic\">\C<s></span>";
char *markup;

markup = g_markup_printf_escaped (format, str);
gtk_label_set_markup (GTK_LABEL (label), markup);
g_free (markup);
]|
=end comment

This function will set the  I<use-markup> property to C<1> as a side effect.

If you set the label contents using the  I<label> property you should also ensure that you set the  I<use-markup> property accordingly.

See also: C<set-text()>.

  method set-markup ( Str $str )

=item Str $str; a markup string. See also L<Pango markup format|https://developer.gnome.org/pygtk/stable/pango-markup-language.html>.

=end pod

method set-markup ( Str $str ) {
  gtk_label_set_markup( self._f('GtkLabel'), $str)
}

sub gtk_label_set_markup ( N-GObject $label, Str $str )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:2:set-markup-with-mnemonic:xt/Benchmarking/Modules/Label.raku
=begin pod
=head2 set-markup-with-mnemonic

Parses I<$str> which is marked up with the L<Pango text markup language|https://developer.gnome.org/pygtk/stable/pango-markup-language.html>,setting the label’s text and attribute list based on the parse results. If characters in I<str> are preceded by an underscore, they are underlined indicating that they represent a keyboard accelerator called a mnemonic.

The mnemonic key can be used to activate another widget, chosen automatically, or explicitly using C<set-mnemonic-widget()>.

  method set-markup-with-mnemonic ( Str $str )

=item Str $str; a markup string (see [Pango markup format][PangoMarkupFormat])

=end pod

method set-markup-with-mnemonic ( Str $str ) {
  gtk_label_set_markup_with_mnemonic( self._f('GtkLabel'), $str)
}

sub gtk_label_set_markup_with_mnemonic ( N-GObject $label, Str $str )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:2:set-max-width-chars:xt/Benchmarking/Modules/Label.raku
=begin pod
=head2 set-max-width-chars

Sets the desired maximum width in characters of this label to I<n_chars>.

  method set-max-width-chars ( Int $n_chars )

=item Int $n_chars; the new desired maximum width, in characters.

=end pod

method set-max-width-chars ( Int $n_chars ) {
  gtk_label_set_max_width_chars( self._f('GtkLabel'), $n_chars)
}

sub gtk_label_set_max_width_chars ( N-GObject $label, gint $n_chars )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:2:set-mnemonic-widget:xt/Benchmarking/Modules/Label.raku
=begin pod
=head2 set-mnemonic-widget

If the label has been set so that it has an mnemonic key (using e.g. C<set-markup-with-mnemonic()>, C<set-text-with-mnemonic()>, C<new(:mnemonic)> or the “use_underline” property) the label can be associated with a widget that is the target of the mnemonic. When the label is inside a widget (like a B<Gnome::Gtk3::Button> or a B<Gnome::Gtk3::Notebook> tab) it is automatically associated with the correct widget, but sometimes (e.g. when the target is a B<Gnome::Gtk3::Entry> next to the label) you need to set it explicitly using this function.

The target widget will be accelerated by emitting the B<Gnome::Gtk3::Widget>::mnemonic-activate signal on it. The default handler for this signal will activate the widget if there are no mnemonic collisions and toggle focus between the colliding widgets otherwise.

  method set-mnemonic-widget ( N-GObject $widget )

=item N-GObject $widget; the target B<Gnome::Gtk3::Widget> or undefined

=end pod

method set-mnemonic-widget ( $widget ) {
  my $no = $widget;
  $no .= _get-native-object-no-reffing unless $no ~~ N-GObject;

  gtk_label_set_mnemonic_widget( self._f('GtkLabel'), $no)
}

sub gtk_label_set_mnemonic_widget ( N-GObject $label, N-GObject $widget )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:0:set-pattern:xt/Benchmarking/Modules/Label.raku
#TODO set-pattern() does not seem to set pattern property

=begin pod
=head2 set-pattern

The pattern of underlines you want under the existing text within the B<Gnome::Gtk3::Label> widget. For example if the current text of the label says “FooBarBaz” passing a pattern of “___   ___” will underline “Foo” and “Baz” but not “Bar”.

  method set-pattern ( Str $pattern )

=item Str $pattern; The pattern as described above.

=end pod

method set-pattern ( Str $pattern ) {
  gtk_label_set_pattern( self._f('GtkLabel'), $pattern)
}

sub gtk_label_set_pattern ( N-GObject $label, Str $pattern )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:2:set-selectable:xt/Benchmarking/Modules/Label.raku
=begin pod
=head2 set-selectable

Selectable labels allow the user to select text from the label, for copy-and-paste.

  method set-selectable ( Bool $setting )

=item Int $setting; C<True> to allow selecting text in the label

=end pod

method set-selectable ( Bool $setting ) {
  gtk_label_set_selectable( self._f('GtkLabel'), $setting.Int)
}

sub gtk_label_set_selectable ( N-GObject $label, gboolean $setting )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:2:set-single-line-mode:xt/Benchmarking/Modules/Label.raku
=begin pod
=head2 set-single-line-mode

Sets whether the label is in single line mode.

  method set-single-line-mode ( Bool $single_line_mode )

=item Int $single_line_mode; C<True> if the label should be in single line mode

=end pod

method set-single-line-mode ( Bool $single_line_mode ) {
  gtk_label_set_single_line_mode( self._f('GtkLabel'), $single_line_mode)
}

sub gtk_label_set_single_line_mode (
  N-GObject $label, gboolean $single_line_mode
) is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:1:set-text:
=begin pod
=head2 set-text

Sets the text within the B<Gnome::Gtk3::Label> widget. It overwrites any text that was there before.

This function will clear any previously set mnemonic accelerators, and set the  I<use-underline> property to C<0> as a side effect. The function will also set the I<use-markup> property to C<0> as a side effect.

See also: C<set-markup()>

  method set-text ( Str $str )

=item Str $str; The text you want to set

=end pod

method set-text ( Str $str ) {
  gtk_label_set_text( self._f('GtkLabel'), $str);
}

sub gtk_label_set_text ( N-GObject $label, Str $str )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:1:set-text-with-mnemonic:
=begin pod
=head2 set-text-with-mnemonic

Sets the label’s text from the string I<$str>. If characters in I<$str> are preceded by an underscore, they are underlined indicating that they represent a keyboard accelerator called a mnemonic. The mnemonic key can be used to activate another widget, chosen automatically, or explicitly using C<set-mnemonic-widget()>.

  method set-text-with-mnemonic ( Str $str )

=item Str $str; a string

=end pod

method set-text-with-mnemonic ( Str $str ) {
  gtk_label_set_text_with_mnemonic( self._f('GtkLabel'), $str)
}

sub gtk_label_set_text_with_mnemonic ( N-GObject $label, Str $str )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:2:set-track-visited-links:xt/Benchmarking/Modules/Label.raku
=begin pod
=head2 set-track-visited-links

Sets whether the label should keep track of clicked links (and use a different color for them).

  method set-track-visited-links ( Bool $track_links )

=item Bool $track_links; C<True> to track visited links

=end pod

method set-track-visited-links ( Bool $track_links ) {
  gtk_label_set_track_visited_links( self._f('GtkLabel'), $track_links)
}

sub gtk_label_set_track_visited_links (
  N-GObject $label, gboolean $track_links
) is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:1:set-use-markup:
=begin pod
=head2 set-use-markup

Sets whether the text of the label contains markup in L<Pango’s text markup language|https://developer.gnome.org/pygtk/stable/pango-markup-language.html>.

See C<set-markup()>.

  method set-use-markup ( Bool $setting )

=item Bool $setting; C<True> if the label’s text should be parsed for markup.

=end pod

method set-use-markup ( Bool $setting ) {
  gtk_label_set_use_markup( self._f('GtkLabel'), $setting.Int)
}

sub gtk_label_set_use_markup ( N-GObject $label, gboolean $setting )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:1:set-use-underline:
=begin pod
=head2 set-use-underline

If C<True>, an underline in the text indicates the next character should be used for the mnemonic accelerator key.

  method set-use-underline ( Bool $setting )

=item Bool $setting; C<True> if underlines in the text indicate mnemonics

=end pod

method set-use-underline ( Bool $setting ) {
  gtk_label_set_use_underline( self._f('GtkLabel'), $setting)
}

sub gtk_label_set_use_underline ( N-GObject $label, gboolean $setting )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:2:set-width-chars:xt/Benchmarking/Modules/Label.raku
=begin pod
=head2 set-width-chars

Sets the desired width in characters of this label to I<$n_chars>.

  method set-width-chars ( Int $n_chars )

=item Int $n_chars; the new desired width, in characters.

=end pod

method set-width-chars ( Int $n_chars ) {
  gtk_label_set_width_chars( self._f('GtkLabel'), $n_chars)
}

sub gtk_label_set_width_chars ( N-GObject $label, gint $n_chars )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:2:set-xalign:xt/Benchmarking/Modules/Label.raku
=begin pod
=head2 set-xalign

Sets the I<xalign> property for I<label>.

  method set-xalign ( Num $xalign )

=item Num $xalign; the new xalign value, between 0 and 1

=end pod

method set-xalign ( $xalign ) {
  gtk_label_set_xalign( self._f('GtkLabel'), $xalign.Num)
}

sub gtk_label_set_xalign ( N-GObject $label, gfloat $xalign )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:2:set-yalign:xt/Benchmarking/Modules/Label.raku
=begin pod
=head2 set-yalign

Sets the I<yalign> property for I<label>.

  method set-yalign ( Num $yalign )

=item Num $yalign; the new yalign value, between 0 and 1

=end pod

method set-yalign ( $yalign ) {
  gtk_label_set_yalign( self._f('GtkLabel'), $yalign.Num)
}

sub gtk_label_set_yalign ( N-GObject $label, gfloat $yalign )
  is native(&gtk-lib)
  { * }

#-------------------------------------------------------------------------------
#TM:2:_gtk_label_new:new(:text)
#`{{
=begin pod
=head2 [gtk_] label_new

Creates a new label with the given text inside it. You can
pass C<Any> to get an empty label widget.

Returns: the new B<Gnome::Gtk3::Label>

  method gtk_label_new ( Str $str --> N-GObject  )

=item Str $str; (allow-none): The text of the label

=end pod
}}

sub _gtk_label_new ( Str $str --> N-GObject )
  is native(&gtk-lib)
  is symbol('gtk_label_new')
  { * }

#-------------------------------------------------------------------------------
#TM:2:_gtk_label_new_with_mnemonic:new(:mnemonic)
#`{{
=begin pod
=head2 [[gtk_] label_] new_with_mnemonic

Creates a new B<Gnome::Gtk3::Label>, containing the text in I<str>.

If characters in I<str> are preceded by an underscore, they are
underlined. If you need a literal underscore character in a label, use
'__' (two underscores). The first underlined character represents a
keyboard accelerator called a mnemonic. The mnemonic key can be used
to activate another widget, chosen automatically, or explicitly using
C<gtk_label_set_mnemonic_widget()>.

If C<gtk_label_set_mnemonic_widget()> is not called, then the first
activatable ancestor of the B<Gnome::Gtk3::Label> will be chosen as the mnemonic
widget. For instance, if the label is inside a button or menu item,
the button or menu item will automatically become the mnemonic widget
and be activated by the mnemonic.

Returns: the new B<Gnome::Gtk3::Label>

  method gtk_label_new_with_mnemonic ( Str $str --> N-GObject  )

=item Str $str; (allow-none): The text of the label, with an underscore in front of the mnemonic character

=end pod
}}

sub _gtk_label_new_with_mnemonic ( Str $str --> N-GObject )
  is native(&gtk-lib)
  is symbol('gtk_label_new_with_mnemonic')
  { * }


#-------------------------------------------------------------------------------
=begin pod
=head1 Signals

There are two ways to connect to a signal. The first option you have is to use C<register-signal()> from B<Gnome::GObject::Object>. The second option is to use C<connect-object()> directly from B<Gnome::GObject::Signal>.

=head2 First method

The positional arguments of the signal handler are all obligatory as well as their types. The named attributes C<:$widget> and user data are optional.

  # handler method
  method mouse-event ( GdkEvent $event, :$widget ) { ... }

  # connect a signal on window object
  my Gnome::Gtk3::Window $w .= new( ... );
  $w.register-signal( self, 'mouse-event', 'button-press-event');

=head2 Second method

  my Gnome::Gtk3::Window $w .= new( ... );
  my Callable $handler = sub (
    N-GObject $native, GdkEvent $event, OpaquePointer $data
  ) {
    ...
  }

  $w.connect-object( 'button-press-event', $handler);

Also here, the types of positional arguments in the signal handler are important. This is because both methods C<register-signal()> and C<connect-object()> are using the signatures of the handler routines to setup the native call interface.

=head2 Supported signals


=comment -----------------------------------------------------------------------
=comment #TS:0:activate-current-link:
=head3 activate-current-link

A [keybinding signal][GtkBindingSignal]
which gets emitted when the user activates a link in the label.

Applications may also emit the signal with C<g-signal-emit-by-name()>
if they need to control activation of URIs programmatically.

The default bindings for this signal are all forms of the Enter key.


  method handler (
    Int :$_handle_id,
    Gnome::GObject::Object :_widget($label),
    *%user-options
  );

=item $label; The label on which the signal was emitted

=item $_handle_id; the registered event handler id

=comment -----------------------------------------------------------------------
=comment #TS:0:activate-link:
=head3 activate-link

The signal which gets emitted to activate a URI.
Applications may connect to it to override the default behaviour,
which is to call C<gtk-show-uri-on-window()>.

Returns: C<True> if the link has been activated


  method handler (
    Str $uri,
    Int :$_handle_id,
    Gnome::GObject::Object :_widget($label),
    *%user-options
    --> Int
  );

=item $label; The label on which the signal was emitted

=item $uri; the URI that is activated

=item $_handle_id; the registered event handler id

=comment -----------------------------------------------------------------------
=comment #TS:0:copy-clipboard:
=head3 copy-clipboard

The I<copy-clipboard> signal is a
[keybinding signal][GtkBindingSignal]
which gets emitted to copy the selection to the clipboard.

The default binding for this signal is Ctrl-c.

  method handler (
    Int :$_handle_id,
    Gnome::GObject::Object :_widget($label),
    *%user-options
  );

=item $label; the object which received the signal

=item $_handle_id; the registered event handler id

=comment -----------------------------------------------------------------------
=comment #TS:0:move-cursor:
=head3 move-cursor

The I<move-cursor> signal is a
[keybinding signal][GtkBindingSignal]
which gets emitted when the user initiates a cursor movement.
If the cursor is not visible in I<entry>, this signal causes
the viewport to be moved instead.

Applications should not connect to it, but may emit it with
C<g-signal-emit-by-name()> if they need to control the cursor
programmatically.

The default bindings for this signal come in two variants,
the variant with the Shift modifier extends the selection,
the variant without the Shift modifer does not.
There are too many key combinations to list them all here.
- Arrow keys move by individual characters/lines
- Ctrl-arrow key combinations move by words/paragraphs
- Home/End keys move to the ends of the buffer

  method handler (
    Unknown type GTK_TYPE_MOVEMENT_STEP $step,
    Int $count,
    Int $extend_selection,
    Int :$_handle_id,
    Gnome::GObject::Object :_widget($entry),
    *%user-options
  );

=item $entry; the object which received the signal

=item $step; the granularity of the move, as a B<Gnome::Gtk3::MovementStep>

=item $count; the number of I<step> units to move

=item $extend_selection; C<True> if the move should extend the selection

=item $_handle_id; the registered event handler id

=comment -----------------------------------------------------------------------
=comment #TS:0:populate-popup:
=head3 populate-popup

The I<populate-popup> signal gets emitted before showing the
context menu of the label. Note that only selectable labels
have context menus.

If you need to add items to the context menu, connect
to this signal and append your menuitems to the I<menu>.

  method handler (
    Unknown type GTK_TYPE_MENU $menu,
    Int :$_handle_id,
    Gnome::GObject::Object :_widget($label),
    *%user-options
  );

=item $label; The label on which the signal is emitted

=item $menu; the menu that is being populated

=item $_handle_id; the registered event handler id

=end pod


#-------------------------------------------------------------------------------
=begin pod
=head1 Properties

An example of using a string type property of a B<Gnome::Gtk3::Label> object. This is just showing how to set/read a property, not that it is the best way to do it. This is because a) The class initialization often provides some options to set some of the properties and b) the classes provide many methods to modify just those properties. In the case below one can use B<new(:label('my text label'))> or B<.set-text('my text label')>.

  my Gnome::Gtk3::Label $label .= new;
  my Gnome::GObject::Value $gv .= new(:init(G_TYPE_STRING));
  $label.get-property( 'label', $gv);
  $gv.set-string('my text label');

=head2 Supported properties

=comment -----------------------------------------------------------------------
=comment #TP:1:angle:
=head3 Angle: angle

The angle that the baseline of the label makes with the horizontal, in degrees, measured counterclockwise. An angle of 90 reads from from bottom to top, an angle of 270, from top to bottom. Ignored if the label is selectable.

The B<Gnome::GObject::Value> type of property I<angle> is C<G_TYPE_DOUBLE>.

=comment -----------------------------------------------------------------------
=comment #TP:0:attributes:
=head3 Attributes: attributes


The B<Gnome::GObject::Value> type of property I<attributes> is C<G_TYPE_BOXED>.

=comment -----------------------------------------------------------------------
=comment #TP:0:cursor-position:
=head3 Cursor Position: cursor-position


The B<Gnome::GObject::Value> type of property I<cursor-position> is C<G_TYPE_INT>.

=comment -----------------------------------------------------------------------
=comment #TP:0:ellipsize:
=head3 Ellipsize: ellipsize


The preferred place to ellipsize the string, if the label does
not have enough room to display the entire string, specified as a
B<PangoEllipsizeMode>.

Note that setting this property to a value other than
C<PANGO-ELLIPSIZE-NONE> has the side-effect that the label requests
only enough space to display the ellipsis "...". In particular, this
means that ellipsizing labels do not work well in notebook tabs, unless
the B<Gnome::Gtk3::Notebook> tab-expand child property is set to C<True>. Other ways
to set a label's width are C<gtk-widget-set-size-request()> and
C<set-width-chars()>.

   Widget type: PANGO_TYPE_ELLIPSIZE_MODE

The B<Gnome::GObject::Value> type of property I<ellipsize> is C<G_TYPE_ENUM>.

=comment -----------------------------------------------------------------------
=comment #TP:0:justify:
=head3 Justification: justify

The alignment of the lines in the text of the label relative to each other. This does NOT affect the alignment of the label within its allocation. See GtkLabel:xalign for that
Default value: False

The B<Gnome::GObject::Value> type of property I<justify> is C<G_TYPE_ENUM>.

=comment -----------------------------------------------------------------------
=comment #TP:1:label:
=head3 Label: label

The contents of the label.

If the string contains [Pango XML markup][PangoMarkupFormat], you will  have to set the  I<use-markup> property to C<True> in order for the label to display the markup attributes. See also C<set-markup()> for a convenience function that sets both this property and the  I<use-markup> property at the same time.

If the string contains underlines acting as mnemonics, you will have to set the  I<use-underline> property to C<True> in order for the label to display them.
The B<Gnome::GObject::Value> type of property I<label> is C<G_TYPE_STRING>.

=comment -----------------------------------------------------------------------
=comment #TP:1:lines:
=head3 Number of lines: lines

 The number of lines to which an ellipsized, wrapping label should be limited. This property has no effect if the label is not wrapping or ellipsized. Set this property to -1 if you don't want to limit the number of lines.

The B<Gnome::GObject::Value> type of property I<lines> is C<G_TYPE_INT>.

=comment -----------------------------------------------------------------------
=comment #TP:1:max-width-chars:
=head3 Maximum Width In Characters: max-width-chars


The desired maximum width of the label, in characters. If this property is set to -1, the width will be calculated automatically.
See the section on [text layout][label-text-layout] for details of how  I<width-chars> and  I<max-width-chars> determine the width of ellipsized and wrapped labels.

The B<Gnome::GObject::Value> type of property I<max-width-chars> is C<G_TYPE_INT>.

=comment -----------------------------------------------------------------------
=comment #TP:0:mnemonic-keyval:
=head3 Mnemonic key: mnemonic-keyval

The B<Gnome::GObject::Value> type of property I<mnemonic-keyval> is C<G_TYPE_UINT>.

=comment -----------------------------------------------------------------------
=comment #TP:0:mnemonic-widget:
=head3 Mnemonic widget: mnemonic-widget

The widget to be activated when the label's mnemonic key is pressed

The B<Gnome::GObject::Value> type of property I<mnemonic-widget> is C<G_TYPE_OBJECT>.

=comment -----------------------------------------------------------------------
=comment #TP:0:pattern:
=head3 Pattern: pattern

A string with '_' characters in positions correspond to characters in the text to underline Default value: Any

The B<Gnome::GObject::Value> type of property I<pattern> is C<G_TYPE_STRING>.

=comment -----------------------------------------------------------------------
=comment #TP:1:selectable:
=head3 Selectable: selectable

Whether the label text can be selected with the mouse
Default value: False

The B<Gnome::GObject::Value> type of property I<selectable> is C<G_TYPE_BOOLEAN>.

=comment -----------------------------------------------------------------------
=comment #TP:1:selection-bound:
=head3 Selection Bound: selection-bound


The B<Gnome::GObject::Value> type of property I<selection-bound> is C<G_TYPE_INT>.

=comment -----------------------------------------------------------------------
=comment #TP:1:single-line-mode:
=head3 Single Line Mode: single-line-mode

Whether the label is in single line mode. In single line mode, the height of the label does not depend on the actual text, it is always set to ascent + descent of the font. This can be an advantage in situations where resizing the label because of text changes would be distracting, e.g. in a statusbar.

The B<Gnome::GObject::Value> type of property I<single-line-mode> is C<G_TYPE_BOOLEAN>.

=comment -----------------------------------------------------------------------
=comment #TP:1:track-visited-links:
=head3 Track visited links: track-visited-links

Set this property to C<True> to make the label track which links have been visited. It will then apply the B<Gnome::Gtk3::TK-STATE-FLAG-VISITED> when rendering this link, in addition to B<Gnome::Gtk3::TK-STATE-FLAG-LINK>.

The B<Gnome::GObject::Value> type of property I<track-visited-links> is C<G_TYPE_BOOLEAN>.

=comment -----------------------------------------------------------------------
=comment #TP:1:use-markup:
=head3 Use markup: use-markup

The text of the label includes XML markup. See C<pango-parse-markup()>
Default value: False

The B<Gnome::GObject::Value> type of property I<use-markup> is C<G_TYPE_BOOLEAN>.

=comment -----------------------------------------------------------------------
=comment #TP:1:use-underline:
=head3 Use underline: use-underline

If set, an underline in the text indicates the next character should be used for the mnemonic accelerator key
Default value: False

The B<Gnome::GObject::Value> type of property I<use-underline> is C<G_TYPE_BOOLEAN>.

=comment -----------------------------------------------------------------------
=comment #TP:1:width-chars:
=head3 Width In Characters: width-chars

The desired width of the label, in characters. If this property is set to -1, the width will be calculated automatically. See the section on L<text layout|https://developer.gnome.org/gtk3/stable/GtkLabel.html#label-text-layout> for details of how  I<width-chars> and  I<max-width-chars> determine the width of ellipsized and wrapped labels.

The B<Gnome::GObject::Value> type of property I<width-chars> is C<G_TYPE_INT>.

=comment -----------------------------------------------------------------------
=comment #TP:1:wrap:
=head3 Line wrap: wrap

If set, wrap lines if the text becomes too wide
Default value: False

The B<Gnome::GObject::Value> type of property I<wrap> is C<G_TYPE_BOOLEAN>.

=comment -----------------------------------------------------------------------
=comment #TP:1:wrap-mode:
=head3 Line wrap mode: wrap-mode


If line wrapping is on (see the  I<wrap> property) this controls how the line wrapping is done. The default is C<PANGO-WRAP-WORD>, which means wrap on word boundaries.

   Widget type: PANGO_TYPE_WRAP_MODE

The B<Gnome::GObject::Value> type of property I<wrap-mode> is C<G_TYPE_ENUM>.

=comment -----------------------------------------------------------------------
=comment #TP:1:xalign:
=head3 X align: xalign

The xalign property determines the horizontal aligment of the label text inside the labels size allocation. Compare this to  I<halign>, which determines how the labels size allocation is positioned in the space available for the label.

The B<Gnome::GObject::Value> type of property I<xalign> is C<G_TYPE_FLOAT>.

=comment -----------------------------------------------------------------------
=comment #TP:1:yalign:
=head3 Y align: yalign

The yalign property determines the vertical aligment of the label text inside the labels size allocation. Compare this to  I<valign>, which determines how the labels size allocation is positioned in the space available for the label.


The B<Gnome::GObject::Value> type of property I<yalign> is C<G_TYPE_FLOAT>.
=end pod


