2 Copyright (C) 1998-99 Paul Davis
3 This program is free software; you can redistribute it and/or modify
4 it under the terms of the GNU General Public License as published by
5 the Free Software Foundation; either version 2 of the License, or
6 (at your option) any later version.
8 This program is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
11 GNU General Public License for more details.
13 You should have received a copy of the GNU General Public License
14 along with this program; if not, write to the Free Software
15 Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
22 #include <gtkmm2ext/gtk_ui.h>
23 #include <gtkmm2ext/pixfader.h>
24 #include <gtkmm2ext/slider_controller.h>
28 using namespace Gtkmm2ext
;
31 SliderController::SliderController (Glib::RefPtr
<Gdk::Pixbuf
> image
, Gtk::Adjustment
*adj
, int orientation
, int fader_length
)
33 : PixFader (image
, *adj
, orientation
, fader_length
),
36 spin
.set_name ("SliderControllerValue");
37 spin
.set_size_request (70,-1); // should be based on font size somehow
38 spin
.set_numeric (true);
39 spin
.set_snap_to_ticks (false);
43 SliderController::set_value (float v
)
45 adjustment
.set_value (v
);
49 SliderController::on_button_press_event (GdkEventButton
*ev
)
51 if (binding_proxy
.button_press_handler (ev
)) {
55 return PixFader::on_button_press_event (ev
);
58 VSliderController::VSliderController (Glib::RefPtr
<Gdk::Pixbuf
> image
,
59 Gtk::Adjustment
*adj
, int fader_length
,
62 : SliderController (image
, adj
, VERT
, fader_length
)
65 spin_frame
.add (spin
);
66 spin_frame
.set_shadow_type (Gtk::SHADOW_IN
);
67 spin_frame
.set_name ("BaseFrame");
68 spin_hbox
.pack_start (spin_frame
, false, true);
69 // pack_start (spin_hbox, false, false);
73 HSliderController::HSliderController (Glib::RefPtr
<Gdk::Pixbuf
> image
,
74 Gtk::Adjustment
*adj
, int fader_length
,
77 : SliderController (image
, adj
, HORIZ
, fader_length
)
80 spin_frame
.add (spin
);
81 //spin_frame.set_shadow_type (Gtk::SHADOW_IN);
82 spin_frame
.set_name ("BaseFrame");
83 spin_hbox
.pack_start (spin_frame
, false, true);
84 // pack_start (spin_hbox, false, false);