Warning: session_start(): open(/var/lib/php/sessions/sess_tjqnc6p022vfsp1fun0uh8ht98, O_RDWR) failed: No space left on device (28) in /var/www/tb-usercake/models/config.php on line 51
Warning: session_start(): Failed to read session data: files (path: /var/lib/php/sessions) in /var/www/tb-usercake/models/config.php on line 51
sclass CollapsibleLeftPanel is Swingable {
S sidePanelName;
JComponent sideComponent, mainComponent;
JSplitPane splitPane;
bool collapsed;
SingleComponentPanel scp = singleComponentPanel();
*(S *sidePanelName, JComponent *sideComponent, JComponent *mainComponent,
bool *collapsed) {
splitPane = jhsplit(0.25, wrappedSideComponent(), null);
updateScp();
}
void setCollapsed(bool collapsed) swing {
if (this.collapsed != collapsed) {
this.collapsed = collapsed;
updateScp();
}
}
void expand { setCollapsed(false); }
void collapse { setCollapsed(true); }
void updateScp {
if (collapsed)
scp.set(westAndCenterWithMargin(
vstack(expandButton()), mainComponent));
else {
splitPane.setRightComponent(mainComponent);
scp.set(splitPane);
}
}
JButton expandButton() {
ret jimageButton(#1103075, "Expand " + sidePanelName, r expand);
}
JButton collapseButton() {
ret jimageButton(#1103076, "Collapse " + sidePanelName, r collapse);
}
JComponent wrappedSideComponent() {
//ret jSection(sidePanelName, sideComponent);
ret northAndCenterWithMargin(
westAndCenterWithMargin(collapseButton(), jlabel(sidePanelName)),
sideComponent
);
}
visual scp;
}