From 2704081dfe02b4ebc398437d00323853418332c9 Mon Sep 17 00:00:00 2001 From: nakst <> Date: Sat, 25 Sep 2021 09:50:13 +0100 Subject: [PATCH] cleanup --- apps/samples/converter.cpp | 2 +- desktop/desktop.cpp | 4 ++-- desktop/gui.cpp | 22 +++++++++++++++++----- desktop/styles.header | 3 +-- res/Theme Source.dat | Bin 53047 -> 53015 bytes res/Themes/Theme.dat | Bin 53660 -> 53636 bytes 6 files changed, 21 insertions(+), 10 deletions(-) diff --git a/apps/samples/converter.cpp b/apps/samples/converter.cpp index 459feb2..53dcf2f 100644 --- a/apps/samples/converter.cpp +++ b/apps/samples/converter.cpp @@ -75,7 +75,7 @@ void _start() { // Add a second layout panel to panelStack to contain the elements of the form. EsPanel *panelForm = EsPanelCreate( panelStack, // Add it to panelStack. - ES_PANEL_TABLE // Use table layout. + ES_PANEL_TABLE // Use table layout. | ES_PANEL_HORIZONTAL, // Left to right, then top to bottom. &stylePanelForm); diff --git a/desktop/desktop.cpp b/desktop/desktop.cpp index a3e8aef..be2c5a3 100644 --- a/desktop/desktop.cpp +++ b/desktop/desktop.cpp @@ -1214,10 +1214,10 @@ void ShutdownModalCreate() { // Setup the UI. - EsPanel *stack = EsPanelCreate(window, ES_CELL_FILL | ES_PANEL_Z_STACK, ES_STYLE_PANEL_NORMAL_WINDOW_ROOT); + EsPanel *stack = EsPanelCreate(window, ES_CELL_FILL | ES_PANEL_Z_STACK); stack->cName = "window stack"; EsPanelCreate(stack, ES_CELL_FILL, ES_STYLE_PANEL_SHUTDOWN_OVERLAY)->cName = "modal overlay"; - EsPanel *dialog = EsPanelCreate(stack, ES_PANEL_VERTICAL | ES_CELL_CENTER, ES_STYLE_PANEL_DIALOG_ROOT); + EsPanel *dialog = EsPanelCreate(stack, ES_PANEL_VERTICAL | ES_CELL_CENTER, ES_STYLE_DIALOG_SHADOW); dialog->cName = "dialog"; EsPanel *heading = EsPanelCreate(dialog, ES_PANEL_HORIZONTAL | ES_CELL_H_FILL, ES_STYLE_DIALOG_HEADING); EsIconDisplayCreate(heading, ES_FLAGS_DEFAULT, {}, ES_ICON_SYSTEM_SHUTDOWN); diff --git a/desktop/gui.cpp b/desktop/gui.cpp index 868b026..ed3f221 100644 --- a/desktop/gui.cpp +++ b/desktop/gui.cpp @@ -762,9 +762,12 @@ EsElement *EsDialogShow(EsWindow *window) { window->hasDialog = true; window->dialogOverlay = EsPanelCreate(mainStack, ES_CELL_FILL, ES_STYLE_PANEL_MODAL_OVERLAY); window->dialogOverlay->cName = "modal overlay"; - window->dialogPanel = EsPanelCreate(mainStack, ES_PANEL_VERTICAL | ES_CELL_CENTER | ES_CELL_SHRINK, ES_STYLE_PANEL_DIALOG_ROOT); + window->dialogPanel = EsPanelCreate(mainStack, ES_PANEL_VERTICAL | ES_CELL_CENTER | ES_CELL_SHRINK, ES_STYLE_DIALOG_SHADOW); window->dialogPanel->cName = "dialog"; + // EsElementStartTransition(window->dialogOverlay, ES_TRANSITION_FADE_IN, ES_FLAGS_DEFAULT, 3.0f); + // EsElementStartTransition(window->dialogPanel, ES_TRANSITION_FADE_IN, ES_FLAGS_DEFAULT, 3.0f); + return window->dialogPanel; } @@ -912,9 +915,9 @@ EsWindow *EsWindowCreate(EsInstance *instance, EsWindowStyle style) { EsSyscall(ES_SYSCALL_WINDOW_SET_PROPERTY, window->handle, 0, (uintptr_t) window, ES_WINDOW_PROPERTY_OBJECT); EsSyscall(ES_SYSCALL_WINDOW_SET_PROPERTY, window->handle, 0xFF000000 | GetConstantNumber("windowFillColor"), 0, ES_WINDOW_PROPERTY_RESIZE_CLEAR_COLOR); window->activated = true; - EsPanel *panel = EsPanelCreate(window, ES_ELEMENT_NON_CLIENT | ES_CELL_FILL | ES_PANEL_Z_STACK, ES_STYLE_PANEL_NORMAL_WINDOW_ROOT); + EsPanel *panel = EsPanelCreate(window, ES_ELEMENT_NON_CLIENT | ES_CELL_FILL | ES_PANEL_Z_STACK); panel->cName = "window stack"; - window->mainPanel = EsPanelCreate(panel, ES_CELL_FILL, ES_STYLE_PANEL_NORMAL_WINDOW_ROOT); + window->mainPanel = EsPanelCreate(panel, ES_CELL_FILL); window->mainPanel->cName = "window root"; window->toolbarSwitcher = EsPanelCreate(window, ES_ELEMENT_NON_CLIENT | ES_PANEL_SWITCHER | ES_CELL_FILL, ES_STYLE_PANEL_TOOLBAR_ROOT); window->toolbarSwitcher->cName = "toolbar"; @@ -1662,9 +1665,18 @@ void ProcessAnimations() { element->transitionTimeMs += m.animate.deltaMs; bool transitionComplete = element->transitionTimeMs >= element->transitionDurationMs; - if (!transitionComplete) { + if (element->transitionDurationMs) { element->Repaint(true, ES_RECT_1(0)); - } else { + } + + if (transitionComplete) { + element->transitionDurationMs = 0; + + if (element->previousTransitionFrame) { + EsPaintTargetDestroy(element->previousTransitionFrame); + element->previousTransitionFrame = nullptr; + } + if (element->transitionFlags & ES_ELEMENT_TRANSITION_HIDE_AFTER_COMPLETE) { EsElementSetHidden(element, true); } diff --git a/desktop/styles.header b/desktop/styles.header index 8383c06..0050614 100644 --- a/desktop/styles.header +++ b/desktop/styles.header @@ -21,6 +21,7 @@ private define ES_STYLE_CURSOR_LOCATOR (ES_STYLE_CAST(1591)) define ES_STYLE_DIALOG_BUTTON_AREA (ES_STYLE_CAST(1259)) define ES_STYLE_DIALOG_CONTENT (ES_STYLE_CAST(1261)) define ES_STYLE_DIALOG_HEADING (ES_STYLE_CAST(1263)) +define ES_STYLE_DIALOG_SHADOW (ES_STYLE_CAST(1311)) private define ES_STYLE_DOUBLE_CLICK_TEST (ES_STYLE_CAST(1585)) define ES_STYLE_ICON_DISPLAY (ES_STYLE_CAST(1265)) define ES_STYLE_ICON_DISPLAY_SMALL (ES_STYLE_CAST(1543)) @@ -51,7 +52,6 @@ private define ES_STYLE_MENU_SEPARATOR_HORIZONTAL (ES_STYLE_CAST(1303)) private define ES_STYLE_MENU_SEPARATOR_VERTICAL (ES_STYLE_CAST(1305)) private define ES_STYLE_PANEL_CONTAINER_WINDOW_ROOT (ES_STYLE_CAST(1307)) private define ES_STYLE_PANEL_CRASH_INFO (ES_STYLE_CAST(1309)) -define ES_STYLE_PANEL_DIALOG_ROOT (ES_STYLE_CAST(1311)) define ES_STYLE_PANEL_DOCUMENT (ES_STYLE_CAST(1547)) define ES_STYLE_PANEL_FILLED (ES_STYLE_CAST(1313)) define ES_STYLE_PANEL_GROUP_BOX (ES_STYLE_CAST(1315)) @@ -62,7 +62,6 @@ private define ES_STYLE_PANEL_MENU_COLUMN (ES_STYLE_CAST(1321)) private define ES_STYLE_PANEL_MENU_CONTAINER (ES_STYLE_CAST(1323)) private define ES_STYLE_PANEL_MENU_ROOT (ES_STYLE_CAST(1325)) private define ES_STYLE_PANEL_MODAL_OVERLAY (ES_STYLE_CAST(1327)) -private define ES_STYLE_PANEL_NORMAL_WINDOW_ROOT (ES_STYLE_CAST(1329)) define ES_STYLE_PANEL_POPUP (ES_STYLE_CAST(1331)) define ES_STYLE_PANEL_SHEET (ES_STYLE_CAST(1333)) private define ES_STYLE_PANEL_SHUTDOWN_OVERLAY (ES_STYLE_CAST(1335)) diff --git a/res/Theme Source.dat b/res/Theme Source.dat index 5b45997c43519b94c21f06b8cb21abec6e9f68e8..794062c4d37d37003c597a0560b39b45a43b5642 100644 GIT binary patch delta 54 zcmdl!k9qn$W_B?K1_ryfs*UUwOd>uFz74%DnTa|1>3YE#i7ENz{H>d7m`s^BpJwG_ K-29Er@dNW%CbOq-`M88J)vH25}52uRFJ&CzqoOw7qo56aIk;csQ! ie2i6qQL=FwM9MF}C^s=DJTosPzZ|4MV)G?7*AoDj5FMES diff --git a/res/Themes/Theme.dat b/res/Themes/Theme.dat index d6b9544ed934a6fd14f133013acd675551a34e8d..65f8991ac70f8e9b973dd10c0ee13758fd269b0b 100644 GIT binary patch delta 4319 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