r125: This commit was manufactured by cvs2svn to create tag 'r1_1_7-last'.
[cinelerra_cv/mob.git] / hvirtual / cinelerra / mwindowgui.h
blob4adc60aeed4e6ea849e279a5e4fb57fb9f5d6113
1 #ifndef MAINWINDOWGUI_H
2 #define MAINWINDOWGUI_H
4 #include "editpopup.inc"
5 #include "guicast.h"
6 #include "mbuttons.inc"
7 #include "mainclock.inc"
8 #include "maincursor.h"
9 #include "mainmenu.inc"
10 #include "mtimebar.inc"
11 #include "mwindow.inc"
12 #include "patchbay.inc"
13 #include "pluginpopup.inc"
14 #include "zoombar.inc"
15 #include "samplescroll.inc"
16 #include "statusbar.inc"
17 #include "trackcanvas.inc"
18 #include "trackscroll.inc"
19 #include "transitionpopup.inc"
22 class MWindowGUI : public BC_Window
24 public:
25 MWindowGUI(MWindow *mwindow);
26 ~MWindowGUI();
28 int create_objects();
29 void get_scrollbars();
31 // ======================== event handlers
33 // Replace with update
34 void redraw_time_dependancies();
38 void update(int scrollbars,
39 int canvas, // 1 for incremental drawing. 2 for full refresh
40 int timebar,
41 int zoombar,
42 int patchbay,
43 int clock,
44 int buttonbar);
46 void update_title(char *path);
47 int translation_event();
48 int resize_event(int w, int h); // handle a resize event
49 int keypress_event();
50 int close_event();
51 int quit();
52 int save_defaults(Defaults *defaults);
53 int menu_h();
54 // Draw on the status bar only.
55 int show_message(char *message, int color = BLACK);
56 // Pop up a box if the statusbar is taken and show an error.
57 void show_error(char *message, int color = BLACK);
58 int repeat_event(int64_t duration);
59 // Entry point for drag events in all windows
60 int drag_motion();
61 int drag_stop();
62 void default_positions();
64 // Return if the area bounded by x1 and x2 is visible between view_x1 and view_x2
65 static int visible(int64_t x1, int64_t x2, int64_t view_x1, int64_t view_x2);
67 MWindow *mwindow;
69 // Popup menus
70 EditPopup *edit_menu;
71 PluginPopup *plugin_menu;
72 TransitionPopup *transition_menu;
74 MainClock *mainclock;
75 MButtons *mbuttons;
76 MTimeBar *timebar;
77 PatchBay *patchbay;
78 MainMenu *mainmenu;
79 ZoomBar *zoombar;
80 SampleScroll *samplescroll;
81 StatusBar *statusbar;
82 TrackScroll *trackscroll;
83 TrackCanvas *canvas;
84 // Cursor used to select regions
85 MainCursor *cursor;
86 // Dimensions of canvas minus scrollbars
87 int view_w, view_h;
93 #endif