aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xexternals/grill/dynext/readme.txt1
-rw-r--r--externals/grill/dynext/src/main.cpp17
2 files changed, 7 insertions, 11 deletions
diff --git a/externals/grill/dynext/readme.txt b/externals/grill/dynext/readme.txt
index 213487dc..2ffd19b5 100755
--- a/externals/grill/dynext/readme.txt
+++ b/externals/grill/dynext/readme.txt
@@ -28,6 +28,7 @@ CHANGES:
- cached several symbols
- strip .pd extension from abstraction filenames (if stripext attribute is set)
- debug patcher opens on alt-click
+- made vis an attribute (visibility can now be queried)
0.1.0:
- first release: PD 0.37 supports all necessary functionality
diff --git a/externals/grill/dynext/src/main.cpp b/externals/grill/dynext/src/main.cpp
index 362963c5..a9eb4954 100644
--- a/externals/grill/dynext/src/main.cpp
+++ b/externals/grill/dynext/src/main.cpp
@@ -53,11 +53,12 @@ public:
void m_connect(int argc,const t_atom *argv) { ConnDis(true,argc,argv); }
void m_disconnect(int argc,const t_atom *argv) { ConnDis(false,argc,argv); }
void m_send(int argc,const t_atom *argv);
- void m_vis(bool vis);
+ void ms_vis(bool vis) { canvas_vis(canvas,vis?1:0); }
+ void mg_vis(bool &vis) const { vis = canvas && canvas->gl_editor; }
protected:
- virtual void m_click() { m_vis(true); }
+ virtual void m_click() { ms_vis(true); }
static const t_symbol *k_obj,*k_msg,*k_text;
@@ -82,7 +83,6 @@ protected:
void ConnDis(bool conn,int argc,const t_atom *argv);
-
virtual bool m_method_(int n,const t_symbol *s,int argc,const t_atom *argv);
virtual void m_dsp(int n,t_signalvec const *insigs,t_signalvec const *outsigs);
virtual void m_signal(int n,t_sample *const *insigs,t_sample *const *outsigs);
@@ -170,7 +170,8 @@ private:
FLEXT_CALLBACK_V(m_connect)
FLEXT_CALLBACK_V(m_disconnect)
FLEXT_CALLBACK_V(m_send)
- FLEXT_CALLBACK_B(m_vis)
+ FLEXT_CALLVAR_B(mg_vis,ms_vis)
+// FLEXT_CALLBACK(m_refresh)
FLEXT_ATTRVAR_B(stripext)
@@ -242,8 +243,7 @@ void dyn::setup(t_classid c)
FLEXT_CADDMETHOD_(c,0,"conn",m_connect);
FLEXT_CADDMETHOD_(c,0,"dis",m_disconnect);
FLEXT_CADDMETHOD_(c,0,"send",m_send);
- FLEXT_CADDMETHOD_(c,0,"vis",m_vis);
-
+ FLEXT_CADDATTR_VAR(c,"vis",mg_vis,ms_vis);
FLEXT_CADDATTR_VAR1(c,"stripext",stripext);
// set up symbols
@@ -552,11 +552,6 @@ void dyn::m_reset()
root = NULL;
}
-void dyn::m_vis(bool vis)
-{
- canvas_vis(canvas,vis?1:0);
-}
-
void dyn::m_reload()
{
post("%s - reload: not implemented yet",thisName());