non/gui/draw.H

62 lines
1.6 KiB
C

#pragma once
/* enum { */
/* EMPTY, */
/* FULL, */
/* PARTIAL, */
/* CONTINUED, */
/* HIT, */
/* RING, */
/* SELECTED, */
/* LINE, */
/* PLAYHEAD */
/* }; */
/* canvas node states */
enum {
/* real */
EMPTY, /* nothing */
FULL, /* dot or dash head */
PARTIAL,
CONTINUED, /* dash tail */
SELECTED,
/* virtual */
HIT, /* playhead hit */
LINE, /* beat line */
PLAYHEAD,
MAX_STATE,
};
#define MAX_REAL_STATE HIT
#define STATE_MASK 0x0F
#define STATE_FLAG_MASK (~ (STATE_MASK) )
/* flags */
enum {
F_PLAYHEAD = 1 << 0, /* playhead is on item */
F_P1 = 1 << 1,
F_P2 = 1 << 2,
F_SELECTION = 1 << 3 /* item is part of the selection box */
};
/* shapes */
enum {
CIRCLE,
HALF_CIRCLE,
SQUARE,
DIAMOND,
HEXAGON
};
const int ruler_height = 14;
void init_colors ( void );
int gui_draw_ruler ( int x, int y, int w, int div_w, int div, int ofs, int p1, int p2 );
int gui_draw_string ( int x, int y, int w, int h, int color, const char *s, bool draw );
void gui_draw_shape ( int x, int y, int w, int h, int bw, int shape, int state, int flags, int color );
void gui_clear_area ( int x, int y, int w, int h );
void gui_status ( const char *fmt, ... );