### ----------------------------------------------------
### -- Gnome::Gtk3
### -- Licenses: Artistic-2.0
### -- Authors: Marcel Timmerman
### -- File: lib/Gnome/Gtk3/MenuItem.rakumod
### ----------------------------------------------------
### -- Chunk 2 of 2
 is because both methods C<register-signal()> and C<g_signal_connect_object()> are using the signatures of the handler routines to setup the native call interface.

=head2 Supported signals


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

Emitted when the item is activated.

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

=item $menuitem; the object which received the signal.


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

Emitted when the item is activated, but also if the menu item has a
submenu. For normal applications, the relevant signal is
 I<activate>.

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

=item $menuitem; the object which received the signal.


=begin comment
=comment #TS:0:toggle-size-request:
=head3 toggle-size-request

  method handler (
    Unknown type G_TYPE_POINTER $unknown type g_type_pointer,
    Int :$_handler_id,
    Gnome::GObject::Object :_widget($menuitem),
    *%user-options
  );

=item $menuitem;
=item $unknown type g_type_pointer;
=end comment

=comment #TS:0:toggle-size-allocate:
=head3 toggle-size-allocate

  method handler (
    Int $int,
    Int :$_handler_id,
    Gnome::GObject::Object :_widget($menuitem),
    *%user-options
  );

=item $menuitem;
=item $int; ?

=comment #TS:0:select:
=head3 select

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

=item $menuitem;

=comment #TS:0:deselect:
=head3 deselect

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

=item $menuitem;

=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<gtk_label_set_text('my text label')>.

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

=head2 Supported properties

=comment #TP:0:right-justified:
=head3 Right Justified


Sets whether the menu item appears justified
at the right side of a menu bar.
Since: 2.14

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

=begin comment
=comment #TP:0:submenu:
=head3 Submenu


The submenu attached to the menu item, or C<Any> if it has none.
Since: 2.12
Widget type: GTK_TYPE_MENU

The B<Gnome::GObject::Value> type of property I<submenu> is C<G_TYPE_OBJECT>.
=end comment

=comment #TP:0:accel-path:
=head3 Accel Path


Sets the accelerator path of the menu item, through which runtime
changes of the menu item's accelerator caused by the user can be
identified and saved to persistant storage.
Since: 2.14

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

=comment #TP:0:label:
=head3 Label


The text for the child label.
Since: 2.16

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

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


C<1> if underlines in the text indicate mnemonics.
Since: 2.16

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


