aboutsummaryrefslogtreecommitdiff
path: root/externals/grill/flext/source/flattr.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'externals/grill/flext/source/flattr.cpp')
-rw-r--r--externals/grill/flext/source/flattr.cpp16
1 files changed, 15 insertions, 1 deletions
diff --git a/externals/grill/flext/source/flattr.cpp b/externals/grill/flext/source/flattr.cpp
index e754c87b..6a8dafeb 100644
--- a/externals/grill/flext/source/flattr.cpp
+++ b/externals/grill/flext/source/flattr.cpp
@@ -120,7 +120,8 @@ void flext_base::ListAttrib(AtomList &la) const
typedef std::set<AttrItem *,attrless> AttrList;
AttrList list[2];
- for(int i = 0; i <= 1; ++i) {
+ int i;
+ for(i = 0; i <= 1; ++i) {
ItemCont *a = i?attrhead:clattrhead;
if(a) {
for(int ai = 0; ai < a->Size(); ++ai) {
@@ -246,6 +247,13 @@ bool flext_base::SetAttrib(AttrItem *a,int argc,const t_atom *argv)
}
else ok = false;
break;
+ case a_bool:
+ if(argc == 1 && CanbeBool(argv[0])) {
+ any.bt = GetABool(argv[0]);
+ ((methfun_1)a->fun)(this,any);
+ }
+ else ok = false;
+ break;
case a_LIST:
any.vt = &(la(argc,argv));
((methfun_1)a->fun)(this,any);
@@ -283,6 +291,12 @@ bool flext_base::GetAttrib(AttrItem *a,AtomList &la) const
SetInt(la[0],any.it);
break;
}
+ case a_bool: {
+ ((methfun_1)a->fun)(const_cast<flext_base *>(this),any);
+ la(1);
+ SetBool(la[0],any.bt);
+ break;
+ }
case a_symbol: {
((methfun_1)a->fun)(const_cast<flext_base *>(this),any);
la(1);