t_max_err scope_notify(t_scope *x, t_symbol *s, t_symbol *msg, void *sender, void *data) { if (msg == gensym("attr_modified")) { if( s == gensym("bgcolor") || s == gensym("drawcircle") ) { jbox_invalidate_layer((t_object *)x, NULL, gensym("background_layer")); } else if(s == gensym("drawangles")) { jbox_invalidate_layer((t_object *)x, NULL, gensym("angle_layer")); } else if(s == gensym("txcolor")) { jbox_invalidate_layer((t_object *)x, NULL, gensym("angle_layer")); jbox_invalidate_layer((t_object *)x, NULL, gensym("contrib_layer")); } else if(s == gensym("phcolor") || s == gensym("nhcolor")) { jbox_invalidate_layer((t_object *)x, NULL, gensym("harmonics_layer")); } else if(s == gensym("order")) { jbox_invalidate_layer((t_object *)x, NULL, gensym("background_layer")); jbox_invalidate_layer((t_object *)x, NULL, gensym("angle_layer")); jbox_invalidate_layer((t_object *)x, NULL, gensym("contrib_layer")); } jbox_redraw((t_jbox *)x); } return jbox_notify((t_jbox *)x, s, msg, sender, data); }
t_max_err space_notify(t_space *x, t_symbol *s, t_symbol *msg, void *sender, void *data) { t_symbol *name; if (msg == gensym("attr_modified")) { name = (t_symbol *)object_method((t_object *)data, gensym("getname")); if(name == gensym("bgcolor") || name == gensym("borderboxcolor") || name == gensym("cicolor") || name == gensym("cicolorin") ) { jbox_invalidate_layer((t_object *)x, NULL, gensym("background_layer")); } else if(name == gensym("harmocolor")) { jbox_invalidate_layer((t_object *)x, NULL, gensym("harmonics_layer")); } else if(name == gensym("miccolor")) { jbox_invalidate_layer((t_object *)x, NULL, gensym("microphones_points_layer")); } else if(name == gensym("shadow")) { jbox_invalidate_layer((t_object *)x, NULL, gensym("background_layer")); if (x->f_shadow) object_attr_setdisabled((t_object *)x, gensym("cishadcolor"), 0); else object_attr_setdisabled((t_object *)x, gensym("cishadcolor"), 1); } jbox_redraw((t_jbox *)x); } return jbox_notify((t_jbox *)x, s, msg, sender, data); }
t_max_err dbviewer_notify(t_dbviewer *x, t_symbol *s, t_symbol *msg, void *sender, void *data) { if(sender == x->d_view){ if(msg == ps_dbview_update){ dbviewer_bang(x); } else if(msg == ps_dbview_query_changed){ // dump all of the columns t_object *column = NULL; t_symbol **column_names = NULL; long numcolumns = 0; long i; hashtab_getkeys(x->d_columns, &numcolumns, &column_names); if(column_names){ for(i=0; i<numcolumns; i++){ column = jdataview_getnamedcolumn(x->d_dataview, column_names[i]); if(column) jdataview_deletecolumn(x->d_dataview, column); } sysmem_freeptr(column_names); } hashtab_clear(x->d_columns); } else if(msg == _sym_free){ object_detach_byptr((t_object *)x, x->d_view); x->d_view = NULL; } } return jbox_notify((t_jbox*)x, s, msg, sender, data); }
t_max_err hoa_scope_notify(t_hoa_scope *x, t_symbol *s, t_symbol *msg, void *sender, void *data) { t_symbol *name; if (msg == hoa_sym_attr_modified) { name = (t_symbol *)object_method((t_object *)data, hoa_sym_getname); if( name == hoa_sym_bgcolor || name == gensym("order")) { jbox_invalidate_layer((t_object *)x, NULL, hoa_sym_background_layer); } else if(name == gensym("phcolor") || name == gensym("nhcolor")) { jbox_invalidate_layer((t_object *)x, NULL, hoa_sym_harmonics_layer); } jbox_redraw((t_jbox *)x); } return jbox_notify((t_jbox *)x, s, msg, sender, data); }
t_max_err meter_notify(t_meter *x, t_symbol *s, t_symbol *msg, void *sender, void *data) { t_symbol* name; if (msg == _sym_attr_modified) { name = (t_symbol *)object_method((t_object *)data, _sym_getname); if (name == _sym_bgcolor) jbox_redraw((t_jbox*)x); if (name == _sym_patching_rect || name == gensym("orientation")) meterEffectOrientation(x); if (name == gensym("defeat")) { if (sys_getdspstate()) { // if dsp is on & defeat is off then we schedule another tick if (x->attrDefeat == 0) clock_delay(x->clock, kPollIntervalDefault); } } } return jbox_notify((t_jbox*)x, s, msg, sender, data); }
t_max_err meter_notify(t_meter *x, t_symbol *s, t_symbol *msg, void *sender, void *data) { t_symbol *name; if (msg == gensym("attr_modified")) { name = (t_symbol *)object_method((t_object *)data, gensym("getname")); if(name == gensym("mbgcolor") || name == gensym("leds_bg") || name == gensym("drawmborder")) { jbox_invalidate_layer((t_object *)x, NULL, s_skeleton_layer); jbox_invalidate_layer((t_object *)x, NULL, s_separator_layer); } else if(name == gensym("cicolor") || name == gensym("coldcolor") || name == gensym("tepidcolor") || name == gensym("warmcolor") || name == gensym("hotcolor") || name == gensym("overcolor") || name == gensym("numleds")) { jbox_invalidate_layer((t_object *)x, NULL, s_skeleton_layer); jbox_invalidate_layer((t_object *)x, NULL, s_separator_layer); jbox_invalidate_layer((t_object *)x, NULL, s_leds_layer); } else if(name == gensym("drawvector") || name == gensym("energycolor") || name == gensym("velocitycolor")) { jbox_invalidate_layer((t_object *)x, NULL, s_energy_layer); jbox_invalidate_layer((t_object *)x, NULL, s_velocity_layer); } else if(name == gensym("offset") || name == gensym("metersize") || name == gensym("direction") || name == gensym("orientation")) { jbox_invalidate_layer((t_object *)x, NULL, s_skeleton_layer); jbox_invalidate_layer((t_object *)x, NULL, s_separator_layer); jbox_invalidate_layer((t_object *)x, NULL, s_leds_layer); jbox_invalidate_layer((t_object *)x, NULL, s_energy_layer); jbox_invalidate_layer((t_object *)x, NULL, s_velocity_layer); } else if(name == gensym("dbperled") || name == gensym("nhotleds") || name == gensym("ntepidleds") || name == gensym("nwarmleds")) { jbox_invalidate_layer((t_object *)x, NULL, s_leds_layer); } jbox_redraw((t_jbox *)x); } return jbox_notify((t_jbox *)x, s, msg, sender, data); }
t_max_err hoa_gain_notify(t_hoa_gain *x, t_symbol *s, t_symbol *msg, void *sender, void *data) { if (msg == hoa_sym_attr_modified) { t_symbol *name = (t_symbol *)object_method((t_object *)data, hoa_sym_getname); if (name == gensym("knobcolor")) { jbox_invalidate_layer((t_object *)x, NULL, hoa_sym_background_layer); jbox_invalidate_layer((t_object *)x, NULL, gensym("cursor_layer")); } else if(name == hoa_sym_bgcolor) { jbox_invalidate_layer((t_object *)x, NULL, hoa_sym_background_layer); } else if (name == gensym("barcolor")) { jbox_invalidate_layer((t_object *)x, NULL, gensym("valuerect_layer")); } jbox_redraw((t_jbox *)x); } return jbox_notify((t_jbox *)x, s, msg, sender, data); }
t_max_err hoa_meter_notify(t_hoa_meter *x, t_symbol *s, t_symbol *m, void *sender, void *data) { return jbox_notify((t_jbox *)x, s, m, sender, data); }