| MGtk Reference Manual | ||||
|---|---|---|---|---|
| | Description | ||||
Example 2Example 2 — From Gtk to MGtk |
Example 6. Example Gtk 2.20.1
#include <gtk/gtk.h>
static void hello( GtkWidget *widget,
gpointer data )
{
g_print ("Hello World\n");
}
static gboolean delete_event( GtkWidget *widget,
GdkEvent *event,
gpointer data )
{
g_print ("delete event occurred\n");
return TRUE;
}
static void destroy( GtkWidget *widget,
gpointer data )
{
gtk_main_quit ();
}
int main( int argc,
char *argv[] )
{
GtkWidget *window;
GtkWidget *button;
gtk_init (&argc, &argv);
window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
g_signal_connect (window, "delete-event",
G_CALLBACK (delete_event), NULL);
g_signal_connect (window, "destroy",
G_CALLBACK (destroy), NULL);
gtk_container_set_border_width (GTK_CONTAINER (window), 10);
button = gtk_button_new_with_label ("Hello World");
g_signal_connect (button, "clicked",
G_CALLBACK (hello), NULL);
g_signal_connect_swapped (button, "clicked",
G_CALLBACK (gtk_widget_destroy),
window);
gtk_container_add (GTK_CONTAINER (window), button);
gtk_widget_show (button);
gtk_widget_show (window);
gtk_main ();
return 0;
}
Example 7. Example MGtk 0.0.1
#include <gtk/gtk.h>
#include <mlib.h>
#include <mgtk.h>
static
void
hello ( GtkWidget* widget,
mpointer data )
{
g_print ("Hello World\n");
return;
m_warning_disable_var ( widget );
m_warning_disable_var ( data );
}
static
mboolean
delete_event ( GtkWidget* widget,
GdkEvent* event,
mpointer data )
{
g_print ( "delete event occurred \n") ;
return TRUE;
m_warning_disable_var ( widget );
m_warning_disable_var ( event );
m_warning_disable_var ( data );
}
static
void
destroy ( GtkWidget* widget,
mpointer data )
{
gtk_main_quit ();
return;
m_warning_disable_var ( widget );
m_warning_disable_var ( data );
}
int
mgtk_main ( argc, argv )
{
mgtk_main_init ( argc, argv );
MId window = MNOID;
MId button = MNOID;
window = mgtk_window_insert ( GTK_WINDOW_TOPLEVEL, "Hello Buttons!" );
button = mgtk_button_insert ( "Hello World" );
gtk_container_set_border_width ( GTK_CONTAINER ( MGTK_WINDOW_(window) ), 10 );
m_signal_connect ( "delete-event",
MGTK_WINDOW_(window),
G_CALLBACK (delete_event),
NULL );
m_signal_connect ( "destroy",
MGTK_WINDOW_(window),
G_CALLBACK (destroy),
NULL );
m_signal_connect ( "clicked",
MGTK_BUTTON_(button),
G_CALLBACK (hello),
NULL );
m_signal_connect_swapped ( "clicked",
MGTK_BUTTON_(button),
G_CALLBACK (gtk_widget_destroy),
MGTK_WINDOW_(window) );
gtk_container_add ( GTK_CONTAINER ( MGTK_WINDOW_(window) ), MGTK_BUTTON_(button) );
gtk_widget_show ( MGTK_BUTTON_(button) );
gtk_widget_show ( MGTK_WINDOW_(window) );
gtk_main ();
return MCORRECT;
}