#include "LayDes.h" struct VisGenDlg : public WithVisGenLayout { LayoutData& layout; Vector sel; void Refresh(); bool HasItem(const char *id); void Type(); String GetName(); typedef VisGenDlg CLASSNAME; VisGenDlg(LayoutData& layout, const Vector& cursor); }; VisGenDlg::VisGenDlg(LayoutData& layout, const Vector& cursor) : layout(layout) { type <<= 0; CtrlLayoutOKCancel(*this, "Code generator"); type <<= THISBACK(Type); // needs to be before Refresh to maintain the proper order of action toupper1 << [=] { tolower1 <<= false; initcaps1 <<= false; }; tolower1 << [=] { toupper1 <<= false; initcaps1 <<= false; }; initcaps1 << [=] { toupper1 <<= false; tolower1 <<= false; }; toupper2 << [=] { tolower2 <<= false; initcaps2 <<= false; }; tolower2 << [=] { toupper2 <<= false; initcaps2 <<= false; }; initcaps2 << [=] { toupper2 <<= false; tolower2 <<= false; }; for(Ctrl *q = GetFirstChild(); q; q = q->GetNext()) if(dynamic_cast