4 * Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
5 * Copyright (C) 2003-2016 Cinelerra CV contributors
7 * This program is free software; you can redistribute it and/or modify
8 * it under the terms of the GNU General Public License as published by
9 * the Free Software Foundation; either version 2 of the License, or
10 * (at your option) any later version.
12 * This program is distributed in the hope that it will be useful,
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
15 * GNU General Public License for more details.
17 * You should have received a copy of the GNU General Public License
18 * along with this program; if not, write to the Free Software
19 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
26 #include "cwindowgui.inc"
30 #include "mwindow.inc"
35 CPanel(MWindow *mwindow, CWindowGUI *subwindow, int x, int y, int w, int h);
38 void create_objects();
39 void reposition_buttons(int x, int y, int h);
40 void set_operation(int value);
43 CWindowGUI *subwindow;
44 CPanelZoom *cpanel_zoom;
48 BC_Toggle* operation[CPANEL_OPERATIONS];
51 class CPanelMask : public BC_Toggle
54 CPanelMask(MWindow *mwindow, CPanel *gui, int x, int y);
61 class CPanelRuler : public BC_Toggle
64 CPanelRuler(MWindow *mwindow, CPanel *gui, int x, int y);
71 class CPanelTitleSafe : public BC_Toggle
74 CPanelTitleSafe(MWindow *mwindow, CPanel *gui, int x, int y);
81 class CPanelErase : public BC_Toggle
84 CPanelErase(MWindow *mwindow, CPanel *gui, int x, int y);
91 class CPanelAntierase : public BC_Toggle
94 CPanelAntierase(MWindow *mwindow, CPanel *gui, int x, int y);
101 class CPanelProtect : public BC_Toggle
104 CPanelProtect(MWindow *mwindow, CPanel *gui, int x, int y);
111 class CPanelMagnify : public BC_Toggle
114 CPanelMagnify(MWindow *mwindow, CPanel *gui, int x, int y);
121 class CPanelCamera : public BC_Toggle
124 CPanelCamera(MWindow *mwindow, CPanel *gui, int x, int y);
131 class CPanelProj : public BC_Toggle
134 CPanelProj(MWindow *mwindow, CPanel *gui, int x, int y);
141 class CPanelCrop : public BC_Toggle
144 CPanelCrop(MWindow *mwindow, CPanel *gui, int x, int y);
151 class CPanelEyedrop : public BC_Toggle
154 CPanelEyedrop(MWindow *mwindow, CPanel *gui, int x, int y);
161 class CPanelToolWindow : public BC_Toggle
164 CPanelToolWindow(MWindow *mwindow, CPanel *gui, int x, int y);
167 int set_shown(int shown);
172 class CPanelZoom : public BC_FSlider
175 CPanelZoom(MWindow *mwindow, CPanel *gui, int x, int y, int h);
179 int set_shown(int shown);
180 int show_window(int flush=1) { return 0; }
181 int hide_window(int flush=1) { return 0; }
182 int show(int flush=1) { return BC_SubWindow::show_window(flush); }
183 int hide(int flush=1) { return BC_SubWindow::hide_window(flush); }
184 void update(float zoom);