1 #ifndef DEINTERWINDOW_H
2 #define DEINTERWINDOW_H
5 class DeInterlaceThread
;
6 class DeInterlaceWindow
;
10 #include "deinterlace.h"
11 #include "pluginclient.h"
13 PLUGIN_THREAD_HEADER(DeInterlaceMain
, DeInterlaceThread
, DeInterlaceWindow
);
15 class DeInterlaceOption
;
16 class DeInterlaceMode
;
17 class DeInterlaceDominanceTop
;
18 class DeInterlaceDominanceBottom
;
19 class DeInterlaceAdaptive
;
20 class DeInterlaceThreshold
;
22 class DeInterlaceWindow
: public BC_Window
25 DeInterlaceWindow(DeInterlaceMain
*client
, int x
, int y
);
30 int set_mode(int mode
, int recursive
);
31 void get_status_string(char *string
, int changed_rows
);
32 DeInterlaceMain
*client
;
33 DeInterlaceMode
*mode
;
34 DeInterlaceAdaptive
*adaptive
;
35 DeInterlaceDominanceTop
*dominance_top
;
36 DeInterlaceDominanceBottom
*dominance_bottom
;
37 DeInterlaceThreshold
*threshold
;
38 int optional_controls_x
,optional_controls_y
;
42 class DeInterlaceOption
: public BC_Radial
45 DeInterlaceOption(DeInterlaceMain
*client
,
46 DeInterlaceWindow
*window
,
54 DeInterlaceMain
*client
;
55 DeInterlaceWindow
*window
;
59 class DeInterlaceAdaptive
: public BC_CheckBox
62 DeInterlaceAdaptive(DeInterlaceMain
*client
, int x
, int y
);
64 DeInterlaceMain
*client
;
67 class DeInterlaceDominanceTop
: public BC_Radial
70 DeInterlaceDominanceTop(DeInterlaceMain
*client
, DeInterlaceWindow
*window
, int x
, int y
, char * title
);
72 DeInterlaceMain
*client
;
73 DeInterlaceWindow
*window
;
76 class DeInterlaceDominanceBottom
: public BC_Radial
79 DeInterlaceDominanceBottom(DeInterlaceMain
*client
, DeInterlaceWindow
*window
, int x
, int y
, char * title
);
81 DeInterlaceMain
*client
;
82 DeInterlaceWindow
*window
;
85 class DeInterlaceThreshold
: public BC_IPot
88 DeInterlaceThreshold(DeInterlaceMain
*client
, int x
, int y
);
89 ~DeInterlaceThreshold();
92 DeInterlaceMain
*client
;
93 BC_Title
*title_caption
;
98 class DeInterlaceMode
: public BC_PopupMenu
101 DeInterlaceMode(DeInterlaceMain
*client
,
102 DeInterlaceWindow
*window
,
105 void create_objects();
106 static char* to_text(int shape
);
107 static int from_text(char *text
);
109 DeInterlaceMain
*plugin
;
110 DeInterlaceWindow
*gui
;