# HG changeset patch # User Olaf Wintermann # Date 1731354334 -3600 # Node ID 5de33c2d94c6d9bd2503e22e437ba9a514032f61 # Parent 641dcc79e0ef11cf32b8feffa3690901f2700205 fix text/image preview loading diff -r 641dcc79e0ef -r 5de33c2d94c6 application/davcontroller.c --- a/application/davcontroller.c Sun Nov 10 15:30:46 2024 +0100 +++ b/application/davcontroller.c Mon Nov 11 20:45:34 2024 +0100 @@ -882,7 +882,7 @@ file->download->current_file_downloaded = 0; file->download->current_file_size = file->size; - FILE *f = fopen(file->to, "wb"); + FILE *f = sys_fopen(file->to, "wb"); if (!f) { return 0; } @@ -1299,7 +1299,7 @@ memset(rd, 0, 8); dav_rand_bytes(rd, 8); char *hex = util_hexstr(rd, 8); - cxmutstr tmp = cx_asprintf("%sdownload-%s-%s", dir, name, hex); + cxmutstr tmp = cx_asprintf("%sdownload-%s-%s", dir, hex, name); return tmp.ptr; } @@ -1322,7 +1322,7 @@ } } else if(doc->type == DAV_RESOURCE_VIEW_IMAGE) { char *tmp = gen_tmp_download_filename(res->name); - FILE *f = fopen(tmp, "w"); + FILE *f = sys_fopen(tmp, "wb"); if(f) { int err = dav_get_content(res, f, (dav_write_func)fwrite); if(!err) { @@ -1447,7 +1447,6 @@ ui_set(doc->text, doc->text_content->space); } else if(doc->type == DAV_RESOURCE_VIEW_IMAGE) { ui_image_load_file(doc->image, doc->tmp_file); - unlink(doc->tmp_file); } ui_set(doc->tabview, 1); diff -r 641dcc79e0ef -r 5de33c2d94c6 application/window.c --- a/application/window.c Sun Nov 10 15:30:46 2024 +0100 +++ b/application/window.c Mon Nov 11 20:45:34 2024 +0100 @@ -117,11 +117,17 @@ if(doc->loaded) { dav_resourceviewer_destroy(doc); } + + if (doc->tmp_file) { + unlink(doc->tmp_file); + free(doc->tmp_file); + } } void resourceviewer_new(DavBrowser *browser, const char *path, DavResourceViewType type) { const char *name = util_resource_name(path); UiObject *win = ui_simple_window(name, NULL); + ui_window_size(win, 600, 600); DavResourceViewer *doc = dav_resourceviewer_create(browser->sn, path, type); ui_attach_document(win->ctx, doc); diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav.sln --- a/make/vs/idav.sln Sun Nov 10 15:30:46 2024 +0100 +++ b/make/vs/idav.sln Mon Nov 11 20:45:34 2024 +0100 @@ -9,8 +9,6 @@ EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "winui", "..\..\ui\winui\winui.vcxproj", "{59F97886-BF49-4B3F-9EF6-FA7A84F3AB56}" EndProject -Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "uicommon", "uicommon\uicommon.vcxproj", "{8B88698E-C185-4383-99FE-0C34D6DEED2E}" -EndProject Project("{8BC9CEB8-8B4A-11D0-8D11-00A0C91BC942}") = "idav", "idav\idav.vcxproj", "{F975D652-779E-4945-BFC2-8C649C6F9938}" EndProject Global @@ -65,18 +63,6 @@ {59F97886-BF49-4B3F-9EF6-FA7A84F3AB56}.Release|x86.ActiveCfg = Release|Win32 {59F97886-BF49-4B3F-9EF6-FA7A84F3AB56}.Release|x86.Build.0 = Release|Win32 {59F97886-BF49-4B3F-9EF6-FA7A84F3AB56}.Release|x86.Deploy.0 = Release|Win32 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Debug|ARM64.ActiveCfg = Debug|x64 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Debug|ARM64.Build.0 = Debug|x64 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Debug|x64.ActiveCfg = Debug|x64 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Debug|x64.Build.0 = Debug|x64 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Debug|x86.ActiveCfg = Debug|Win32 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Debug|x86.Build.0 = Debug|Win32 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Release|ARM64.ActiveCfg = Release|x64 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Release|ARM64.Build.0 = Release|x64 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Release|x64.ActiveCfg = Release|x64 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Release|x64.Build.0 = Release|x64 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Release|x86.ActiveCfg = Release|Win32 - {8B88698E-C185-4383-99FE-0C34D6DEED2E}.Release|x86.Build.0 = Release|Win32 {F975D652-779E-4945-BFC2-8C649C6F9938}.Debug|ARM64.ActiveCfg = Debug|x64 {F975D652-779E-4945-BFC2-8C649C6F9938}.Debug|ARM64.Build.0 = Debug|x64 {F975D652-779E-4945-BFC2-8C649C6F9938}.Debug|x64.ActiveCfg = Debug|x64 diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/idav.vcxproj --- a/make/vs/idav/idav.vcxproj Sun Nov 10 15:30:46 2024 +0100 +++ b/make/vs/idav/idav.vcxproj Mon Nov 11 20:45:34 2024 +0100 @@ -164,7 +164,7 @@ - + @@ -172,7 +172,7 @@ - + diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/idav.vcxproj.filters --- a/make/vs/idav/idav.vcxproj.filters Sun Nov 10 15:30:46 2024 +0100 +++ b/make/vs/idav/idav.vcxproj.filters Mon Nov 11 20:45:34 2024 +0100 @@ -34,10 +34,10 @@ src - + src - + src @@ -54,10 +54,10 @@ src - + src - + src diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.exe.recipe --- a/make/vs/idav/x64/Debug/idav.exe.recipe Sun Nov 10 15:30:46 2024 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,11 +0,0 @@ - - - - - C:\Users\Olaf\Projekte\idav\make\vs\x64\Debug\idav.exe - - - - - - \ No newline at end of file diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.ilk Binary file make/vs/idav/x64/Debug/idav.ilk has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.log --- a/make/vs/idav/x64/Debug/idav.log Sun Nov 10 15:30:46 2024 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,4 +0,0 @@ - main.c - idav.vcxproj -> C:\Users\Olaf\Projekte\idav\make\vs\x64\Debug\idav.exe - C:\Users\Olaf\Projekte\idav\make\vs\packages\Microsoft.WindowsAppSDK.1.3.230331000\build\native\..\..\runtimes\win10-x64\native\Microsoft.WindowsAppRuntime.Bootstrap.dll - 1 Datei(en) kopiert diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.tlog/CL.command.1.tlog Binary file make/vs/idav/x64/Debug/idav.tlog/CL.command.1.tlog has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.tlog/CL.read.1.tlog Binary file make/vs/idav/x64/Debug/idav.tlog/CL.read.1.tlog has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.tlog/CL.write.1.tlog Binary file make/vs/idav/x64/Debug/idav.tlog/CL.write.1.tlog has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.tlog/Cl.items.tlog --- a/make/vs/idav/x64/Debug/idav.tlog/Cl.items.tlog Sun Nov 10 15:30:46 2024 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ -C:\Users\Olaf\Projekte\idav\make\vs\idav\main.c;C:\Users\Olaf\Projekte\idav\make\vs\idav\x64\Debug\main.obj diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.tlog/CopyLocal.read.1u.tlog Binary file make/vs/idav/x64/Debug/idav.tlog/CopyLocal.read.1u.tlog has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.tlog/CopyLocal.write.1u.tlog Binary file make/vs/idav/x64/Debug/idav.tlog/CopyLocal.write.1u.tlog has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.tlog/idav.lastbuildstate --- a/make/vs/idav/x64/Debug/idav.tlog/idav.lastbuildstate Sun Nov 10 15:30:46 2024 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -PlatformToolSet=v143:VCToolArchitecture=Native64Bit:VCToolsVersion=14.37.32822:TargetPlatformVersion=10.0.22621.0:VcpkgTriplet=x64-windows: -Debug|x64|C:\Users\Olaf\Projekte\idav\make\vs\| diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.tlog/link.command.1.tlog Binary file make/vs/idav/x64/Debug/idav.tlog/link.command.1.tlog has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.tlog/link.read.1.tlog Binary file make/vs/idav/x64/Debug/idav.tlog/link.read.1.tlog has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.tlog/link.write.1.tlog Binary file make/vs/idav/x64/Debug/idav.tlog/link.write.1.tlog has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.vcxproj.AssemblyReference.cache Binary file make/vs/idav/x64/Debug/idav.vcxproj.AssemblyReference.cache has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.vcxproj.CopyComplete diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/idav.vcxproj.FileListAbsolute.txt --- a/make/vs/idav/x64/Debug/idav.vcxproj.FileListAbsolute.txt Sun Nov 10 15:30:46 2024 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,2 +0,0 @@ -C:\Users\Olaf\Projekte\idav\make\vs\idav\x64\Debug\idav.vcxproj.AssemblyReference.cache -C:\Users\Olaf\Projekte\idav\make\vs\idav\x64\Debug\idav.vcxproj.CopyComplete diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/main.obj Binary file make/vs/idav/x64/Debug/main.obj has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/vc143.idb Binary file make/vs/idav/x64/Debug/vc143.idb has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/vc143.pdb Binary file make/vs/idav/x64/Debug/vc143.pdb has changed diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/idav/x64/Debug/vcpkg.applocal.log --- a/make/vs/idav/x64/Debug/vcpkg.applocal.log Sun Nov 10 15:30:46 2024 +0100 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,1 +0,0 @@ - diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/libidav/libidav.vcxproj --- a/make/vs/libidav/libidav.vcxproj Sun Nov 10 15:30:46 2024 +0100 +++ b/make/vs/libidav/libidav.vcxproj Mon Nov 11 20:45:34 2024 +0100 @@ -149,6 +149,7 @@ + @@ -162,6 +163,7 @@ + diff -r 641dcc79e0ef -r 5de33c2d94c6 make/vs/libidav/libidav.vcxproj.filters --- a/make/vs/libidav/libidav.vcxproj.filters Sun Nov 10 15:30:46 2024 +0100 +++ b/make/vs/libidav/libidav.vcxproj.filters Mon Nov 11 20:45:34 2024 +0100 @@ -48,6 +48,9 @@ Quelldateien + + Quelldateien + @@ -83,5 +86,8 @@ Quelldateien + + Headerdateien + \ No newline at end of file diff -r 641dcc79e0ef -r 5de33c2d94c6 ucx/cx/map.h --- a/ucx/cx/map.h Sun Nov 10 15:30:46 2024 +0100 +++ b/ucx/cx/map.h Mon Nov 11 20:45:34 2024 +0100 @@ -633,113 +633,7 @@ (void) map->cl->remove(map, cx_hash_key_str(key), false); } -/** - * Removes a key/value-pair from the map by using the key. - * - * This function can be used when the map is storing pointers, - * in order to retrieve the pointer from the map without invoking - * any destructor function. Sometimes you do not want the pointer - * to be returned - in that case (instead of suppressing the "unused - * result" warning) you can use cxMapDetach(). - * - * If this map is not storing pointers, this function behaves like - * cxMapRemove() and returns \c NULL. - * - * @param map the map - * @param key the key - * @return the stored pointer or \c NULL if either the key is not present - * in the map or the map is not storing pointers - * @see cxMapStorePointers() - * @see cxMapDetach() - */ -__attribute__((__nonnull__, __warn_unused_result__)) -static inline void *cxMapRemoveAndGet( - CxMap *map, - CxHashKey key -) { - return map->cl->remove(map, key, !map->store_pointer); -} -/** - * Removes a key/value-pair from the map by using the key. - * - * This function can be used when the map is storing pointers, - * in order to retrieve the pointer from the map without invoking - * any destructor function. Sometimes you do not want the pointer - * to be returned - in that case (instead of suppressing the "unused - * result" warning) you can use cxMapDetach(). - * - * If this map is not storing pointers, this function behaves like - * cxMapRemove() and returns \c NULL. - * - * @param map the map - * @param key the key - * @return the stored pointer or \c NULL if either the key is not present - * in the map or the map is not storing pointers - * @see cxMapStorePointers() - * @see cxMapDetach() - */ -__attribute__((__nonnull__, __warn_unused_result__)) -static inline void *cxMapRemoveAndGet( - CxMap *map, - cxstring key -) { - return map->cl->remove(map, cx_hash_key_cxstr(key), !map->store_pointer); -} - -/** - * Removes a key/value-pair from the map by using the key. - * - * This function can be used when the map is storing pointers, - * in order to retrieve the pointer from the map without invoking - * any destructor function. Sometimes you do not want the pointer - * to be returned - in that case (instead of suppressing the "unused - * result" warning) you can use cxMapDetach(). - * - * If this map is not storing pointers, this function behaves like - * cxMapRemove() and returns \c NULL. - * - * @param map the map - * @param key the key - * @return the stored pointer or \c NULL if either the key is not present - * in the map or the map is not storing pointers - * @see cxMapStorePointers() - * @see cxMapDetach() - */ -__attribute__((__nonnull__, __warn_unused_result__)) -static inline void *cxMapRemoveAndGet( - CxMap *map, - cxmutstr key -) { - return map->cl->remove(map, cx_hash_key_cxstr(key), !map->store_pointer); -} - -/** - * Removes a key/value-pair from the map by using the key. - * - * This function can be used when the map is storing pointers, - * in order to retrieve the pointer from the map without invoking - * any destructor function. Sometimes you do not want the pointer - * to be returned - in that case (instead of suppressing the "unused - * result" warning) you can use cxMapDetach(). - * - * If this map is not storing pointers, this function behaves like - * cxMapRemove() and returns \c NULL. - * - * @param map the map - * @param key the key - * @return the stored pointer or \c NULL if either the key is not present - * in the map or the map is not storing pointers - * @see cxMapStorePointers() - * @see cxMapDetach() - */ -__attribute__((__nonnull__, __warn_unused_result__)) -static inline void *cxMapRemoveAndGet( - CxMap *map, - const char *key -) { - return map->cl->remove(map, cx_hash_key_str(key), !map->store_pointer); -} #else // __cplusplus diff -r 641dcc79e0ef -r 5de33c2d94c6 ui/common/context.c --- a/ui/common/context.c Sun Nov 10 15:30:46 2024 +0100 +++ b/ui/common/context.c Mon Nov 11 20:45:34 2024 +0100 @@ -41,6 +41,7 @@ #include "document.h" #include "types.h" + static UiContext* global_context; void uic_init_global_context(void) { diff -r 641dcc79e0ef -r 5de33c2d94c6 ui/common/document.c --- a/ui/common/document.c Sun Nov 10 15:30:46 2024 +0100 +++ b/ui/common/document.c Mon Nov 11 20:45:34 2024 +0100 @@ -35,6 +35,7 @@ #include #include + static CxMap *documents; void uic_docmgr_init() { diff -r 641dcc79e0ef -r 5de33c2d94c6 ui/common/menu.c --- a/ui/common/menu.c Sun Nov 10 15:30:46 2024 +0100 +++ b/ui/common/menu.c Mon Nov 11 20:45:34 2024 +0100 @@ -34,6 +34,7 @@ #include #include + static UiMenu *menus_begin; static UiMenu *menus_end; static CxList *current; diff -r 641dcc79e0ef -r 5de33c2d94c6 ui/common/properties.c --- a/ui/common/properties.c Sun Nov 10 15:30:46 2024 +0100 +++ b/ui/common/properties.c Mon Nov 11 20:45:34 2024 +0100 @@ -60,6 +60,14 @@ return ui_configfile(NULL); } +#ifndef _WIN32 +#define UI_PATH_SEPARATOR '/' +#define UI_ENV_HOME "HOME" +#else +#define UI_PATH_SEPARATOR '\\' +#define UI_ENV_HOME "USERPROFILE" +#endif + char* ui_configfile(char *name) { const char *appname = ui_appname(); if(!appname) { @@ -70,7 +78,7 @@ cxBufferInit(&buf, NULL, 128, cxDefaultAllocator, CX_BUFFER_FREE_CONTENTS|CX_BUFFER_AUTO_EXTEND); // add base dir - char *homeenv = getenv("HOME"); + char *homeenv = getenv(UI_ENV_HOME); if(homeenv == NULL) { cxBufferDestroy(&buf); return NULL; @@ -78,19 +86,22 @@ cxstring home = cx_str(homeenv); cxBufferWrite(home.ptr, 1, home.length, &buf); - if(home.ptr[home.length-1] != '/') { - cxBufferPut(&buf, '/'); + if(home.ptr[home.length-1] != UI_PATH_SEPARATOR) { + cxBufferPut(&buf, UI_PATH_SEPARATOR); } #ifdef UI_COCOA // on OS X the app dir is $HOME/Library/Application Support/$APPNAME/ - ucx_buffer_puts(buf, "Library/Application Support/"); + cxBufferPutString(&buf, "Library/Application Support/"); +#elif defined(_WIN32) + // on Windows the app dir is $USERPROFILE/AppData/Local/$APPNAME/ + cxBufferPutString(&buf, "AppData\\Local\\"); #else // app dir is $HOME/.$APPNAME/ cxBufferPut(&buf, '.'); #endif cxBufferPutString(&buf, appname); - cxBufferPut(&buf, '/'); + cxBufferPut(&buf, UI_PATH_SEPARATOR); // add file name if(name) { diff -r 641dcc79e0ef -r 5de33c2d94c6 ui/ui/properties.h --- a/ui/ui/properties.h Sun Nov 10 15:30:46 2024 +0100 +++ b/ui/ui/properties.h Mon Nov 11 20:45:34 2024 +0100 @@ -30,12 +30,13 @@ #define UI_PROPERTIES_H #include "toolkit.h" +#include #ifdef __cplusplus extern "C" { #endif -typedef struct CxMap UiProperties; +typedef CxMap UiProperties; char* ui_get_property(char *name); void ui_set_property(char *name, char *value); diff -r 641dcc79e0ef -r 5de33c2d94c6 ui/winui/text.cpp --- a/ui/winui/text.cpp Sun Nov 10 15:30:46 2024 +0100 +++ b/ui/winui/text.cpp Mon Nov 11 20:45:34 2024 +0100 @@ -56,7 +56,9 @@ UiObject* current = uic_current_obj(obj); // create textarea and toolkit wrapper - RichEditBox textarea = RichEditBox(); + TextBox textarea = TextBox(); + textarea.AcceptsReturn(true); + ScrollViewer::SetVerticalScrollBarVisibility(textarea, ScrollBarVisibility::Auto); UIElement elm = textarea; UiWidget* widget = new UiWidget(elm); ui_context_add_widget_destructor(current->ctx, widget); @@ -97,14 +99,46 @@ } +// -------------------------- getter/setter for textarea UiText -------------------------- +char* ui_wtext_get(UiText *text, std::wstring &value) { + if (text->value.ptr) { + text->value.free(text->value.ptr); + } + + text->value.ptr = wchar2utf8(value.c_str(), value.length()); + text->value.free = free; + + return text->value.ptr; +} + +std::wstring ui_wtext_set(UiText *text, const char* value) { + if (text->value.ptr) { + text->value.free(text->value.ptr); + } + + text->value.ptr = _strdup(value); + text->value.free = free; + + int len; + wchar_t* wstr = str2wstr(value, &len); + std::wstring s(wstr); + free(wstr); + + return s; +} extern "C" char* ui_textarea_get(UiText *text) { - return NULL; + UiWidget* widget = (UiWidget*)text->obj; + TextBox box = widget->uielement.as(); + std::wstring wstr(box.Text()); + return ui_wtext_get(text, wstr); } extern "C" void ui_textarea_set(UiText *text, const char *newvalue) { - + UiWidget* widget = (UiWidget*)text->obj; + TextBox box = widget->uielement.as(); + box.Text(ui_wtext_set(text, newvalue)); } extern "C" char* ui_textarea_getsubstr(UiText *text, int begin, int end) { diff -r 641dcc79e0ef -r 5de33c2d94c6 ui/winui/text.h --- a/ui/winui/text.h Sun Nov 10 15:30:46 2024 +0100 +++ b/ui/winui/text.h Mon Nov 11 20:45:34 2024 +0100 @@ -60,6 +60,9 @@ void* ondropdata; }; +char* ui_wtext_get(UiText *text, std::wstring &value); +std::wstring ui_wtext_set(UiText *text, const char* value); + char* ui_wstring_get(UiString* str, std::wstring& value); std::wstring ui_wstring_set(UiString* str, const char* value); diff -r 641dcc79e0ef -r 5de33c2d94c6 ui/winui/toolkit.cpp --- a/ui/winui/toolkit.cpp Sun Nov 10 15:30:46 2024 +0100 +++ b/ui/winui/toolkit.cpp Mon Nov 11 20:45:34 2024 +0100 @@ -36,6 +36,7 @@ #include "../common/context.h" #include "../common/document.h" #include "../common/toolbar.h" +#include "../common/properties.h" #include "icons.h" @@ -166,6 +167,8 @@ uic_init_global_context(); uic_docmgr_init(); uic_toolbar_init(); + + uic_load_app_properties(); } const char* ui_appname() { diff -r 641dcc79e0ef -r 5de33c2d94c6 ui/winui/winui.vcxproj --- a/ui/winui/winui.vcxproj Sun Nov 10 15:30:46 2024 +0100 +++ b/ui/winui/winui.vcxproj Mon Nov 11 20:45:34 2024 +0100 @@ -88,8 +88,9 @@ - _DEBUG;DISABLE_XAML_GENERATED_MAIN__;UI_WINUI;UI_WINUI_PCH;%(PreprocessorDefinitions) + _DEBUG;DISABLE_XAML_GENERATED_MAIN__;UI_WINUI;UI_WINUI_PCH;_CRT_SECURE_NO_WARNINGS;_CRT_NONSTDC_NO_WARNINGS;%(PreprocessorDefinitions) $(SolutionDir)..\..\ucx;%(AdditionalIncludeDirectories) + stdc17 shell32.lib;gdi32.lib;%(AdditionalDependencies) @@ -113,6 +114,14 @@ + + + + + + + + @@ -160,6 +169,30 @@ + + NotUsing + + + NotUsing + + + NotUsing + + + NotUsing + + + NotUsing + + + NotUsing + + + NotUsing + + + NotUsing + @@ -226,9 +259,6 @@ {27da0164-3475-43e2-a1a4-a5d07d305749} - - {8b88698e-c185-4383-99fe-0c34d6deed2e} -