Rearrange stuff a bit.
authorCarl Hetherington <cth@carlh.net>
Wed, 25 Jul 2012 15:54:46 +0000 (16:54 +0100)
committerCarl Hetherington <cth@carlh.net>
Wed, 25 Jul 2012 15:54:46 +0000 (16:54 +0100)
src/wx/film_editor.cc
src/wx/film_editor.h
src/wx/wx_util.cc
src/wx/wx_util.h

index 42d6fcff57dd0c84f924de204e415755e11f80dc..9fca6a6d5c96ae7df2244f5a45e54496f84a16c6 100644 (file)
@@ -48,59 +48,141 @@ FilmEditor::FilmEditor (Film* f, wxWindow* parent)
        : wxPanel (parent)
        , _film (f)
 {
+       wxSizer* sizer = new wxFlexGridSizer (2, 6, 6);
+       this->SetSizer (sizer);
+
+       add_label_to_sizer (sizer, this, "Name");
        _name = new wxTextCtrl (this, wxID_ANY);
+       sizer->Add (_name, 1, wxEXPAND);
+
+#if 0
+       add_label_to_sizer (sizer, this, "Content");
+//     _content = new wxFilePickerCtrl (this, wxID_ANY, wxT("*.*"), false);
+       sizer->Add (_content, 1, wxEXPAND);
+#endif 
+
+       add_label_to_sizer (sizer, this, "Content Type");
+       _dcp_content_type = new wxComboBox (this, wxID_ANY);
+       sizer->Add (_dcp_content_type);
+
+       add_label_to_sizer (sizer, this, "Frames Per Second");
        _frames_per_second = new wxSpinCtrl (this);
+       sizer->Add (video_control (_frames_per_second));
+
+       add_label_to_sizer (sizer, this, "Format");
        _format = new wxComboBox (this, wxID_ANY);
-//     _content = new wxFileCtrl (this, wxID_ANY, wxT("*.*"), false);
-       _crop_panel = new wxPanel (this);
-       _left_crop = new wxSpinCtrl (_crop_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize (64, -1));
-       _right_crop = new wxSpinCtrl (_crop_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize (64, -1));
-       _top_crop = new wxSpinCtrl (_crop_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize (64, -1));
-       _bottom_crop = new wxSpinCtrl (_crop_panel, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize (64, -1));
-       _filters_panel = new wxPanel (this);
-       _filters = new wxStaticText (_filters_panel, wxID_ANY, wxT (""));
-       _filters_button = new wxButton (_filters_panel, wxID_ANY, wxT ("Edit..."));
+       sizer->Add (_format);
+
+       {
+               add_label_to_sizer (sizer, this, "Crop");
+               wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
+               wxPanel* p = new wxPanel (this);
+               p->SetSizer (s);
+
+               add_label_to_sizer (s, p, "L");
+               _left_crop = new wxSpinCtrl (p, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize (64, -1));
+               s->Add (_left_crop, 0);
+               add_label_to_sizer (s, p, "R");
+               _right_crop = new wxSpinCtrl (p, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize (64, -1));
+               s->Add (_right_crop, 0);
+               add_label_to_sizer (s, p, "T");
+               _top_crop = new wxSpinCtrl (p, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize (64, -1));
+               s->Add (_top_crop, 0);
+               add_label_to_sizer (s, p, "B");
+               _bottom_crop = new wxSpinCtrl (p, wxID_ANY, wxEmptyString, wxDefaultPosition, wxSize (64, -1));
+               s->Add (_bottom_crop, 0);
+
+               sizer->Add (p);
+       }
+
+       /* VIDEO-only stuff */
+       {
+               video_control (add_label_to_sizer (sizer, this, "Filters"));
+               wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
+               wxPanel* p = new wxPanel (this);
+               p->SetSizer (s);
+               _filters = new wxStaticText (p, wxID_ANY, wxT (""));
+               s->Add (_filters, 1, wxEXPAND | wxALIGN_CENTER_VERTICAL | wxALL, 6);
+               _filters_button = new wxButton (p, wxID_ANY, wxT ("Edit..."));
+               s->Add (_filters_button, 0);
+               sizer->Add (p, 1);
+       }
+
+       video_control (add_label_to_sizer (sizer, this, "Scaler"));
        _scaler = new wxComboBox (this, wxID_ANY);
-       _audio_gain_panel = new wxPanel (this);
-       _audio_gain = new wxSpinCtrl (_audio_gain_panel);
-       _audio_delay_panel = new wxPanel (this);
-       _audio_delay = new wxSpinCtrl (_audio_delay_panel);
-       _dcp_content_type = new wxComboBox (this, wxID_ANY);
+       sizer->Add (video_control (_scaler), 1);
+
+       {
+               video_control (add_label_to_sizer (sizer, this, "Audio Gain"));
+               wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
+               wxPanel* p = new wxPanel (this);
+               p->SetSizer (s);
+               _audio_gain = new wxSpinCtrl (p);
+               s->Add (video_control (_audio_gain), 1);
+               video_control (add_label_to_sizer (s, p, "dB"));
+               sizer->Add (p);
+       }
+
+       {
+               video_control (add_label_to_sizer (sizer, this, "Audio Delay"));
+               wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
+               wxPanel* p = new wxPanel (this);
+               p->SetSizer (s);
+               _audio_delay = new wxSpinCtrl (p);
+               s->Add (video_control (_audio_delay), 1);
+               video_control (add_label_to_sizer (s, p, "ms"));
+               sizer->Add (p);
+       }
+
+       video_control (add_label_to_sizer (sizer, this, "Original Size"));
        _original_size = new wxStaticText (this, wxID_ANY, wxT (""));
-       _dcp_range_panel = new wxPanel (this);
-       _change_dcp_range_button = new wxButton (_dcp_range_panel, wxID_ANY, wxT ("Edit..."));
+       sizer->Add (video_control (_original_size), 1, wxALIGN_CENTER_VERTICAL);
+       
+       video_control (add_label_to_sizer (sizer, this, "Length"));
+       _length = new wxStaticText (this, wxID_ANY, wxT (""));
+       sizer->Add (video_control (_length), 1, wxALIGN_CENTER_VERTICAL);
+
+       video_control (add_label_to_sizer (sizer, this, "Audio"));
+       _audio = new wxStaticText (this, wxID_ANY, wxT (""));
+       sizer->Add (video_control (_audio), 1, wxALIGN_CENTER_VERTICAL);
+
+       {
+               video_control (add_label_to_sizer (sizer, this, "Range"));
+               wxBoxSizer* s = new wxBoxSizer (wxHORIZONTAL);
+               wxPanel* p = new wxPanel (this);
+               p->SetSizer (s);
+               _dcp_range = new wxStaticText (p, wxID_ANY, wxT (""));
+               s->Add (video_control (_dcp_range), 1, wxALIGN_CENTER_VERTICAL);
+               _change_dcp_range_button = new wxButton (p, wxID_ANY, wxT ("Edit..."));
+               s->Add (video_control (_change_dcp_range_button));
+               sizer->Add (p);
+       }
+
        _dcp_ab = new wxCheckBox (this, wxID_ANY, wxT ("A/B"));
+       sizer->Add (_dcp_ab, 1);
+       sizer->AddSpacer (0);
+
+       /* STILL-only stuff */
+       still_control (add_label_to_sizer (sizer, this, "Duration"));
+       _still_duration = new wxSpinCtrl (this);
+       sizer->Add (still_control (_still_duration));
+       still_control (add_label_to_sizer (sizer, this, "s"));
 
-//XXX  _vbox.set_border_width (12);
-//XXX  _vbox.set_spacing (12);
-       
        /* Set up our editing widgets */
+       
        _left_crop->SetRange (0, 1024);
-//XXX  _left_crop.set_increments (1, 16);
        _top_crop->SetRange (0, 1024);
-//XXX  _top_crop.set_increments (1, 16);
        _right_crop->SetRange (0, 1024);
-//XXX  _right_crop.set_increments (1, 16);
        _bottom_crop->SetRange (0, 1024);
-//XXX  _bottom_crop.set_increments (1, 16);
-//XXX  _filters.set_alignment (0, 0.5);
        _audio_gain->SetRange (-60, 60);
-//XXX  _audio_gain.set_increments (1, 3);
        _audio_delay->SetRange (-1000, 1000);
-//XXX  _audio_delay.set_increments (1, 20);
-       _still_duration = new wxSpinCtrl (this);
        _still_duration->SetRange (0, 60 * 60);
-//XXX  _still_duration.set_increments (1, 5);
-       _dcp_range = new wxStaticText (_dcp_range_panel, wxID_ANY, wxT (""));
-//     _dcp_range.set_alignment (0, 0.5);
 
        vector<Format const *> fmt = Format::all ();
        for (vector<Format const *>::iterator i = fmt.begin(); i != fmt.end(); ++i) {
                _format->Append (std_to_wx ((*i)->name ()));
        }
 
-//XXX  _frames_per_second.set_increments (1, 5);
-//XXX  _frames_per_second.set_digits (2);
        _frames_per_second->SetRange (0, 60);
 
        vector<DCPContentType const *> const ct = DCPContentType::all ();
@@ -113,12 +195,6 @@ FilmEditor::FilmEditor (Film* f, wxWindow* parent)
                _scaler->Append (std_to_wx ((*i)->name()));
        }
 
