]> git.street.me.uk Git - andy/viking.git/commitdiff
Suggest default filename with .vik file extension when saving a new file.
authorRob Norris <rw_norris@hotmail.com>
Thu, 6 Sep 2012 23:58:02 +0000 (00:58 +0100)
committerRob Norris <rw_norris@hotmail.com>
Tue, 9 Oct 2012 22:08:51 +0000 (23:08 +0100)
src/vikwindow.c

index 06a16c5b31a09792d7fdc28106880d0b6125add0..ef4e2bc67938bd00da1d1291d1a8156ef8ac02f8 100644 (file)
@@ -2213,6 +2213,12 @@ static gboolean save_file_as ( GtkAction *a, VikWindow *vw )
     gtk_window_set_transient_for ( GTK_WINDOW(vw->save_dia), GTK_WINDOW(vw) );
     gtk_window_set_destroy_with_parent ( GTK_WINDOW(vw->save_dia), TRUE );
   }
     gtk_window_set_transient_for ( GTK_WINDOW(vw->save_dia), GTK_WINDOW(vw) );
     gtk_window_set_destroy_with_parent ( GTK_WINDOW(vw->save_dia), TRUE );
   }
+  // Auto append / replace extension with '.vik' to the suggested file name as it's going to be a Viking File
+  gchar* auto_save_name = strdup ( vw->filename ? a_file_basename ( vw->filename ) : _("Untitled") );
+  if ( ! check_file_ext ( auto_save_name, ".vik" ) )
+    auto_save_name = g_strconcat ( auto_save_name, ".vik", NULL );
+
+  gtk_file_chooser_set_current_name (GTK_FILE_CHOOSER(vw->save_dia), auto_save_name);
 
   while ( gtk_dialog_run ( GTK_DIALOG(vw->save_dia) ) == GTK_RESPONSE_ACCEPT )
   {
 
   while ( gtk_dialog_run ( GTK_DIALOG(vw->save_dia) ) == GTK_RESPONSE_ACCEPT )
   {
@@ -2225,6 +2231,7 @@ static gboolean save_file_as ( GtkAction *a, VikWindow *vw )
       break;
     }
   }
       break;
     }
   }
+  g_free ( auto_save_name );
   gtk_widget_hide ( vw->save_dia );
   return rv;
 }
   gtk_widget_hide ( vw->save_dia );
   return rv;
 }