In those almost clear day, I’m hitting this assertion:
/* An identifier string must be suitable for use as a script variable or XML
attribute, so it can only contain this limited set of characters.. */
jassert (name.containsOnly (T("abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789_")) && name.isNotEmpty());
Because I’m using setColour with a colourId set as 0x80060000 (which is negative in decimal representation).
Fix is simple:
static const var::identifier getColourPropertyId (const int colourId)
{
String s;
s.preallocateStorage (18);
s << T("jcclr_") << colourId;
return s;
}
should read
static const var::identifier getColourPropertyId (const int colourId)
{
String s;
s.preallocateStorage (18);
s << T("jcclr_") << String::toHexString(colourId);
return s;
}