(root)/wip/src/scale_notes.h - Rev 2302
Rev 2250 |
Blame |
Compare with Previous |
Last modification |
View Log
| RSS feed
/*
* scale_notes.h
* DIN Is Noise is copyright (c) 2006-2025 Jagannathan Sampath
* For more information, please visit http://dinisnoise.org/
*/
#ifndef __scale_notes
#define __scale_notes
#include "label.h"
#include "checkbutton.h"
#include "scale_info.h"
#include <string>
#include <vector>
extern scale_info scaleinfo;
extern int NUM_INTERVALS;
extern std::vector<std::string> INTERVAL_NAMES;
struct scale_notes : widget, state_listener {
label lbl;
static const int MAX_INTERVALS = 16; // non-general :(
checkbutton cb_notes [MAX_INTERVALS];
void set_pos (int x, int y);
int handle_input ();
void draw ();
void setup ();
void update ();
void refresh ();
template <typename T> void set_color (T r, T g, T b) { lbl.set_color (r, g, b); }
void changed (checkbutton& cb);
};
#endif