LiVES  1.6.4-svn
 All Data Structures Files Functions Variables Typedefs Enumerations Enumerator Macros
paramspecial.h
Go to the documentation of this file.
1 // paramspecial.h
2 // LiVES
3 // (c) G. Finch 2004 - 2009 <salsaman@xs4all.nl,salsaman@gmail.com>
4 // released under the GNU GPL 3 or later
5 // see file ../COPYING or www.gnu.org for licensing details
6 
7 
8 // dynamic window generation from parameter arrays :-)
9 // special widgets
10 
11 // TODO - refactor all of this using lives_param_special_t
12 
13 typedef struct {
16  GtkWidget *height_widget;
17  GtkWidget *width_widget;
18  GtkWidget *checkbutton;
19  gulong width_func;
20  gulong height_func;
22 
23 
24 typedef struct {
26  gboolean added;
27  gint type;
30  gint xend_param;
31  gint yend_param;
32  gint *extra_params;
33  gint num_extra;
34  GtkWidget *xstart_widget;
35  GtkWidget *ystart_widget;
36  GtkWidget *xend_widget;
37  GtkWidget *yend_widget;
38  GtkWidget **extra_widgets;
40 
41 #define FD_NONE 0
42 #define FD_RECT_DEMASK 1
43 #define FD_RECT_MULTRECT 2
44 #define FD_SINGLEPOINT 3
45 
46 typedef struct {
49  gint end_param;
50  GtkWidget *start_widget;
51  GtkWidget *end_widget;
54 
55 void init_special (void);
56 
57 gint add_to_special (const gchar *special_string, lives_rfx_t *);
58 
59 void check_for_special (lives_param_t *, gint num, GtkBox *, lives_rfx_t *);
60 
62 
63 void fd_tweak(lives_rfx_t *);
64 
65 void after_aspect_width_changed (GtkSpinButton *, gpointer);
66 
67 void after_aspect_height_changed (GtkToggleButton *, gpointer);
68 
69 void special_cleanup (void);
70 
72 void setmergealign (void);
73 
74 gboolean is_perchannel_multi(lives_rfx_t *rfx, gint i);
75 
76 #include "framedraw.h"
77 
78 #define RFX_EXTRA_WIDTH 200 /* extra width in pixels for framedraw */