diff --git a/client/public/stylesheets/other/toolbar.css b/client/public/stylesheets/other/toolbar.css index c90df5f8..27550908 100644 --- a/client/public/stylesheets/other/toolbar.css +++ b/client/public/stylesheets/other/toolbar.css @@ -14,6 +14,10 @@ width: fit-content; } +#app-icon>.ol-select-value { + box-shadow: none; +} + #toolbar-summary { background-image: url("/images/icon-round.png"); background-position: 20px 22px; @@ -29,22 +33,56 @@ white-space: nowrap; } -#toolbar-container>*:nth-child(2)>svg { - display: none; - width: 0px; - height: 0px; +.ol-panel-tab { + align-items: center; + display:flex; + flex-direction: row; + margin-right:6px; +} + +.ol-panel-tab svg { + height:24; + width:24px; +} + +.ol-panel-tab svg * { + fill:white; +} + +.ol-panel-tab span { + font-size:13px; + font-weight:400; + padding:0 6px; } #toolbar-container>*:nth-child(3)>svg { display: none; } +#unit-visibility-control > div:nth-child(3), +#coalition-visibility-control { + border-left: 4px solid white; + padding-left: 12px; +} + @media (max-width: 1145px) { #toolbar-container { flex-direction: column; align-items: start; } + #toolbar-container .ol-panel .ol-panel-tab { + margin-right:0; + } + + #toolbar-container .ol-panel:hover .ol-panel-tab { + display:none; + } + + #toolbar-container .ol-panel-tab span { + display:none; + } + #toolbar-container>*:nth-child(1):not(:hover) { width: fit-content; height: fit-content; @@ -62,10 +100,10 @@ } #toolbar-container>*:not(:first-child):not(:hover)>svg { - display: block; - width: 24px; - height: 24px; + display: block; filter: invert(); + height: 24px; + width: 24px; } #toolbar-container>*:not(:first-child):not(:hover)>*:not(:first-child) { diff --git a/client/public/stylesheets/style/style.css b/client/public/stylesheets/style/style.css index 31f08e62..485c6b5a 100644 --- a/client/public/stylesheets/style/style.css +++ b/client/public/stylesheets/style/style.css @@ -72,6 +72,18 @@ form { padding: 0; } +button svg.fill-coalition * { + fill: var(--primary-neutral) !important; +} + +button svg.fill-coalition[data-coalition="blue"] * { + fill: var(--primary-blue) !important; +} + +button svg.fill-coalition[data-coalition="red"] * { + fill: var(--primary-red) !important; +} + .pill { background-color: var(--background-steel); border-radius: 999px; @@ -372,7 +384,7 @@ button.ol-button-warning>svg:first-child { } nav.ol-panel { - column-gap: 20px; + column-gap: 10px; display: flex; flex-direction: row; height: 58px; @@ -384,8 +396,7 @@ nav.ol-panel> :last-child { .ol-panel .ol-group { align-items: center; - border-radius: var(--border-radius-sm); - column-gap: 10px; + column-gap: 12px; display: flex; flex-direction: row; flex-wrap: nowrap; @@ -652,13 +663,13 @@ nav.ol-panel> :last-child { } .ol-navbar-buttons-group button.off svg * { - fill: white !important; - stroke: white !important; + fill: white; + stroke: white; } .ol-navbar-buttons-group button svg * { - fill: var(--background-steel) !important; - stroke: var(--background-steel) !important; + fill: var(--background-steel); + stroke: var(--background-steel); } .ol-navbar-buttons-group .protectable button:first-of-type { @@ -1590,6 +1601,24 @@ input[type=number]::-webkit-outer-spin-button { fill: lightgray; } +#map-visibility-options .ol-select-options .ol-checkbox { + font-size:13px; + font-weight:400; + padding:6px 15px; +} + +#map-visibility-options .ol-select-options .ol-checkbox:first-of-type { + padding-top:12px; +} + +#map-visibility-options .ol-select-options .ol-checkbox:last-of-type { + padding-bottom:12px; +} + +#map-visibility-options .ol-select-options .ol-checkbox label:hover span { + text-decoration: underline; +} + .ol-log-entry:first-of-type { border-top: 1px solid #FFFFFF44; } @@ -1685,4 +1714,5 @@ input[type=number]::-webkit-outer-spin-button { 50% { opacity: 0; } -} \ No newline at end of file +} + diff --git a/client/public/themes/olympus/images/buttons/visibility/circle-dot.svg b/client/public/themes/olympus/images/buttons/visibility/circle-dot.svg new file mode 100644 index 00000000..f98ede3a --- /dev/null +++ b/client/public/themes/olympus/images/buttons/visibility/circle-dot.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/public/themes/olympus/images/buttons/visibility/flag.svg b/client/public/themes/olympus/images/buttons/visibility/flag.svg new file mode 100644 index 00000000..a1efc147 --- /dev/null +++ b/client/public/themes/olympus/images/buttons/visibility/flag.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/public/themes/olympus/images/buttons/visibility/shield.svg b/client/public/themes/olympus/images/buttons/visibility/shield.svg new file mode 100644 index 00000000..d8ff87ec --- /dev/null +++ b/client/public/themes/olympus/images/buttons/visibility/shield.svg @@ -0,0 +1 @@ + \ No newline at end of file diff --git a/client/public/themes/olympus/images/icons/eye-solid.svg b/client/public/themes/olympus/images/icons/eye-solid.svg index 3b5d2412..63bc71ba 100644 --- a/client/public/themes/olympus/images/icons/eye-solid.svg +++ b/client/public/themes/olympus/images/icons/eye-solid.svg @@ -1 +1 @@ - \ No newline at end of file + \ No newline at end of file diff --git a/client/src/contextmenus/coalitionareacontextmenu.ts b/client/src/contextmenus/coalitionareacontextmenu.ts index ad6ab040..ca993f6e 100644 --- a/client/src/contextmenus/coalitionareacontextmenu.ts +++ b/client/src/contextmenus/coalitionareacontextmenu.ts @@ -27,8 +27,8 @@ export class CoalitionAreaContextMenu extends ContextMenu { super(ID); /* Create the coalition switch */ - this.#coalitionSwitch = new Switch("coalition-area-switch", (value: boolean) => this.#onSwitchClick(value)); - this.#coalitionSwitch.setValue(false); + this.#coalitionSwitch = new Switch("coalition-area-switch", (value: boolean) => this.#onSwitchClick(value), true); + this.#coalitionSwitch.setValue(true); /* Create the controls of the IADS creation submenu */ this.#iadsTypesDropdown = new Dropdown("iads-units-type-options", () => { }); @@ -146,11 +146,11 @@ export class CoalitionAreaContextMenu extends ContextMenu { /** Callback event called when the coalition switch is clicked to change the coalition of the CoalitionArea * - * @param value Switch position (false: blue, true: red) + * @param value Switch position (false: red, true: blue) */ #onSwitchClick(value: boolean) { if (getApp().getMissionManager().getCommandModeOptions().commandMode == GAME_MASTER) { - this.getCoalitionArea()?.setCoalition(value ? "red" : "blue"); + this.getCoalitionArea()?.setCoalition(value ? "blue" : "red"); this.getContainer()?.querySelectorAll('[data-coalition]').forEach((element: any) => { element.setAttribute("data-coalition", this.getCoalitionArea()?.getCoalition()) }); diff --git a/client/views/contextmenus/coalitionarea.ejs b/client/views/contextmenus/coalitionarea.ejs index 50932352..ba10be85 100644 --- a/client/views/contextmenus/coalitionarea.ejs +++ b/client/views/contextmenus/coalitionarea.ejs @@ -1,12 +1,12 @@