libxputty 0.1
Loading...
Searching...
No Matches
Data Structures | Functions
xtuner.h File Reference

Go to the source code of this file.

Data Structures

struct  XTuner
 

Functions

void tuner_set_temperament (Widget_t *w, float temp)
 
void tuner_set_ref_freq (Widget_t *w, float ref)
 
Widget_tadd_tuner (Widget_t *parent, const char *label, int x, int y, int width, int height)
 add_tuner - add a tuner widget to a Widget_t
 

Function Documentation

◆ add_tuner()

Widget_t * add_tuner ( Widget_t parent,
const char *  label,
int  x,
int  y,
int  width,
int  height 
)

add_tuner - add a tuner widget to a Widget_t

Parameters
*parent- pointer to the Widget_t request the tuner
*label- Label to show on the tuner
x,y,width,height- the position/geometry to create the tuner
Returns
Widget_t* - pointer to the Widget_t tuner struct

Definition at line 47 of file xtuner.c.

48 {
49
50 XTuner *xt = (XTuner*)malloc(sizeof(XTuner));
51 xt->ref_freq = 440.0;
52 xt->temp_adjust = 3;
53 xt->temperament = 0;
54 xt->move = 0;
55 xt->smove = 0;
56 xt->lang = 0;
57 Widget_t *wid = create_widget(parent->app, parent, x, y, width, height);
58 wid->parent_struct = xt;
59 wid->label = label;
60 wid->adj_y = add_adjustment(wid,20.0, 20.0, 20.0, 20000.0,0.01, CL_CONTINUOS);
61 wid->adj = wid->adj_y;
62 wid->scale.gravity = CENTER;
63 wid->flags &= ~USE_TRANSPARENCY;
64 wid->flags |= HAS_MEM;
65 wid->func.mem_free_callback = xtuner_mem_free;
67 return wid;
68}
xevfunc expose_callback
Definition xwidget.h:85
xevfunc mem_free_callback
Definition xwidget.h:92
Gravity gravity
Definition xwidget.h:347
Widget_t - struct to hold the basic Widget_t info.
Definition xwidget.h:457
Resize_t scale
Definition xwidget.h:525
Adjustment_t * adj_y
Definition xwidget.h:495
Adjustment_t * adj
Definition xwidget.h:497
long long flags
Definition xwidget.h:461
const char * label
Definition xwidget.h:463
void * parent_struct
Definition xwidget.h:473
Func_t func
Definition xwidget.h:481
Xputty * app
Definition xwidget.h:465
float temperament
Definition xtuner.h:35
int temp_adjust
Definition xtuner.h:37
int lang
Definition xtuner.h:36
float ref_freq
Definition xtuner.h:34
int smove
Definition xtuner.h:39
int move
Definition xtuner.h:38
Adjustment_t * add_adjustment(Widget_t *w, float std_value, float value, float min_value, float max_value, float step, CL_type type)
*add_adjustment - adding a adjustment to a Widget_t
Definition xadjustment.c:25
@ CL_CONTINUOS
Definition xadjustment.h:49
void _draw_tuner(void *w_, void *user_data)
_draw_tuner - draw the tuner on expose call
Widget_t * create_widget(Xputty *app, Widget_t *win, int x, int y, int width, int height)
*create_widget - create a widget A Widget_t could only be created as child of a other Widget_t To...
Definition xwidget.c:265
@ CENTER
Definition xwidget.h:320
@ HAS_MEM
Definition xwidget.h:406

References _draw_tuner(), add_adjustment(), Widget_t::adj, Widget_t::adj_y, Widget_t::app, CENTER, CL_CONTINUOS, create_widget(), Func_t::expose_callback, Widget_t::flags, Widget_t::func, Resize_t::gravity, HAS_MEM, Widget_t::label, XTuner::lang, Func_t::mem_free_callback, XTuner::move, Widget_t::parent_struct, XTuner::ref_freq, Widget_t::scale, XTuner::smove, XTuner::temp_adjust, and XTuner::temperament.

◆ tuner_set_ref_freq()

void tuner_set_ref_freq ( Widget_t w,
float  ref 
)

Definition at line 36 of file xtuner.c.

36 {
37 XTuner *xt = (XTuner *)w->parent_struct;
38 xt->ref_freq = ref;
39}

References Widget_t::parent_struct, and XTuner::ref_freq.

◆ tuner_set_temperament()

void tuner_set_temperament ( Widget_t w,
float  temp 
)

Definition at line 25 of file xtuner.c.

25 {
26 XTuner *xt = (XTuner *)w->parent_struct;
27 xt->temperament = temp;
28 if((int)temp == 0) xt->temp_adjust = 3;
29 else if((int)temp == 1) xt->temp_adjust = 6;
30 else if((int)temp == 2) xt->temp_adjust = 7;
31 else if((int)temp == 3) xt->temp_adjust = 9;
32 else if((int)temp == 4) xt->temp_adjust = 15;
33 else xt->temp_adjust = 3;
34}

References Widget_t::parent_struct, XTuner::temp_adjust, and XTuner::temperament.