-//XXX  _original_size.set_alignment (0, 0.5);
-       _length = new wxStaticText (this, wxID_ANY, wxT (""));
-//XXX  _length.set_alignment (0, 0.5);
-       _audio = new wxStaticText (this, wxID_ANY, wxT (""));
-//XXX  _audio.set_alignment (0, 0.5);
-
        /* And set their values from the Film */
        set_film (f);
        
@@ -141,91 +217,6 @@ FilmEditor::FilmEditor (Film* f, wxWindow* parent)
        _change_dcp_range_button->Connect (wxID_ANY, wxEVT_COMMAND_BUTTON_CLICKED, wxCommandEventHandler (FilmEditor::change_dcp_range_clicked), 0, this);
 
 
-       /* Set up the sizer */
-       _sizer = new wxFlexGridSizer (2, 6, 6);
-       this->SetSizer (_sizer);
-
-       add_label_to_sizer (_sizer, this, _labels, "Name");
-       _sizer->Add (_name, 1, wxEXPAND);
-
-#if 0
-       add_label_to_sizer (_sizer, this, _labels, "Content");
-       _sizer->Add (_content, 1, wxEXPAND);
-#endif 
-
-       add_label_to_sizer (_sizer, this, _labels, "Content Type");
-       _sizer->Add (_dcp_content_type);
-
-       add_label_to_sizer (_sizer, this, _labels, "Frames Per Second");
-       _sizer->Add (video_control (_frames_per_second));
-
-       add_label_to_sizer (_sizer, this, _labels, "Format");
-       _sizer->Add (_format);
-
-       add_label_to_sizer (_sizer, this, _labels, "Crop");
-       _crop_sizer = new wxBoxSizer (wxHORIZONTAL);
-       _crop_panel->SetSizer (_crop_sizer);
-
-       add_label_to_sizer (_crop_sizer, _crop_panel, _labels, "L");
-       _crop_sizer->Add (_left_crop, 0);
-       add_label_to_sizer (_crop_sizer, _crop_panel, _labels, "R");
-       _crop_sizer->Add (_right_crop, 0);
-       add_label_to_sizer (_crop_sizer, _crop_panel, _labels, "T");
-       _crop_sizer->Add (_top_crop, 0);
-       add_label_to_sizer (_crop_sizer, _crop_panel, _labels, "B");
-       _crop_sizer->Add (_bottom_crop, 0);
-
-       _sizer->Add (_crop_panel);
-
-       /* VIDEO-only stuff */
-       video_control (add_label_to_sizer (_sizer, this, _labels, "Filters"));
-       _filters_sizer = new wxBoxSizer (wxHORIZONTAL);
-       _filters_panel->SetSizer (_filters_sizer);
-       _filters_sizer->Add (_filters, 1, wxEXPAND | wxALIGN_CENTER_VERTICAL | wxALL, 6);
-       _filters_sizer->Add (_filters_button, 0);
-       _sizer->Add (_filters_panel, 1);
-
-       video_control (add_label_to_sizer (_sizer, this, _labels, "Scaler"));
-       _sizer->Add (video_control (_scaler), 1);
-
-       video_control (add_label_to_sizer (_sizer, this, _labels, "Audio Gain"));
-       _audio_gain_sizer = new wxBoxSizer (wxHORIZONTAL);
-       _audio_gain_panel->SetSizer (_audio_gain_sizer);
-       _audio_gain_sizer->Add (video_control (_audio_gain), 1);
-       video_control (add_label_to_sizer (_audio_gain_sizer, _audio_gain_panel, _labels, "dB"));
-       _sizer->Add (_audio_gain_panel);
-
-       video_control (add_label_to_sizer (_sizer, this, _labels, "Audio Delay"));
-       _audio_delay_sizer = new wxBoxSizer (wxHORIZONTAL);
-       _audio_delay_panel->SetSizer (_audio_delay_sizer);
-       _audio_delay_sizer->Add (video_control (_audio_delay), 1);
-       video_control (add_label_to_sizer (_audio_delay_sizer, _audio_delay_panel, _labels, "ms"));
-       _sizer->Add (_audio_delay_panel);
-
-       video_control (add_label_to_sizer (_sizer, this, _labels, "Original Size"));
-       _sizer->Add (video_control (_original_size), 1, wxALIGN_CENTER_VERTICAL);
-       
-       video_control (add_label_to_sizer (_sizer, this, _labels, "Length"));
-       _sizer->Add (video_control (_length), 1, wxALIGN_CENTER_VERTICAL);
-
-       video_control (add_label_to_sizer (_sizer, this, _labels, "Audio"));
-       _sizer->Add (video_control (_audio), 1, wxALIGN_CENTER_VERTICAL);
-
-       video_control (add_label_to_sizer (_sizer, this, _labels, "Range"));
-       _dcp_range_sizer = new wxBoxSizer (wxHORIZONTAL);
-       _dcp_range_panel->SetSizer (_dcp_range_sizer);
-       _dcp_range_sizer->Add (video_control (_dcp_range), 1, wxALIGN_CENTER_VERTICAL);
-       _dcp_range_sizer->Add (video_control (_change_dcp_range_button));
-       _sizer->Add (_dcp_range_panel);
-
-       _sizer->Add (_dcp_ab, 1);
-       _sizer->AddSpacer (0);
-
-       /* STILL-only stuff */
-       still_control (add_label_to_sizer (_sizer, this, _labels, "Duration"));
-       _sizer->Add (still_control (_still_duration));
-       still_control (add_label_to_sizer (_sizer, this, _labels, "s"));
-
        setup_visibility ();
 }
 
