Mercurial > mplayer.hg
view Gui/mplayer/gtk/mb.c @ 14140:337aa26e20b5
10l, should check for != NULL before using not after...
fixes speed setting with -nosound, fix by uau on IRC
author | reimar |
---|---|
date | Fri, 10 Dec 2004 23:04:54 +0000 |
parents | bc24dd70c6e2 |
children | 0e1471d9da74 |
line wrap: on
line source
#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( 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; }