AgsMatrix

AgsMatrix — matrix sequencer

Synopsis

#include <ags/X/machine/ags_matrix.h>

#define             AGS_MATRIX_CELL_HEIGHT
#define             AGS_MATRIX_CELL_WIDTH
#define             AGS_MATRIX_OCTAVE
#define             AGS_MATRIX_PATTERN_CONTROLS
struct              AgsMatrix;
struct              AgsMatrixClass;
void                ags_matrix_draw_gutter              (AgsMatrix *matrix);
void                ags_matrix_draw_matrix              (AgsMatrix *matrix);
void                ags_matrix_highlight_gutter_point   (AgsMatrix *matrix,
                                                         guint j,
                                                         guint i);
void                ags_matrix_input_map_recall         (AgsMatrix *matrix,
                                                         guint input_pad_start);
AgsMatrix *         ags_matrix_new                      (GObject *devout);
void                ags_matrix_output_map_recall        (AgsMatrix *matrix,
                                                         guint output_pad_start);
void                ags_matrix_redraw_gutter_point      (AgsMatrix *matrix,
                                                         AgsChannel *channel,
                                                         guint j,
                                                         guint i);
void                ags_matrix_unpaint_gutter_point     (AgsMatrix *matrix,
                                                         guint j,
                                                         guint i);

Description

The AgsMatrix is a composite widget to act as matrix sequencer.

Details

AGS_MATRIX_CELL_HEIGHT

#define AGS_MATRIX_CELL_HEIGHT  10

AGS_MATRIX_CELL_WIDTH

#define AGS_MATRIX_CELL_WIDTH   12

AGS_MATRIX_OCTAVE

#define AGS_MATRIX_OCTAVE 10

AGS_MATRIX_PATTERN_CONTROLS

#define AGS_MATRIX_PATTERN_CONTROLS (16)

struct AgsMatrix

struct AgsMatrix {
  AgsMachine machine;

  guint flags;

  gchar *name;
  gchar *xml_type;

  guint mapped_output_pad;
  guint mapped_input_pad;

  GtkTable *table;

  GtkToggleButton *run;
  GtkToggleButton *selected;
  GtkToggleButton *index[9];

  GtkDrawingArea *drawing_area;
  guint active_led;
  GtkHBox *led;

  GtkAdjustment *adjustment;

  GtkSpinButton *length_spin;
  GtkCheckButton *loop_button;
};

struct AgsMatrixClass

struct AgsMatrixClass {
  AgsMachineClass machine;
};

ags_matrix_draw_gutter ()

void                ags_matrix_draw_gutter              (AgsMatrix *matrix);

ags_matrix_draw_matrix ()

void                ags_matrix_draw_matrix              (AgsMatrix *matrix);

ags_matrix_highlight_gutter_point ()

void                ags_matrix_highlight_gutter_point   (AgsMatrix *matrix,
                                                         guint j,
                                                         guint i);

ags_matrix_input_map_recall ()

void                ags_matrix_input_map_recall         (AgsMatrix *matrix,
                                                         guint input_pad_start);

ags_matrix_new ()

AgsMatrix *         ags_matrix_new                      (GObject *devout);

Creates an AgsMatrix

devout :

the assigned devout.

Returns :

a new AgsMatrix

Since 0.3


ags_matrix_output_map_recall ()

void                ags_matrix_output_map_recall        (AgsMatrix *matrix,
                                                         guint output_pad_start);

ags_matrix_redraw_gutter_point ()

void                ags_matrix_redraw_gutter_point      (AgsMatrix *matrix,
                                                         AgsChannel *channel,
                                                         guint j,
                                                         guint i);

ags_matrix_unpaint_gutter_point ()

void                ags_matrix_unpaint_gutter_point     (AgsMatrix *matrix,
                                                         guint j,
                                                         guint i);