From bc4dcb44e16196355d398e0d3fc025138cab3ddb Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Sat, 28 Jun 2025 15:16:07 +0200 Subject: [PATCH 1/2] Use the `@material` syntax --- .vscode/extensions.json | 6 ++++++ .vscode/settings.json | 9 +++++++++ CMakeLists.txt | 2 +- ui/components/component_card.slint | 2 +- ui/components/group.slint | 2 +- ui/components/text_icon_button.slint | 2 +- ui/main.slint | 2 +- ui/main_window_adapter.slint | 2 +- ui/views/actions_view.slint | 2 +- ui/views/components_view.slint | 2 +- ui/views/main_view.slint | 2 +- ui/views/navigation_view.slint | 2 +- 12 files changed, 25 insertions(+), 10 deletions(-) create mode 100644 .vscode/extensions.json create mode 100644 .vscode/settings.json diff --git a/.vscode/extensions.json b/.vscode/extensions.json new file mode 100644 index 0000000..51d5e61 --- /dev/null +++ b/.vscode/extensions.json @@ -0,0 +1,6 @@ +{ + "recommendations": [ + "rust-lang.rust-analyzer", + "Slint.slint" + ] +} diff --git a/.vscode/settings.json b/.vscode/settings.json new file mode 100644 index 0000000..59164f2 --- /dev/null +++ b/.vscode/settings.json @@ -0,0 +1,9 @@ +{ + "[rust]": { + "editor.defaultFormatter": "rust-lang.rust-analyzer" + }, + "slint.libraryPaths": { + "material": "./material-components" + } + +} diff --git a/CMakeLists.txt b/CMakeLists.txt index 6915df9..f717e32 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,7 +18,7 @@ endif (NOT Slint_FOUND) add_executable(my_application src/main.cpp) target_link_libraries(my_application PRIVATE Slint::Slint) -slint_target_sources(my_application ui/main.slint) +slint_target_sources(my_application ui/main.slint LIBRARY_PATHS material=${CMAKE_CURRENT_SOURCE_DIR}/material-components/) # On Windows, copy the Slint DLL next to the application binary so that it's found. if (WIN32) add_custom_command(TARGET my_application POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy $ $ COMMAND_EXPAND_LISTS) diff --git a/ui/components/component_card.slint b/ui/components/component_card.slint index 0773d40..5b46d4d 100644 --- a/ui/components/component_card.slint +++ b/ui/components/component_card.slint @@ -6,7 +6,7 @@ import { OutlinedCard, Typography, MaterialStyleMetrics -} from "../../material-components//material.slint"; +} from "@material/material.slint"; export component ComponentCard { in property title; diff --git a/ui/components/group.slint b/ui/components/group.slint index ab3cc6a..e65de2b 100644 --- a/ui/components/group.slint +++ b/ui/components/group.slint @@ -5,7 +5,7 @@ import { MaterialText, MaterialPalette, Typography -} from "../../material-components//material.slint"; +} from "@material/material.slint"; export component Group { in property title; diff --git a/ui/components/text_icon_button.slint b/ui/components/text_icon_button.slint index 792248a..5decea5 100644 --- a/ui/components/text_icon_button.slint +++ b/ui/components/text_icon_button.slint @@ -4,7 +4,7 @@ import { IconButton, MaterialText -} from "../../material-components//material.slint"; +} from "@material/material.slint"; export component TextIconButton { in property icon <=> button.icon; diff --git a/ui/main.slint b/ui/main.slint index 84111d5..5760269 100644 --- a/ui/main.slint +++ b/ui/main.slint @@ -1,7 +1,7 @@ // Copyright © SixtyFPS GmbH // SPDX-License-Identifier: MIT -import { MaterialWindow, MaterialWindowAdapter, ListItem } from "../material-components/material.slint"; +import { MaterialWindow, MaterialWindowAdapter, ListItem } from "@material/material.slint"; import { MainView } from "./views/main_view.slint"; import { MainWindowAdapter } from "./main_window_adapter.slint"; export { NavigationViewAdapter } from "./views/navigation_view.slint"; diff --git a/ui/main_window_adapter.slint b/ui/main_window_adapter.slint index d5c8b27..2b27022 100644 --- a/ui/main_window_adapter.slint +++ b/ui/main_window_adapter.slint @@ -1,7 +1,7 @@ // Copyright © SixtyFPS GmbH // SPDX-License-Identifier: MIT -import { MaterialPalette } from "../material-components/material.slint"; +import { MaterialPalette } from "@material/material.slint"; export global MainWindowAdapter { in property width; diff --git a/ui/views/actions_view.slint b/ui/views/actions_view.slint index c6ada63..df01722 100644 --- a/ui/views/actions_view.slint +++ b/ui/views/actions_view.slint @@ -34,7 +34,7 @@ import { HorizontalDivider, Dialog, FullscreenDialog -} from "../../material-components//material.slint"; +} from "@material/material.slint"; import { Group } from "../components/group.slint"; import { ComponentCard } from "../components/component_card.slint"; diff --git a/ui/views/components_view.slint b/ui/views/components_view.slint index 25ec2db..8293f51 100644 --- a/ui/views/components_view.slint +++ b/ui/views/components_view.slint @@ -35,7 +35,7 @@ import { HorizontalDivider, Dialog, FullscreenDialog -} from "../../material-components//material.slint"; +} from "@material/material.slint"; import { ActionsView } from "./actions_view.slint"; import { NavigationView } from "./navigation_view.slint"; diff --git a/ui/views/main_view.slint b/ui/views/main_view.slint index 3089c7c..87c9707 100644 --- a/ui/views/main_view.slint +++ b/ui/views/main_view.slint @@ -16,7 +16,7 @@ import { NavigationBar, SmallAppBar -} from "../../material-components//material.slint"; +} from "@material/material.slint"; export enum Views { components diff --git a/ui/views/navigation_view.slint b/ui/views/navigation_view.slint index d809c51..8c7f0ee 100644 --- a/ui/views/navigation_view.slint +++ b/ui/views/navigation_view.slint @@ -30,7 +30,7 @@ import { Switch, Slider, TextField -} from "../../material-components//material.slint"; +} from "@material/material.slint"; import { Group } from "../components/group.slint"; import { ComponentCard } from "../components/component_card.slint"; From 98f0928cea28d55fc42f170452ae1320d95427b1 Mon Sep 17 00:00:00 2001 From: Olivier Goffart Date: Sat, 28 Jun 2025 15:19:40 +0200 Subject: [PATCH 2/2] Point `@material` to `material.slint` --- .vscode/extensions.json | 1 - .vscode/settings.json | 6 +----- CMakeLists.txt | 2 +- ui/components/component_card.slint | 2 +- ui/components/group.slint | 2 +- ui/components/text_icon_button.slint | 2 +- ui/main.slint | 2 +- ui/main_window_adapter.slint | 2 +- ui/views/actions_view.slint | 2 +- ui/views/components_view.slint | 2 +- ui/views/main_view.slint | 2 +- ui/views/navigation_view.slint | 2 +- 12 files changed, 11 insertions(+), 16 deletions(-) diff --git a/.vscode/extensions.json b/.vscode/extensions.json index 51d5e61..8c44e99 100644 --- a/.vscode/extensions.json +++ b/.vscode/extensions.json @@ -1,6 +1,5 @@ { "recommendations": [ - "rust-lang.rust-analyzer", "Slint.slint" ] } diff --git a/.vscode/settings.json b/.vscode/settings.json index 59164f2..489b17d 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -1,9 +1,5 @@ { - "[rust]": { - "editor.defaultFormatter": "rust-lang.rust-analyzer" - }, "slint.libraryPaths": { - "material": "./material-components" + "material": "./material-components/material.slint" } - } diff --git a/CMakeLists.txt b/CMakeLists.txt index f717e32..04b6366 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -18,7 +18,7 @@ endif (NOT Slint_FOUND) add_executable(my_application src/main.cpp) target_link_libraries(my_application PRIVATE Slint::Slint) -slint_target_sources(my_application ui/main.slint LIBRARY_PATHS material=${CMAKE_CURRENT_SOURCE_DIR}/material-components/) +slint_target_sources(my_application ui/main.slint LIBRARY_PATHS material=${CMAKE_CURRENT_SOURCE_DIR}/material-components/material.slint) # On Windows, copy the Slint DLL next to the application binary so that it's found. if (WIN32) add_custom_command(TARGET my_application POST_BUILD COMMAND ${CMAKE_COMMAND} -E copy $ $ COMMAND_EXPAND_LISTS) diff --git a/ui/components/component_card.slint b/ui/components/component_card.slint index 5b46d4d..c2afedb 100644 --- a/ui/components/component_card.slint +++ b/ui/components/component_card.slint @@ -6,7 +6,7 @@ import { OutlinedCard, Typography, MaterialStyleMetrics -} from "@material/material.slint"; +} from "@material"; export component ComponentCard { in property title; diff --git a/ui/components/group.slint b/ui/components/group.slint index e65de2b..6e26170 100644 --- a/ui/components/group.slint +++ b/ui/components/group.slint @@ -5,7 +5,7 @@ import { MaterialText, MaterialPalette, Typography -} from "@material/material.slint"; +} from "@material"; export component Group { in property title; diff --git a/ui/components/text_icon_button.slint b/ui/components/text_icon_button.slint index 5decea5..89f74ee 100644 --- a/ui/components/text_icon_button.slint +++ b/ui/components/text_icon_button.slint @@ -4,7 +4,7 @@ import { IconButton, MaterialText -} from "@material/material.slint"; +} from "@material"; export component TextIconButton { in property icon <=> button.icon; diff --git a/ui/main.slint b/ui/main.slint index 5760269..b5bc02a 100644 --- a/ui/main.slint +++ b/ui/main.slint @@ -1,7 +1,7 @@ // Copyright © SixtyFPS GmbH // SPDX-License-Identifier: MIT -import { MaterialWindow, MaterialWindowAdapter, ListItem } from "@material/material.slint"; +import { MaterialWindow, MaterialWindowAdapter, ListItem } from "@material"; import { MainView } from "./views/main_view.slint"; import { MainWindowAdapter } from "./main_window_adapter.slint"; export { NavigationViewAdapter } from "./views/navigation_view.slint"; diff --git a/ui/main_window_adapter.slint b/ui/main_window_adapter.slint index 2b27022..7aee2f0 100644 --- a/ui/main_window_adapter.slint +++ b/ui/main_window_adapter.slint @@ -1,7 +1,7 @@ // Copyright © SixtyFPS GmbH // SPDX-License-Identifier: MIT -import { MaterialPalette } from "@material/material.slint"; +import { MaterialPalette } from "@material"; export global MainWindowAdapter { in property width; diff --git a/ui/views/actions_view.slint b/ui/views/actions_view.slint index df01722..67b4a3c 100644 --- a/ui/views/actions_view.slint +++ b/ui/views/actions_view.slint @@ -34,7 +34,7 @@ import { HorizontalDivider, Dialog, FullscreenDialog -} from "@material/material.slint"; +} from "@material"; import { Group } from "../components/group.slint"; import { ComponentCard } from "../components/component_card.slint"; diff --git a/ui/views/components_view.slint b/ui/views/components_view.slint index 8293f51..9e75ea7 100644 --- a/ui/views/components_view.slint +++ b/ui/views/components_view.slint @@ -35,7 +35,7 @@ import { HorizontalDivider, Dialog, FullscreenDialog -} from "@material/material.slint"; +} from "@material"; import { ActionsView } from "./actions_view.slint"; import { NavigationView } from "./navigation_view.slint"; diff --git a/ui/views/main_view.slint b/ui/views/main_view.slint index 87c9707..d71514f 100644 --- a/ui/views/main_view.slint +++ b/ui/views/main_view.slint @@ -16,7 +16,7 @@ import { NavigationBar, SmallAppBar -} from "@material/material.slint"; +} from "@material"; export enum Views { components diff --git a/ui/views/navigation_view.slint b/ui/views/navigation_view.slint index 8c7f0ee..e489782 100644 --- a/ui/views/navigation_view.slint +++ b/ui/views/navigation_view.slint @@ -30,7 +30,7 @@ import { Switch, Slider, TextField -} from "@material/material.slint"; +} from "@material"; import { Group } from "../components/group.slint"; import { ComponentCard } from "../components/component_card.slint";