Skip to content

Commit 7f262c8

Browse files
committed
propagate signals and properties
1 parent 8d15a04 commit 7f262c8

File tree

2 files changed

+39
-1
lines changed

2 files changed

+39
-1
lines changed

services/static-webserver/client/source/class/osparc/dashboard/GroupedCardContainer.js

Lines changed: 30 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -66,7 +66,19 @@ qx.Class.define("osparc.dashboard.GroupedCardContainer", {
6666
nullable: false,
6767
event: "changeExpanded",
6868
apply: "__applyExpanded"
69-
}
69+
},
70+
71+
mode: {
72+
check: ["grid", "list"],
73+
init: "grid",
74+
nullable: false,
75+
event: "changeMode"
76+
},
77+
},
78+
79+
events: {
80+
"changeSelection": "qx.event.type.Data",
81+
"changeVisibility": "qx.event.type.Data"
7082
},
7183

7284
members: {
@@ -119,6 +131,23 @@ qx.Class.define("osparc.dashboard.GroupedCardContainer", {
119131
const showAllBtn = this.__expandButton;
120132
if (expanded) {
121133
contentContainer = new osparc.dashboard.CardContainer();
134+
135+
const setContainerSpacing = () => {
136+
const spacing = this.getMode() === "grid" ? osparc.dashboard.GridButtonBase.SPACING : osparc.dashboard.ListButtonBase.SPACING;
137+
contentContainer.getLayout().set({
138+
spacingX: spacing,
139+
spacingY: spacing
140+
});
141+
};
142+
setContainerSpacing();
143+
this.addListener("changeMode", () => setContainerSpacing());
144+
[
145+
"changeSelection",
146+
"changeVisibility"
147+
].forEach(signalName => {
148+
contentContainer.addListener(signalName, e => this.fireDataEvent(signalName, e.getData()), this);
149+
});
150+
122151
showAllBtn.show();
123152
} else {
124153
const spacing = osparc.dashboard.GridButtonBase.SPACING;

services/static-webserver/client/source/class/osparc/dashboard/ResourceContainerManager.js

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -339,6 +339,15 @@ qx.Class.define("osparc.dashboard.ResourceContainerManager", {
339339
headerColor,
340340
visibility: "excluded"
341341
});
342+
343+
this.bind("mode", groupContainer, "mode");
344+
[
345+
"changeSelection",
346+
"changeVisibility"
347+
].forEach(signalName => {
348+
groupContainer.addListener(signalName, e => this.fireDataEvent(signalName, e.getData()), this);
349+
});
350+
342351
this.__groupedContainersList.push(groupContainer);
343352
return groupContainer;
344353
},

0 commit comments

Comments
 (0)