| Top |
| guint | cursor-digit | Read / Write |
| guint | cursor-group | Read / Write |
| guint | cursor-param | Read / Write |
| guint | cursor-row | Read / Write |
| guint | octave | Write |
| gdouble | play-position | Write |
BtPatternEditor implements AtkImplementorIface, GtkBuildable and GtkScrollable.
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.
gboolean bt_pattern_editor_position_to_coords (BtPatternEditor *self,gint x,gint y,gint *row,gint *group,gint *parameter,gint *digit);
Get data coordinates for the mouse position. All out variables must not be
NULL.
typedef struct {
/* FIXME(ensonic): 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.
column value type |
||
default value |
||
minimum allowed value |
||
maximum allowed value |
||
gpointer |
extra data to attach |
typedef struct {
// can be used for the headline above the group
gchar *name;
guint num_columns;
BtPatternEditorColumn *columns;
/* user_data for main-page-patterns */
BtValueGroup *vg;
gchar *fmt;
} BtPatternEditorColumnGroup;
A group of BtPatternEditorColumns, such as a voice or all global parameters.
gchar * |
group name |
|
guint |
number of columns |
|
BtPatternEditorColumn * |
array of columns |
|
BtValueGroup * |
extra data for main-page-patterns |
|
gchar * |
extra data for main-page-patterns |
“cursor-digit” property“cursor-digit” guint
The current digit of the parameter the cursor is at.
Flags: Read / Write
Allowed values: <= 3
Default value: 0
“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
“play-position” property“play-position” gdouble
The current playing position as a fraction.
Flags: Write
Allowed values: [-1,1]
Default value: -1