Gtk2
view release on metacpan or search on metacpan
xs/GtkBuilder.xs view on Meta::CPAN
gperl_callback_invoke ((GPerlCallback *) user_data,
NULL,
builder,
object,
signal_name,
handler_name,
connect_object,
flags);
}
MODULE = Gtk2::Builder PACKAGE = Gtk2::Builder PREFIX = gtk_builder_
BOOT:
if (!gperl_type_from_package ("Glib::ConnectFlags")) {
gperl_register_fundamental (gtk2perl_connect_flags_get_type (),
"Glib::ConnectFlags");
}
gperl_register_error_domain (GTK_BUILDER_ERROR,
GTK_TYPE_BUILDER_ERROR,
"Gtk2::Builder::Error");
GtkBuilder_noinc * gtk_builder_new (class)
C_ARGS:
/* void */
# guint gtk_builder_add_from_file (GtkBuilder *builder, const gchar *filename, GError **error);
=for apidoc __gerror__
=cut
guint gtk_builder_add_from_file (GtkBuilder *builder, GPerlFilename filename)
PREINIT:
GError *error = NULL;
CODE:
RETVAL = gtk_builder_add_from_file (builder, filename, &error);
if (error)
gperl_croak_gerror (NULL, error);
OUTPUT:
RETVAL
# guint gtk_builder_add_from_string (GtkBuilder *builder, const gchar *buffer, gsize length, GError **error);
=for apidoc __gerror__
=cut
guint gtk_builder_add_from_string (GtkBuilder *builder, const gchar *buffer)
PREINIT:
gsize length;
GError *error = NULL;
CODE:
length = sv_len (ST (1));
RETVAL = gtk_builder_add_from_string (builder, buffer, length, &error);
if (error)
gperl_croak_gerror (NULL, error);
OUTPUT:
RETVAL
GObject * gtk_builder_get_object (GtkBuilder *builder, const gchar *name);
# GSList * gtk_builder_get_objects (GtkBuilder *builder);
void
gtk_builder_get_objects (GtkBuilder *builder)
PREINIT:
GSList *list, *i;
PPCODE:
list = gtk_builder_get_objects (builder);
for (i = list; i != NULL; i = i->next) {
XPUSHs (sv_2mortal (newSVGObject (i->data)));
}
g_slist_free (list);
#if 0 /* evil hack to convince Glib::GenPod to output docs for connect_signals */
# connect_signals is implemented in Gtk2.pm
=for apidoc Gtk2::Builder::connect_signals
=for signature $builder->connect_signals ($user_data)
=for signature $builder->connect_signals ($user_data, $package)
=for signature $builder->connect_signals ($user_data, %handlers)
=for arg ... (__hide__)
There are four ways to let Gtk2::Builder do the signal connecting work for you:
=over
=item C<< $builder->connect_signals ($user_data) >>
When invoked like this, Gtk2::Builder will connect signals to functions in the
calling package. The callback names are specified in the UI description.
=item C<< $builder->connect_signals ($user_data, $package) >>
When invoked like this, Gtk2::Builder will connect signals to functions in the
package I<$package>.
=item C<< $builder->connect_signals ($user_data, $object) >>
When invoked like this, Gtk2::Builder will connect signals to method calls
against the object $object.
=item C<< $builder->connect_signals ($user_data, %handlers) >>
When invoked like this, I<%handlers> is used as a mapping from handler names to
code references.
=back
=cut
void gtk_builder_connect_signals (GtkBuilder *builder, ...);
#endif /* evil hack */
# void gtk_builder_connect_signals_full (GtkBuilder *builder, GtkBuilderConnectFunc func, gpointer user_data);
void gtk_builder_connect_signals_full (GtkBuilder *builder, SV *func, SV *user_data=NULL);
PREINIT:
GPerlCallback *callback;
CODE:
callback = gtk2perl_builder_connect_func_create (func, user_data);
gtk_builder_connect_signals_full (
builder,
gtk2perl_builder_connect_func,
callback);
gperl_callback_destroy (callback);
void gtk_builder_set_translation_domain (GtkBuilder *builder, const gchar_ornull *domain);
( run in 1.390 second using v1.01-cache-2.11-cpan-5511b514fd6 )