rt300@0: // rt300@0: // buttonPanel.cpp rt300@0: // tweakathlon rt300@0: // rt300@0: // Created by Robert Tubb on 11/02/2014. rt300@0: // rt300@0: // rt300@0: rt300@0: #include "buttonPanel.h" rt300@0: ButtonPanel::ButtonPanel(float ax, rt300@0: float ay, rt300@0: float awidth, rt300@0: float aheight, rt300@0: const UIProps& aprops, rt300@0: vector elemList) : rt300@0: UIElementContainer(ax,ay,awidth,aheight,aprops) rt300@0: { rt300@18: //cout << "ButtonPanel auto layout contructor\n"; rt300@0: rt300@0: generateControls(elemList); rt300@0: autoArrangeRow(); rt300@0: } rt300@0: //--------------------------------------------------- rt300@0: ButtonPanel::ButtonPanel(float ax, rt300@0: float ay, rt300@0: float awidth, rt300@0: float aheight, rt300@0: const UIProps& aprops) : rt300@0: UIElementContainer(ax,ay,awidth,aheight,aprops) rt300@0: { rt300@18: //cout << "ButtonPanel - ctrls added later constructor\n"; rt300@0: rt300@0: } rt300@0: //--------------------------------------------------- rt300@0: vector ButtonPanel::generateControls(vector elemList){ rt300@0: removeAllSubelements(); rt300@0: vector::iterator i; rt300@0: rt300@0: // 10 cm is 520 pixels rt300@0: rt300@0: // calc positions rt300@0: int top = y + myProps.spacerSize; rt300@0: rt300@0: int n=0; rt300@0: for(i=elemList.begin(); isetLabel("unassigned"); rt300@0: subElements.push_back(butt); rt300@0: n++; rt300@0: rt300@0: }else{ rt300@0: cout << "ERROR: button panel only handles buttons" << endl; rt300@0: } rt300@0: } rt300@0: return subElements; rt300@0: }