mirror of
https://github.com/alexkay/spek.git
synced 2025-04-20 18:37:36 +03:00
Suggest file name for the image
This commit is contained in:
parent
5d1749b144
commit
6f57f45eb1
@ -23,8 +23,8 @@ using Gtk;
|
||||
namespace Spek {
|
||||
class Spectrogram : DrawingArea {
|
||||
|
||||
public string file_name { get; private set; }
|
||||
private Source source;
|
||||
private string file_name;
|
||||
private const int THRESHOLD = -92;
|
||||
private const int BANDS = 1024;
|
||||
|
||||
|
@ -23,7 +23,7 @@ namespace Spek {
|
||||
public class Window : Gtk.Window {
|
||||
|
||||
private Spectrogram spectrogram;
|
||||
private string path;
|
||||
private string cur_dir;
|
||||
|
||||
public Window () {
|
||||
title = _("Spek - Acoustic Spectrum Analyser");
|
||||
@ -73,7 +73,7 @@ namespace Spek {
|
||||
toolbar.insert (about, -1);
|
||||
|
||||
spectrogram = new Spectrogram ();
|
||||
path = Environment.get_home_dir ();
|
||||
cur_dir = Environment.get_home_dir ();
|
||||
|
||||
var vbox = new VBox (false, 0);
|
||||
vbox.pack_start (toolbar, false, true, 0);
|
||||
@ -89,12 +89,11 @@ namespace Spek {
|
||||
STOCK_OPEN, ResponseType.ACCEPT, null);
|
||||
chooser.set_default_response (ResponseType.ACCEPT);
|
||||
chooser.select_multiple = false;
|
||||
chooser.local_only = false;
|
||||
chooser.set_current_folder (path);
|
||||
chooser.set_current_folder (cur_dir);
|
||||
if (chooser.run () == ResponseType.ACCEPT) {
|
||||
var filename = chooser.get_filename ();
|
||||
path = Path.get_dirname (filename);
|
||||
spectrogram.open (filename);
|
||||
var file_name = chooser.get_filename ();
|
||||
cur_dir = Path.get_dirname (file_name);
|
||||
spectrogram.open (file_name);
|
||||
}
|
||||
chooser.destroy ();
|
||||
}
|
||||
@ -104,12 +103,22 @@ namespace Spek {
|
||||
_("Save Spectrogram"), this, FileChooserAction.SAVE,
|
||||
STOCK_CANCEL, ResponseType.CANCEL,
|
||||
STOCK_SAVE, ResponseType.ACCEPT, null);
|
||||
chooser.set_default_response (ResponseType.ACCEPT);
|
||||
chooser.set_current_folder (cur_dir);
|
||||
|
||||
// Suggested name is <file_name>.png
|
||||
var file_name = Path.get_basename (spectrogram.file_name);
|
||||
file_name += ".png";
|
||||
chooser.set_current_name (file_name);
|
||||
|
||||
var filter = new FileFilter ();
|
||||
filter.add_pattern ("*.png");
|
||||
filter.set_name (_("PNG Images"));
|
||||
chooser.add_filter (filter);
|
||||
if (chooser.run () == ResponseType.ACCEPT) {
|
||||
spectrogram.save (chooser.get_filename ());
|
||||
file_name = chooser.get_filename ();
|
||||
cur_dir = Path.get_dirname (file_name);
|
||||
spectrogram.save (file_name);
|
||||
}
|
||||
chooser.destroy ();
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user