From cb07afb788418a3f52904ae8ac3b1221e3937813 Mon Sep 17 00:00:00 2001 From: Jonathan Wilkes <jon.w.wilkes@gmail.com> Date: Fri, 13 Mar 2015 19:34:23 -0400 Subject: [PATCH] added iemgui labels, graph ticks/labels --- pd/nw/pdcanvas.css | 24 ++++- pd/nw/pdgui.js | 143 ++++++++++++++++++++++-- pd/nw/todo.txt | 11 ++ pd/src/g_all_guis.c | 182 ++++++++++++++++++++----------- pd/src/g_bang.c | 10 +- pd/src/g_canvas.c | 24 ++++- pd/src/g_canvas.h | 3 +- pd/src/g_editor.c | 84 ++++++++------- pd/src/g_graph.c | 246 ++++++++++++++++++++++++++++-------------- pd/src/g_magicglass.c | 10 +- pd/src/g_mycanvas.c | 25 ++--- pd/src/g_numbox.c | 26 ++--- pd/src/g_radio.c | 38 +++---- pd/src/g_readwrite.c | 2 +- pd/src/g_rtext.c | 20 ++-- pd/src/g_scalar.c | 77 ++++++------- pd/src/g_slider.c | 30 ++---- pd/src/g_template.c | 42 ++++---- pd/src/g_text.c | 28 ++--- pd/src/g_toggle.c | 23 ++-- pd/src/g_vumeter.c | 83 +++++--------- pd/src/x_gui.c | 6 +- 22 files changed, 690 insertions(+), 447 deletions(-) diff --git a/pd/nw/pdcanvas.css b/pd/nw/pdcanvas.css index 7cabc5c0a..864a2fe81 100644 --- a/pd/nw/pdcanvas.css +++ b/pd/nw/pdcanvas.css @@ -41,7 +41,7 @@ text { .xlet_control { stroke: red; fill: gray; - stroke-width: 1; +// stroke-width: 1; } .xlet_signal { @@ -56,8 +56,30 @@ text { stroke-width: 1; } +.iemgui_label_selected { + fill: blue; +} + +@-webkit-keyframes fizzle { + 0% { + stroke-width: 1; + stroke-opacity: 1; + x: 0; + rx: 1; + ry: 1; + } + 100% { + stroke-width: 20; + stroke-opacity: 0.2; + x: 100; + rx: 50; + ry: 50; + } +} + .xlet_selected { stroke: purple !important; + -webkit-animation: fizzle 0.5s linear 1; } //.xlet:hover { diff --git a/pd/nw/pdgui.js b/pd/nw/pdgui.js index 3ea35b362..62d144132 100644 --- a/pd/nw/pdgui.js +++ b/pd/nw/pdgui.js @@ -2567,6 +2567,58 @@ function gui_iemgui_redraw_border(cid, tag, x1, y1, x2, y2) { }); } +function gui_iemgui_label_new(cid, tag, x, y, color, text, font) { + var g = get_gobj(cid, tag); + var svg_text = create_item(cid, 'text', { + // x and y need to be relative to baseline instead of nw anchor + x: x, + y: y, +// 'font-size': font + 'px', + id: tag + 'label' + }); + + var text_node = patchwin[cid].window.document.createTextNode(text); + svg_text.appendChild(text_node); + g.appendChild(svg_text); +} + +function gui_iemgui_label_set(cid, tag, text) { + get_item(cid, tag + 'label').textContent = text; +} + +function gui_iemgui_label_coords(cid, tag, x, y) { + var svg_text = get_item(cid, tag + 'label'); + configure_item(svg_text, { + x: x, + y: y + }); +} + +function gui_iemgui_label_color(cid, tag, color) { + var svg_text = get_item(cid, tag + 'label'); + configure_item(svg_text, { + fill: color + }); +} + +function gui_iemgui_label_select(cid, tag, is_selected) { + var svg_text = get_item(cid, tag + 'label'); + if (is_selected) { + svg_text.classList.add('iemgui_label_selected'); + } else { + svg_text.classList.remove('iemgui_label_selected'); + } +} + +function gui_iemgui_label_font(cid, tag, font) { + var svg_text = get_item(cid, tag + 'label'); + // This has to wait until we remove the tcl formatting + // that Pd uses for font name/size +// configure_item(svg_text, { +// font: font +// }); +} + function gui_create_mycanvas(cid,tag,color,x1,y1,x2_vis,y2_vis,x2,y2) { var rect_vis = create_item(cid,'rect', { width: x2_vis - x1, @@ -2840,18 +2892,25 @@ exports.popup_action = popup_action; // Graphs and Arrays -function gui_graph_drawborder(cid, tag, x1, y1, x2, y2) { - var svgelem = get_item(cid, 'patchsvg'); - var b = create_item(cid, 'rect', { - x: x1, - y: y1, - width: x2 - x1, - height: y2 - y1, - stroke: 'black', - fill: 'none', - id: tag +// Doesn't look like we needs this + +//function gui_graph_drawborder(cid, tag, x1, y1, x2, y2) { +// var g = get_gobj(cid, tag); +// var b = create_item(cid, 'rect', { +// width: x2 - x1, +// height: y2 - y1, +// stroke: 'black', +// fill: 'none', +// id: tag +// }); +// g.appendChild(b); +//} + +function gui_graph_fill_border(cid, tag) { + var b = get_item(cid, tag + 'border'); + configure_item(b, { + fill: 'gray' }); - svgelem.appendChild(b); } function gui_graph_deleteborder(cid, tag) { @@ -2859,6 +2918,68 @@ function gui_graph_deleteborder(cid, tag) { b.parentNode.removeChild(b); } +function gui_graph_label(cid, tag, y, array_name, font, font_size, + font_weight, is_selected) { +// var graph = get_item( +} + +function gui_graph_vtick(cid, tag, x, up_y, down_y, tick_pix, basex, basey) { + var g = get_gobj(cid, tag); + // Don't think these need an ID... + var up_tick = create_item(cid, 'line', { + stroke: 'black', + x1: x - basex, + y1: up_y - basey, + x2: x - basex, + y2: up_y - tick_pix - basey + }); + var down_tick = create_item(cid, 'line', { + stroke: 'black', + x1: x - basex, + y1: down_y - basey, + x2: x - basex, + y2: down_y + tick_pix - basey + }); + g.appendChild(up_tick); + g.appendChild(down_tick); +} + +function gui_graph_htick(cid, tag, y, r_x, l_x, tick_pix, basex, basey) { + var g = get_gobj(cid, tag); + // Don't think these need an ID... + var left_tick = create_item(cid, 'line', { + stroke: 'black', + x1: l_x - basex, + y1: y - basey, + x2: l_x - tick_pix - basex, + y2: y - basey, + id: "fuckoff" + y + }); + var right_tick = create_item(cid, 'line', { + stroke: 'black', + x1: r_x - basex, + y1: y - basey, + x2: r_x + tick_pix - basex, + y2: y - basey + }); + g.appendChild(left_tick); + g.appendChild(right_tick); +} + +function gui_graph_tick_label(cid, tag, x, y, text, font, font_size, font_weight, basex, basey) { + var g = get_gobj(cid, tag); + var svg_text = create_item(cid, 'text', { + // need a label "y" relative to baseline + x: x - basex, + y: y - basey, + 'font-size': font_size, + }); + + var text_node = patchwin[cid].window.document.createTextNode(text); + svg_text.appendChild(text_node); + g.appendChild(svg_text); +} + function gui_canvas_drawredrect(cid, x1, y1, x2, y2) { var svgelem = get_item(cid, 'patchsvg'); var b = create_item(cid, 'rect', { diff --git a/pd/nw/todo.txt b/pd/nw/todo.txt index b1b5f57b1..b6d02cf42 100644 --- a/pd/nw/todo.txt +++ b/pd/nw/todo.txt @@ -104,3 +104,14 @@ Everything else: conditionally fill the slots * fix font shits (can't use 'hanging' base-line dominant because it doesn't scale correctly) +* iemgui font configuration -- de-tcl-ize the {fontface fontsize} tcl list, + then make it work +* do msg box click animation in css +* tgl 'X' doesn't show up +* gui_graph_fill_border: use css class selectors instead of configuration +* standardize javascript function names + +Crashers +-------- + +copy/paste from menu gives ECONN diff --git a/pd/src/g_all_guis.c b/pd/src/g_all_guis.c index a8020eda2..bb97505d1 100644 --- a/pd/src/g_all_guis.c +++ b/pd/src/g_all_guis.c @@ -233,6 +233,10 @@ void iemgui_label(t_iemgui *x, t_symbol *s) sys_vgui(".x%lx.c itemconfigure %lxLABEL -text {%s} \n", glist_getcanvas(x->x_glist), x, s!=s_empty?x->x_lab->s_name:""); + gui_vmess("gui_iemgui_label_set", "sss", + canvas_tag(glist_getcanvas(x->x_glist)), + gobj_tag(x), + s != s_empty ? x->x_lab->s_name : ""); iemgui_shouldvis(x, IEM_GUI_DRAW_MODE_CONFIG); } } @@ -243,10 +247,15 @@ void iemgui_label_pos(t_iemgui *x, t_symbol *s, int ac, t_atom *av) x->x_ldy = atom_getintarg(1, ac, av); if(glist_isvisible(x->x_glist)) { - sys_vgui(".x%lx.c coords %lxLABEL %d %d\n", - glist_getcanvas(x->x_glist), x, - text_xpix((t_object *)x,x->x_glist)+x->x_ldx, - text_ypix((t_object *)x,x->x_glist)+x->x_ldy); + //sys_vgui(".x%lx.c coords %lxLABEL %d %d\n", + // glist_getcanvas(x->x_glist), x, + // text_xpix((t_object *)x,x->x_glist)+x->x_ldx, + // text_ypix((t_object *)x,x->x_glist)+x->x_ldy); + gui_vmess("gui_iemgui_label_coords", "ssii", + canvas_tag(glist_getcanvas(x->x_glist)), + gobj_tag(x), + x->x_ldx, + x->x_ldy); iemgui_shouldvis(x, IEM_GUI_DRAW_MODE_CONFIG); } } @@ -259,8 +268,12 @@ void iemgui_label_font(t_iemgui *x, t_symbol *s, int ac, t_atom *av) x->x_fontsize = maxi(atom_getintarg(1, ac, av),4); if(glist_isvisible(x->x_glist)) { - sys_vgui(".x%lx.c itemconfigure %lxLABEL -font %s\n", - glist_getcanvas(x->x_glist), x, iemgui_font(x)); + //sys_vgui(".x%lx.c itemconfigure %lxLABEL -font %s\n", + // glist_getcanvas(x->x_glist), x, iemgui_font(x)); + gui_vmess("gui_iemgui_label_font", "sss", + canvas_tag(glist_getcanvas(x->x_glist)), + gobj_tag(x), + iemgui_font(x)); iemgui_shouldvis(x, IEM_GUI_DRAW_MODE_CONFIG); } } @@ -496,9 +509,7 @@ void iemgui_displace_withtag(t_gobj *z, t_glist *glist, int dx, int dy) void iemgui_select(t_gobj *z, t_glist *glist, int selected) { - char tagbuf[MAXPDSTRING]; t_iemgui *x = (t_iemgui *)z; - sprintf(tagbuf, "x%lx", (long unsigned int)x); t_canvas *canvas=glist_getcanvas(glist); if (selected) x->x_selected = canvas; @@ -506,7 +517,7 @@ void iemgui_select(t_gobj *z, t_glist *glist, int selected) x->x_selected = NULL; //sys_vgui(".x%lx.c itemconfigure {x%lx&&border} -stroke %s\n", canvas, x, // x->x_selected && x->x_glist == canvas ? selection_color : border_color); - gui_vmess("gui_text_select_color", "ss", canvas_string(canvas), tagbuf); + gui_vmess("gui_text_select_color", "ss", canvas_tag(canvas), gobj_tag(x)); x->x_draw((void *)z, glist, IEM_GUI_DRAW_MODE_SELECT); if (selected < 2) { @@ -944,52 +955,96 @@ static void scalehandle_check_and_redraw(t_iemgui *x) // IEMGUI refactor (by Mathieu) void iemgui_tag_selected(t_iemgui *x) { - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); t_canvas *canvas=glist_getcanvas(x->x_glist); if(x->x_selected) { //sys_vgui(".x%lx.c addtag selected withtag x%lx\n", canvas, x); - gui_vmess("gui_text_select", "ss", canvas_string(canvas), tagbuf); + gui_vmess("gui_text_select", "ss", canvas_tag(canvas), gobj_tag(x)); } else { //sys_vgui(".x%lx.c dtag x%lx selected\n", canvas, x); - gui_vmess("gui_text_deselect", "ss", canvas_string(canvas), tagbuf); + gui_vmess("gui_text_deselect", "ss", canvas_tag(canvas), gobj_tag(x)); } } void iemgui_label_draw_new(t_iemgui *x) { + char col[8]; t_canvas *canvas=glist_getcanvas(x->x_glist); int x1=text_xpix(&x->x_obj, x->x_glist); int y1=text_ypix(&x->x_obj, x->x_glist); - sys_vgui(".x%lx.c create text %d %d -text {%s} -anchor w " - "-font %s -fill #%6.6x -tags {%lxLABEL x%lx text iemgui}\n", - canvas, x1+x->x_ldx, y1+x->x_ldy, - x->x_lab!=s_empty?x->x_lab->s_name:"", - iemgui_font(x), x->x_lcol, x, x); + //sys_vgui(".x%lx.c create text %d %d -text {%s} -anchor w " + // "-font %s -fill #%6.6x -tags {%lxLABEL x%lx text iemgui}\n", + // canvas, x1+x->x_ldx, y1+x->x_ldy, + // x->x_lab!=s_empty?x->x_lab->s_name:"", + // iemgui_font(x), x->x_lcol, x, x); + sprintf(col, "#%6.6x", x->x_lcol); + gui_vmess("gui_iemgui_label_new", "ssiisss", + canvas_tag(canvas), + gobj_tag(x), + x->x_ldx, + x->x_ldy, + col, + x->x_lab != s_empty ? x->x_lab->s_name : "", + iemgui_font(x)); } void iemgui_label_draw_move(t_iemgui *x) { t_canvas *canvas=glist_getcanvas(x->x_glist); int x1=text_xpix(&x->x_obj, x->x_glist); int y1=text_ypix(&x->x_obj, x->x_glist); - sys_vgui(".x%lx.c coords %lxLABEL %d %d\n", - canvas, x, x1+x->x_ldx, y1+x->x_ldy); + //sys_vgui(".x%lx.c coords %lxLABEL %d %d\n", + // canvas, x, x1+x->x_ldx, y1+x->x_ldy); + gui_vmess("gui_iemgui_label_coords", "ssii", + canvas_tag(glist_getcanvas(x->x_glist)), + gobj_tag(x), + x->x_ldx, + x->x_ldy); } void iemgui_label_draw_config(t_iemgui *x) { + char col[8]; t_canvas *canvas=glist_getcanvas(x->x_glist); if (x->x_selected == canvas && x->x_glist == canvas) - sys_vgui(".x%lx.c itemconfigure %lxLABEL -font %s " - "-fill $pd_colors(selection) -text {%s} \n", - canvas, x, iemgui_font(x), - x->x_lab!=s_empty?x->x_lab->s_name:""); + { + //sys_vgui(".x%lx.c itemconfigure %lxLABEL -font %s " + // "-fill $pd_colors(selection) -text {%s} \n", + // canvas, x, iemgui_font(x), + // x->x_lab!=s_empty?x->x_lab->s_name:""); + gui_vmess("gui_iemgui_label_font", "sss", + canvas_tag(glist_getcanvas(x->x_glist)), + gobj_tag(x), + iemgui_font(x)); + gui_vmess("gui_iemgui_label_set", "sss", + canvas_tag(glist_getcanvas(x->x_glist)), + gobj_tag(x), + x->x_lab != s_empty ? x->x_lab->s_name: ""); + sprintf(col, "#%6.6x", x->x_lcol); + gui_vmess("gui_iemgui_label_color", "sss", + canvas_tag(canvas), + gobj_tag(x), + col); + } else - sys_vgui(".x%lx.c itemconfigure %lxLABEL -font %s " - "-fill #%6.6x -text {%s} \n", - canvas, x, iemgui_font(x), - x->x_lcol, x->x_lab!=s_empty?x->x_lab->s_name:""); + { + //sys_vgui(".x%lx.c itemconfigure %lxLABEL -font %s " + // "-fill #%6.6x -text {%s} \n", + // canvas, x, iemgui_font(x), + // x->x_lcol, x->x_lab!=s_empty?x->x_lab->s_name:""); + gui_vmess("gui_iemgui_label_font", "sss", + canvas_tag(glist_getcanvas(x->x_glist)), + gobj_tag(x), + iemgui_font(x)); + gui_vmess("gui_iemgui_label_set", "sss", + canvas_tag(glist_getcanvas(x->x_glist)), + gobj_tag(x), + x->x_lab != s_empty ? x->x_lab->s_name: ""); + sprintf(col, "#%6.6x", x->x_lcol); + gui_vmess("gui_iemgui_label_color", "sss", + canvas_tag(canvas), + gobj_tag(x), + col); + } if (x->x_selected == canvas && x->x_glist == canvas) { t_scalehandle *lh = (t_scalehandle *)(x->x_lhandle); @@ -1003,11 +1058,23 @@ void iemgui_label_draw_config(t_iemgui *x) { void iemgui_label_draw_select(t_iemgui *x) { t_canvas *canvas=glist_getcanvas(x->x_glist); if (x->x_selected == canvas && x->x_glist == canvas) - sys_vgui(".x%lx.c itemconfigure %lxLABEL " - "-fill $pd_colors(selection)\n", canvas, x); + { + //sys_vgui(".x%lx.c itemconfigure %lxLABEL " + // "-fill $pd_colors(selection)\n", canvas, x); + gui_vmess("gui_iemgui_label_select", "ssi", + canvas_tag(canvas), + gobj_tag(x), + 1); + } else - sys_vgui(".x%lx.c itemconfigure %lxLABEL -fill #%6.6x\n", - canvas, x, x->x_lcol); + { + //sys_vgui(".x%lx.c itemconfigure %lxLABEL -fill #%6.6x\n", + // canvas, x, x->x_lcol); + gui_vmess("gui_iemgui_label_select", "ssi", + canvas_tag(canvas), + gobj_tag(x), + 0); + } } extern t_class *my_numbox_class; @@ -1015,6 +1082,7 @@ extern t_class *vu_class; extern t_class *my_canvas_class; void iemgui_draw_io(t_iemgui *x, int old_sr_flags) { + char tagbuf[MAXPDSTRING]; t_canvas *canvas=glist_getcanvas(x->x_glist); if (x->x_glist != canvas) return; // is gop t_class *c = pd_class((t_pd *)x); @@ -1044,12 +1112,9 @@ void iemgui_draw_io(t_iemgui *x, int old_sr_flags) // canvas, x1+i*k, y2-1, x1+i*k + IOWIDTH, y2, // iem_get_tag(canvas, x), i, x, // x->x_selected == x->x_glist ? "iemgui selected" : "iemgui"); - char parenttagbuf[MAXPDSTRING]; - char tagbuf[MAXPDSTRING]; - sprintf(parenttagbuf, "x%lx", (long unsigned int)x); sprintf(tagbuf, "%so%d", iem_get_tag(canvas, x), i); - gui_vmess("gui_canvas_drawio", "sssiiiiiisiii", canvas_string(canvas), - parenttagbuf, tagbuf, + gui_vmess("gui_canvas_drawio", "sssiiiiiisiii", canvas_tag(canvas), + gobj_tag(x), tagbuf, x1+i*k, y2-1, x1+i*k + IOWIDTH, y2, x1, y1, "o", i, 0, 1); } @@ -1058,10 +1123,9 @@ void iemgui_draw_io(t_iemgui *x, int old_sr_flags) { //sys_vgui(".x%lx.c delete %so%d\n", // canvas, iem_get_tag(canvas, x), i); - char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "%so%d", iem_get_tag(canvas, x), i); gui_vmess("gui_eraseio", "ss", - canvas_string(canvas), tagbuf); + canvas_tag(canvas), tagbuf); } a = old_sr_flags & IEM_GUI_OLD_RCV_FLAG; @@ -1077,12 +1141,9 @@ void iemgui_draw_io(t_iemgui *x, int old_sr_flags) // canvas, x1+i*k, y1, x1+i*k + IOWIDTH, y1+1, // iem_get_tag(canvas, x), i, x, // x->x_selected == x->x_glist ? "iemgui selected" : "iemgui"); - char parenttagbuf[MAXPDSTRING]; - char tagbuf[MAXPDSTRING]; - sprintf(parenttagbuf, "x%lx", (long unsigned int)x); sprintf(tagbuf, "%si%d", iem_get_tag(canvas, x), i); - gui_vmess("gui_canvas_drawio", "sssiiiiiisiii", canvas_string(canvas), - parenttagbuf, tagbuf, + gui_vmess("gui_canvas_drawio", "sssiiiiiisiii", canvas_tag(canvas), + gobj_tag(x), tagbuf, x1+i*k, y1, x1+i*k + IOWIDTH, y1+1, x1, y1, "i", i, 0, 1); } @@ -1091,14 +1152,14 @@ void iemgui_draw_io(t_iemgui *x, int old_sr_flags) { //sys_vgui(".x%lx.c delete %si%d\n", // canvas, iem_get_tag(canvas, x), i); - char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "%si%d", iem_get_tag(canvas, x), i); gui_vmess("gui_eraseio", "ss", - canvas_string(canvas), tagbuf); + canvas_tag(canvas), tagbuf); } } void iemgui_io_draw_move(t_iemgui *x) { + char tagbuf[MAXPDSTRING]; t_canvas *canvas=glist_getcanvas(x->x_glist); t_class *c = pd_class((t_pd *)x); int x1,y1,x2,y2; @@ -1111,10 +1172,9 @@ void iemgui_io_draw_move(t_iemgui *x) { { //sys_vgui(".x%lx.c coords %so%d %d %d %d %d\n", // canvas, iem_get_tag(canvas, x), i, x1+i*k, y2-1, x1+i*k+IOWIDTH, y2); - char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "%so%d", iem_get_tag(canvas, x), i); gui_start_vmess("gui_configure_item", "ss", - canvas_string(canvas), tagbuf); + canvas_tag(canvas), tagbuf); gui_start_array(); gui_s("x"); gui_i(i*k); @@ -1125,12 +1185,11 @@ void iemgui_io_draw_move(t_iemgui *x) { } if(!iemgui_has_rcv(x) && canvas == x->x_glist) for (i=0; i<n; i++) { - sys_vgui(".x%lx.c coords %si%d %d %d %d %d\n", - canvas, iem_get_tag(canvas, x), i, x1+i*k, y1, x1+i*k+IOWIDTH, y1+1); - char tagbuf[MAXPDSTRING]; + //sys_vgui(".x%lx.c coords %si%d %d %d %d %d\n", + // canvas, iem_get_tag(canvas, x), i, x1+i*k, y1, x1+i*k+IOWIDTH, y1+1); sprintf(tagbuf, "%si%d", iem_get_tag(canvas, x), i); gui_start_vmess("gui_configure_item", "ss", - canvas_string(canvas), tagbuf); + canvas_tag(canvas), tagbuf); gui_start_array(); gui_s("x"); gui_i(i*k); @@ -1141,8 +1200,6 @@ void iemgui_io_draw_move(t_iemgui *x) { } void iemgui_base_draw_new(t_iemgui *x) { - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); t_canvas *canvas=glist_getcanvas(x->x_glist); t_class *c = pd_class((t_pd *)x); int x1,y1,x2,y2,gr=gop_redraw; gop_redraw=0; @@ -1152,11 +1209,12 @@ void iemgui_base_draw_new(t_iemgui *x) { // "-stroke $pd_colors(iemgui_border) -fill #%6.6x " // "-tags {%lxBASE x%lx text iemgui border}\n", // canvas, x1,y1,x2,y2, x->x_bcol, x, x); - gui_vmess("gui_text_create_gobj", "ssii", canvas_string(canvas), tagbuf, + gui_vmess("gui_text_create_gobj", "ssii", canvas_tag(canvas), gobj_tag(x), x1, y1); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", x->x_bcol); - gui_vmess("gui_iemgui_drawborder", "sssiiii", canvas_string(canvas), tagbuf, + gui_vmess("gui_iemgui_drawborder", "sssiiii", + canvas_tag(canvas), gobj_tag(x), colorbuf, x1, y1, x2, y2); } @@ -1167,10 +1225,8 @@ void iemgui_base_draw_move(t_iemgui *x) { c->c_wb->w_getrectfn((t_gobj *)x,x->x_glist,&x1,&y1,&x2,&y2); gop_redraw=gr; //sys_vgui(".x%lx.c coords %lxBASE %d %d %d %d\n", canvas, x, x1, y1, x2, y2); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_iemgui_redraw_border", "ssiiii", - canvas_string(canvas), tagbuf, x1, y1, x2, y2); + canvas_tag(canvas), gobj_tag(x), x1, y1, x2, y2); } void iemgui_base_draw_config(t_iemgui *x) { @@ -1181,7 +1237,7 @@ void iemgui_base_draw_config(t_iemgui *x) { char bcol[8]; sprintf(bcol, "#%6.6x", x->x_bcol); sprintf(tagbuf, "x%lxborder", (long unsigned int)x); gui_start_vmess("gui_configure_item", "ss", - canvas_string(canvas), tagbuf); + canvas_tag(canvas), tagbuf); gui_start_array(); gui_s("fill"); gui_s(bcol); @@ -1215,10 +1271,8 @@ void iemgui_draw_move(t_iemgui *x) { void iemgui_draw_erase(t_iemgui *x) { t_canvas *canvas=glist_getcanvas(x->x_glist); - sys_vgui(".x%lx.c delete x%lx\n", canvas, x); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); - gui_vmess("gui_gobj_erase", "ss", canvas_string(canvas), tagbuf); + //sys_vgui(".x%lx.c delete x%lx\n", canvas, x); + gui_vmess("gui_gobj_erase", "ss", canvas_tag(canvas), gobj_tag(x)); scalehandle_draw_erase2(x); } diff --git a/pd/src/g_bang.c b/pd/src/g_bang.c index 1c636b3ce..c4dd1e228 100644 --- a/pd/src/g_bang.c +++ b/pd/src/g_bang.c @@ -36,7 +36,7 @@ void bng_draw_update(t_gobj *xgobj, t_glist *glist) sprintf(flashcol, "#%6.6x", x->x_flashed ? x->x_gui.x_fcol : x->x_gui.x_bcol); gui_vmess("gui_bng_flash", "sss", - canvas_string(glist_getcanvas(glist)), tagbuf, flashcol); + canvas_tag(glist_getcanvas(glist)), tagbuf, flashcol); } x->x_gui.x_changed = x->x_flashed; } @@ -58,7 +58,7 @@ void bng_draw_new(t_bng *x, t_glist *glist) "-tags {%lxBUT x%lx text iemgui border}\n", canvas, cx, cy, cr, x->x_flashed?x->x_gui.x_fcol:x->x_gui.x_bcol, x, x); - gui_vmess("gui_create_bng", "ssfff", canvas_string(canvas), tagbuf, + gui_vmess("gui_create_bng", "ssfff", canvas_tag(canvas), tagbuf, cx - x1 - 0.5, cy - y1 - 0.5, cr); } @@ -81,7 +81,7 @@ void bng_draw_move(t_bng *x, t_glist *glist) char col[8]; sprintf(col, "#%6.6x", x->x_flashed ? x->x_gui.x_fcol : x->x_gui.x_bcol); gui_start_vmess("gui_configure_item", "ss", - canvas_string(canvas), tagbuf); + canvas_tag(canvas), tagbuf); gui_start_array(); gui_s("cx"); gui_f(cx - x1 - 0.5); // 0.5 is fudge factor... might be better @@ -97,16 +97,16 @@ void bng_draw_move(t_bng *x, t_glist *glist) void bng_draw_config(t_bng* x, t_glist* glist) { + char tagbuf[MAXPDSTRING]; t_canvas *canvas=glist_getcanvas(glist); iemgui_base_draw_config(&x->x_gui); //sys_vgui(".x%lx.c itemconfigure %lxBUT -fill #%6.6x\n", // canvas, x, x->x_flashed?x->x_gui.x_fcol:x->x_gui.x_bcol); - char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "x%lxbutton", (long unsigned int)x); char fcol[8]; sprintf(fcol, "#%6.6x", x->x_flashed ? x->x_gui.x_fcol : x->x_gui.x_bcol); gui_start_vmess("gui_configure_item", "ss", - canvas_string(canvas), tagbuf); + canvas_tag(canvas), tagbuf); gui_start_array(); gui_s("fill"); gui_s(fcol); diff --git a/pd/src/g_canvas.c b/pd/src/g_canvas.c index 778bb9ec4..62f94ca00 100644 --- a/pd/src/g_canvas.c +++ b/pd/src/g_canvas.c @@ -249,13 +249,26 @@ void canvas_makefilename(t_canvas *x, char *file, char *result, int resultsize) } // Generic tag format to use for the gui -char *canvas_string(t_canvas *x) +// Try removing the leading dot, since +// we don't need it anymore +// Both this and gobj_tag are static which +// means you shouldn't send twice in the same +// gui_vmess (and there shouldn't be a reason +// for doing that anyway) +char *canvas_tag(t_canvas *x) { static char s[MAXPDSTRING]; sprintf(s, ".x%lx", (long unsigned int)x); return s; } +char *gobj_tag(void *x) +{ + static char s[MAXPDSTRING]; + sprintf(s, "x%lx", (long unsigned int)x); + return s; +} + void canvas_rename(t_canvas *x, t_symbol *s, t_symbol *dir) { canvas_unbind(x); @@ -716,7 +729,8 @@ void canvas_reflecttitle(t_canvas *x) //sys_vgui("wm title .x%lx {%s%c%s - %s}\n", // x, x->gl_name->s_name, (x->gl_dirty? '*' : ' '), namebuf, // canvas_getdir(x)->s_name); - gui_vmess("gui_canvas_set_title", "ssssi", canvas_string(x), x->gl_name->s_name, + gui_vmess("gui_canvas_set_title", "ssssi", + canvas_tag(x), x->gl_name->s_name, namebuf, canvas_getdir(x)->s_name, x->gl_dirty); //} #endif @@ -791,7 +805,7 @@ void canvas_drawredrect(t_canvas *x, int doit) // "%d %d %d %d %d %d %d %d %d %d -fill #ff8080 -tags GOP\n", // glist_getcanvas(x), x1, y1, x2, y1, x2, y2, x1, y2, x1, y1); gui_vmess("gui_canvas_drawredrect", "siiii", - canvas_string(glist_getcanvas(x)), + canvas_tag(glist_getcanvas(x)), x1, y1, x2, y2); //dpsaha@vt.edu for drawing the GOP_blobs if (x->gl_goprect && x->gl_edit) @@ -801,7 +815,7 @@ void canvas_drawredrect(t_canvas *x, int doit) { //sys_vgui(".x%lx.c delete GOP\n", glist_getcanvas(x)); gui_vmess("gui_canvas_deleteredrect", "s", - canvas_string(glist_getcanvas(x))); + canvas_tag(glist_getcanvas(x))); } } @@ -1055,7 +1069,7 @@ void canvas_eraselinesfor(t_canvas *x, t_text *text) char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "l%lx", (long unsigned int)oc); gui_vmess("gui_canvas_delete_line", "ss", - canvas_string(glist_getcanvas(x)), tagbuf); + canvas_tag(glist_getcanvas(x)), tagbuf); } } } diff --git a/pd/src/g_canvas.h b/pd/src/g_canvas.h index d6bdecee1..34d31f471 100644 --- a/pd/src/g_canvas.h +++ b/pd/src/g_canvas.h @@ -562,7 +562,8 @@ EXTERN t_gobj *canvas_findhitbox(t_canvas *x, int xpos, int ypos, int *x1p, int *y1p, int *x2p, int *y2p); EXTERN int canvas_setdeleting(t_canvas *x, int flag); EXTERN int canvas_hasarray(t_canvas *x); -EXTERN char *canvas_string(t_canvas *x); /* canvas as string to send to gui */ +EXTERN char *canvas_tag(t_canvas *x); /* canvas as string to send to gui */ +EXTERN char *gobj_tag(void *x); /* gobj as string to send to gui */ /* ---- for parsing @pd_extra and other sys paths in filenames --------------------- */ diff --git a/pd/src/g_editor.c b/pd/src/g_editor.c index b9e6c8deb..df54b6a97 100644 --- a/pd/src/g_editor.c +++ b/pd/src/g_editor.c @@ -153,7 +153,7 @@ static void canvas_nlet_conf (t_canvas *x, int type) { /* this is rather confusing, but the canvas_cnct_[xlet]_tag already includes the type and index concatenated to the end. */ gui_vmess("gui_configure_io", "ssiii", - canvas_string(x), type == 'o' ? x->gl_editor->canvas_cnct_outlet_tag : + canvas_tag(x), type == 'o' ? x->gl_editor->canvas_cnct_outlet_tag : x->gl_editor->canvas_cnct_inlet_tag, isiemgui, issignal, 1); } @@ -429,6 +429,7 @@ void canvas_check_nlet_highlights(t_glist *x) void glist_selectline(t_glist *x, t_outconnect *oc, int index1, int outno, int index2, int inno) { + char tagbuf[MAXPDSTRING]; if (x->gl_editor) { glist_noselect(x); @@ -442,9 +443,8 @@ void glist_selectline(t_glist *x, t_outconnect *oc, int index1, // x, x->gl_editor->e_selectline_tag); //sys_vgui(".x%lx.c addtag selected withtag l%lx\n", // glist_getcanvas(x), x->gl_editor->e_selectline_tag); - char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "l%lx", (long unsigned int)oc); - gui_vmess("gui_canvas_select_line", "ss", canvas_string(x), tagbuf); + gui_vmess("gui_canvas_select_line", "ss", canvas_tag(x), tagbuf); c_selection = x; canvas_draw_gop_resize_hooks(x); } @@ -452,6 +452,7 @@ void glist_selectline(t_glist *x, t_outconnect *oc, int index1, void glist_deselectline(t_glist *x) { + char tagbuf[MAXPDSTRING]; if (x->gl_editor) { t_linetraverser t; @@ -474,10 +475,8 @@ void glist_deselectline(t_glist *x) // glist_getcanvas(x), // glist_getcanvas(x)->gl_editor->e_selectline_tag); canvas_draw_gop_resize_hooks(x); - - char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "l%lx", (long unsigned int)x->gl_editor->e_selectline_tag); - gui_vmess("gui_canvas_deselect_line", "ss", canvas_string(x), tagbuf); + gui_vmess("gui_canvas_deselect_line", "ss", canvas_tag(x), tagbuf); } } @@ -863,6 +862,7 @@ void canvas_disconnect(t_canvas *x, t_float index1, t_float outno, t_float index2, t_float inno) { //fprintf(stderr,"canvas_disconnect\n"); + char tagbuf[MAXPDSTRING]; t_linetraverser t; t_outconnect *oc; linetraverser_start(&t, x); @@ -874,10 +874,9 @@ void canvas_disconnect(t_canvas *x, sinkno == index2 && t.tr_inno == inno) { //sys_vgui(".x%lx.c delete l%lx\n", x, oc); - char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "l%lx", (long unsigned int)oc); gui_vmess("gui_canvas_delete_line", "ss", - canvas_string(x), tagbuf); + canvas_tag(x), tagbuf); // jsarlo if(x->gl_editor && x->gl_editor->gl_magic_glass) { @@ -2223,7 +2222,7 @@ void canvas_setcursor(t_canvas *x, unsigned int cursornum) if (xwas != x || cursorwas != cursornum) { //sys_vgui(".x%lx configure -cursor %s\n", x, cursorlist[cursornum]); - gui_vmess("gui_canvas_cursor", "ss", canvas_string(x), + gui_vmess("gui_canvas_cursor", "ss", canvas_tag(x), cursorlist[cursornum]); xwas = x; cursorwas = cursornum; @@ -2329,7 +2328,7 @@ static void canvas_rightclick(t_canvas *x, int xpos, int ypos, t_gobj *y_sel) //sys_vgui("pdtk_canvas_popup .x%lx %d %d %d %d %d\n", // x, xpos, ypos, canprop, canopen, isobject); gui_vmess("gui_canvas_popup", "siiiii", - canvas_string(x), xpos, ypos, canprop, canopen, isobject); + canvas_tag(x), xpos, ypos, canprop, canopen, isobject); } /* ---- editors -- perhaps this and "vis" should go to g_editor.c ------- */ @@ -2442,7 +2441,7 @@ void canvas_vis(t_canvas *x, t_floatarg f) //sys_vgui("raise .x%lx\n", x); //sys_vgui("focus .x%lx.c\n", x); //sys_vgui("wm deiconify .x%lx\n", x); - gui_vmess("gui_raise_window", "s", canvas_string(x)); + gui_vmess("gui_raise_window", "s", canvas_tag(x)); } else { @@ -2457,7 +2456,7 @@ void canvas_vis(t_canvas *x, t_floatarg f) canvas_args_to_string(argsbuf, x); gui_vmess("gui_canvas_new", "siisissis", - canvas_string(x), + canvas_tag(x), (int)(x->gl_screenx2 - x->gl_screenx1), (int)(x->gl_screeny2 - x->gl_screeny1), geobuf, @@ -2555,7 +2554,7 @@ void canvas_vis(t_canvas *x, t_floatarg f) if (glist_isvisible(x)) canvas_map(x, 0); canvas_destroy_editor(x); - gui_vmess("gui_close_window", "s", canvas_string(x)); + gui_vmess("gui_close_window", "s", canvas_tag(x)); // delete properties windows of objects in the patcher we're closing g = x->gl_list; while (g) @@ -3340,7 +3339,7 @@ void canvas_doclick(t_canvas *x, int xpos, int ypos, int which, // "$pd_colors(control_cord_width)"), //(issignal ? "signal" : "control")); gui_vmess("gui_canvas_line", "ssiiiiiiiiii", - canvas_string(x), "newcord", + canvas_tag(x), "newcord", xpos, ypos, xpos, ypos, xpos, ypos, xpos, ypos, xpos, ypos); } else @@ -3364,7 +3363,7 @@ void canvas_doclick(t_canvas *x, int xpos, int ypos, int which, // x->gl_editor->canvas_cnct_outlet_tag); gui_vmess("gui_highlight_io", "ss", - canvas_string(x), + canvas_tag(x), x->gl_editor->canvas_cnct_outlet_tag); //sys_vgui(".x%x.c raise %s\n", @@ -3425,7 +3424,7 @@ void canvas_doclick(t_canvas *x, int xpos, int ypos, int which, // x, x->gl_editor->canvas_cnct_inlet_tag); gui_vmess("gui_highlight_io", "ss", - canvas_string(x), + canvas_tag(x), x->gl_editor->canvas_cnct_inlet_tag); //sys_vgui(".x%x.c raise %s\n", @@ -3653,7 +3652,7 @@ void canvas_doclick(t_canvas *x, int xpos, int ypos, int which, //sys_vgui(".x%lx.c create prect %d %d %d %d -tags x " // "-stroke $pd_colors(selection_rectangle)\n", // x, xpos, ypos, xpos, ypos); - gui_vmess("gui_create_selection_rectangle", "siiii", canvas_string(x), + gui_vmess("gui_create_selection_rectangle", "siiii", canvas_tag(x), xpos, ypos, xpos, ypos); x->gl_editor->e_xwas = xpos; x->gl_editor->e_ywas = ypos; @@ -3794,7 +3793,7 @@ void canvas_drawconnection(t_canvas *x, int lx1, int ly1, int lx2, int ly2, // tag, (issignal ? "signal" : "control")); sprintf(tagbuf, "l%lx", (long unsigned int)tag); gui_vmess("gui_canvas_line", "ssiiiiiiiiii", - canvas_string(x), tagbuf, lx1, ly1, lx1, ly1 + yoff, + canvas_tag(x), tagbuf, lx1, ly1, lx1, ly1 + yoff, lx1 + halfx, ly1 + halfy, lx2, ly2 - yoff, lx2, ly2); } @@ -3839,7 +3838,8 @@ void canvas_updateconnection(t_canvas *x, int lx1, int ly1, int lx2, int ly2, // lx1, ly1 + yoff, lx1 + halfx, ly1 + halfy, // lx2, ly2 - yoff, lx2, ly2); sprintf(cord_tag, "l%lx", (long unsigned int)tag); - gui_vmess("gui_canvas_updateline", "ssiiiii", canvas_string(x), cord_tag, + gui_vmess("gui_canvas_updateline", "ssiiiii", + canvas_tag(x), cord_tag, lx1, ly1, lx2, ly2, yoff); // lx1, ly1, lx1, ly1 + yoff, lx1 + halfx, ly1 + halfy, // lx2, ly2 - yoff, lx2, ly2); @@ -3852,7 +3852,8 @@ void canvas_updateconnection(t_canvas *x, int lx1, int ly1, int lx2, int ly2, // x, lx1, ly1, // lx1, ly1 + yoff, lx1 + halfx, ly1 + halfy, // lx2, ly2 - yoff, lx2, ly2); - gui_vmess("gui_canvas_updateline", "ssiiiii", canvas_string(x), "newcord", + gui_vmess("gui_canvas_updateline", "ssiiiii", + canvas_tag(x), "newcord", lx1, ly1, lx2, ly2, yoff); // lx1, ly1, lx1, ly1 + yoff, lx1 + halfx, ly1 + halfy, lx2, ly2 - yoff, // lx2, ly2); @@ -4452,7 +4453,7 @@ void canvas_doconnect(t_canvas *x, int xpos, int ypos, int which, int doit) if (doit && !glob_shift) { sys_vgui(".x%lx.c delete x\n", x); - gui_vmess("gui_canvas_delete_line", "ss", canvas_string(x), "newcord"); + gui_vmess("gui_canvas_delete_line", "ss", canvas_tag(x), "newcord"); } else { @@ -4523,7 +4524,7 @@ void canvas_doconnect(t_canvas *x, int xpos, int ypos, int which, int doit) // x, x->gl_editor->canvas_cnct_inlet_tag); gui_vmess("gui_highlight_io", "ss", - canvas_string(x), + canvas_tag(x), x->gl_editor->canvas_cnct_inlet_tag); //sys_vgui(".x%x.c raise %s\n", @@ -4600,17 +4601,18 @@ static void canvas_doregion(t_canvas *x, int xpos, int ypos, int doit) loy = x->gl_editor->e_ywas, hiy = ypos; else hiy = x->gl_editor->e_ywas, loy = ypos; canvas_selectinrect(x, lox, loy, hix, hiy); - sys_vgui(".x%lx.c delete x\n", x); - gui_vmess("gui_hide_selection_rectangle", "s", canvas_string(x)); + //sys_vgui(".x%lx.c delete x\n", x); + gui_vmess("gui_hide_selection_rectangle", "s", canvas_tag(x)); x->gl_editor->e_onmotion = MA_NONE; } else { - sys_vgui(".x%lx.c coords x %d %d %d %d\n", - x, x->gl_editor->e_xwas, - x->gl_editor->e_ywas, xpos, ypos); + //sys_vgui(".x%lx.c coords x %d %d %d %d\n", + // x, x->gl_editor->e_xwas, + // x->gl_editor->e_ywas, xpos, ypos); gui_vmess("gui_move_selection_rectangle", "siiii", - canvas_string(x), x->gl_editor->e_xwas, x->gl_editor->e_ywas, xpos, ypos); + canvas_tag(x), + x->gl_editor->e_xwas, x->gl_editor->e_ywas, xpos, ypos); } } @@ -4837,7 +4839,7 @@ void canvas_displaceselection(t_canvas *x, int dx, int dy) if (dx || dy) { sys_vgui("pdtk_canvas_displace_withtag .x%lx.c %d %d\n", x, dx, dy); - gui_vmess("gui_canvas_displace_withtag", "sii", canvas_string(x), dx, dy); + gui_vmess("gui_canvas_displace_withtag", "sii", canvas_tag(x), dx, dy); if (resortin) canvas_resortinlets(x); if (resortout) canvas_resortoutlets(x); //scrollbar_update(x); @@ -5351,8 +5353,8 @@ void glob_verifyquit(void *dummy, t_floatarg f) //sys_vgui("pdtk_canvas_menuclose .x%lx {.x%lx menuclose 3;}\n", // g2, g2); gui_vmess("gui_canvas_menuclose", "ssi", - canvas_string(g2), - canvas_string(g2), + canvas_tag(g2), + canvas_tag(g2), 3); } else @@ -5360,8 +5362,8 @@ void glob_verifyquit(void *dummy, t_floatarg f) //sys_vgui("pdtk_canvas_menuclose .x%lx {.x%lx menuclose 3;}\n", // canvas_getrootfor(g2), g2); gui_vmess("gui_canvas_menuclose", "ssi", - canvas_string(canvas_getrootfor(g2)), - canvas_string(g2), + canvas_tag(canvas_getrootfor(g2)), + canvas_tag(g2), 3); } //canvas_vis(g2, 1); @@ -5429,8 +5431,8 @@ void canvas_menuclose(t_canvas *x, t_floatarg fforce) //sys_vgui("pdtk_canvas_menuclose .x%lx {.x%lx menuclose 2;}\n", // g, g); gui_vmess("gui_canvas_menuclose", "ssi", - canvas_string(g), - canvas_string(g), + canvas_tag(g), + canvas_tag(g), 2); } else @@ -5438,8 +5440,8 @@ void canvas_menuclose(t_canvas *x, t_floatarg fforce) //sys_vgui("pdtk_canvas_menuclose .x%lx {.x%lx menuclose 2;}\n", // canvas_getrootfor(g), g); gui_vmess("gui_canvas_menuclose", "ssi", - canvas_string(canvas_getrootfor(g)), - canvas_string(g), + canvas_tag(canvas_getrootfor(g)), + canvas_tag(g), 2); } return; @@ -5495,8 +5497,8 @@ post("farging..."); //sys_vgui("pdtk_canvas_menuclose .x%lx {.x%lx menuclose 2;}\n", // g, g); gui_vmess("gui_canvas_menuclose", "ssi", - canvas_string(g), - canvas_string(g), + canvas_tag(g), + canvas_tag(g), 2); } else @@ -5505,8 +5507,8 @@ post("dildo"); //sys_vgui("pdtk_canvas_menuclose .x%lx {.x%lx menuclose 2;}\n", // canvas_getrootfor(g), g); gui_vmess("gui_canvas_menuclose", "ssi", - canvas_string(canvas_getrootfor(g)), - canvas_string(g), + canvas_tag(canvas_getrootfor(g)), + canvas_tag(g), 2); } //sys_vgui("pdtk_canvas_menuclose .x%lx {.x%lx menuclose 2;\n}\n", diff --git a/pd/src/g_graph.c b/pd/src/g_graph.c index b5771002a..9d1a8cca9 100644 --- a/pd/src/g_graph.c +++ b/pd/src/g_graph.c @@ -500,10 +500,18 @@ void canvas_resortinlets(t_canvas *x) t_rtext *rt = glist_findrtext(x->gl_owner, (t_text *)&ob->ob_g); for (i = 0; i < ninlets; i++) { - sys_vgui(".x%x.c itemconfigure %si%d -fill %s -width 1\n", - x, rtext_gettag(rt), i, - (obj_issignalinlet(ob, i) ? - "$signal_nlet" : "$pd_colors_control_nlet)")); + //sys_vgui(".x%x.c itemconfigure %si%d -fill %s -width 1\n", + // x, rtext_gettag(rt), i, + // (obj_issignalinlet(ob, i) ? + // "$signal_nlet" : "$pd_colors_control_nlet)")); + sprintf(xlet_tag, "%si%d", rtext_gettag(rt), i); + char xlet_tag[MAXPDSTRING]; + gui_vmess("gui_configure_io", "ssiii", + canvas_tag(x), + xlet_tag, + 0, + obj_issignalinlet(ob, i), + 1); } */ @@ -890,7 +898,7 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis) xpix = text_xpix(&x->gl_obj, parent_glist); ypix = text_ypix(&x->gl_obj, parent_glist); gui_vmess("gui_text_create_gobj", "ssii", - canvas_string(glist_getcanvas(x->gl_owner)), + canvas_tag(glist_getcanvas(x->gl_owner)), tag, xpix, ypix); if (canvas_showtext(x)) rtext_draw(glist_findrtext(parent_glist, &x->gl_obj)); @@ -922,24 +930,23 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis) // glist_getcanvas(x->gl_owner), ////parent_glist, // x1, y1, x1, y2, x2, y2, x2, y1, x1, y1, tag); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "%sfill", tag); gui_vmess("gui_text_drawborder", "ssiiiii", - canvas_string(glist_getcanvas(x->gl_owner)), + canvas_tag(glist_getcanvas(x->gl_owner)), tag, 0, x1, y1, x2, y2); glist_noselect(x->gl_owner); + gui_vmess("gui_graph_fill_border", "ssi", + canvas_tag(glist_getcanvas(x->gl_owner)), + tag); } else if (gobj_shouldvis(gr, parent_glist)) { //sys_vgui(".x%lx.c delete %sfill\n", // glist_getcanvas(x->gl_owner), tag); ////parent_glist, tag); - char tagbuf2[MAXPDSTRING]; - sprintf(tagbuf2, "%sfill", tag); - gui_vmess("gui_graph_deleteborder", "ss", - canvas_string(glist_getcanvas(x->gl_owner)), - tagbuf2); + gui_vmess("gui_gobj_erase", "ss", + canvas_tag(glist_getcanvas(x->gl_owner)), + tag); } return; } @@ -951,19 +958,23 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis) t_gobj *g; t_symbol *arrayname; /* draw a rectangle around the graph */ + /*sys_vgui(".x%lx.c create polyline %d %d %d %d %d %d %d %d %d %d " "-stroke $pd_colors(graph_border) -tags {%sR %s graph}\n", glist_getcanvas(x->gl_owner), x1, y1, x1, y2, x2, y2, x2, y1, x1, y1, tag, tag);*/ + //sys_vgui(".x%lx.c create prect %d %d %d %d " // "-stroke $pd_colors(graph_border) -tags {%sR graph}\n", // //REMOVED: -fill $pd_colors(graph) // glist_getcanvas(x->gl_owner), // x1, y1, x2, y2, tag); // -fill $pd_colors(graph) + char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "%sR", tag); + gui_vmess("gui_text_drawborder", "ssiiiii", - canvas_string(glist_getcanvas(x->gl_owner)), + canvas_tag(glist_getcanvas(x->gl_owner)), tag, 0, x1, y1, x2, y2); /* write garrays' names along the top */ @@ -976,13 +987,23 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis) !garray_getname((t_garray *)g, &arrayname)) { //i++; - sys_vgui(".x%lx.c create text %d %d -text {%s} -anchor nw " - "-font {{%s} -%d %s} -tags {%s label graph} -fill %s\n", - (long)glist_getcanvas(x), x1+2, i, arrayname->s_name, - sys_font, sys_hostfontsize(glist_getfont(x)), sys_fontweight, + //sys_vgui(".x%lx.c create text %d %d -text {%s} -anchor nw " + // "-font {{%s} -%d %s} -tags {%s label graph} -fill %s\n", + // (long)glist_getcanvas(x), x1+2, i, arrayname->s_name, + // sys_font, sys_hostfontsize(glist_getfont(x)), sys_fontweight, + // tag, + // (glist_isselected(x, gr) ? + // "$pd_colors(selection)" : "$pd_colors(graph_border)")); + gui_vmess("gui_graph_label", "ssissisi", + canvas_tag(glist_getcanvas(x)), tag, - (glist_isselected(x, gr) ? - "$pd_colors(selection)" : "$pd_colors(graph_border)")); + i, + arrayname->s_name, + sys_font, + sys_hostfontsize(glist_getfont(x)), + sys_fontweight, + glist_isselected(x, gr)); + i += sys_fontheight(glist_getfont(x)); } } @@ -999,28 +1020,46 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis) f += x->gl_xtick.k_inc) { int tickpix = (i % x->gl_xtick.k_lperb ? 2 : 4); - sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", - glist_getcanvas(x->gl_owner), - (int)glist_xtopixels(x, f), (int)upix, - (int)glist_xtopixels(x, f), (int)upix - tickpix, tag); - sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", - glist_getcanvas(x->gl_owner), - (int)glist_xtopixels(x, f), (int)lpix, - (int)glist_xtopixels(x, f), (int)lpix + tickpix, tag); + //sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", + // glist_getcanvas(x->gl_owner), + // (int)glist_xtopixels(x, f), (int)upix, + // (int)glist_xtopixels(x, f), (int)upix - tickpix, tag); + //sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", + // glist_getcanvas(x->gl_owner), + // (int)glist_xtopixels(x, f), (int)lpix, + // (int)glist_xtopixels(x, f), (int)lpix + tickpix, tag); + gui_vmess("gui_graph_vtick", "ssiiiiii", + canvas_tag(glist_getcanvas(x->gl_owner)), + tag, + (int)glist_xtopixels(x, f), + (int)upix, + (int)lpix, + (int)tickpix, + x1, + y1); } for (i = 1, f = x->gl_xtick.k_point - x->gl_xtick.k_inc; f > 0.99 * x->gl_x1 + 0.01*x->gl_x2; i++, f -= x->gl_xtick.k_inc) { int tickpix = (i % x->gl_xtick.k_lperb ? 2 : 4); - sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", - glist_getcanvas(x->gl_owner), - (int)glist_xtopixels(x, f), (int)upix, - (int)glist_xtopixels(x, f), (int)upix - tickpix, tag); - sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", - glist_getcanvas(x->gl_owner), - (int)glist_xtopixels(x, f), (int)lpix, - (int)glist_xtopixels(x, f), (int)lpix + tickpix, tag); + //sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", + // glist_getcanvas(x->gl_owner), + // (int)glist_xtopixels(x, f), (int)upix, + // (int)glist_xtopixels(x, f), (int)upix - tickpix, tag); + //sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", + // glist_getcanvas(x->gl_owner), + // (int)glist_xtopixels(x, f), (int)lpix, + // (int)glist_xtopixels(x, f), (int)lpix + tickpix, tag); + gui_vmess("gui_graph_vtick", "ssiiiiii", + canvas_tag(glist_getcanvas(x->gl_owner)), + tag, + (int)glist_xtopixels(x, f), + (int)upix, + (int)lpix, + (int)tickpix, + x1, + y1); } } @@ -1036,49 +1075,93 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis) i++, f += x->gl_ytick.k_inc) { int tickpix = (i % x->gl_ytick.k_lperb ? 2 : 4); - sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", - glist_getcanvas(x->gl_owner), - x1, (int)glist_ytopixels(x, f), - x1 + tickpix, (int)glist_ytopixels(x, f), tag); - sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", - glist_getcanvas(x->gl_owner), - x2, (int)glist_ytopixels(x, f), - x2 - tickpix, (int)glist_ytopixels(x, f), tag); + //sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", + // glist_getcanvas(x->gl_owner), + // x1, (int)glist_ytopixels(x, f), + // x1 + tickpix, (int)glist_ytopixels(x, f), tag); + //sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", + // glist_getcanvas(x->gl_owner), + // x2, (int)glist_ytopixels(x, f), + // x2 - tickpix, (int)glist_ytopixels(x, f), tag); + gui_vmess("gui_graph_htick", "ssiiiiii", + canvas_tag(glist_getcanvas(x->gl_owner)), + tag, + (int)glist_ytopixels(x, f), + x1, + x2, + (int)tickpix, + x1, + y1); } for (i = 1, f = x->gl_ytick.k_point - x->gl_ytick.k_inc; f > 0.99 * lbound + 0.01 * ubound; i++, f -= x->gl_ytick.k_inc) { int tickpix = (i % x->gl_ytick.k_lperb ? 2 : 4); - sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", - glist_getcanvas(x->gl_owner), - x1, (int)glist_ytopixels(x, f), - x1 + tickpix, (int)glist_ytopixels(x, f), tag); - sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", - glist_getcanvas(x->gl_owner), - x2, (int)glist_ytopixels(x, f), - x2 - tickpix, (int)glist_ytopixels(x, f), tag); + //sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", + // glist_getcanvas(x->gl_owner), + // x1, (int)glist_ytopixels(x, f), + // x1 + tickpix, (int)glist_ytopixels(x, f), tag); + //sys_vgui(".x%lx.c create polyline %d %d %d %d -tags %s\n", + // glist_getcanvas(x->gl_owner), + // x2, (int)glist_ytopixels(x, f), + // x2 - tickpix, (int)glist_ytopixels(x, f), tag); + gui_vmess("gui_graph_htick", "ssiiiiii", + canvas_tag(glist_getcanvas(x->gl_owner)), + tag, + (int)glist_ytopixels(x, f), + x1, + x2, + (int)tickpix, + x1, + y1); } } /* draw x labels */ for (i = 0; i < x->gl_nxlabels; i++) - sys_vgui(".x%lx.c create text\ - %d %d -text {%s} -font {{%s} %d %s} -tags {%s}\n", - glist_getcanvas(x), + { + //sys_vgui(".x%lx.c create text " + // "%d %d -text {%s} -font {{%s} %d %s} -tags {%s}\n", + // glist_getcanvas(x), + // (int)glist_xtopixels(x, atof(x->gl_xlabel[i]->s_name)), + // (int)glist_ytopixels(x, x->gl_xlabely), + // x->gl_xlabel[i]->s_name, sys_font, + // glist_getfont(x), sys_fontweight, tag); + gui_vmess("gui_graph_tick_label", "ssiissisii", + canvas_tag(glist_getcanvas(x)), + tag, (int)glist_xtopixels(x, atof(x->gl_xlabel[i]->s_name)), (int)glist_ytopixels(x, x->gl_xlabely), - x->gl_xlabel[i]->s_name, sys_font, - glist_getfont(x), sys_fontweight, tag); + x->gl_xlabel[i]->s_name, + sys_font, + glist_getfont(x), + sys_fontweight, + x1, + y1); + } /* draw y labels */ for (i = 0; i < x->gl_nylabels; i++) - sys_vgui(".x%lx.c create text\ - %d %d -text {%s} -font {{%s} %d %s} -tags {%s}\n", - glist_getcanvas(x), + { + //sys_vgui(".x%lx.c create text " + // "%d %d -text {%s} -font {{%s} %d %s} -tags {%s}\n", + // glist_getcanvas(x), + // (int)glist_xtopixels(x, x->gl_ylabelx), + // (int)glist_ytopixels(x, atof(x->gl_ylabel[i]->s_name)), + // x->gl_ylabel[i]->s_name, sys_font, + // glist_getfont(x), sys_fontweight, tag); + gui_vmess("gui_graph_tick_label", "ssiissisii", + canvas_tag(glist_getcanvas(x)), + tag, (int)glist_xtopixels(x, x->gl_ylabelx), (int)glist_ytopixels(x, atof(x->gl_ylabel[i]->s_name)), - x->gl_ylabel[i]->s_name, sys_font, - glist_getfont(x), sys_fontweight, tag); + x->gl_ylabel[i]->s_name, + sys_font, + glist_getfont(x), + sys_fontweight, + x1, + y1); + } /* draw contents of graph as glist */ for (g = x->gl_list; g; g = g->g_next) @@ -1101,13 +1184,18 @@ static void graph_vis(t_gobj *gr, t_glist *parent_glist, int vis) } else { - sys_vgui(".x%lx.c delete %s\n", - glist_getcanvas(x->gl_owner), tag); - sys_vgui(".x%lx.c delete %sR\n", - glist_getcanvas(x->gl_owner), tag); + //sys_vgui(".x%lx.c delete %s\n", + // glist_getcanvas(x->gl_owner), tag); + //sys_vgui(".x%lx.c delete %sR\n", + // glist_getcanvas(x->gl_owner), tag); glist_eraseiofor(parent_glist, &x->gl_obj, tag); for (g = x->gl_list; g; g = g->g_next) gobj_vis(g, x, 0); + + gui_vmess("gui_gobj_erase", "ss", + canvas_tag(glist_getcanvas(x->gl_owner)), + tag); + // here we check for changes in scrollbar because of legacy // objects that can fall outside gop window, e.g. scalars canvas_getscroll(glist_getcanvas(x->gl_owner)); @@ -1398,28 +1486,28 @@ static void graph_select(t_gobj *z, t_glist *glist, int state) } if(glist_istoplevel(glist)) { - sys_vgui(".x%lx.c itemconfigure %sR -stroke %s\n", canvas, - rtext_gettag(y), - (state? "$pd_colors(selection)" : "$pd_colors(graph_border)")); + //sys_vgui(".x%lx.c itemconfigure %sR -stroke %s\n", canvas, + // rtext_gettag(y), + // (state? "$pd_colors(selection)" : "$pd_colors(graph_border)")); /* sys_vgui(".x%lx.c itemconfigure graph%lx -fill %s\n", glist_getcanvas(glist), z, (state? "$pd_colors(selection)" : "$pd_colors(graph_border)")); */ - sys_vgui(".x%lx.c itemconfigure %sT -fill %s\n", - canvas, rtext_gettag(y), - (state? "$pd_colors(selection)" : "$pd_colors(graph_border)")); - - sys_vgui(".x%lx.c itemconfigure %sfill -stroke %s -fill %s\n", - canvas, rtext_gettag(y), - (state? "$pd_colors(selection)" : "$pd_colors(graph_border)"), - (state? "$pd_colors(selection)" : "$pd_colors(graph_border)")); + //sys_vgui(".x%lx.c itemconfigure %sT -fill %s\n", + // canvas, rtext_gettag(y), + // (state? "$pd_colors(selection)" : "$pd_colors(graph_border)")); + + //sys_vgui(".x%lx.c itemconfigure %sfill -stroke %s -fill %s\n", + // canvas, rtext_gettag(y), + // (state? "$pd_colors(selection)" : "$pd_colors(graph_border)"), + // (state? "$pd_colors(selection)" : "$pd_colors(graph_border)")); if (state) gui_vmess("gui_text_select", "ss", - canvas_string(canvas), rtext_gettag(y)); + canvas_tag(canvas), rtext_gettag(y)); else gui_vmess("gui_text_deselect", "ss", - canvas_string(canvas), rtext_gettag(y)); + canvas_tag(canvas), rtext_gettag(y)); } t_gobj *g; diff --git a/pd/src/g_magicglass.c b/pd/src/g_magicglass.c index 22cd07fe0..efacecd13 100644 --- a/pd/src/g_magicglass.c +++ b/pd/src/g_magicglass.c @@ -118,7 +118,7 @@ void magicGlass_updateText(t_magicGlass *x, int moved) bgSize, x->x_y + (int)(sys_fontheight(x->x_display_font)/2) + 3); gui_vmess("gui_cord_inspector_update", "ssiiiiii", - canvas_string(x->x_c), x->x_string, + canvas_tag(x->x_c), x->x_string, x->x_x, x->x_y, bgSize, x->x_y - (int)(sys_fontheight(x->x_display_font)/2) - 3, x->x_y + (int)(sys_fontheight(x->x_display_font)/2) + 3, @@ -145,9 +145,9 @@ void magicGlass_drawNew(t_magicGlass *x) sys_vgui(".x%x.c raise magicGlassText\n", x->x_c); gui_vmess("gui_text_create_gobj", "ssii", - canvas_string(x->x_c), "cord_inspector", 0, 0); + canvas_tag(x->x_c), "cord_inspector", 0, 0); gui_vmess("gui_create_cord_inspector", "s", - canvas_string(x->x_c)); + canvas_tag(x->x_c)); magicGlass_updateText(x, 0); clock_delay(x->x_flashClock, MG_CLOCK_FLASH_DELAY); } @@ -159,7 +159,7 @@ void magicGlass_undraw(t_magicGlass *x) sys_vgui(".x%x.c delete magicGlassLine\n", x->x_c); sys_vgui(".x%x.c delete magicGlassText\n", x->x_c); gui_vmess("gui_erase_cord_inspector", "s", - canvas_string(x->x_c)); + canvas_tag(x->x_c)); } void magicGlass_flashText(t_magicGlass *x) @@ -169,7 +169,7 @@ void magicGlass_flashText(t_magicGlass *x) "-fill $pd_colors(magic_glass_text)\n", x->x_c); gui_vmess("gui_cord_inspector_flash", "s", - canvas_string(x->x_c)); + canvas_tag(x->x_c)); } void magicGlass_clearText(t_magicGlass *x) diff --git a/pd/src/g_mycanvas.c b/pd/src/g_mycanvas.c index 801add84c..18c504bd5 100644 --- a/pd/src/g_mycanvas.c +++ b/pd/src/g_mycanvas.c @@ -33,14 +33,12 @@ void my_canvas_draw_new(t_my_canvas *x, t_glist *glist) "-tags {%lxBASE x%lx text iemgui}\n", canvas, x1, y1, x1+x->x_gui.x_w, y1+x->x_gui.x_h, x->x_gui.x_bcol, x, x); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", x->x_gui.x_bcol); - gui_vmess("gui_text_create_gobj", "ssii", canvas_string(canvas), - tagbuf, x1, y1); - gui_vmess("gui_create_mycanvas", "sssiiiiii", canvas_string(canvas), - tagbuf, colorbuf, x1, y1, x1+x->x_vis_w, y1+x->x_vis_h, + gui_vmess("gui_text_create_gobj", "ssii", canvas_tag(canvas), + gobj_tag(x), x1, y1); + gui_vmess("gui_create_mycanvas", "sssiiiiii", canvas_tag(canvas), + gobj_tag(x), colorbuf, x1, y1, x1+x->x_vis_w, y1+x->x_vis_h, x1+x->x_gui.x_w, y1+x->x_gui.x_h); } @@ -55,10 +53,8 @@ void my_canvas_draw_move(t_my_canvas *x, t_glist *glist) canvas, x, x1, y1, x1+x->x_vis_w, y1+x->x_vis_h); sys_vgui(".x%lx.c coords %lxBASE %d %d %d %d\n", canvas, x, x1, y1, x1+x->x_gui.x_w, y1+x->x_gui.x_h); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_mycanvas_coords", "ssiiii", - canvas_string(canvas), tagbuf, + canvas_tag(canvas), gobj_tag(x), x->x_vis_w, x->x_vis_h, x->x_gui.x_w, x->x_gui.x_h); } @@ -73,10 +69,8 @@ void my_canvas_draw_config(t_my_canvas* x, t_glist* glist) // x->x_gui.x_selected == canvas && x->x_gui.x_glist == canvas ? // "$pd_colors(selection)" : bcol); isselected = x->x_gui.x_selected == canvas && x->x_gui.x_glist == canvas; - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_update_mycanvas", "sssi", - canvas_string(canvas), tagbuf, bcol, isselected); + canvas_tag(canvas), gobj_tag(x), bcol, isselected); } void my_canvas_draw_select(t_my_canvas* x, t_glist* glist) @@ -87,10 +81,9 @@ void my_canvas_draw_select(t_my_canvas* x, t_glist* glist) sys_vgui(".x%lx.c itemconfigure %lxBASE -stroke %s\n", canvas, x, x->x_gui.x_selected == canvas && x->x_gui.x_glist == canvas ? "$pd_colors(selection)" : bcol); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); - gui_vmess("gui_mycanvas_select_color", "sss", canvas_string(canvas), - tagbuf, x->x_gui.x_selected == canvas && x->x_gui.x_glist == canvas ? + gui_vmess("gui_mycanvas_select_color", "sss", + canvas_tag(canvas), gobj_tag(x), + x->x_gui.x_selected == canvas && x->x_gui.x_glist == canvas ? "blue" : bcol); } diff --git a/pd/src/g_numbox.c b/pd/src/g_numbox.c index e421cf85a..517fbf7dd 100644 --- a/pd/src/g_numbox.c +++ b/pd/src/g_numbox.c @@ -140,10 +140,8 @@ static void my_numbox_draw_update(t_gobj *client, t_glist *glist) //sys_vgui( // ".x%lx.c itemconfigure %lxNUMBER -fill #%6.6x -text {%s}\n", // glist_getcanvas(glist), x, IEM_GUI_COLOR_EDITED, cp); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); - gui_vmess("gui_text_set", "sss", canvas_string(glist_getcanvas(glist)), - tagbuf, cp); + gui_vmess("gui_text_set", "sss", canvas_tag(glist_getcanvas(glist)), + gobj_tag(x), cp); x->x_buf[sl] = 0; } @@ -158,10 +156,8 @@ static void my_numbox_draw_update(t_gobj *client, t_glist *glist) // glist_getcanvas(glist), x, // x->x_gui.x_selected == glist_getcanvas(glist) && // !x->x_gui.x_change ? selection_color : fcol, x->x_buf); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); - gui_vmess("gui_text_set", "sss", canvas_string(glist_getcanvas(glist)), - tagbuf, x->x_buf); + gui_vmess("gui_text_set", "sss", canvas_tag(glist_getcanvas(glist)), + gobj_tag(x), x->x_buf); x->x_buf[0] = 0; } } @@ -180,10 +176,9 @@ static void my_numbox_draw_new(t_my_numbox *x, t_glist *glist) // canvas, x1, y1, x2-4, y1, x2, y1+4, x2, y2, x1, y2, // x->x_hide_frame <= 1 ? "$pd_colors(iemgui_border)" : bcol, // bcol, x, x); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); - gui_vmess("gui_create_numbox", "isssiiiiiiiiiiiii", x->x_numwidth, canvas_string(canvas), - tagbuf, bcol, x1, y1, x2-4, y1, x2, y1+4, x2, y2, x1, y2, x1, y1, half); + gui_vmess("gui_create_numbox", "isssiiiiiiiiiiiii", x->x_numwidth, + canvas_tag(canvas), gobj_tag(x), + bcol, x1, y1, x2-4, y1, x2, y1+4, x2, y2, x1, y2, x1, y1, half); if (!x->x_hide_frame || x->x_hide_frame == 2) sys_vgui(".x%lx.c create polyline %d %d %d %d %d %d -stroke #%6.6x " "-tags {%lxBASE2 x%lx text iemgui}\n", @@ -196,7 +191,8 @@ static void my_numbox_draw_new(t_my_numbox *x, t_glist *glist) // x->x_gui.x_fcol, x, x); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", x->x_gui.x_fcol); - gui_vmess("gui_numbox_drawtext", "sssisiiii", canvas_string(canvas), tagbuf, + gui_vmess("gui_numbox_drawtext", "sssisiiii", + canvas_tag(canvas), gobj_tag(x), x->x_buf, x->x_gui.x_fontsize, colorbuf, x1+half+2, y1+half+d, x1, y1); } @@ -230,13 +226,11 @@ static void my_numbox_draw_config(t_my_numbox* x,t_glist* glist) // canvas, x, issel ? selection_color : fcol); //sys_vgui(".x%lx.c itemconfigure %lxBASE1 -fill #%6.6x\n", canvas, // x, x->x_gui.x_bcol); - char tagbuf[MAXPDSTRING]; char bgcol[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); sprintf(bgcol, "#%6.6x", x->x_gui.x_bcol); gui_vmess("gui_update_numbox", "sssssii", - canvas_string(canvas), tagbuf, + canvas_tag(canvas), gobj_tag(x), fcol, bgcol, iemgui_typeface, x->x_gui.x_fontsize, sys_fontweight); } diff --git a/pd/src/g_radio.c b/pd/src/g_radio.c index 2b08249f1..3fa7b6adf 100644 --- a/pd/src/g_radio.c +++ b/pd/src/g_radio.c @@ -32,13 +32,11 @@ void radio_draw_update(t_gobj *client, t_glist *glist) canvas, x, x->x_drawn, x->x_gui.x_bcol, x->x_gui.x_bcol); sys_vgui(".x%lx.c itemconfigure %lxBUT%d -fill #%6.6x -stroke #%6.6x\n", canvas, x, x->x_on, x->x_gui.x_fcol, x->x_gui.x_fcol); - char tagbuf[MAXPDSTRING]; char fcol[8], bcol[8]; sprintf(fcol, "#%6.6x", x->x_gui.x_fcol); sprintf(bcol, "#%6.6x", x->x_gui.x_bcol); - sprintf(tagbuf, "x%lx", (long unsigned int)x); - gui_vmess("gui_radio_update", "sssii", canvas_string(canvas), - tagbuf, fcol, x->x_drawn, x->x_on); + gui_vmess("gui_radio_update", "sssii", canvas_tag(canvas), + gobj_tag(x), fcol, x->x_drawn, x->x_on); x->x_drawn = x->x_on; } @@ -57,10 +55,8 @@ void radio_draw_new(t_radio *x, t_glist *glist) "-stroke $pd_colors(iemgui_border) " "-tags {%lxBASE%d %lxBASE x%lx text iemgui border}\n", canvas, x1, yi, x1+d, yi, x, i, x, x); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_create_radio", "ssiiiiiii", - canvas_string(canvas), tagbuf, x1, yi, x1+d, yi, i, x1, y1); + canvas_tag(canvas), gobj_tag(x), x1, yi, x1+d, yi, i, x1, y1); } sys_vgui(".x%lx.c create prect %d %d %d %d -fill #%6.6x " "-stroke #%6.6x -tags {%lxBUT%d x%lx text iemgui}\n", @@ -72,8 +68,9 @@ void radio_draw_new(t_radio *x, t_glist *glist) sprintf(tagbuf, "x%lx", (long unsigned int)x); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", x->x_gui.x_fcol); - gui_vmess("gui_create_radio_buttons", "sssiiiiiiii", canvas_string(canvas), - tagbuf, colorbuf, x1+s, yi+s, x1+d-s, yi+d-s, x1, y1, i, x->x_on==i); + gui_vmess("gui_create_radio_buttons", "sssiiiiiiii", + canvas_tag(canvas), gobj_tag(x), + colorbuf, x1+s, yi+s, x1+d-s, yi+d-s, x1, y1, i, x->x_on==i); yi += d; x->x_drawn = x->x_on; } else { @@ -83,10 +80,8 @@ void radio_draw_new(t_radio *x, t_glist *glist) "-stroke $pd_colors(iemgui_border) " "-tags {%lxBASE%d %lxBASE x%lx text iemgui border}\n", canvas, xi, y1, xi, y1+d, x, i, x, x); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); - gui_vmess("gui_create_radio", "ssiiiiiii", canvas_string(canvas), - tagbuf, xi, y1, xi, y1+d, i, x1, y1); + gui_vmess("gui_create_radio", "ssiiiiiii", canvas_tag(canvas), + gobj_tag(x), xi, y1, xi, y1+d, i, x1, y1); } sys_vgui(".x%lx.c create prect %d %d %d %d -fill #%6.6x " "-stroke #%6.6x -tags {%lxBUT%d x%lx text iemgui}\n", @@ -94,12 +89,11 @@ void radio_draw_new(t_radio *x, t_glist *glist) (x->x_on==i)?x->x_gui.x_fcol:x->x_gui.x_bcol, (x->x_on==i)?x->x_gui.x_fcol:x->x_gui.x_bcol, x, i, x); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", x->x_gui.x_fcol); - gui_vmess("gui_create_radio_buttons", "sssiiiiiiii", canvas_string(canvas), - tagbuf, colorbuf, xi+s, y1+s, xi+d-s, yi+d-s, x1, y1, i, x->x_on==i); + gui_vmess("gui_create_radio_buttons", "sssiiiiiiii", + canvas_tag(canvas), gobj_tag(x), + colorbuf, xi+s, y1+s, xi+d-s, yi+d-s, x1, y1, i, x->x_on==i); xi += d; x->x_drawn = x->x_on; } @@ -112,8 +106,6 @@ void radio_draw_move(t_radio *x, t_glist *glist) int n=x->x_number, i, d=x->x_gui.x_w, s=d/4; int x1=text_xpix(&x->x_gui.x_obj, glist), xi=0; int y1=text_ypix(&x->x_gui.x_obj, glist), yi=0; - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); iemgui_base_draw_move(&x->x_gui); for(i=0; i<n; i++) if (x->x_orient) { //sys_vgui(".x%lx.c coords %lxBASE%d %d %d %d %d\n", @@ -121,7 +113,7 @@ void radio_draw_move(t_radio *x, t_glist *glist) //sys_vgui(".x%lx.c coords %lxBUT%d %d %d %d %d\n", // canvas, x, i, x1+s, yi+s, x1+d-s, yi+d-s); gui_vmess("gui_radio_button_coords", "ssiiiiiiii", - canvas_string(canvas), tagbuf, + canvas_tag(canvas), gobj_tag(x), x1, y1, xi, yi, i, s, d, x->x_orient); yi += d; } else { @@ -130,7 +122,7 @@ void radio_draw_move(t_radio *x, t_glist *glist) //sys_vgui(".x%lx.c coords %lxBUT%d %d %d %d %d\n", // canvas, x, i, xi+s, y1+s, xi+d-s, y1+d-s); gui_vmess("gui_radio_button_coords", "ssiiiiiiii", - canvas_string(canvas), tagbuf, + canvas_tag(canvas), gobj_tag(x), x1, y1, xi, yi, i, s, d, x->x_orient); xi += d; } @@ -148,12 +140,10 @@ void radio_draw_config(t_radio *x, t_glist *glist) // (x->x_on==i) ? x->x_gui.x_fcol : x->x_gui.x_bcol, // (x->x_on==i) ? x->x_gui.x_fcol : x->x_gui.x_bcol); } - char tagbuf[MAXPDSTRING]; char col[8]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); sprintf(col, "#%6.6x", x->x_gui.x_fcol); gui_vmess("gui_radio_update", "sssii", - canvas_string(canvas), tagbuf, col, 0, x->x_on); + canvas_tag(canvas), gobj_tag(x), col, 0, x->x_on); } diff --git a/pd/src/g_readwrite.c b/pd/src/g_readwrite.c index 5dd095180..fce016454 100644 --- a/pd/src/g_readwrite.c +++ b/pd/src/g_readwrite.c @@ -776,7 +776,7 @@ static void canvas_savetofile(t_canvas *x, t_symbol *filename, t_symbol *dir) static void canvas_menusaveas(t_canvas *x) { t_canvas *x2 = canvas_getrootfor(x); - gui_vmess("gui_canvas_saveas", "sss", canvas_string(x2), x2->gl_name->s_name, canvas_getdir(x2)->s_name); + gui_vmess("gui_canvas_saveas", "sss", canvas_tag(x2), x2->gl_name->s_name, canvas_getdir(x2)->s_name); // sys_vgui("pdtk_canvas_saveas .x%lx \"%s\" \"%s\"\n", x2, // x2->gl_name->s_name, canvas_getdir(x2)->s_name); } diff --git a/pd/src/g_rtext.c b/pd/src/g_rtext.c index 76b0fea02..116f01ed1 100644 --- a/pd/src/g_rtext.c +++ b/pd/src/g_rtext.c @@ -356,14 +356,14 @@ static void rtext_senditup(t_rtext *x, int action, int *widthp, int *heightp, if (action == SEND_FIRST) { //fprintf(stderr,"send_first rtext=%lx t_text=%lx\n", x, x->x_text); - sys_vgui("pdtk_text_new .x%lx.c {%s %s text %s} %f %f {%.*s} %d %s\n", - canvas, x->x_tag, rtext_gettype(x)->s_name, - (glist_isselected(x->x_glist, ((t_gobj*)x->x_text)) ? "selected" : ""), - dispx + LMARGIN, dispy + TMARGIN, - outchars_b, tempbuf, sys_hostfontsize(font), - (glist_isselected(x->x_glist, ((t_gobj*)x->x_text)) ? "$pd_colors(selection)" : "$pd_colors(text)")); + //sys_vgui("pdtk_text_new .x%lx.c {%s %s text %s} %f %f {%.*s} %d %s\n", + // canvas, x->x_tag, rtext_gettype(x)->s_name, + // (glist_isselected(x->x_glist, ((t_gobj*)x->x_text)) ? "selected" : ""), + // dispx + LMARGIN, dispy + TMARGIN, + // outchars_b, tempbuf, sys_hostfontsize(font), + // (glist_isselected(x->x_glist, ((t_gobj*)x->x_text)) ? "$pd_colors(selection)" : "$pd_colors(text)")); gui_vmess("gui_text_new", "sssiiisi", - canvas_string(canvas), x->x_tag, rtext_gettype(x)->s_name, + canvas_tag(canvas), x->x_tag, rtext_gettype(x)->s_name, glist_isselected(x->x_glist, ((t_gobj*)x->x_text)), LMARGIN, TMARGIN, @@ -375,9 +375,9 @@ static void rtext_senditup(t_rtext *x, int action, int *widthp, int *heightp, } else if (action == SEND_UPDATE) { - sys_vgui("pdtk_text_set .x%lx.c %s {%.*s}\n", - canvas, x->x_tag, outchars_b, tempbuf); - gui_vmess("gui_text_set", "sss", canvas_string(canvas), x->x_tag, tempbuf); + //sys_vgui("pdtk_text_set .x%lx.c %s {%.*s}\n", + // canvas, x->x_tag, outchars_b, tempbuf); + gui_vmess("gui_text_set", "sss", canvas_tag(canvas), x->x_tag, tempbuf); if (pixwide != x->x_drawnwidth || pixhigh != x->x_drawnheight) text_drawborder(x->x_text, x->x_glist, x->x_tag, diff --git a/pd/src/g_scalar.c b/pd/src/g_scalar.c index baebc17ae..cc4616c7c 100644 --- a/pd/src/g_scalar.c +++ b/pd/src/g_scalar.c @@ -426,13 +426,13 @@ void scalar_drawselectrect(t_scalar *x, t_glist *glist, int state) x1--; x2++; y1--; y2++; if (glist_istoplevel(glist)) { - sys_vgui(".x%lx.c create prect %d %d %d %d " - "-strokewidth 1 -stroke $pd_colors(selection) " - "-tags {select%lx selected}\n", - glist_getcanvas(glist), x1, y1, x2, y2, - x); + //sys_vgui(".x%lx.c create prect %d %d %d %d " + // "-strokewidth 1 -stroke $pd_colors(selection) " + // "-tags {select%lx selected}\n", + // glist_getcanvas(glist), x1, y1, x2, y2, + // x); gui_vmess("gui_scalar_draw_select_rect", "ssiiiiiff", - canvas_string(glist_getcanvas(glist)), tagbuf, + canvas_tag(glist_getcanvas(glist)), tagbuf, state, x1, y1, x2, y2, basex, basey); } @@ -440,11 +440,13 @@ void scalar_drawselectrect(t_scalar *x, t_glist *glist, int state) else { if (glist_istoplevel(glist)) - sys_vgui(".x%lx.c delete select%lx\n", glist_getcanvas(glist), x); - gui_vmess("gui_scalar_draw_select_rect", "ssiiiiiii", - canvas_string(glist_getcanvas(glist)), tagbuf, - state, - 0, 0, 0, 0, 0, 0); + { + //sys_vgui(".x%lx.c delete select%lx\n", glist_getcanvas(glist), x); + gui_vmess("gui_scalar_draw_select_rect", "ssiiiiiii", + canvas_tag(glist_getcanvas(glist)), tagbuf, + state, + 0, 0, 0, 0, 0, 0); + } } } @@ -485,7 +487,7 @@ void scalar_select(t_gobj *z, t_glist *owner, int state) sys_vgui(".x%lx.c addtag scalar_selected withtag {.scalar%lx}\n", glist_getcanvas(owner), x->sc_vec); gui_vmess("gui_text_select", "ss", - canvas_string(glist_getcanvas(owner)), tagbuf); + canvas_tag(glist_getcanvas(owner)), tagbuf); } else { @@ -495,7 +497,7 @@ void scalar_select(t_gobj *z, t_glist *owner, int state) sys_vgui(".x%lx.c dtag .scalar%lx scalar_selected\n", glist_getcanvas(owner), x->sc_vec); gui_vmess("gui_text_deselect", "ss", - canvas_string(glist_getcanvas(owner)), tagbuf); + canvas_tag(glist_getcanvas(owner)), tagbuf); } //sys_vgui("pdtk_select_all_gop_widgets .x%lx %lx %d\n", // glist_getcanvas(owner), owner, state); @@ -646,7 +648,7 @@ static void scalar_group_configure(t_scalar *x, t_glist *owner, sprintf(parentbuf, "dgroup%lx.%lx", (long unsigned int)parent, (long unsigned int)x->sc_vec); gui_start_vmess("gui_draw_configure_all", "ss", - canvas_string(glist_getcanvas(owner)), tagbuf); + canvas_tag(glist_getcanvas(owner)), tagbuf); svg_grouptogui(gl, template, x->sc_vec); gui_end_vmess(); for (y = gl->gl_list; y; y = y->g_next) @@ -685,7 +687,7 @@ void scalar_configure(t_scalar *x, t_glist *owner) char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "scalar%lx", (long unsigned int)x->sc_vec); gui_vmess("gui_scalar_configure_gobj", "ssiffffii", - canvas_string(glist_getcanvas(owner)), + canvas_tag(glist_getcanvas(owner)), tagbuf, glist_isselected(owner, &x->sc_gobj), xscale, 0.0, 0.0, yscale, @@ -702,7 +704,7 @@ void scalar_configure(t_scalar *x, t_glist *owner) //sprintf(groupbuf, "dgroup%lx.%lx", (long unsigned int)templatecanvas, // (long unsigned int)x->sc_vec); //gui_vmess("gui_create_scalar_group", "sss", - // canvas_string(glist_getcanvas(owner)), groupbuf, tagbuf); + // canvas_tag(glist_getcanvas(owner)), groupbuf, tagbuf); //sys_vgui("pdtk_bind_scalar_mouseover " // ".x%lx.c .x%lx.x%lx.template%lx {.x%lx}\n", // glist_getcanvas(owner), glist_getcanvas(owner), @@ -744,10 +746,10 @@ static void scalar_groupvis(t_scalar *x, t_glist *owner, t_template *template, t_gobj *y; if (vis) { - sys_vgui(".x%lx.c create group -tags {.dgroup%lx.%lx} " - "-parent {.dgroup%lx.%lx}\\\n", - glist_getcanvas(owner), gl, x->sc_vec, - parent, x->sc_vec); + //sys_vgui(".x%lx.c create group -tags {.dgroup%lx.%lx} " + // "-parent {.dgroup%lx.%lx}\\\n", + // glist_getcanvas(owner), gl, x->sc_vec, + // parent, x->sc_vec); char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "dgroup%lx.%lx", (long unsigned int)gl, (long unsigned int)x->sc_vec); @@ -755,7 +757,7 @@ static void scalar_groupvis(t_scalar *x, t_glist *owner, t_template *template, sprintf(parentbuf, "dgroup%lx.%lx", (long unsigned int)parent, (long unsigned int)x->sc_vec); gui_start_vmess("gui_create_scalar_group", "sss", - canvas_string(glist_getcanvas(owner)), tagbuf, parentbuf); + canvas_tag(glist_getcanvas(owner)), tagbuf, parentbuf); svg_grouptogui(gl, template, x->sc_vec); gui_end_vmess(); //sys_gui("\n"); @@ -849,26 +851,26 @@ static void scalar_vis(t_gobj *z, t_glist *owner, int vis) To fix these, we set the correct fill/stroke/strokelinjoin options here on the .scalar%lx group. (Notice also that tkpath doesn't understand "None"-- instead we must send an empty symbol.) */ - sys_vgui(".x%lx.c create group -tags {.scalar%lx %s} " - "-matrix { {%g %g} {%g %g} {%d %d} } " - "-stroke \"\" -fill black -strokelinejoin miter\n", - glist_getcanvas(owner), x->sc_vec, - (glist_isselected(owner, &x->sc_gobj) ? "scalar_selected" : ""), - xscale, 0.0, 0.0, yscale, (int)glist_xtopixels(owner, basex), - (int)glist_ytopixels(owner, basey) - ); + //sys_vgui(".x%lx.c create group -tags {.scalar%lx %s} " + // "-matrix { {%g %g} {%g %g} {%d %d} } " + // "-stroke \"\" -fill black -strokelinejoin miter\n", + // glist_getcanvas(owner), x->sc_vec, + // (glist_isselected(owner, &x->sc_gobj) ? "scalar_selected" : ""), + // xscale, 0.0, 0.0, yscale, (int)glist_xtopixels(owner, basex), + // (int)glist_ytopixels(owner, basey) + // ); char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "scalar%lx", (long unsigned int)x->sc_vec); gui_vmess("gui_create_scalar", "ssiffffii", - canvas_string(glist_getcanvas(owner)), + canvas_tag(glist_getcanvas(owner)), tagbuf, glist_isselected(owner, &x->sc_gobj), xscale, 0.0, 0.0, yscale, (int)glist_xtopixels(owner, basex), (int)glist_ytopixels(owner, basey)); - sys_vgui(".x%lx.c create group -tags {.dgroup%lx.%lx} " - "-parent {.scalar%lx}\n", - glist_getcanvas(owner), templatecanvas, x->sc_vec, x->sc_vec); + //sys_vgui(".x%lx.c create group -tags {.dgroup%lx.%lx} " + // "-parent {.scalar%lx}\n", + // glist_getcanvas(owner), templatecanvas, x->sc_vec, x->sc_vec); char groupbuf[MAXPDSTRING]; // Quick hack to make gui_create_scalar_group more general (so we // don't have to tack on "gobj" manually) @@ -876,7 +878,8 @@ static void scalar_vis(t_gobj *z, t_glist *owner, int vis) sprintf(groupbuf, "dgroup%lx.%lx", (long unsigned int)templatecanvas, (long unsigned int)x->sc_vec); gui_vmess("gui_create_scalar_group", "sss", - canvas_string(glist_getcanvas(owner)), groupbuf, tagbuf); + canvas_tag(glist_getcanvas(owner)), groupbuf, tagbuf); + sys_vgui("pdtk_bind_scalar_mouseover " ".x%lx.c .x%lx.x%lx.template%lx {.x%lx}\n", glist_getcanvas(owner), glist_getcanvas(owner), @@ -904,12 +907,12 @@ static void scalar_vis(t_gobj *z, t_glist *owner, int vis) } if (!vis) { - sys_vgui(".x%lx.c delete .scalar%lx\n", glist_getcanvas(owner), - x->sc_vec); + //sys_vgui(".x%lx.c delete .scalar%lx\n", glist_getcanvas(owner), + // x->sc_vec); char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "scalar%lx", (long unsigned int)x->sc_vec); gui_vmess("gui_scalar_erase", "ss", - canvas_string(glist_getcanvas(owner)), tagbuf); + canvas_tag(glist_getcanvas(owner)), tagbuf); } sys_unqueuegui(x); diff --git a/pd/src/g_slider.c b/pd/src/g_slider.c index 0a615569f..09167f16b 100644 --- a/pd/src/g_slider.c +++ b/pd/src/g_slider.c @@ -33,19 +33,15 @@ static void slider_draw_update(t_gobj *client, t_glist *glist) r=y2-3 - (x->x_val+50)/100; //sys_vgui(".x%lx.c coords %lxKNOB %d %d %d %d\n", // canvas, x, x1+2, r, x2-2, r); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_slider_update", "ssiiiiii", - canvas_string(canvas), tagbuf, x1+2, r, x2-2, r, + canvas_tag(canvas), gobj_tag(x), x1+2, r, x2-2, r, x1, y1); } else { r=x1+3 + (x->x_val+50)/100; //sys_vgui(".x%lx.c coords %lxKNOB %d %d %d %d\n", // canvas, x, r, y1+2, r, y2-2); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_slider_update", "ssiiiiii", - canvas_string(canvas), tagbuf, r, y1+2, r, y2-2, + canvas_tag(canvas), gobj_tag(x), r, y1+2, r, y2-2, x1, y1); } int t = x->x_thick; @@ -74,21 +70,19 @@ static void slider_draw_new(t_slider *x, t_glist *glist) //sys_vgui(".x%lx.c create polyline %d %d %d %d -strokewidth 3 " // "-stroke #%6.6x -tags {%lxKNOB x%lx text iemgui}\n", // canvas, x1+2, r, x2-2, r, x->x_gui.x_fcol, x, x); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", x->x_gui.x_fcol); - gui_vmess("gui_create_slider", "sssiiiiii", canvas_string(canvas), tagbuf, + gui_vmess("gui_create_slider", "sssiiiiii", + canvas_tag(canvas), gobj_tag(x), colorbuf, x1+2, r, x2-2, r, x1, y1); } else { //sys_vgui(".x%lx.c create polyline %d %d %d %d -strokewidth 3 " // "-stroke #%6.6x -tags {%lxKNOB x%lx text iemgui}\n", // canvas, r, y1+2, r, y2-2, x->x_gui.x_fcol, x, x); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", x->x_gui.x_fcol); - gui_vmess("gui_create_slider", "sssiiiiii", canvas_string(canvas), tagbuf, + gui_vmess("gui_create_slider", "sssiiiiii", + canvas_tag(canvas), gobj_tag(x), colorbuf, r, y1+2, r, y2-2, x1, y1); } } @@ -108,20 +102,16 @@ static void slider_draw_move(t_slider *x, t_glist *glist) { //sys_vgui(".x%lx.c coords %lxKNOB %d %d %d %d\n", // canvas, x, x1+2, r, x2-2, r); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_slider_update", "ssiiiiii", - canvas_string(canvas), tagbuf, + canvas_tag(canvas), gobj_tag(x), x1+2, r, x2-2, r, x1, y1); } else { //sys_vgui(".x%lx.c coords %lxKNOB %d %d %d %d\n", // canvas, x, r, y1+2, r, y2-2); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_slider_update", "ssiiiiii", - canvas_string(canvas), tagbuf, + canvas_tag(canvas), gobj_tag(x), r, y1+2, r, y2-2, x1, y1); } } @@ -132,12 +122,10 @@ static void slider_draw_config(t_slider *x, t_glist *glist) iemgui_base_draw_config(&x->x_gui); //sys_vgui(".x%lx.c itemconfigure %lxKNOB -stroke #%6.6x\n", // canvas, x, x->x_gui.x_fcol); - char tagbuf[MAXPDSTRING]; char colorbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); sprintf(colorbuf, "#%6.6x", x->x_gui.x_fcol); gui_vmess("gui_slider_indicator_color", "sss", - canvas_string(canvas), tagbuf, colorbuf); + canvas_tag(canvas), gobj_tag(x), colorbuf); } void slider_check_minmax(t_slider *x, double min, double max); diff --git a/pd/src/g_template.c b/pd/src/g_template.c index bb7a21526..bf5bdf153 100644 --- a/pd/src/g_template.c +++ b/pd/src/g_template.c @@ -1502,7 +1502,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, //sys_vgui(".x%lx.c itemconfigure %s -fill %s\n", // glist_getcanvas(c), tag, fill->s_name); gui_vmess("gui_draw_configure", "ssss", - canvas_string(glist_getcanvas(c)), tag, s->s_name, fill->s_name); + canvas_tag(glist_getcanvas(c)), tag, s->s_name, fill->s_name); } else if (s == gensym("stroke")) { @@ -1521,14 +1521,14 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, //sys_vgui(".x%lx.c itemconfigure %s -stroke %s\n", // glist_getcanvas(c), tag, stroke->s_name); gui_vmess("gui_draw_configure", "ssss", - canvas_string(glist_getcanvas(c)), tag, s->s_name, stroke->s_name); + canvas_tag(glist_getcanvas(c)), tag, s->s_name, stroke->s_name); } else if (s == gensym("fill-opacity")) //sys_vgui(".x%lx.c itemconfigure %s -fillopacity %g\n", // glist_getcanvas(c), tag, // fielddesc_getcoord(&x->x_fillopacity.a_attr, template, data, 1)); gui_vmess("gui_draw_configure", "sssf", - canvas_string(glist_getcanvas(c)), tag, "fill-opacity", + canvas_tag(glist_getcanvas(c)), tag, "fill-opacity", fielddesc_getcoord(&x->x_fillopacity.a_attr, template, data, 1)); else if (s == gensym("fill-rule")) //sys_vgui(".x%lx.c itemconfigure %s -fillrule %s\n", @@ -1536,7 +1536,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, // &x->x_fillrule.a_attr, template, data, 1) ? // "evenodd" : "nonzero"); gui_vmess("gui_draw_configure", "sssi", - canvas_string(glist_getcanvas(c)), tag, "fill-rule", (int)fielddesc_getcoord( + canvas_tag(glist_getcanvas(c)), tag, "fill-rule", (int)fielddesc_getcoord( &x->x_fillrule.a_attr, template, data, 1) ? "evenodd" : "nonzero"); else if (s == gensym("pointer-events")) @@ -1547,7 +1547,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, // (int)fielddesc_getcoord(&x->x_strokelinecap.a_attr, // template, data, 1))); gui_vmess("gui_draw_configure", "ssss", - canvas_string(glist_getcanvas(c)), tag, "stroke-linecap", get_strokelinecap( + canvas_tag(glist_getcanvas(c)), tag, "stroke-linecap", get_strokelinecap( (int)fielddesc_getcoord(&x->x_strokelinecap.a_attr, template, data, 1))); else if (s == gensym("stroke-linejoin")) @@ -1556,7 +1556,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, // (int)fielddesc_getcoord(&x->x_strokelinejoin.a_attr, // template, data, 1))); gui_vmess("gui_draw_configure", "ssss", - canvas_string(glist_getcanvas(c)), tag, "stroke-linejoin", get_strokelinejoin( + canvas_tag(glist_getcanvas(c)), tag, "stroke-linejoin", get_strokelinejoin( (int)fielddesc_getcoord(&x->x_strokelinejoin.a_attr, template, data, 1))); else if (s == gensym("stroke-miterlimit")) @@ -1564,14 +1564,14 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, // glist_getcanvas(c), tag, fielddesc_getcoord( // &x->x_strokemiterlimit.a_attr, template, data, 1)); gui_vmess("gui_draw_configure", "sssf", - canvas_string(glist_getcanvas(c)), tag, "stroke-miterlimit", fielddesc_getcoord( + canvas_tag(glist_getcanvas(c)), tag, "stroke-miterlimit", fielddesc_getcoord( &x->x_strokemiterlimit.a_attr, template, data, 1)); else if (s == gensym("stroke-opacity")) //sys_vgui(".x%lx.c itemconfigure %s -strokeopacity %g\n", // glist_getcanvas(c), tag, fielddesc_getcoord( // &x->x_strokeopacity.a_attr, template, data, 1)); gui_vmess("gui_draw_configure", "sssg", - canvas_string(glist_getcanvas(c)), tag, "stroke-opacity", fielddesc_getcoord( + canvas_tag(glist_getcanvas(c)), tag, "stroke-opacity", fielddesc_getcoord( &x->x_strokeopacity.a_attr, template, data, 1)); else if (s == gensym("stroke-width")) { @@ -1579,7 +1579,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, // glist_getcanvas(c), tag, fielddesc_getcoord( // &x->x_strokewidth.a_attr, template, data, 1)); gui_vmess("gui_draw_configure", "sssf", - canvas_string(glist_getcanvas(c)), tag, "stroke-width", fielddesc_getcoord( + canvas_tag(glist_getcanvas(c)), tag, "stroke-width", fielddesc_getcoord( &x->x_strokewidth.a_attr, template, data, 1)); *predraw_bbox = 1; } @@ -1590,7 +1590,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, //fielddesc_getcoord(x->x_vec+2, template, data, 1), //fielddesc_getcoord(x->x_vec+2, template, data, 1)); gui_vmess("gui_draw_configure", "sssf", - canvas_string(glist_getcanvas(c)), tag, s->s_name, + canvas_tag(glist_getcanvas(c)), tag, s->s_name, fielddesc_getcoord(x->x_vec+2, template, data, 1)); *predraw_bbox = 1; } @@ -1601,7 +1601,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, // glist_getcanvas(c), tag, (int)fielddesc_getcoord( // &x->x_rx.a_attr, template, data, 1)); gui_vmess("gui_draw_configure", "sssi", - canvas_string(glist_getcanvas(c)), tag, s->s_name, (int)fielddesc_getcoord( + canvas_tag(glist_getcanvas(c)), tag, s->s_name, (int)fielddesc_getcoord( &x->x_rx.a_attr, template, data, 1)); else { @@ -1609,7 +1609,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, // glist_getcanvas(c), tag, fielddesc_getcoord( // x->x_vec+2, template, data, 1)); gui_vmess("gui_draw_configure", "sssf", - canvas_string(glist_getcanvas(c)), tag, s->s_name, fielddesc_getcoord( + canvas_tag(glist_getcanvas(c)), tag, s->s_name, fielddesc_getcoord( x->x_vec+2, template, data, 1)); *predraw_bbox = 1; } @@ -1621,7 +1621,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, // glist_getcanvas(c), tag, (int)fielddesc_getcoord( // &x->x_ry.a_attr, template, data, 1)); gui_vmess("gui_draw_configure", "sssi", - canvas_string(glist_getcanvas(c)), tag, s->s_name, (int)fielddesc_getcoord( + canvas_tag(glist_getcanvas(c)), tag, s->s_name, (int)fielddesc_getcoord( &x->x_ry.a_attr, template, data, 1)); else { @@ -1629,7 +1629,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, // glist_getcanvas(c), tag, fielddesc_getcoord( // x->x_vec+3, template, data, 1)); gui_vmess("gui_draw_configure", "sssf", - canvas_string(glist_getcanvas(c)), tag, fielddesc_getcoord( + canvas_tag(glist_getcanvas(c)), tag, fielddesc_getcoord( x->x_vec+3, template, data, 1)); *predraw_bbox = 1; } @@ -1657,7 +1657,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, char mbuf[MAXPDSTRING]; sprintf(mbuf, "matrix(%g %g %g %g %g %g)", m1, m2, m3, m4, m5, m6); gui_vmess("gui_draw_configure", "ssss", - canvas_string(glist_getcanvas(c)), tag, s->s_name, + canvas_tag(glist_getcanvas(c)), tag, s->s_name, mbuf); *predraw_bbox = 1; } @@ -1667,7 +1667,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, // glist_getcanvas(c), tag, (int)fielddesc_getcoord( // &x->x_vis.a_attr, template, data, 1) ? "normal" : "hidden"); gui_vmess("gui_draw_configure", "ssss", - canvas_string(glist_getcanvas(c)), tag, "visibility", (int)fielddesc_getcoord( + canvas_tag(glist_getcanvas(c)), tag, "visibility", (int)fielddesc_getcoord( &x->x_vis.a_attr, template, data, 1) ? "visible" : "hidden"); *predraw_bbox = 1; } @@ -1681,7 +1681,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, //sys_vgui(".x%lx.c itemconfigure %s -strokedasharray {", // glist_getcanvas(c), tag); gui_start_vmess("gui_draw_configure", "sss", - canvas_string(glist_getcanvas(c)), tag, s->s_name); + canvas_tag(glist_getcanvas(c)), tag, s->s_name); gui_start_array(); for (i = 0; i < x->x_ndash; i++) { @@ -1700,7 +1700,7 @@ void svg_sendupdate(t_svg *x, t_canvas *c, t_symbol *s, char tagbuf[MAXPDSTRING]; sprintf(tagbuf, "draw%lx.%lx", (long unsigned int)parent, (long unsigned int)data); gui_start_vmess("gui_draw_configure", "sss", - canvas_string(glist_getcanvas(c)), tagbuf, "d"); + canvas_tag(glist_getcanvas(c)), tagbuf, "d"); /* let's turn off bbox caching so we can recalculate the bbox */ if (x->x_pathrect_cache != -1) x->x_pathrect_cache = 0; @@ -3757,7 +3757,7 @@ void svg_parentwidgettogui(t_gobj *z, t_glist *owner, t_word *data, sprintf(tagbuf, "draw%lx.%lx", (long unsigned int)x, (long unsigned int)data); gui_start_vmess("gui_draw_configure_all", "ss", - canvas_string(glist_getcanvas(owner)), tagbuf); + canvas_tag(glist_getcanvas(owner)), tagbuf); svg_togui((t_svg *)x->x_attr, template, data); gui_end_vmess(); } @@ -3843,7 +3843,7 @@ static void draw_vis(t_gobj *z, t_glist *glist, t_glist *parentglist, arrays) */ //sys_vgui("nn gui_draw_vis \".x%lx\",\"%s\",\"", glist_getcanvas(glist), // sa->x_type->s_name); - gui_start_vmess("gui_draw_vis", "ss", canvas_string(glist_getcanvas(glist)), + gui_start_vmess("gui_draw_vis", "ss", canvas_tag(glist_getcanvas(glist)), sa->x_type->s_name); /* next send the gui drawing arguments: commands and points @@ -4016,7 +4016,7 @@ static void draw_vis(t_gobj *z, t_glist *glist, t_glist *parentglist, char itemtagbuf[MAXPDSTRING]; sprintf(itemtagbuf, "draw%lx.%lx", (long unsigned int)x, (long unsigned int)data); - gui_vmess("gui_draw_erase_item", "ss", canvas_string(glist_getcanvas(glist)), + gui_vmess("gui_draw_erase_item", "ss", canvas_tag(glist_getcanvas(glist)), itemtagbuf); } diff --git a/pd/src/g_text.c b/pd/src/g_text.c index c19bbd42a..ffcca0418 100644 --- a/pd/src/g_text.c +++ b/pd/src/g_text.c @@ -710,7 +710,7 @@ static void message_click(t_message *x, sys_vgui(".x%lx.c itemconfigure %sR -strokewidth 5\n", glist_getcanvas(x->m_glist), rtext_gettag(y)); gui_vmess("gui_message_flash", "ssi", - canvas_string(glist_getcanvas(x->m_glist)), + canvas_tag(glist_getcanvas(x->m_glist)), rtext_gettag(y), 1); clock_delay(x->m_clock, 120); } @@ -724,7 +724,7 @@ static void message_tick(t_message *x) sys_vgui(".x%lx.c itemconfigure %sR -strokewidth 1\n", glist_getcanvas(x->m_glist), rtext_gettag(y)); gui_vmess("gui_message_flash", "ssi", - canvas_string(glist_getcanvas(x->m_glist)), + canvas_tag(glist_getcanvas(x->m_glist)), rtext_gettag(y), 0); } } @@ -1566,7 +1566,7 @@ static void text_select(t_gobj *z, t_glist *glist, int state) glist_getcanvas(glist), rtext_gettag(y), (state? "$pd_colors(selection)" : outline)); gui_vmess("gui_text_select_color", "ss", - canvas_string(glist_getcanvas(glist)), rtext_gettag(y)); + canvas_tag(glist_getcanvas(glist)), rtext_gettag(y)); if (z->g_pd == gatom_class) { sys_vgui(".x%lx.c itemconfigure %lx.l -fill %s\n", @@ -1587,7 +1587,7 @@ static void text_select(t_gobj *z, t_glist *glist, int state) sys_vgui(".x%lx.c addtag selected withtag %sR \n", glist_getcanvas(glist), rtext_gettag(y)); gui_vmess("gui_text_select", "ss", - canvas_string(glist_getcanvas(glist)), rtext_gettag(y)); + canvas_tag(glist_getcanvas(glist)), rtext_gettag(y)); if (pd_class(&x->te_pd) == text_class && x->te_type != T_TEXT && glist_istoplevel(glist)) sys_vgui(".x%lx.c itemconfigure %sR -strokewidth 1 -strokedasharray {} " @@ -1619,7 +1619,7 @@ static void text_select(t_gobj *z, t_glist *glist, int state) sys_vgui(".x%lx.c dtag %sR selected\n", glist_getcanvas(glist), rtext_gettag(y)); gui_vmess("gui_text_deselect", "ss", - canvas_string(glist_getcanvas(glist)), + canvas_tag(glist_getcanvas(glist)), rtext_gettag(y)); if (pd_class(&x->te_pd) == text_class && x->te_type != T_TEXT) @@ -1693,7 +1693,7 @@ static void text_vis(t_gobj *z, t_glist *glist, int vis) // make a group text_getrect(&x->te_g, glist, &x1, &y1, &x2, &y2); gui_vmess("gui_text_create_gobj", "ssii", - canvas_string(glist), rtext_gettag(y), x1, y1); + canvas_tag(glist), rtext_gettag(y), x1, y1); if (x->te_type == T_ATOM) glist_retext(glist, x); @@ -1913,7 +1913,7 @@ void glist_drawiofor(t_glist *glist, t_object *ob, int firsttime, gui_vmess("gui_canvas_drawio", "sssiiiiiisiii", - canvas_string(glist_getcanvas(glist)), rtext_gettag(y), tag, + canvas_tag(glist_getcanvas(glist)), rtext_gettag(y), tag, onset, y2 - 2, onset + IOWIDTH, y2, x1, y1, "o", i, issignal, 0); } @@ -1953,7 +1953,7 @@ void glist_drawiofor(t_glist *glist, t_object *ob, int firsttime, // (issignal ? "signal" : "control"), // (selected ? "selected" : "")); gui_vmess("gui_canvas_drawio", "sssiiiiiisiii", - canvas_string(glist_getcanvas(glist)), rtext_gettag(y), tag, + canvas_tag(glist_getcanvas(glist)), rtext_gettag(y), tag, onset, y1, onset + IOWIDTH, y1 + EXTRAPIX, x1, y1, "i", i, issignal, 0); } @@ -2111,7 +2111,7 @@ void text_drawborder(t_text *x, t_glist *glist, (selected ? "selected" : "")); */ gui_vmess("gui_text_drawborder", "ssiiiii", - canvas_string(glist_getcanvas(glist)), tag, broken, x1, y1, x2, y2); + canvas_tag(glist_getcanvas(glist)), tag, broken, x1, y1, x2, y2); //-dash %s -> pattern disabled for tkpath } @@ -2123,7 +2123,7 @@ void text_drawborder(t_text *x, t_glist *glist, glist_getcanvas(glist), tag, x1, y1, x2, y1, x2, y2, x1, y2, x1, y1); gui_vmess("gui_text_redraw_border", "ssiiii", - canvas_string(glist_getcanvas(glist)), tag, x1, y1, x2, y2); + canvas_tag(glist_getcanvas(glist)), tag, x1, y1, x2, y2); /* this seems to be totally extraneous hans@at.or.at sys_vgui(".x%lx.c itemconfigure %sR -dash %s -outline %s\n", glist_getcanvas(glist), tag, pattern, outline); */ @@ -2148,7 +2148,7 @@ void text_drawborder(t_text *x, t_glist *glist, // coords are a quick hack to separate gobj's x/y from the polygon's coords // which of course can be greatly simplified gui_vmess("gui_message_drawborder", "ssii", - canvas_string(glist_getcanvas(glist)), tag, x2 - x1, y2 - y1); + canvas_tag(glist_getcanvas(glist)), tag, x2 - x1, y2 - y1); // x1-x1, y1-y1, x2+4-x1, y1-y1, x2-x1, // y1+4-y1, x2-x1, y2-4-y1, x2+4-x1, y2-y1, x1-x1, y2-y1, x1-x1, y1-y1); } @@ -2160,7 +2160,7 @@ void text_drawborder(t_text *x, t_glist *glist, x1, y1, x2+4, y1, x2, y1+4, x2, y2-4, x2+4, y2, x1, y2, x1, y1); gui_vmess("gui_message_redraw_border", "ssiiiiiiiiiiiiii", - canvas_string(glist_getcanvas(glist)), tag, + canvas_tag(glist_getcanvas(glist)), tag, x1-x1, y1-y1, x2+4-x1, y1-y1, x2-x1, y1+4-y1, x2-x1, y2-4-y1, x2+4-x1, y2-y1, x1-x1, y2-y1, x1-x1, y1-y1); } @@ -2180,7 +2180,7 @@ void text_drawborder(t_text *x, t_glist *glist, tag, tag, (selected ? "selected" : "")); gui_vmess("gui_atom_drawborder", "ssiiiiiiiiiiii", - canvas_string(glist_getcanvas(glist)), tag, + canvas_tag(glist_getcanvas(glist)), tag, x1-x1, y1-y1, x2-4-x1, y1-y1, x2-x1, y1+4-y1, x2-x1, y2-y1, x1-x1, y2-y1, x1-x1, y1-y1); } @@ -2350,7 +2350,7 @@ void glist_eraseiofor(t_glist *glist, t_object *ob, char *tag) void text_erase_gobj(t_text *x, t_glist *glist, char *tag) { if (x->te_type == T_TEXT && !glist->gl_edit) return; - gui_vmess("gui_gobj_erase", "ss", canvas_string(glist_getcanvas(glist)), tag); + gui_vmess("gui_gobj_erase", "ss", canvas_tag(glist_getcanvas(glist)), tag); } void text_eraseborder(t_text *x, t_glist *glist, char *tag) diff --git a/pd/src/g_toggle.c b/pd/src/g_toggle.c index 4cd25d449..6c10974db 100644 --- a/pd/src/g_toggle.c +++ b/pd/src/g_toggle.c @@ -30,12 +30,10 @@ void toggle_draw_update(t_gobj *xgobj, t_glist *glist) // (x->x_on!=0.0)?x->x_gui.x_fcol:x->x_gui.x_bcol); //sys_vgui(".x%lx.c itemconfigure %lxX2 -stroke #%6.6x\n", canvas, x, // (x->x_on!=0.0)?x->x_gui.x_fcol:x->x_gui.x_bcol); - char tagbuf[MAXPDSTRING]; char colorbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); sprintf(colorbuf, "#%6.6x", x->x_gui.x_fcol); - gui_vmess("gui_toggle_update", "ssis", canvas_string(canvas), - tagbuf, x->x_on != 0.0, colorbuf); + gui_vmess("gui_toggle_update", "ssis", canvas_tag(canvas), + gobj_tag(x), x->x_on != 0.0, colorbuf); } x->x_gui.x_changed = 0; } @@ -43,8 +41,7 @@ void toggle_draw_update(t_gobj *xgobj, t_glist *glist) void toggle_draw_new(t_toggle *x, t_glist *glist) { - char tagbuf[MAXPDSTRING], colorbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); + char colorbuf[8]; t_canvas *canvas=glist_getcanvas(glist); int w=(x->x_gui.x_w+29)/30; int x1=text_xpix(&x->x_gui.x_obj, glist); @@ -60,8 +57,8 @@ void toggle_draw_new(t_toggle *x, t_glist *glist) //sys_vgui(".x%lx.c create polyline %d %d %d %d -strokewidth %d " // "-stroke #%6.6x -tags {%lxX2 x%lx text iemgui}\n", // canvas, x1+w+1, y2-w-1, x2-w-1, y1+w+1, w, col, x, x); - gui_vmess("gui_create_toggle", "sssiiiiiiiiiiii", canvas_string(canvas), - tagbuf, colorbuf, w, + gui_vmess("gui_create_toggle", "sssiiiiiiiiiiii", canvas_tag(canvas), + gobj_tag(x), colorbuf, w, (x->x_on != 0.0), x1+w+1, y1+w+1, x2-w-1, y2-w-1, x1+w+1, y2-w-1, x2-w-1, y1+w+1, x1, y1); @@ -81,10 +78,8 @@ void toggle_draw_move(t_toggle *x, t_glist *glist) // canvas, x, x1+s, y1+s, x2-s, y2-s); //sys_vgui(".x%lx.c coords %lxX2 %d %d %d %d\n", // canvas, x, x1+s, y2-s, x2-s, y1+s); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_toggle_resize_cross", "ssiiiiiiiiiii", - canvas_string(canvas), tagbuf, + canvas_tag(canvas), gobj_tag(x), w, x1+s, y1+s, x2-s, y2-s, x1+s, y2-s, x2-s, y1+s, @@ -97,12 +92,10 @@ void toggle_draw_config(t_toggle* x, t_glist* glist) iemgui_base_draw_config(&x->x_gui); //sys_vgui(".x%lx.c itemconfigure {%lxX1||%lxX2} -stroke #%6.6x\n", // canvas, x, x, x->x_on?x->x_gui.x_fcol:x->x_gui.x_bcol); - char tagbuf[MAXPDSTRING]; char colorbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); sprintf(colorbuf, "#%6.6x", x->x_gui.x_fcol); - gui_vmess("gui_toggle_update", "ssis", canvas_string(canvas), - tagbuf, x->x_on != 0.0, colorbuf); + gui_vmess("gui_toggle_update", "ssis", canvas_tag(canvas), + gobj_tag(x), x->x_on != 0.0, colorbuf); } static void toggle__clickhook(t_scalehandle *sh, int newstate) diff --git a/pd/src/g_vumeter.c b/pd/src/g_vumeter.c index adc304f4b..5d338fb9a 100644 --- a/pd/src/g_vumeter.c +++ b/pd/src/g_vumeter.c @@ -77,11 +77,9 @@ static void vu_update_rms(t_vu *x, t_glist *glist) //sys_vgui(".x%lx.c coords %lxRCOVER %d %d %d %d\n", // glist_getcanvas(glist), x, quad1 + 1, off + 2, quad3 + 1, // off + (x->x_led_size + 1) * (IEM_VU_STEPS - x->x_rms) + 2); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_vumeter_update_rms", "ssiiiiii", - canvas_string(glist_getcanvas(glist)), - tagbuf, quad1 + 1, off + 2, quad3 + 1, off + (x->x_led_size + 1) * + canvas_tag(glist_getcanvas(glist)), gobj_tag(x), + quad1 + 1, off + 2, quad3 + 1, off + (x->x_led_size + 1) * (IEM_VU_STEPS - x->x_rms) + 2, x1, y1); } } @@ -103,12 +101,10 @@ static void vu_update_peak(t_vu *x, t_glist *glist) //sys_vgui(".x%lx.c coords %lxPLED %d %d %d %d\n", // canvas, x, x1 + 1, j + 2, x1 + x->x_gui.x_w + 2, j + 2); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", iemgui_color_hex[i]); gui_vmess("gui_vumeter_update_peak", "sssiiiiii", - canvas_string(canvas), tagbuf, colorbuf, + canvas_tag(canvas), gobj_tag(x), colorbuf, x1 + 1, j + 2, x1 + x->x_gui.x_w + 2, j + 2, x1, y1); //sys_vgui(".x%lx.c itemconfigure %lxPLED -stroke #%6.6x\n", @@ -123,13 +119,11 @@ static void vu_update_peak(t_vu *x, t_glist *glist) //sys_vgui(".x%lx.c coords %lxPLED %d %d %d %d\n", // canvas, x, mid+1, y1+22, mid+1, y1+22); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", x->x_gui.x_bcol); gui_vmess("gui_vumeter_update_peak", "sssiiiiii", - canvas_string(canvas), tagbuf, colorbuf, + canvas_tag(canvas), gobj_tag(x), colorbuf, mid+1, y1+22, mid+1, y1+22, x1, y1); } } @@ -171,13 +165,12 @@ static void vu_draw_new(t_vu *x, t_glist *glist) // "-tags {%lxSCALEN %lxSCALE%d x%lx text iemgui}\n", // canvas, end+1, yyy+k3+2, iemgui_vu_scale_str[i/4], // iemgui_font(&x->x_gui), x->x_gui.x_lcol, x, x, i, x); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", x->x_gui.x_lcol); // not handling font size yet - gui_vmess("gui_create_vumeter_text", "sssiisiii", canvas_string(canvas), - tagbuf, colorbuf, end+1, yyy+k3+2, iemgui_vu_scale_str[i/4], + gui_vmess("gui_create_vumeter_text", "sssiisiii", + canvas_tag(canvas), gobj_tag(x), + colorbuf, end+1, yyy+k3+2, iemgui_vu_scale_str[i/4], i, x1, y1); } led_col = iemgui_vu_col[i]; @@ -188,12 +181,10 @@ static void vu_draw_new(t_vu *x, t_glist *glist) //"-tags {%lxRLED%d x%lx text iemgui}\n", //canvas, quad1+1, yyy+2, quad3, yyy+2, //x->x_led_size, iemgui_color_hex[led_col], x, i, x); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", iemgui_color_hex[led_col]); gui_vmess("gui_create_vumeter_steps", "sssiiiiiiiii", - canvas_string(canvas), tagbuf, colorbuf, quad1+1, + canvas_tag(canvas), gobj_tag(x), colorbuf, quad1+1, yyy+2, quad3, yyy+2, x->x_led_size, index, x1, y1, i); } } @@ -201,20 +192,20 @@ static void vu_draw_new(t_vu *x, t_glist *glist) // "-stroke #%6.6x -tags {%lxRCOVER x%lx text iemgui}\n", // canvas, quad1+1, y1+1, quad3, y1+1 + k1*IEM_VU_STEPS, // x->x_gui.x_bcol, x->x_gui.x_bcol, x, x); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); char colorbuf[MAXPDSTRING]; sprintf(colorbuf, "#%6.6x", x->x_gui.x_bcol); - gui_vmess("gui_create_vumeter_rect", "sssiiiiii", canvas_string(canvas), - tagbuf, colorbuf, quad1+1, y1+1, quad3, y1+1 + k1*IEM_VU_STEPS, x1, y1); + gui_vmess("gui_create_vumeter_rect", "sssiiiiii", + canvas_tag(canvas), gobj_tag(x), + colorbuf, quad1+1, y1+1, quad3, y1+1 + k1*IEM_VU_STEPS, x1, y1); //sys_vgui(".x%lx.c create polyline %d %d %d %d " // "-strokewidth %d -fill #%6.6x " // "-tags {%lxPLED x%lx text iemgui}\n", // canvas, mid+1, y1+12, // mid+1, y1+12, x->x_led_size, x->x_gui.x_bcol, x, x); sprintf(colorbuf, "#%6.6x", x->x_gui.x_bcol); - gui_vmess("gui_create_vumeter_peak", "sssiiiiiii", canvas_string(canvas), - tagbuf, colorbuf, mid+1, y1+12, mid+1, y1+12, x->x_led_size, x1, y1); + gui_vmess("gui_create_vumeter_peak", "sssiiiiiii", + canvas_tag(canvas), gobj_tag(x), + colorbuf, mid+1, y1+12, mid+1, y1+12, x->x_led_size, x1, y1); x->x_updaterms = x->x_updatepeak = 1; sys_queuegui(x, x->x_gui.x_glist, vu_draw_update); } @@ -234,29 +225,23 @@ static void vu_draw_move(t_vu *x, t_glist *glist) //sys_vgui(".x%lx.c coords %lxBASE %d %d %d %d\n", // canvas, x, x1, y1, x1+x->x_gui.x_w+2,y1+x->x_gui.x_h+4); - char tagbuffer[MAXPDSTRING]; - sprintf(tagbuffer, "x%lx", (long unsigned int)x); gui_vmess("gui_vumeter_border_coords", "ssii", - canvas_string(canvas), tagbuffer, x->x_gui.x_w+2, x->x_gui.x_h+4); + canvas_tag(canvas), gobj_tag(x), x->x_gui.x_w+2, x->x_gui.x_h+4); for(i=1; i<=IEM_VU_STEPS; i++) { yyy = k4 + k1*(k2-i); //sys_vgui(".x%lx.c coords %lxRLED%d %d %d %d %d\n", // canvas, x, i, quad1+1, yyy+2, quad3, yyy+2); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_update_vumeter_step_coords", "ssiiiiiii", - canvas_string(canvas), tagbuf, i, quad1+1, yyy+2, quad3, yyy+2, + canvas_tag(canvas), gobj_tag(x), i, quad1+1, yyy+2, quad3, yyy+2, x1, y1); // if(((i+2)&3) && (x->x_scale)) if((i&3)==1 && (x->x_scale)) { //sys_vgui(".x%lx.c coords %lxSCALE%d %d %d\n", // canvas, x, i, end+1, yyy+k3+2); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_vumeter_text_coords", "ssiiiii", - canvas_string(canvas), tagbuf, i, + canvas_tag(canvas), gobj_tag(x), i, end+1, yyy+k3+2, x1, y1); } } @@ -266,10 +251,8 @@ static void vu_draw_move(t_vu *x, t_glist *glist) yyy = k4 + k1*(k2-i); //sys_vgui(".x%lx.c coords %lxSCALE%d %d %d\n", // canvas, x, i, end+1, yyy+k3+2); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_vumeter_text_coords", "ssiiiii", - canvas_string(canvas), tagbuf, i, + canvas_tag(canvas), gobj_tag(x), i, end+1, yyy+k3+2, x1, y1); } x->x_updaterms = x->x_updatepeak = 1; @@ -287,10 +270,8 @@ static void vu_draw_config(t_vu* x, t_glist* glist) { //sys_vgui(".x%lx.c itemconfigure %lxRLED%d -strokewidth %d\n", // canvas, x, i, x->x_led_size); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_update_vumeter_steps", "ssii", - canvas_string(canvas), tagbuf, i, x->x_led_size); + canvas_tag(canvas), gobj_tag(x), i, x->x_led_size); } //if((i&3)==1) if((i&3)==1) @@ -302,10 +283,8 @@ static void vu_draw_config(t_vu* x, t_glist* glist) int isselected = x->x_gui.x_selected == canvas && x->x_gui.x_glist == canvas && x->x_scale; - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_update_vumeter_text", "ssssisi", - canvas_string(canvas), tagbuf, iemgui_vu_scale_str[i/4], + canvas_tag(canvas), gobj_tag(x), iemgui_vu_scale_str[i/4], iemgui_font(&x->x_gui), isselected, lcol, i); } } @@ -313,14 +292,12 @@ static void vu_draw_config(t_vu* x, t_glist* glist) // canvas, x, x->x_gui.x_bcol, x->x_gui.x_bcol); //sys_vgui(".x%lx.c itemconfigure %lxPLED -strokewidth %d\n", // canvas, x, x->x_led_size); - char tagbuf[MAXPDSTRING]; char bcol[8]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); sprintf(bcol, "#%6.6x", x->x_gui.x_bcol); gui_vmess("gui_update_vumeter_rect", "sss", - canvas_string(canvas), tagbuf, bcol); + canvas_tag(canvas), gobj_tag(x), bcol); gui_vmess("gui_update_vumeter_peak", "ssi", - canvas_string(canvas), tagbuf, x->x_led_size); + canvas_tag(canvas), gobj_tag(x), x->x_led_size); iemgui_base_draw_config(&x->x_gui); } @@ -523,18 +500,14 @@ static void vu_scale(t_vu *x, t_floatarg fscale) if((i&3)==1) { //sys_vgui(".x%lx.c delete %lxSCALE%d\n", canvas, x, i); - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); gui_vmess("gui_erase_vumeter_text", "ssi", - canvas_string(canvas), tagbuf, i); + canvas_tag(canvas), gobj_tag(x), i); } } i=IEM_VU_STEPS+1; - char tagbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); sys_vgui(".x%lx.c delete %lxSCALE%d\n", canvas, x, i); gui_vmess("gui_erase_vumeter_text", "ssi", - canvas_string(canvas), tagbuf, i); + canvas_tag(canvas), gobj_tag(x), i); } } if(!x->x_scale && scale) @@ -557,12 +530,10 @@ static void vu_scale(t_vu *x, t_floatarg fscale) // "-font %s -fill #%6.6x -tags {%lxSCALE%d x%lx}\n", // canvas, end+1, yyy+k3+2, iemgui_vu_scale_str[i/4], // iemgui_font(&x->x_gui), x->x_gui.x_lcol, x, i, x); - char tagbuf[MAXPDSTRING]; char colorbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); sprintf(colorbuf, "#%6.6x", x->x_gui.x_lcol); gui_vmess("gui_create_vumeter_text", "sssiisiii", - canvas_string(canvas), tagbuf, colorbuf, + canvas_tag(canvas), gobj_tag(x), colorbuf, end+1, yyy+k3+2, iemgui_vu_scale_str[i/4], i, end, yyy); } @@ -573,12 +544,10 @@ static void vu_scale(t_vu *x, t_floatarg fscale) // "-font %s -fill #%6.6x -tags {%lxSCALE%d x%lx}\n", // canvas, end+1, yyy+k3+2, iemgui_vu_scale_str[i/4], // iemgui_font(&x->x_gui), x->x_gui.x_lcol, x, i, x); - char tagbuf[MAXPDSTRING]; char colorbuf[MAXPDSTRING]; - sprintf(tagbuf, "x%lx", (long unsigned int)x); sprintf(colorbuf, "#%6.6x", x->x_gui.x_lcol); gui_vmess("gui_create_vumeter_text", "sssiisiii", - canvas_string(canvas), tagbuf, colorbuf, + canvas_tag(canvas), gobj_tag(x), colorbuf, end+1, yyy+k3+2, iemgui_vu_scale_str[i/4], i, end, yyy); } diff --git a/pd/src/x_gui.c b/pd/src/x_gui.c index fd09cce3c..364bf29b0 100644 --- a/pd/src/x_gui.c +++ b/pd/src/x_gui.c @@ -253,13 +253,13 @@ static void *openpanel_new( void) return (x); } -extern char *canvas_string(t_canvas *x); +extern char *canvas_tag(t_canvas *x); static void openpanel_symbol(t_openpanel *x, t_symbol *s) { char *path = (s && s->s_name) ? s->s_name : "$pd_opendir"; sys_vgui("pdtk_openpanel {%s} {%s}\n", x->x_s->s_name, path); gui_vmess("gui_openpanel", "sss", - canvas_string(x->x_canvas), + canvas_tag(x->x_canvas), x->x_s->s_name, path); } @@ -319,7 +319,7 @@ static void savepanel_symbol(t_savepanel *x, t_symbol *s) char *path = (s && s->s_name) ? s->s_name : "$pd_opendir"; sys_vgui("pdtk_savepanel {%s} {%s}\n", x->x_s->s_name, path); gui_vmess("gui_savepanel", "sss", - canvas_string(x->x_canvas), + canvas_tag(x->x_canvas), x->x_s->s_name, path); } -- GitLab