Skip to content
Snippets Groups Projects
Commit 3e0abe7e authored by Jonathan Wilkes's avatar Jonathan Wilkes
Browse files

port pddp/helplink to new GUI API

parent 8231fd00
No related branches found
No related tags found
No related merge requests found
......@@ -98,18 +98,22 @@ static void helplink_select(t_gobj *z, t_glist *glist, int state)
rtext_select(y, state);
if (glist_isvisible(glist) && glist->gl_havewindow)
{
if (state) {
sys_vgui(".x%lx.c itemconfigure %s -fill $::pd_colors(selection)\n",
glist, rtext_gettag(y));
sys_vgui(".x%lx.c addtag selected withtag %s\n",
glist, rtext_gettag(y));
} else {
sys_vgui(".x%lx.c itemconfigure %s -text {%s} -fill #0000dd -activefill #e70000\n",
glist, rtext_gettag(y), x->x_vistext);
sys_vgui("pdtk_canvas_getscroll .x%lx.c\n", (t_int)glist_getcanvas(glist));
sys_vgui(".x%lx.c dtag %s selected\n", glist, rtext_gettag(y));
}
}
if (state) {
//sys_vgui(".x%lx.c itemconfigure %s -fill $::pd_colors(selection)\n",
// glist, rtext_gettag(y));
//sys_vgui(".x%lx.c addtag selected withtag %s\n",
// glist, rtext_gettag(y));
gui_vmess("gui_gobj_select", "xs",
glist, rtext_gettag(y));
} else {
//sys_vgui(".x%lx.c itemconfigure %s -text {%s} -fill #0000dd -activefill #e70000\n",
// glist, rtext_gettag(y), x->x_vistext);
//sys_vgui("pdtk_canvas_getscroll .x%lx.c\n", (t_int)glist_getcanvas(glist));
//sys_vgui(".x%lx.c dtag %s selected\n", glist, rtext_gettag(y));
gui_vmess("gui_gobj_deselect", "xs",
glist, rtext_gettag(y));
}
}
}
static void helplink_activate(t_gobj *z, t_glist *glist, int state)
......@@ -118,6 +122,13 @@ static void helplink_activate(t_gobj *z, t_glist *glist, int state)
t_rtext *y = glist_findrtext(glist, (t_text *)x);
rtext_activate(y, state);
x->x_rtextactive = state;
if (!state) {
/* Big workaround... see comment in pddplink.c */
t_binbuf *b = binbuf_new();
t_binbuf *old = x->x_ob.te_binbuf;
x->x_ob.te_binbuf = b;
binbuf_free(old);
}
}
static void helplink_vis(t_gobj *z, t_glist *glist, int vis)
......@@ -129,16 +140,32 @@ static void helplink_vis(t_gobj *z, t_glist *glist, int vis)
if ((glist->gl_havewindow || x->x_isgopvisible)
&& (y = glist_findrtext(glist, (t_text *)x)))
{
gui_vmess("gui_text_create_gobj", "xssiii",
glist_getcanvas(glist),
rtext_gettag(y),
"pd_link",
text_xpix(&x->x_ob, glist_getcanvas(glist)),
text_ypix(&x->x_ob, glist_getcanvas(glist)),
glist_istoplevel(glist));
rtext_draw(y);
sys_vgui(".x%lx.c itemconfigure %s -text {%s} -fill #0000dd -activefill #e70000\n",
glist_getcanvas(glist), rtext_gettag(y), x->x_vistext);
gui_vmess("gui_text_set", "xss",
glist_getcanvas(glist),
rtext_gettag(y),
x->x_vistext);
//sys_vgui(".x%lx.c itemconfigure %s -text {%s} -fill #0000dd -activefill #e70000\n",
// glist_getcanvas(glist), rtext_gettag(y), x->x_vistext);
}
}
else
{
if ((glist->gl_havewindow || x->x_isgopvisible)
&& (y = glist_findrtext(glist, (t_text *)x)))
rtext_erase(y);
{
//rtext_erase(y);
gui_vmess("gui_gobj_erase", "xs",
glist_getcanvas(glist),
rtext_gettag(y));
}
}
}
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment