]> git.xonotic.org Git - xonotic/netradiant.git/blobdiff - radiant/gtkdlgs.cpp
Merge branch 'ingar/png_icons' into 'master'
[xonotic/netradiant.git] / radiant / gtkdlgs.cpp
index dddbcc9238c7623790a868bc55eaf1001069e25e..daa0f31c5f1be2b3e3d7f65740df5dd8febe6e23 100644 (file)
@@ -465,7 +465,7 @@ void DoAbout(){
                                        GtkFrame* frame = create_dialog_frame( 0, GTK_SHADOW_IN );
                                        gtk_box_pack_start( GTK_BOX( vbox2 ), GTK_WIDGET( frame ), FALSE, FALSE, 0 );
                                        {
-                                               GtkImage* image = new_local_image( "logo.bmp" );
+                                               GtkImage* image = new_local_image( "logo.png" );
                                                gtk_widget_show( GTK_WIDGET( image ) );
                                                gtk_container_add( GTK_CONTAINER( frame ), GTK_WIDGET( image ) );
                                        }
@@ -590,6 +590,10 @@ void DoAbout(){
 // =============================================================================
 // TextureLayout dialog
 
+// Last used texture scale values
+static float last_used_texture_layout_scale_x = 4.0;
+static float last_used_texture_layout_scale_y = 4.0;
+
 EMessageBoxReturn DoTextureLayout( float *fx, float *fy ){
        ModalDialog dialog;
        ModalDialogButton ok_button( dialog, eIDOK );
@@ -644,8 +648,6 @@ EMessageBoxReturn DoTextureLayout( float *fx, float *fy ){
                                                                          (GtkAttachOptions) ( GTK_EXPAND | GTK_FILL ),
                                                                          (GtkAttachOptions) ( 0 ), 0, 0 );
 
-                                       gtk_widget_grab_focus( GTK_WIDGET( entry ) );
-
                                        x = entry;
                                }
                                {
@@ -675,16 +677,27 @@ EMessageBoxReturn DoTextureLayout( float *fx, float *fy ){
                        }
                }
        }
+       
+       // Initialize with last used values
+       char buf[16];
+       
+       sprintf( buf, "%f", last_used_texture_layout_scale_x );
+       gtk_entry_set_text( x, buf );
+       
+       sprintf( buf, "%f", last_used_texture_layout_scale_y );
+       gtk_entry_set_text( y, buf );
 
-       // Initialize
-       gtk_entry_set_text( x, "4.0" );
-       gtk_entry_set_text( y, "4.0" );
-
+       // Set focus after intializing the values
+       gtk_widget_grab_focus( GTK_WIDGET( x ) );
 
        EMessageBoxReturn ret = modal_dialog_show( window, dialog );
        if ( ret == eIDOK ) {
                *fx = static_cast<float>( atof( gtk_entry_get_text( x ) ) );
                *fy = static_cast<float>( atof( gtk_entry_get_text( y ) ) );
+       
+               // Remember last used values
+               last_used_texture_layout_scale_x = *fx;
+               last_used_texture_layout_scale_y = *fy;
        }
 
        gtk_widget_destroy( GTK_WIDGET( window ) );