diff options
Diffstat (limited to 'gui/mplayer/gtk/mb.c')
-rw-r--r-- | gui/mplayer/gtk/mb.c | 97 |
1 files changed, 97 insertions, 0 deletions
diff --git a/gui/mplayer/gtk/mb.c b/gui/mplayer/gtk/mb.c new file mode 100644 index 0000000000..5f3873d054 --- /dev/null +++ b/gui/mplayer/gtk/mb.c @@ -0,0 +1,97 @@ + +#include "app.h" +#include "config.h" +#include "help_mp.h" + +#include "../pixmaps/error.xpm" +#include "../pixmaps/warning.xpm" + +#include "../widgets.h" +#include "mb.h" +#include "common.h" + +GtkWidget * gtkMessageBoxText; +GtkWidget * MessageBox = NULL; + +void ShowMessageBox( const char * msg ) +{ + if ( MessageBox ) { gtk_widget_hide( MessageBox ); gtk_widget_destroy( MessageBox ); } + MessageBox=create_MessageBox( 0 ); + if ( strlen( msg ) < 20 ) gtk_widget_set_usize( MessageBox,196,-1 ); +} + +static void on_Ok_released( GtkButton * button,gpointer user_data ) +{ + gtk_widget_hide( MessageBox ); + gtk_widget_destroy( MessageBox ); + MessageBox=NULL; +} + +GtkWidget * create_MessageBox( int type ) +{ + GtkWidget * vbox1; + GtkWidget * hbox1; + GtkWidget * hbuttonbox1; + GtkWidget * Ok; + GtkAccelGroup * accel_group; + GtkStyle * pixmapstyle; + GdkPixmap * pixmapwid; + GdkBitmap * mask; + + accel_group=gtk_accel_group_new(); + + MessageBox=gtk_window_new( GTK_WINDOW_TOPLEVEL ); + gtk_widget_set_name( MessageBox,"MessageBox" ); + gtk_object_set_data( GTK_OBJECT( MessageBox ),"MessageBox",MessageBox ); + gtk_widget_set_events( MessageBox,GDK_EXPOSURE_MASK | GDK_KEY_PRESS_MASK | GDK_KEY_RELEASE_MASK | GDK_VISIBILITY_NOTIFY_MASK ); + gtk_window_set_title( GTK_WINDOW( MessageBox ),"MPlayer ..." ); + gtk_window_set_position( GTK_WINDOW( MessageBox ),GTK_WIN_POS_CENTER ); + gtk_window_set_modal( GTK_WINDOW( MessageBox ),TRUE ); + gtk_window_set_policy( GTK_WINDOW( MessageBox ),TRUE,TRUE,FALSE ); + gtk_window_set_wmclass( GTK_WINDOW( MessageBox ),"Message","MPlayer" ); + + gtk_widget_realize( MessageBox ); + gtkAddIcon( MessageBox ); + + vbox1=AddVBox( AddDialogFrame( MessageBox ),0 ); + hbox1=AddHBox( vbox1,1 ); + + pixmapstyle=gtk_widget_get_style( MessageBox ); + + pixmapwid=gdk_pixmap_colormap_create_from_xpm_d( MessageBox->window,gdk_colormap_get_system(),&mask,&pixmapstyle->bg[GTK_STATE_NORMAL],(gchar ** )warning_xpm ); + WarningPixmap=gtk_pixmap_new( pixmapwid,mask ); + pixmapwid=gdk_pixmap_colormap_create_from_xpm_d( MessageBox->window,gdk_colormap_get_system(),&mask,&pixmapstyle->bg[GTK_STATE_NORMAL],(gchar ** )error_xpm ); + ErrorPixmap=gtk_pixmap_new( pixmapwid,mask ); + + gtk_widget_set_name( WarningPixmap,"pixmap1" ); + gtk_widget_hide( WarningPixmap ); + gtk_box_pack_start( GTK_BOX( hbox1 ),WarningPixmap,FALSE,FALSE,0 ); + gtk_widget_set_usize( WarningPixmap,55,-2 ); + + gtk_widget_set_name( ErrorPixmap,"pixmap1" ); + gtk_widget_hide( ErrorPixmap ); + gtk_box_pack_start( GTK_BOX( hbox1 ),ErrorPixmap,FALSE,FALSE,0 ); + gtk_widget_set_usize( ErrorPixmap,55,-2 ); + + gtkMessageBoxText=gtk_label_new( "Text jol. Ha ezt megerted,akkor neked nagyon jo a magyar tudasod,te." ); + gtk_widget_set_name( gtkMessageBoxText,"gtkMessageBoxText" ); + gtk_widget_show( gtkMessageBoxText ); + gtk_box_pack_start( GTK_BOX( hbox1 ),gtkMessageBoxText,TRUE,TRUE,0 ); +// gtk_label_set_justify( GTK_LABEL( gtkMessageBoxText ),GTK_JUSTIFY_FILL ); + gtk_label_set_justify( GTK_LABEL( gtkMessageBoxText ),GTK_JUSTIFY_CENTER ); + gtk_label_set_line_wrap( GTK_LABEL( gtkMessageBoxText ),FALSE ); + + AddHSeparator( vbox1 ); + hbuttonbox1=AddHButtonBox( vbox1 ); + Ok=AddButton( MSGTR_Ok,hbuttonbox1 ); + + gtk_widget_add_accelerator( Ok,"clicked",accel_group,GDK_Return,0,GTK_ACCEL_VISIBLE ); + gtk_widget_add_accelerator( Ok,"clicked",accel_group,GDK_Escape,0,GTK_ACCEL_VISIBLE ); + + gtk_signal_connect( GTK_OBJECT( MessageBox ),"destroy",GTK_SIGNAL_FUNC( WidgetDestroy ),&MessageBox ); + gtk_signal_connect( GTK_OBJECT( Ok ),"clicked",GTK_SIGNAL_FUNC( on_Ok_released ),NULL ); + + gtk_window_add_accel_group( GTK_WINDOW( MessageBox ),accel_group ); + + return MessageBox; +} |