Update of /cvsroot/pure-data/pd/src In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv20133
Modified Files: Tag: impd_0_37 g_all_guis.c g_all_guis.h g_bang.c g_dropper.c g_hdial.c g_hslider.c g_mycanvas.c g_numbox.c g_toggle.c g_vumeter.c Log Message: replacing iemgui_dodraw() by pd_changed(), and added more bugs.
Index: g_toggle.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/g_toggle.c,v retrieving revision 1.1.1.3.2.2.2.25 retrieving revision 1.1.1.3.2.2.2.26 diff -C2 -d -r1.1.1.3.2.2.2.25 -r1.1.1.3.2.2.2.26 *** g_toggle.c 12 May 2004 10:25:02 -0000 1.1.1.3.2.2.2.25 --- g_toggle.c 13 May 2004 14:37:20 -0000 1.1.1.3.2.2.2.26 *************** *** 39,43 **** { x->x_on = x->x_on?0.0:x->x_nonzero; ! iemgui_dodraw((t_iemgui *)x); toggle_action(x); } --- 39,43 ---- { x->x_on = x->x_on?0.0:x->x_nonzero; ! pd_changed(x); toggle_action(x); } *************** *** 48,52 **** x->x_on=f; if(f) x->x_nonzero=f; ! if (on!=x->x_on) iemgui_dodraw((t_iemgui *)x); }
--- 48,52 ---- x->x_on=f; if(f) x->x_nonzero=f; ! if (on!=x->x_on) pd_changed(x); }
*************** *** 82,86 **** iemgui_constrain(y); if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! if (glist_isvisible(glist_getcanvas(y->x_glist))) iemgui_dodraw((t_iemgui *)x); }
--- 82,86 ---- iemgui_constrain(y); if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! pd_changed(x); }
Index: g_hdial.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/g_hdial.c,v retrieving revision 1.1.1.4.2.2.2.26 retrieving revision 1.1.1.4.2.2.2.27 diff -C2 -d -r1.1.1.4.2.2.2.26 -r1.1.1.4.2.2.2.27 *** g_hdial.c 12 May 2004 10:25:02 -0000 1.1.1.4.2.2.2.26 --- g_hdial.c 13 May 2004 14:37:20 -0000 1.1.1.4.2.2.2.27 *************** *** 44,48 **** if(x->x_on!=old) x->x_on_old = x->x_on; x->x_on = i; ! iemgui_dodraw((t_iemgui *)x); if(x->x_on!=old) x->x_on_old = old; } --- 44,48 ---- if(x->x_on!=old) x->x_on_old = x->x_on; x->x_on = i; ! pd_changed(x); if(x->x_on!=old) x->x_on_old = old; } *************** *** 84,88 **** x->x_on_old = x->x_on; x->x_on = i; ! iemgui_dodraw((t_iemgui *)x); x->x_on_old = x->x_on; radio_send2(x,x->x_on,1.0); --- 84,88 ---- x->x_on_old = x->x_on; x->x_on = i; ! pd_changed(x); x->x_on_old = x->x_on; radio_send2(x,x->x_on,1.0); *************** *** 90,94 **** x->x_on = i; radio_send(x,x->x_on); ! iemgui_dodraw((t_iemgui *)x); x->x_on_old = x->x_on; } --- 90,94 ---- x->x_on = i; radio_send(x,x->x_on); ! pd_changed(x); x->x_on_old = x->x_on; } *************** *** 106,110 **** x->x_on_old = x->x_on; x->x_on = i; ! iemgui_dodraw((t_iemgui *)x); x->x_on_old = x->x_on; if(iemgui_forward(x)) radio_send2(x,x->x_on,1.0); --- 106,110 ---- x->x_on_old = x->x_on; x->x_on = i; ! pd_changed(x); x->x_on_old = x->x_on; if(iemgui_forward(x)) radio_send2(x,x->x_on,1.0); *************** *** 112,116 **** x->x_on = i; if (iemgui_forward(x)) radio_send(x,x->x_on); ! iemgui_dodraw((t_iemgui *)x); x->x_on_old = x->x_on; } --- 112,116 ---- x->x_on = i; if (iemgui_forward(x)) radio_send(x,x->x_on); ! pd_changed(x); x->x_on_old = x->x_on; } *************** *** 125,133 **** CLAMP(n,1,IEM_RADIO_MAX); if(n != x->x_number) { ! x->x_gui.x_draw(x, x->x_gui.x_glist, IEM_GUI_DRAW_MODE_ERASE); x->x_number = n; CLAMP(x->x_on,0,x->x_number-1); x->x_on_old = x->x_on; ! iemgui_dodraw((t_iemgui *)x); } } --- 125,133 ---- CLAMP(n,1,IEM_RADIO_MAX); if(n != x->x_number) { ! sys_mgui(x,"erase",""); x->x_number = n; CLAMP(x->x_on,0,x->x_number-1); x->x_on_old = x->x_on; ! pd_changed(x); } } *************** *** 152,156 **** iemgui_constrain(y); if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! if (glist_isvisible(glist_getcanvas(y->x_glist))) iemgui_dodraw((t_iemgui *)x); }
--- 152,156 ---- iemgui_constrain(y); if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! pd_changed(x); }
Index: g_vumeter.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/g_vumeter.c,v retrieving revision 1.1.1.3.2.2.2.22 retrieving revision 1.1.1.3.2.2.2.23 diff -C2 -d -r1.1.1.3.2.2.2.22 -r1.1.1.3.2.2.2.23 *** g_vumeter.c 12 May 2004 10:35:43 -0000 1.1.1.3.2.2.2.22 --- g_vumeter.c 13 May 2004 14:37:20 -0000 1.1.1.3.2.2.2.23 *************** *** 39,43 **** void vu_draw(t_vu *x, t_glist *glist, int mode) { iemgui_draw((t_iemgui *)x,glist,mode); ! sys_mgui((t_iemgui *)x,"set","ii",x->x_rms,x->x_peak); }
--- 39,43 ---- void vu_draw(t_vu *x, t_glist *glist, int mode) { iemgui_draw((t_iemgui *)x,glist,mode); ! // sys_mgui((t_iemgui *)x,"set","ii",x->x_rms,x->x_peak); }
*************** *** 60,64 ****
static void vu_scale(t_vu *x, t_floatarg fscale) ! {x->x_scale = !!fscale; iemgui_dodraw((t_iemgui *)x);}
static void vu_size(t_vu *x, t_symbol *s, int ac, t_atom *av) --- 60,64 ----
static void vu_scale(t_vu *x, t_floatarg fscale) ! {x->x_scale = !!fscale; pd_changed(x);}
static void vu_size(t_vu *x, t_symbol *s, int ac, t_atom *av) *************** *** 66,73 **** x->x_gui.x_w = iemgui_clip_size((int)atom_getintarg(0, ac, av)); if(ac > 1) vu_check_height(x, (int)atom_getintarg(1, ac, av)); ! if(glist_isvisible(x->x_gui.x_glist)) { ! iemgui_dodraw((t_iemgui *)x); canvas_fixlinesfor(glist_getcanvas(x->x_gui.x_glist), (t_text*)x); - } }
--- 66,72 ---- x->x_gui.x_w = iemgui_clip_size((int)atom_getintarg(0, ac, av)); if(ac > 1) vu_check_height(x, (int)atom_getintarg(1, ac, av)); ! pd_changed(x); ! if(glist_isvisible(x->x_gui.x_glist)) canvas_fixlinesfor(glist_getcanvas(x->x_gui.x_glist), (t_text*)x); }
*************** *** 100,104 **** iemgui_constrain(y); if(y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! if (glist_isvisible(glist_getcanvas(y->x_glist))) iemgui_dodraw((t_iemgui *)x); }
--- 99,103 ---- iemgui_constrain(y); if(y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! pd_changed(x); }
Index: g_all_guis.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/g_all_guis.c,v retrieving revision 1.1.1.4.2.4.2.37 retrieving revision 1.1.1.4.2.4.2.38 diff -C2 -d -r1.1.1.4.2.4.2.37 -r1.1.1.4.2.4.2.38 *** g_all_guis.c 12 May 2004 10:35:42 -0000 1.1.1.4.2.4.2.37 --- g_all_guis.c 13 May 2004 14:37:20 -0000 1.1.1.4.2.4.2.38 *************** *** 31,36 **** t_symbol *s_empty;
- EXTERN void iemgui_dodraw(t_iemgui *x) {x->x_draw(x,x->x_glist, 0);} - /*------------------ global varaibles -------------------------*/
--- 31,34 ---- *************** *** 86,90 **** x->x_snd = canvas_realizedollar(x->x_glist, s); if (x->x_snd==s_empty) x->x_snd=0; ! iemgui_dodraw(x); }
--- 84,88 ---- x->x_snd = canvas_realizedollar(x->x_glist, s); if (x->x_snd==s_empty) x->x_snd=0; ! pd_changed(x); }
*************** *** 103,112 **** x->x_rcv = rcv; } ! if(glist_isvisible(x->x_glist)) iemgui_dodraw(x); }
static void iemgui_label(t_iemgui *x, t_symbol *s) { x->x_lab = s; ! if(glist_isvisible(x->x_glist)) iemgui_dodraw(x); }
--- 101,110 ---- x->x_rcv = rcv; } ! pd_changed(x); }
static void iemgui_label(t_iemgui *x, t_symbol *s) { x->x_lab = s; ! pd_changed(x); }
*************** *** 114,118 **** x->x_ldx = (int)ldx; x->x_ldy = (int)ldy; ! if(glist_isvisible(x->x_glist)) iemgui_dodraw(x); }
--- 112,116 ---- x->x_ldx = (int)ldx; x->x_ldy = (int)ldy; ! pd_changed(x); }
*************** *** 120,129 **** x->x_fontsize = MAX(4,(int)atom_getintarg(1, ac, av)); x->x_font_style = atom_getintarg(0, ac, av); ! if(glist_isvisible(x->x_glist)) iemgui_dodraw(x); }
void iemgui_size(t_iemgui *x) { if(glist_isvisible(x->x_glist)) { ! iemgui_dodraw(x); canvas_fixlinesfor(glist_getcanvas(x->x_glist), (t_text*)x); } --- 118,127 ---- x->x_fontsize = MAX(4,(int)atom_getintarg(1, ac, av)); x->x_font_style = atom_getintarg(0, ac, av); ! pd_changed(x); }
void iemgui_size(t_iemgui *x) { if(glist_isvisible(x->x_glist)) { ! pd_changed(x); canvas_fixlinesfor(glist_getcanvas(x->x_glist), (t_text*)x); } *************** *** 153,157 **** if(ac > 2) x->x_fcol = iemgui_compatible_col(atom_getintarg(i++, ac, av)); x->x_lcol = iemgui_compatible_col(atom_getintarg(i++, ac, av)); ! if(glist_isvisible(x->x_glist)) iemgui_dodraw(x); }
--- 151,155 ---- if(ac > 2) x->x_fcol = iemgui_compatible_col(atom_getintarg(i++, ac, av)); x->x_lcol = iemgui_compatible_col(atom_getintarg(i++, ac, av)); ! pd_changed(x); }
*************** *** 161,170 **** x->x_obj.te_xpix += dx; x->x_obj.te_ypix += dy; ! x->x_draw(z, glist, 0); canvas_fixlinesfor(glist_getcanvas(glist), (t_text *)z); }
void iemgui_select(t_gobj *z, t_glist *glist, int selected) ! {t_iemgui *x = (t_iemgui *)z; sys_vgui("canvas_select_object .x%x %x %d; ",glist,z,selected); x->x_draw(z,glist,0);}
void iemgui_delete(t_gobj *z, t_glist *glist) --- 159,168 ---- x->x_obj.te_xpix += dx; x->x_obj.te_ypix += dy; ! pd_changed(z); canvas_fixlinesfor(glist_getcanvas(glist), (t_text *)z); }
void iemgui_select(t_gobj *z, t_glist *glist, int selected) ! {t_iemgui *x = (t_iemgui *)z; sys_vgui("canvas_select_object .x%x %x %d; ",glist,z,selected); pd_changed(z);}
void iemgui_delete(t_gobj *z, t_glist *glist) *************** *** 173,177 **** void iemgui_vis(t_gobj *z, t_glist *glist, int vis) { t_iemgui *x = (t_iemgui *)z; ! if (vis) x->x_draw(z, glist, 0); else sys_mgui(x,"erase",""); } --- 171,175 ---- void iemgui_vis(t_gobj *z, t_glist *glist, int vis) { t_iemgui *x = (t_iemgui *)z; ! if (vis) pd_changed(z); else sys_mgui(x,"erase",""); } *************** *** 357,364 **** }
! EXTERN void iemgui_draw(t_iemgui *x, t_glist *glist, int mode) { ! /*if (!glist_isvisible(glist_getcanvas(glist))) return; <-- doesn't work because NEW object isn't visible yet */ ! pd_upload((t_gobj *)x,glist); ! sys_mgui(x,"draw",""); }
--- 355,367 ---- }
! EXTERN void iemgui_draw(t_iemgui *self, t_glist *glist, int mode) { ! fprintf(stderr,"self=%08x, self->te_binbuf=%08x\n",self,self->x_obj.te_binbuf); ! if (!self->x_obj.te_binbuf) { ! pd_error(self,"trying to upload without binbuf"); ! return; ! } ! pd_upload((t_gobj *)self,glist); ! //if (!glist_isvisible(glist_getcanvas(glist))) return; /* <-- doesn't really work */ ! sys_mgui(self,"draw",""); }
*************** *** 397,398 **** --- 400,408 ---- return !self->x_snd || !self->x_rcv || self->x_snd != self->x_rcv; } + + /* LATER this will instead maintain a hashtable of objects that should redrawn, + and the scheduler will flush it (or part of it) once in a while... */ + EXTERN void pd_changed (/*t_gobj*/ void *x) { + t_iemgui *self = (t_iemgui *)x; + self->x_draw(self,self->x_glist, 0); + }
Index: g_mycanvas.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/g_mycanvas.c,v retrieving revision 1.1.1.3.2.2.2.17 retrieving revision 1.1.1.3.2.2.2.18 diff -C2 -d -r1.1.1.3.2.2.2.17 -r1.1.1.3.2.2.2.18 *** g_mycanvas.c 12 May 2004 09:13:18 -0000 1.1.1.3.2.2.2.17 --- g_mycanvas.c 13 May 2004 14:37:20 -0000 1.1.1.3.2.2.2.18 *************** *** 30,47 **** static void my_canvas_get_pos(t_my_canvas *x) { ! if(x->x_gui.x_snd && x->x_gui.x_snd->s_thing) ! { ! x->x_at[0].a_w.w_float = text_xpix(&x->x_gui.x_obj, x->x_gui.x_glist); ! x->x_at[1].a_w.w_float = text_ypix(&x->x_gui.x_obj, x->x_gui.x_glist); ! pd_list(x->x_gui.x_snd->s_thing, &s_list, 2, x->x_at); } }
static void my_canvas_size(t_my_canvas *x, t_symbol *s, int ac, t_atom *av) ! { ! int i = (int)atom_getintarg(0, ac, av); ! x->x_gui.x_w = x->x_gui.x_h = MAX(i,1); ! iemgui_size((t_iemgui *)x); ! }
static void my_canvas_vis_size(t_my_canvas *x, t_symbol *s, int ac, t_atom *av) --- 30,43 ---- static void my_canvas_get_pos(t_my_canvas *x) { ! t_iemgui *y = (t_iemgui *)x; ! if(y->x_snd && y->x_snd->s_thing) { ! x->x_at[0].a_w.w_float = text_xpix(&y->x_obj, y->x_glist); ! x->x_at[1].a_w.w_float = text_ypix(&y->x_obj, y->x_glist); ! pd_list(y->x_snd->s_thing, &s_list, 2, x->x_at); } }
static void my_canvas_size(t_my_canvas *x, t_symbol *s, int ac, t_atom *av) ! {x->x_gui.x_w = x->x_gui.x_h = MAX(1,atom_getintarg(0, ac, av)); iemgui_size((t_iemgui *)x);}
static void my_canvas_vis_size(t_my_canvas *x, t_symbol *s, int ac, t_atom *av) *************** *** 49,53 **** x->x_vis_h = x->x_vis_w = MAX(1,(int)atom_getintarg(0, ac, av)); if(ac > 1) x->x_vis_h = MAX(1,(int)atom_getintarg(1, ac, av)); ! if(glist_isvisible(x->x_gui.x_glist)) iemgui_dodraw((t_iemgui *)x); }
--- 45,49 ---- x->x_vis_h = x->x_vis_w = MAX(1,(int)atom_getintarg(0, ac, av)); if(ac > 1) x->x_vis_h = MAX(1,(int)atom_getintarg(1, ac, av)); ! pd_changed(x); }
*************** *** 65,69 **** iemgui_constrain(y); if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! if (glist_isvisible(glist_getcanvas(y->x_glist))) iemgui_dodraw((t_iemgui *)x); }
--- 61,65 ---- iemgui_constrain(y); if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! pd_changed(x); }
Index: g_hslider.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/g_hslider.c,v retrieving revision 1.1.1.3.2.2.2.31 retrieving revision 1.1.1.3.2.2.2.32 diff -C2 -d -r1.1.1.3.2.2.2.31 -r1.1.1.3.2.2.2.32 *** g_hslider.c 12 May 2004 10:25:02 -0000 1.1.1.3.2.2.2.31 --- g_hslider.c 13 May 2004 14:37:20 -0000 1.1.1.3.2.2.2.32 *************** *** 79,83 **** x->x_val = (int)(100.0*g + 0.49999); x->x_pos = x->x_val; ! iemgui_dodraw((t_iemgui *)x); }
--- 79,83 ---- x->x_val = (int)(100.0*g + 0.49999); x->x_pos = x->x_val; ! pd_changed(x); }
*************** *** 118,122 **** { t_iemgui *y = (t_iemgui *)x; - int v; binbuf_update(y,gensym(isvert(x)?"vsl":"hsl"),argc,argv); if(!pd_scanargs(argc,argv,"iiddbiaaaiiiiccci;b", --- 118,121 ---- *************** *** 124,129 **** &y->x_snd,&y->x_rcv,&y->x_lab, &y->x_ldx,&y->x_ldy,&y->x_font_style,&y->x_fontsize, ! &y->x_bcol,&y->x_fcol,&y->x_lcol,&v,&x->x_steady)) return; ! x->x_pos = x->x_val = y->x_isa&1 ? v : 0; iemgui_constrain(y); slider_check_minmax(x); --- 123,128 ---- &y->x_snd,&y->x_rcv,&y->x_lab, &y->x_ldx,&y->x_ldy,&y->x_font_style,&y->x_fontsize, ! &y->x_bcol,&y->x_fcol,&y->x_lcol,&x->x_val,&x->x_steady)) return; ! x->x_pos = x->x_val = y->x_isa&1 ? x->x_val : 0; iemgui_constrain(y); slider_check_minmax(x); *************** *** 131,135 **** else slider_check_width(x, y->x_w); if(y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! if (glist_isvisible(glist_getcanvas(y->x_glist))) iemgui_dodraw((t_iemgui *)x); }
--- 130,134 ---- else slider_check_width(x, y->x_w); if(y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! pd_changed(x); }
Index: g_dropper.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/Attic/g_dropper.c,v retrieving revision 1.1.2.21 retrieving revision 1.1.2.22 diff -C2 -d -r1.1.2.21 -r1.1.2.22 *** g_dropper.c 12 May 2004 09:13:18 -0000 1.1.2.21 --- g_dropper.c 13 May 2004 14:37:20 -0000 1.1.2.22 *************** *** 57,61 **** if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); iemgui_constrain(y); ! if (glist_isvisible(glist_getcanvas(y->x_glist))) iemgui_dodraw((t_iemgui *)x); }
--- 57,61 ---- if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); iemgui_constrain(y); ! pd_changed(x); }
Index: g_bang.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/g_bang.c,v retrieving revision 1.1.1.3.2.2.2.29 retrieving revision 1.1.1.3.2.2.2.30 diff -C2 -d -r1.1.1.3.2.2.2.29 -r1.1.1.3.2.2.2.30 *** g_bang.c 12 May 2004 10:25:02 -0000 1.1.1.3.2.2.2.29 --- g_bang.c 13 May 2004 14:37:20 -0000 1.1.1.3.2.2.2.30 *************** *** 99,103 **** iemgui_constrain(y); if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! if (glist_isvisible(glist_getcanvas(y->x_glist))) iemgui_dodraw((t_iemgui *)x); }
--- 99,103 ---- iemgui_constrain(y); if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! pd_changed(x); }
Index: g_numbox.c =================================================================== RCS file: /cvsroot/pure-data/pd/src/g_numbox.c,v retrieving revision 1.1.1.4.2.2.2.26 retrieving revision 1.1.1.4.2.2.2.27 diff -C2 -d -r1.1.1.4.2.2.2.26 -r1.1.1.4.2.2.2.27 *** g_numbox.c 12 May 2004 10:25:02 -0000 1.1.1.4.2.2.2.26 --- g_numbox.c 13 May 2004 14:37:20 -0000 1.1.1.4.2.2.2.27 *************** *** 13,17 **** #include "g_all_guis.h" #include <math.h> ! #define CH post("%d: change=%d", __LINE__, (int)x->x_change);
static t_class *my_numbox_class; --- 13,18 ---- #include "g_all_guis.h" #include <math.h> ! //#define CH post("%d: change=%d", __LINE__, (int)x->x_change); ! #define CH
static t_class *my_numbox_class; *************** *** 24,35 **** x->x_change = 0; CH glist_grab(x->x_gui.x_glist, 0, 0, 0, 0, 0); ! iemgui_dodraw((t_iemgui *)x); }
! static void my_numbox_tick_wait(t_my_numbox *x) ! {iemgui_dodraw((t_iemgui *)x);} ! ! void my_numbox_clip(t_my_numbox *x) ! {CLAMP(x->x_val,x->x_min,x->x_max);}
void my_numbox_calc_fontwidth(t_my_numbox *x) --- 25,33 ---- x->x_change = 0; CH glist_grab(x->x_gui.x_glist, 0, 0, 0, 0, 0); ! pd_changed(x); }
! static void my_numbox_tick_wait(t_my_numbox *x) {pd_changed(x);} ! void my_numbox_clip(t_my_numbox *x) {CLAMP(x->x_val,x->x_min,x->x_max);}
void my_numbox_calc_fontwidth(t_my_numbox *x) *************** *** 80,84 **** if(x->x_is_log) x->x_val *= pow(x->x_k, -k2*dy); else x->x_val -= k2*dy; my_numbox_clip(x); ! iemgui_dodraw((t_iemgui *)x); my_numbox_bang(x); clock_unset(x->x_clock_reset); --- 78,82 ---- if(x->x_is_log) x->x_val *= pow(x->x_k, -k2*dy); else x->x_val -= k2*dy; my_numbox_clip(x); ! pd_changed(x); my_numbox_bang(x); clock_unset(x->x_clock_reset); *************** *** 86,90 ****
static void my_numbox_set(t_my_numbox *x, t_floatarg f) ! {x->x_val=f; my_numbox_clip(x); iemgui_dodraw((t_iemgui *)x);}
static void my_numbox_log_height(t_my_numbox *x, t_floatarg lh) --- 84,88 ----
static void my_numbox_set(t_my_numbox *x, t_floatarg f) ! {x->x_val=f; my_numbox_clip(x); pd_changed(x);}
static void my_numbox_log_height(t_my_numbox *x, t_floatarg lh) *************** *** 107,115 **** static void my_numbox_range(t_my_numbox *x, t_float min, t_float max) {x->x_min=min; x->x_max=max; ! if(my_numbox_check_minmax(x)) iemgui_dodraw((t_iemgui *)x);}
static void my_numbox_lin(t_my_numbox *x) {x->x_is_log=0;} static void my_numbox_log(t_my_numbox *x) {x->x_is_log=1; ! if(my_numbox_check_minmax(x)) iemgui_dodraw((t_iemgui *)x);}
static void my_numbox_loadbang(t_my_numbox *x) --- 105,113 ---- static void my_numbox_range(t_my_numbox *x, t_float min, t_float max) {x->x_min=min; x->x_max=max; ! if(my_numbox_check_minmax(x)) pd_changed(x);}
static void my_numbox_lin(t_my_numbox *x) {x->x_is_log=0;} static void my_numbox_log(t_my_numbox *x) {x->x_is_log=1; ! if(my_numbox_check_minmax(x)) pd_changed(x);}
static void my_numbox_loadbang(t_my_numbox *x) *************** *** 140,144 **** y->x_w = MAX(y->x_w,1); if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! if (glist_isvisible(glist_getcanvas(y->x_glist))) iemgui_dodraw((t_iemgui *)x); }
--- 138,142 ---- y->x_w = MAX(y->x_w,1); if (y->x_rcv) pd_bind((t_pd *)x, y->x_rcv); ! pd_changed(x); }
Index: g_all_guis.h =================================================================== RCS file: /cvsroot/pure-data/pd/src/g_all_guis.h,v retrieving revision 1.1.1.4.2.2.2.32 retrieving revision 1.1.1.4.2.2.2.33 diff -C2 -d -r1.1.1.4.2.2.2.32 -r1.1.1.4.2.2.2.33 *** g_all_guis.h 12 May 2004 10:35:43 -0000 1.1.1.4.2.2.2.32 --- g_all_guis.h 13 May 2004 14:37:20 -0000 1.1.1.4.2.2.2.33 *************** *** 141,145 **** EXTERN t_symbol *s_empty; EXTERN int convert_color2(int x); - EXTERN void iemgui_dodraw(t_iemgui *x); EXTERN void iemgui_init(t_iemgui *x, t_floatarg f); EXTERN void binbuf_update(t_iemgui *x, t_symbol *qlass, int argc, t_atom *argv); --- 141,144 ----