ui/winui/icons.h

branch
newapi
changeset 215
1bd5534c395d
parent 213
7e39db525fd9
child 216
391c2c723029
--- a/ui/winui/icons.h	Fri Oct 13 11:26:47 2023 +0200
+++ b/ui/winui/icons.h	Fri Oct 13 15:20:54 2023 +0200
@@ -30,12 +30,33 @@
 
 #include "../ui/toolkit.h"
 
+
+
 struct UiIcon {
-	winrt::Microsoft::UI::Xaml::Controls::IconElement icon;
+	//virtual ~UiIcon() = 0;
+	
+	virtual winrt::Microsoft::UI::Xaml::Controls::IconElement getIcon() = 0;
 };
 
-void ui_init_symbol_icons();
+struct UiSymbolIcon : UiIcon {
+	winrt::Microsoft::UI::Xaml::Controls::Symbol symbol;
+
+	UiSymbolIcon(winrt::Microsoft::UI::Xaml::Controls::Symbol sym);
+
+	~UiSymbolIcon();
+
+	winrt::Microsoft::UI::Xaml::Controls::IconElement getIcon();
+};
 
-void ui_add_symbol_icon(std::string name, winrt::Microsoft::UI::Xaml::Controls::Symbol symbol);
+struct UiImageIcon : UiIcon {
+	winrt::Windows::Foundation::Uri uri{ nullptr };
+
+	UiImageIcon(const char* uristr);
+
+	~UiImageIcon();
+
+	winrt::Microsoft::UI::Xaml::Controls::IconElement getIcon();
+};
+
 
 winrt::Microsoft::UI::Xaml::Controls::IconElement ui_get_icon(const char* name);

mercurial