r719: Turn the Automation range text label into an editable textbox..
[cinelerra_cv/mob.git] / cinelerra / zoombar.h
bloba95a37fccadc2bc6ed1b5bba59355c5327c4fe4b
1 #ifndef ZOOMBAR_H
2 #define ZOOMBAR_H
4 class ZoomTextBox;
6 class FromTextBox;
7 class LengthTextBox;
8 class ToTextBox;
11 class SampleZoomPanel;
12 class AmpZoomPanel;
13 class TrackZoomPanel;
14 class AutoZoom;
17 #include "guicast.h"
18 #include "mwindow.inc"
19 #include "mwindowgui.inc"
20 #include "zoompanel.h"
22 class ZoomBar : public BC_SubWindow
24 public:
25 ZoomBar(MWindow *mwindow, MWindowGUI *gui);
26 ~ZoomBar();
28 int create_objects();
29 void resize_event();
30 int draw();
31 int resize_event(int w, int h);
32 void redraw_time_dependancies();
33 int update(); // redraw the current values
34 void update_autozoom();
35 int update_clocks();
36 int update_playback(int64_t new_position); // update the playback position
37 int set_selection(int which_one);
38 void update_formatting(BC_TextBox *dst);
40 MWindow *mwindow;
41 MWindowGUI *gui;
42 SampleZoomPanel *sample_zoom;
43 AmpZoomPanel *amp_zoom;
44 TrackZoomPanel *track_zoom;
45 AutoZoom *auto_zoom;
46 ZoomTextBox *auto_zoom_text;
48 BC_Title *zoom_value, *playback_value;
49 LengthTextBox *length_value;
50 FromTextBox *from_value;
51 ToTextBox *to_value;
52 char string[256], string2[256];
53 int64_t old_position;
56 class SampleZoomPanel : public ZoomPanel
58 public:
59 SampleZoomPanel(MWindow *mwindow, ZoomBar *zoombar, int x, int y);
60 int handle_event();
61 MWindow *mwindow;
62 ZoomBar *zoombar;
65 class AmpZoomPanel : public ZoomPanel
67 public:
68 AmpZoomPanel(MWindow *mwindow, ZoomBar *zoombar, int x, int y);
69 int handle_event();
70 MWindow *mwindow;
71 ZoomBar *zoombar;
74 class TrackZoomPanel : public ZoomPanel
76 public:
77 TrackZoomPanel(MWindow *mwindow, ZoomBar *zoombar, int x, int y);
78 int handle_event();
79 MWindow *mwindow;
80 ZoomBar *zoombar;
83 class AutoZoom : public BC_Tumbler
85 public:
86 AutoZoom(MWindow *mwindow, ZoomBar *zoombar, int x, int y);
87 int handle_up_event();
88 int handle_down_event();
89 MWindow *mwindow;
90 ZoomBar *zoombar;
98 class ZoomTextBox : public BC_TextBox
100 public:
101 ZoomTextBox(MWindow *mwindow, ZoomBar *zoombar, int x, int y, char *text);
102 int handle_event();
103 MWindow *mwindow;
104 ZoomBar *zoombar;
109 class FromTextBox : public BC_TextBox
111 public:
112 FromTextBox(MWindow *mwindow, ZoomBar *zoombar, int x, int y);
113 int handle_event();
114 int update_position(double new_position);
115 char string[256], string2[256];
116 MWindow *mwindow;
117 ZoomBar *zoombar;
121 class LengthTextBox : public BC_TextBox
123 public:
124 LengthTextBox(MWindow *mwindow, ZoomBar *zoombar, int x, int y);
125 int handle_event();
126 int update_position(double new_position);
127 char string[256], string2[256];
128 MWindow *mwindow;
129 ZoomBar *zoombar;
132 class ToTextBox : public BC_TextBox
134 public:
135 ToTextBox(MWindow *mwindow, ZoomBar *zoombar, int x, int y);
136 int handle_event();
137 int update_position(double new_position);
138 char string[256], string2[256];
139 MWindow *mwindow;
140 ZoomBar *zoombar;
146 #endif