index 23fd3352a30f51bc10332f7cea3d3036315cbaa4..7a058652ccc03ad71eb33f06c3bbc36e796bc335 100644 (file)
@@ -117,20 +117,6 @@ private:
        /** Selector to generate an A/B comparison DCP */
        wxCheckBox* _dcp_ab;
 
-       wxFlexGridSizer* _sizer;
-       wxPanel* _audio_gain_panel;
-       wxBoxSizer* _audio_gain_sizer;
-       wxPanel* _audio_delay_panel;
-       wxBoxSizer* _audio_delay_sizer;
-       wxPanel* _filters_panel;
-       wxSizer* _filters_sizer;
-       wxSizer* _crop_sizer;
-       wxPanel* _crop_panel;
-       wxPanel* _dcp_range_panel;
-       wxSizer* _dcp_range_sizer;
-
        std::list<wxControl*> _video_controls;
        std::list<wxControl*> _still_controls;
-
-       std::list<wxControl*> _labels;
 };
index bb268ea68dea96784984fbba5f147f9acc737e67..50323c6e0065c428b1323e9b93efdf9190975c78 100644 (file)
 using namespace std;
 
 wxStaticText *
-add_label_to_sizer (wxSizer* s, wxWindow* p, list<wxControl*>& c, string t)
+add_label_to_sizer (wxSizer* s, wxWindow* p, string t)
 {
        wxStaticText* m = new wxStaticText (p, wxID_ANY, wxString (t.c_str (), wxConvUTF8));
-       c.push_back (m);
        s->Add (m, 0, wxALIGN_CENTER_VERTICAL | wxALL, 6);
        return m;
 }
index 6f83e3df0e04a25c70a27a77b53818f2a8633d17..3fcc383f0c447c89fe11854943b39aceb69a1818 100644 (file)
@@ -17,7 +17,6 @@
 
 */
 
-#include <list>
 #include <wx/wx.h>
 
 /** @file src/wx/wx_util.h
@@ -25,6 +24,6 @@
  */
 
 extern void error_dialog (std::string);
-extern wxStaticText* add_label_to_sizer (wxSizer *, wxWindow *, std::list<wxControl*>&, std::string);
+extern wxStaticText* add_label_to_sizer (wxSizer *, wxWindow *, std::string);
 extern std::string wx_to_std (wxString);
 extern wxString std_to_wx (std::string);