| Top |
| GtkWidget * | bt_pattern_editor_new () |
| void | bt_pattern_editor_set_pattern () |
| gboolean | bt_pattern_editor_get_selection () |
| guint | cursor-group | Read / Write |
| guint | cursor-param | Read / Write |
| guint | cursor-row | Read / Write |
| guint | octave | Write |
| gdouble | play-position | Write |
GtkWidget *
bt_pattern_editor_new (void);
Create a new pattern editor widget. Use bt_pattern_editor_set_pattern() to
pass pattern data.
void bt_pattern_editor_set_pattern (BtPatternEditor *self,gpointer pattern_data,guint num_rows,guint num_groups,BtPatternEditorColumnGroup *groups,BtPatternEditorCallbacks *cb);
Set pattern data to show in the widget.
gboolean bt_pattern_editor_get_selection (BtPatternEditor *self,gint *start,gint *end,gint *group,gint *param);
Get selection rectangle.
typedef struct {
/* FIXME: what about supplying
* - BtPatternEditorColumn instead of BtPatternEditorColumn->user_data
* - BtPatternEditorColumnGroup instead of track;
*/
gfloat (*get_data_func)(gpointer pattern_data, gpointer column_data, guint row, guint group, guint param);
void (*set_data_func)(gpointer pattern_data, gpointer column_data, guint row, guint group, guint param, guint digit, gfloat value);
} BtPatternEditorCallbacks;
Data format conversion callbacks.
typedef struct {
BtPatternEditorColumnType type;
float def, min, max;
gpointer user_data;
} BtPatternEditorColumn;
A parameter column.
typedef struct {
// just an id to tell groups apart
BtPatternEditorColumnGroupType type;
// can be used for the headline above the group
gchar *name;
guint num_columns;
BtPatternEditorColumn *columns;
gpointer user_data;
} BtPatternEditorColumnGroup;
A group of BtPatternEditorColumns, such as a voice or all global parameters.
group type |
||
group name |
||
number of columns |
||
BtPatternEditorColumn * |
array of columns |
|
extra data to attach |
“cursor-group” property “cursor-group” guint
The current group the cursor is in.
Flags: Read / Write
Default value: 0
“cursor-param” property “cursor-param” guint
The current parameter the cursor is at.
Flags: Read / Write
Default value: 0
“cursor-row” property “cursor-row” guint
The current cursor row.
Flags: Read / Write
Default value: 0
“octave” property “octave” guint
The octave for note input.
Flags: Write
Allowed values: <= 12
Default value: 2
“set-scroll-adjustments” signalvoid user_function (BtPatternEditor *hadjustment, GtkAdjustment *vadjustment, GtkAdjustment *arg2, gpointer user_data)
Internal signal for scrolling.
hadjustment |
horizontal adjustment |
|
vadjustment |
vertical adjust |
|
user_data |
user data set when the signal handler was connected. |
Flags: Run Last