Rewrite plat_init_rom_paths in Qt frontend

This commit is contained in:
David Hrdlička
2022-04-08 00:58:38 +02:00
parent 8e1b14c570
commit a780d9a241
7 changed files with 28 additions and 67 deletions

View File

@@ -19,17 +19,16 @@
# Pick the bundle icon depending on the release channel
if(RELEASE_BUILD)
set(APP_ICON_MACOSX icons/release/86Box.icns)
target_sources(86Box PRIVATE icons/release/86Box.icns)
elseif(BETA_BUILD)
set(APP_ICON_MACOSX icons/beta/86Box.icns)
target_sources(86Box PRIVATE icons/beta/86Box.icns)
elseif(ALPHA_BUILD)
set(APP_ICON_MACOSX icons/dev/86Box.icns)
target_sources(86Box PRIVATE icons/dev/86Box.icns)
else()
set(APP_ICON_MACOSX icons/branch/86Box.icns)
target_sources(86Box PRIVATE icons/branch/86Box.icns)
endif()
target_link_libraries(86Box "-framework AppKit")
target_sources(86Box PRIVATE macOSXGlue.m ${APP_ICON_MACOSX})
# Make sure the icon is copied to the bundle
set_source_files_properties(${APP_ICON_MACOSX}

View File

@@ -1,23 +0,0 @@
//
// macOSXGlue.h
// TestSDL
//
// Created by Jerome Vernet on 18/11/2021.
// Copyright © 2021 Jerome Vernet. All rights reserved.
//
#ifndef macOSXGlue_h
#define macOSXGlue_h
#include <CoreFoundation/CFBase.h>
CF_IMPLICIT_BRIDGING_ENABLED
CF_EXTERN_C_BEGIN
void getDefaultROMPath(char*);
int toto();
CF_EXTERN_C_END
CF_IMPLICIT_BRIDGING_DISABLED
#endif /* macOSXGlue_h */

View File

@@ -1,43 +0,0 @@
//
// macOSXGlue.m
// 86BOx MacoSx Glue....
// Todo: so much
// Created by Jerome Vernet on 18/11/2021.
// Copyright © 2021 Jerome Vernet. All rights reserved.
//
#import <Foundation/Foundation.h>
void getDefaultROMPath(char* Path)
{
NSFileManager* sharedFM = [NSFileManager defaultManager];
NSArray* possibleURLs = [sharedFM URLsForDirectory:NSApplicationSupportDirectory
inDomains:NSUserDomainMask];
NSURL* appSupportDir = nil;
NSURL* appDirectory = nil;
if ([possibleURLs count] >= 1) {
// Use the first directory (if multiple are returned)
appSupportDir = [possibleURLs objectAtIndex:0];
}
// If a valid app support directory exists, add the
// app's bundle ID to it to specify the final directory.
if (appSupportDir) {
NSString* appBundleID = [[NSBundle mainBundle] bundleIdentifier];
appDirectory = [appSupportDir URLByAppendingPathComponent:appBundleID];
appDirectory=[appDirectory URLByAppendingPathComponent:@"roms"];
}
// create ~/Library/Application Support/... stuff
NSError* theError = nil;
if (![sharedFM createDirectoryAtURL:appDirectory withIntermediateDirectories:YES
attributes:nil error:&theError])
{
// Handle the error.
NSLog(@"Error creating user library rom path");
} else NSLog(@"Create user rom path sucessfull");
strcpy(Path,[appDirectory fileSystemRepresentation]);
// return appDirectory;
}