X-Git-Url: https://git.pterodactylus.net/?a=blobdiff_plain;f=synfig-studio%2Ftrunk%2Fsrc%2Fgtkmm%2Fdialog_setup.h;h=530e4fa8674a3d6e92b4a49deb80eaf2a5369e6e;hb=9459638ad6797b8139f1e9f0715c96076dbf0890;hp=51b661e618b334ac13a23e60260aff2fb777d307;hpb=ce408de81ca266b1f334ee9bc6c8fb7ba1492ed4;p=synfig.git diff --git a/synfig-studio/trunk/src/gtkmm/dialog_setup.h b/synfig-studio/trunk/src/gtkmm/dialog_setup.h index 51b661e..530e4fa 100644 --- a/synfig-studio/trunk/src/gtkmm/dialog_setup.h +++ b/synfig-studio/trunk/src/gtkmm/dialog_setup.h @@ -2,10 +2,12 @@ /*! \file dialog_setup.h ** \brief Template Header ** -** $Id: dialog_setup.h,v 1.1.1.1 2005/01/07 03:34:36 darco Exp $ +** $Id$ ** ** \legal ** Copyright (c) 2002-2005 Robert B. Quattlebaum Jr., Adrian Bentley +** Copyright (c) 2007, 2008 Chris Moore +** Copyright (c) 2008, 2009 Carlos López ** ** This package is free software; you can redistribute it and/or ** modify it under the terms of the GNU General Public License as @@ -35,12 +37,22 @@ #include #include #include +#include +#include +#include +#include #include #include #include /* === M A C R O S ========================================================= */ +#ifndef DEFAULT_PREDEFINED_SIZE +#define DEFAULT_PREDEFINED_SIZE _("Custom Size") +#endif +#ifndef DEFAULT_PREDEFINED_FPS +#define DEFAULT_PREDEFINED_FPS _("Custom fps") +#endif /* === T Y P E D E F S ===================================================== */ @@ -65,11 +77,11 @@ class GammaPattern : public Gtk::DrawingArea float r_F32_to_F32(float x)const { float f((pow(x,gamma_r)*std::min(red_blue_level,1.0f)*(1.0f-black_level)+black_level)); if(f<0)f=0; if(f>1)f=1; return f; } float g_F32_to_F32(float x)const { float f((pow(x,gamma_g)*sqrt(std::min(2.0f-red_blue_level,red_blue_level))*(1.0f-black_level)+black_level)); if(f<0)f=0; if(f>1)f=1; return f; } float b_F32_to_F32(float x)const { float f((pow(x,gamma_b)*std::min(2.0f-red_blue_level,1.0f)*(1.0f-black_level)+black_level)); if(f<0)f=0; if(f>1)f=1; return f; } - + public: - + void refresh(); - + void set_gamma_r(float x) { gamma_r=x; } void set_gamma_g(float x) { gamma_g=x; }; void set_gamma_b(float x) { gamma_b=x; }; @@ -81,9 +93,9 @@ public: float get_gamma_b()const { return gamma_b; } float get_black_level()const { return black_level; } float get_red_blue_level()const { return red_blue_level; } - + GammaPattern(); - + ~GammaPattern(); bool redraw(GdkEventExpose*bleh=NULL); @@ -96,16 +108,16 @@ class BlackLevelSelector : public Gtk::DrawingArea sigc::signal signal_value_changed_; public: - + BlackLevelSelector(); - + ~BlackLevelSelector(); sigc::signal& signal_value_changed() { return signal_value_changed_; } - + void set_value(float x) { level=x; queue_draw(); } - const float &get_value()const { return level; } + const float &get_value()const { return level; } bool redraw(GdkEventExpose*bleh=NULL); @@ -119,16 +131,16 @@ class RedBlueLevelSelector : public Gtk::DrawingArea sigc::signal signal_value_changed_; public: - + RedBlueLevelSelector(); - + ~RedBlueLevelSelector(); sigc::signal& signal_value_changed() { return signal_value_changed_; } - + void set_value(float x) { level=x; queue_draw(); } - const float &get_value()const { return level; } + const float &get_value()const { return level; } bool redraw(GdkEventExpose*bleh=NULL); @@ -139,7 +151,7 @@ class Widget_Enum; class Dialog_Setup : public Gtk::Dialog { - + void on_ok_pressed(); void on_apply_pressed(); @@ -148,12 +160,14 @@ class Dialog_Setup : public Gtk::Dialog void on_gamma_b_change(); void on_black_level_change(); void on_red_blue_level_change(); + void on_size_template_combo_change(); + void on_fps_template_combo_change(); - GammaPattern gamma_pattern; + GammaPattern gamma_pattern; BlackLevelSelector black_level_selector; RedBlueLevelSelector red_blue_level_selector; Gtk::OptionMenu timestamp_optionmenu; - + Gtk::Adjustment adj_gamma_r; Gtk::Adjustment adj_gamma_g; Gtk::Adjustment adj_gamma_b; @@ -162,17 +176,38 @@ class Dialog_Setup : public Gtk::Dialog Gtk::Adjustment adj_undo_depth; Gtk::CheckButton toggle_use_colorspace_gamma; +#ifdef SINGLE_THREADED + Gtk::CheckButton toggle_single_threaded; +#endif synfig::Time::Format time_format; - + Gtk::Menu *timestamp_menu; Widget_Enum *widget_enum; + + Widget_Time auto_backup_interval; + + Gtk::CheckButton toggle_restrict_radius_ducks; + Gtk::CheckButton toggle_resize_imported_images; + + Gtk::Entry textbox_browser_command; + + Gtk::ComboBoxText* size_template_combo; + Gtk::ComboBoxText* fps_template_combo; + Gtk::Entry textbox_custom_filename_prefix; + Gtk::Adjustment adj_pref_x_size; + Gtk::Adjustment adj_pref_y_size; + Gtk::Adjustment adj_pref_fps; + Gtk::SpinButton* pref_fps_spinbutton; + Gtk::SpinButton* pref_y_size_spinbutton; + Gtk::SpinButton* pref_x_size_spinbutton; + Gtk::Tooltips tooltips_; public: void set_time_format(synfig::Time::Format time_format); const synfig::Time::Format& get_time_format()const { return time_format; } - + Dialog_Setup(); ~Dialog_Setup();