Mercurial > dwindows
changeset 2446:b9d373d1ccf5
Add support for checking the application data directory for the images.
Copy the images into the Mac application bundle so they can be found.
Add iOS #ifdefs so it has font and file locations that can be found.
Not entirely happy with the #ifdefs in the test program, may revisit.
author | bsmith@81767d24-ef19-dc11-ae90-00e081727c95 |
---|---|
date | Fri, 09 Apr 2021 19:10:30 +0000 |
parents | a773008c7c5d |
children | 8723c01fb87e |
files | dwtest.c mac/finishup.sh |
diffstat | 2 files changed, 49 insertions(+), 3 deletions(-) [+] |
line wrap: on
line diff
--- a/dwtest.c Fri Apr 09 11:05:51 2021 +0000 +++ b/dwtest.c Fri Apr 09 19:10:30 2021 +0000 @@ -25,6 +25,10 @@ #define FIXEDFONT "9.Monaco" #define FOLDER_ICON_NAME "mac/folder" #define FILE_ICON_NAME "mac/file" +#elif defined(__IOS__) +#define FIXEDFONT "9.Monaco" +#define FOLDER_ICON_NAME "folder" +#define FILE_ICON_NAME "file" #elif GTK_MAJOR_VERSION > 1 #define FIXEDFONT "10.monospace" #define FOLDER_ICON_NAME "gtk/folder" @@ -1140,6 +1144,23 @@ image = dw_pixmap_new_from_file(textbox2, "image/test"); if(!image) image = dw_pixmap_new_from_file(textbox2, "~/test"); + if(!image) + { + char *appdir = dw_app_dir(); + char pathbuff[1025] = {0}; + int pos = (int)strlen(appdir); + + strncpy(pathbuff, appdir, 1024); +#if defined(__OS2__) || defined(__WIN32__) + pathbuff[pos] = '\\'; +#else + pathbuff[pos] = '/'; +#endif + pos++; + strncpy(&pathbuff[pos], "test", 1024-pos); + image = dw_pixmap_new_from_file(textbox2, pathbuff); + dw_debug("PathBuff: %s\n", pathbuff); + } if(image) dw_pixmap_set_transparent_color(image, DW_CLR_WHITE); @@ -2121,8 +2142,29 @@ notebookbox = dw_box_new( DW_VERT, 5 ); dw_box_pack_start( mainwindow, notebookbox, 0, 0, TRUE, TRUE, 0); - foldericon = dw_icon_load_from_file( FOLDER_ICON_NAME ); - fileicon = dw_icon_load_from_file( FILE_ICON_NAME ); + foldericon = dw_icon_load_from_file(FOLDER_ICON_NAME); + fileicon = dw_icon_load_from_file(FILE_ICON_NAME); + + if(!foldericon && !fileicon) + { + char *appdir = dw_app_dir(); + char pathbuff[1025] = {0}; + int pos = (int)strlen(appdir); + + strncpy(pathbuff, appdir, 1024); +#if defined(__OS2__) || defined(__WIN32__) + pathbuff[pos] = '\\'; +#else + pathbuff[pos] = '/'; +#endif + pos++; + strncpy(&pathbuff[pos], FOLDER_ICON_NAME, 1024-pos); + foldericon = dw_icon_load_from_file(pathbuff); + dw_debug("PathBuff: %s\n", pathbuff); + strncpy(&pathbuff[pos], FILE_ICON_NAME, 1024-pos); + fileicon = dw_icon_load_from_file(pathbuff); + dw_debug("PathBuff: %s\n", pathbuff); + } notebook = dw_notebook_new( 1, TRUE ); dw_box_pack_start( notebookbox, notebook, 100, 100, TRUE, TRUE, 0);
--- a/mac/finishup.sh Fri Apr 09 11:05:51 2021 +0000 +++ b/mac/finishup.sh Fri Apr 09 19:10:30 2021 +0000 @@ -5,9 +5,13 @@ then mkdir -p dwtest.app/Contents/MacOS mkdir -p dwtest.app/Contents/Resources + mkdir -p dwtest.app/Contents/Resources/mac cp -f $1/mac/Info.plist dwtest.app/Contents - cp -f $1/mac/PkgInfo dwtest.app/Contents + cp -f $1/mac/PkgInfo dwtest.app/Contents + cp -f $1/mac/file.png dwtest.app/Contents/Resources/mac + cp -f $1/mac/folder.png dwtest.app/Contents/Resources/mac + cp -f $1/image/test.png dwtest.app/Contents/Resources cp -f dwtest dwtest.app/Contents/MacOS # Check if there is a certificate to sign with... if [ ! -f mac/key.crt ]; then