Exemple #1
0
void filterview_paint(t_filterview *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    draw_point(x, view, &rect);
    
}
Exemple #2
0
void radio_paint(t_radio *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    draw_background(x, view, &rect);
    draw_items(x, view, &rect);
}
Exemple #3
0
void meter_paint(t_meter *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
	draw_background(x, view, &rect);
    draw_leds(x, view, &rect);
}
Exemple #4
0
void gain_paint(t_gain *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    draw_background(x, view, &rect);
    draw_knob(x, view, &rect);
}
Exemple #5
0
static void plane_paint(t_plane *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    t_elayer *g = ebox_start_layer((t_ebox *)x, cream_sym_points_layer, rect.width, rect.height);
    if(g)
    {
        const float size = x->f_size;
        const char inv1 = ebox_parameter_isinverted((t_ebox *)x, 1);
        const char inv2 = ebox_parameter_isinverted((t_ebox *)x, 2);
        const float valx = ebox_parameter_getvalue_normalized((t_ebox *)x, 1);
        const float valy = ebox_parameter_getvalue_normalized((t_ebox *)x, 2);
        egraphics_set_color_rgba(g, &x->f_color_point);
        if(!inv1 && !inv2)
            egraphics_circle(g, valx * (rect.width - size * 2.f) + size, (1.f - valy) * (rect.height - size * 2.f) + size, size);
        else if(!inv1 && inv2)
            egraphics_circle(g, valx * (rect.width - size * 2.f) + size, valy * (rect.height - size * 2.f) + size, size);
        else if(inv1 && !inv2)
            egraphics_circle(g, (1.f - valx) * (rect.width - size * 2.f) + size, (1.f - valy) * (rect.height - size * 2.f) + size, size);
        else
            egraphics_circle(g, (1.f - valx) * (rect.width - size * 2.f) + size, valy * (rect.height - size * 2.f) + size, size);
        
        egraphics_fill(g);
        ebox_end_layer((t_ebox*)x, cream_sym_points_layer);
    }
    ebox_paint_layer((t_ebox *)x, cream_sym_points_layer, 0, 0);
    
}
Exemple #6
0
void knob_paint(t_knob *x, t_object *view)
{
	t_rect rect;
    if(x->f_endless)
    {
        if(x->f_min < x->f_max)
        {
            x->f_value = fmodf(x->f_value + x->f_max - x->f_min, x->f_max - x->f_min);
        }
        else
        {
            x->f_value = fmodf(x->f_value + x->f_min - x->f_max, x->f_min - x->f_max);
        }
    }
    else
    {
        if(x->f_min < x->f_max)
            x->f_value = pd_clip_minmax(x->f_value, x->f_min, x->f_max);
        else
            x->f_value = pd_clip_minmax(x->f_value, x->f_max, x->f_min);
    }
    
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    draw_background(x, view, &rect);
    draw_needle(x, view, &rect);
}
Exemple #7
0
void carray_paint(t_carray *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    draw_background(x, view, &rect);
    draw_buffer(x, view, &rect);
}
Exemple #8
0
static void knob_paint(t_knob *x, t_object *view)
{
    t_rect rect;
    ebox_get_rect_for_view((t_ebox *)x, &rect);
    
    draw_background(x, view, &rect);
    draw_needle(x, view, &rect);
}
void breakpoints_paint(t_breakpoints *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    x->f_size.x = rect.width;
    x->f_size.y = rect.height;
    draw_text(x, view, &rect);
    draw_points(x, view, &rect);
}
Exemple #10
0
void plane_paint(t_plane *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    x->f_ratio.x = (rect.width - 2 * x->f_size - 2) / (x->f_boundaries.width - x->f_boundaries.x);
    x->f_ratio.y = (rect.height - 2 * x->f_size - 2) / (x->f_boundaries.height - x->f_boundaries.y);
    draw_point(x, view, &rect);
    
}
Exemple #11
0
static void tab_paint(t_tab *x, t_object *view)
{
    t_rect rect;
    ebox_get_rect_for_view((t_ebox *)x, &rect);

    draw_selection(x, view, &rect);
    draw_background(x, view, &rect);
    draw_text(x, view, &rect);
}
Exemple #12
0
void scope_paint(t_scope *x, t_object *view)
{
    t_rect rect;
    ebox_get_rect_for_view((t_ebox *)x, &rect);
    draw_background(x, view, &rect);
    if(x->f_mode)
        draw_signalXY(x, view, &rect);
    else
        draw_signal(x, view, &rect);
}
Exemple #13
0
static void knob_mousedrag(t_knob *x, t_object *patcherview, t_pt pt, long modifiers)
{
    t_rect rect;
    ebox_get_rect_for_view((t_ebox *)x, &rect);
    if(x->f_circular)
    {
        const float size  = rect.width * 0.5f;
        const float angle = pd_angle(pt.x - size, -(size - pt.y));
        if(x->f_endless)
        {
            const float value = pd_wrap((angle - EPD_PI2) / EPD_2PI, 0.f, 1.f);
            if(ebox_parameter_isinverted((t_ebox *)x, 1))
            {
                ebox_parameter_setvalue_normalized((t_ebox *)x, 1, 1.f - value, 1);
            }
            else
            {
                ebox_parameter_setvalue_normalized((t_ebox *)x, 1, value, 1);
            }
        }
        else
        {
            const float value = (pd_clip(pd_wrap((angle - EPD_PI2) / EPD_2PI, 0.f, 1.f), 0.125f, 0.875f) - 0.125f) / 0.75f;
            if(ebox_parameter_isinverted((t_ebox *)x, 1))
            {
                ebox_parameter_setvalue_normalized((t_ebox *)x, 1, 1.f - value, 1);
            }
            else
            {
                ebox_parameter_setvalue_normalized((t_ebox *)x, 1, value, 1);
            }
        }
        
        knob_output(x);
        ebox_invalidate_layer((t_ebox *)x, cream_sym_needle_layer);
        ebox_redraw((t_ebox *)x);
    }
    else
    {
        const float current = ebox_parameter_getvalue_normalized((t_ebox *)x, 1);
        const float diff    = (x->f_reference - pt.y) / (rect.width) * (ebox_parameter_isinverted((t_ebox *)x, 1) ? -1.f : 1.f);
        if(x->f_endless)
        {
            ebox_parameter_setvalue_normalized((t_ebox *)x, 1, pd_wrap(current + diff, 0.f, 1.f), 1);
        }
        else
        {
            ebox_parameter_setvalue_normalized((t_ebox *)x, 1, pd_clip(current + diff, 0.f, 1.f), 1);
        }
        x->f_reference      = pt.y;
    }
    knob_output(x);
    ebox_invalidate_layer((t_ebox *)x, cream_sym_needle_layer);
    ebox_redraw((t_ebox *)x);
}
void hoa_scope_paint(t_hoa_scope *x, t_object *view)
{
    t_rect rect;
    ebox_get_rect_for_view((t_ebox *)x, &rect);

    x->f_center = rect.width * .5;
    x->f_radius = x->f_center * 0.95;

    draw_background(x, view, &rect);
    draw_harmonics(x, view, &rect);
}
static void dsp_tilde_paint(t_dsp_tilde *x, t_object *view)
{
    t_rect rect;
    if(!x->f_init)
    {
        x->f_state = sys_getdspstate();
        x->f_init = 1;
    }
    
    ebox_get_rect_for_view((t_ebox *)x, &rect);
    draw_background(x, view, &rect);
}
void hoa_meter_paint(t_hoa_meter *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
	
    x->f_center = rect.width * .5;
	x->f_radius = x->f_center * 0.95;
	x->f_radius_center = x->f_radius / 5.;
	
	draw_background(x, view, &rect);
    draw_leds(x, view, &rect);
    draw_vectors(x, view, &rect);
}
Exemple #17
0
static void blackboard_paint(t_blackboard *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    
    sys_vgui((char *)"%s delete %snopen\n", x->j_box.b_drawing_id->s_name, x->j_box.b_all_id->s_name);
    for(int i = 0; i < x->f_ninstructions; i++)
    {
        sys_vgui((char *)"%s %s -tags %snopen\n", x->j_box.b_drawing_id->s_name, x->f_instructions[i], x->j_box.b_all_id->s_name);
    }

    x->f_box = rect;
}
Exemple #18
0
static void incdec_paint(t_incdec *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    t_elayer *g = ebox_start_layer((t_ebox *)x, cream_sym_background_layer, rect.width, rect.height);
    if (g)
    {
        egraphics_set_color_rgba(g, &x->f_color_arrow);
        if(x->f_mouse_down)
        {
            if(x->f_mouse_down == 1)
            {
                egraphics_rectangle(g, 0.f, 0.f, rect.width, rect.height * 0.5f);
            }
            else
            {
                egraphics_rectangle(g, 0.f, rect.height * 0.5f, rect.width, rect.height);
            }
            egraphics_fill(g);
        }
        
        if(x->f_mouse_down == 1)
        {
            egraphics_set_color_rgba(g, &x->f_color_background);
        }
        egraphics_move_to(g, 2.f, rect.height * 0.5f - 3.f);
        egraphics_line_to(g, rect.width - 2.f, rect.height * 0.5f - 3.f);
        egraphics_line_to(g, rect.width * 0.5f, 2.f);
        egraphics_fill(g);
        
        if(x->f_mouse_down == -1)
        {
            egraphics_set_color_rgba(g, &x->f_color_background);
        }
        else
        {
            egraphics_set_color_rgba(g, &x->f_color_arrow);
        }
        egraphics_move_to(g, 2.f, rect.height * 0.5f + 3.f);
        egraphics_line_to(g, rect.width - 2.f, rect.height * 0.5f + 3.f);
        egraphics_line_to(g, rect.width * 0.5f, rect.height - 2.f);
        egraphics_fill(g);
        
        egraphics_set_color_rgba(g, &x->f_color_border);
        egraphics_set_line_width(g, 2.f);
        egraphics_line_fast(g, 0., rect.height * 0.5f, rect.width, rect.height * 0.5f);
        
        ebox_end_layer((t_ebox*)x, cream_sym_background_layer);
    }
    ebox_paint_layer((t_ebox *)x, cream_sym_background_layer, 0., 0.);
}
Exemple #19
0
static void plane_mousedown(t_plane *x, t_object *patcherview, t_pt pt, long modifiers)
{
    t_rect rect;
    ebox_get_rect_for_view((t_ebox *)x, &rect);
    ebox_parameter_begin_changes((t_ebox *)x, 1);
    ebox_parameter_begin_changes((t_ebox *)x, 2);
    const float minx = ebox_parameter_getmin((t_ebox *)x, 1);
    const float maxx = ebox_parameter_getmax((t_ebox *)x, 1);
    const float miny = ebox_parameter_getmin((t_ebox *)x, 2);
    const float maxy = ebox_parameter_getmax((t_ebox *)x, 2);
    const float valx = plane_getvalue(&rect, pt.x, minx, maxx, x->f_size);
    const float valy = plane_getvalue(&rect, pt.y, miny, maxy, x->f_size);
    ebox_parameter_setvalue((t_ebox *)x, 1, valx, 1);
    ebox_parameter_setvalue((t_ebox *)x, 2, valy, 1);
}
Exemple #20
0
static void tab_mousemove(t_tab *x, t_object *patcherview, t_pt pt, long modifiers)
{
    t_rect rect;
    int index;
    if(x->f_nitems)
    {
        ebox_get_rect_for_view((t_ebox *)x, &rect);
        index = x->f_orientation ? (pt.y / (rect.height / (float)x->f_nitems)) : (pt.x / (rect.width / (float)x->f_nitems));
        x->f_item_hover = pd_clip(index, 0, x->f_nitems - 1);

        outlet_float(x->f_out_hover, x->f_item_hover);
        ebox_invalidate_layer((t_ebox *)x, cream_sym_selection_layer);
        ebox_redraw((t_ebox *)x);
    }
}
Exemple #21
0
static void tab_mousedown(t_tab *x, t_object *patcherview, t_pt pt, long modifiers)
{
    t_rect rect;
    int index;
    if(x->f_nitems)
    {
        x->f_off = 0;
        ebox_get_rect_for_view((t_ebox *)x, &rect);
        index = x->f_orientation ? (pt.y / (rect.height / (float)x->f_nitems)) : (pt.x / (rect.width / (float)x->f_nitems));
        ebox_parameter_setvalue((t_ebox *)x, 1, index, 1);
        tab_output(x);
        ebox_invalidate_layer((t_ebox *)x, cream_sym_selection_layer);
        ebox_redraw((t_ebox *)x);
    }
}
Exemple #22
0
void hoa_space_paint(t_hoa_space *x, t_object *view)
{
    t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    
    x->f_center = rect.width  * .5;
	
    x->f_radius_global = rect.width * 0.49;
    x->f_radius_circle = x->f_radius_global / 5;
    
    hoa_space_draw_background(x, view, &rect);
    hoa_space_draw_harmonics(x, view, &rect);
    hoa_space_draw_center(x, view, &rect);
    hoa_space_draw_microphones(x, view, &rect);
}
Exemple #23
0
static void plane_mousedrag(t_plane *x, t_object *patcherview, t_pt pt, long modifiers)
{
    t_rect rect;
    ebox_get_rect_for_view((t_ebox *)x, &rect);
    const float minx = ebox_parameter_getmin((t_ebox *)x, 1);
    const float maxx = ebox_parameter_getmax((t_ebox *)x, 1);
    const float miny = ebox_parameter_getmin((t_ebox *)x, 2);
    const float maxy = ebox_parameter_getmax((t_ebox *)x, 2);
    const float valx = plane_getvalue(&rect, pt.x, minx, maxx, x->f_size);
    const float valy = plane_getvalue(&rect, (rect.height - pt.y), miny, maxy, x->f_size);
    ebox_parameter_setvalue((t_ebox *)x, 1, valx, 1);
    ebox_parameter_setvalue((t_ebox *)x, 2, valy, 1);
    
    plane_output(x);
    ebox_invalidate_layer((t_ebox *)x, cream_sym_points_layer);
    ebox_redraw((t_ebox *)x);
}
Exemple #24
0
static void incdec_mousedown(t_incdec *x, t_object *patcherview, t_pt pt, long modifiers)
{
    t_rect rect;
    ebox_get_rect_for_view((t_ebox *)x, &rect);
    if(pt.y - 2.f < rect.height * 0.5f)
    {
        incdec_inc(x);
        x->f_mouse_down = 1;
    }
    else
    {
        incdec_dec(x);
        x->f_mouse_down = -1;
    }
    clock_delay(x->f_clock, 250.);
    ebox_invalidate_layer((t_ebox *)x, cream_sym_background_layer);
    ebox_redraw((t_ebox *)x);
}
void number_tilde_paint(t_number_tilde *x, t_object *view)
{
	t_rect rect;
#ifdef __APPLE__
    float fontwidth = sys_fontwidth(x->j_box.b_font.c_size);
#elif _WINDOWS
    float fontwidth = sys_fontwidth(x->j_box.b_font.c_size);
#else
    float fontwidth = sys_fontwidth(x->j_box.b_font.c_size) + 3;
#endif

    ebox_get_rect_for_view((t_ebox *)x, &rect);
#ifdef __APPLE__
    x->f_max_decimal = (rect.width - fontwidth - 8) / fontwidth - 2;
#elif _WINDOWS
    x->f_max_decimal = (rect.width - fontwidth - 8) / fontwidth - 2;
#else
    x->f_max_decimal = (rect.width - fontwidth - 11) / fontwidth + 1;
#endif

    draw_background(x, view, &rect);
    draw_value(x, view, &rect);
}
Exemple #26
0
void bang_paint(t_bang *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    draw_background(x, view, &rect);
}
Exemple #27
0
void matrixctrl_paint(t_matrixctrl *x, t_object *view)
{
	t_rect rect;
	ebox_get_rect_for_view((t_ebox *)x, &rect);
    draw_background(x, view, &rect);
}
Exemple #28
0
static void preset_paint(t_presetobj *x, t_object *view)
{
    t_rect rect;
    ebox_get_rect_for_view((t_ebox *)x, &rect);
    draw_background(x, view, &rect);
}