From 05c5bd1bdb6a559a220208443e3bb4397469438c Mon Sep 17 00:00:00 2001 From: omigamedev Date: Mon, 6 Nov 2017 00:03:57 +0000 Subject: [PATCH] update Xcode and android projects --- android/CMakeLists.txt | 4 ++++ engine.xcodeproj/project.pbxproj | 36 ++++++++++++++++++++++++++++++++ engine/asset.cpp | 1 + engine/canvas.cpp | 2 +- engine/node_dialog_cloud.cpp | 31 +-------------------------- 5 files changed, 43 insertions(+), 31 deletions(-) diff --git a/android/CMakeLists.txt b/android/CMakeLists.txt index bb46871..d743251 100644 --- a/android/CMakeLists.txt +++ b/android/CMakeLists.txt @@ -43,6 +43,7 @@ add_library( ../engine/shader.cpp ../engine/shape.cpp ../engine/app.cpp + ../engine/app_cloud.cpp ../engine/app_dialogs.cpp ../engine/app_events.cpp ../engine/app_layout.cpp @@ -60,6 +61,8 @@ add_library( ../engine/node_canvas.cpp ../engine/node_checkbox.cpp ../engine/node_color_quad.cpp + ../engine/node_dialog_browse.cpp + ../engine/node_dialog_cloud.cpp ../engine/node_dialog_open.cpp ../engine/node_dialog_layer_rename.cpp ../engine/node_icon.cpp @@ -92,6 +95,7 @@ target_include_directories(native-lib PRIVATE ../libs/jpeg ../libs/curl-android-ios/prebuilt-with-ssl/android/include ../libs/poly2tri/poly2tri + ../libs/base64 ) # add lib dependencies diff --git a/engine.xcodeproj/project.pbxproj b/engine.xcodeproj/project.pbxproj index 39d4c35..9c19065 100644 --- a/engine.xcodeproj/project.pbxproj +++ b/engine.xcodeproj/project.pbxproj @@ -157,6 +157,16 @@ AD95AEC71E41EDEC002DD03A /* pch.cpp in Sources */ = {isa = PBXBuildFile; fileRef = AD95AEC51E41EDEC002DD03A /* pch.cpp */; }; ADB1C3DA1EA3A156009A65BD /* event.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADB1C3D81EA3A156009A65BD /* event.cpp */; }; ADB61C821E3D38450093280F /* util.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADB61C801E3D38450093280F /* util.cpp */; }; + ADBC8C4A1FAE7CC40094B339 /* node_dialog_browse.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADBC8C471FAE7CC20094B339 /* node_dialog_browse.cpp */; }; + ADBC8C4B1FAE7CC40094B339 /* app_commands.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADBC8C481FAE7CC30094B339 /* app_commands.cpp */; }; + ADBC8C4E1FAE7D360094B339 /* node_dialog_browse.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADBC8C471FAE7CC20094B339 /* node_dialog_browse.cpp */; }; + ADBC8C4F1FAE7D370094B339 /* node_dialog_browse.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADBC8C471FAE7CC20094B339 /* node_dialog_browse.cpp */; }; + ADBC8C531FAFD0370094B339 /* app_cloud.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADBC8C511FAFD0360094B339 /* app_cloud.cpp */; }; + ADBC8C541FAFD0370094B339 /* node_dialog_cloud.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADBC8C521FAFD0370094B339 /* node_dialog_cloud.cpp */; }; + ADBC8C551FAFD0520094B339 /* app_cloud.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADBC8C511FAFD0360094B339 /* app_cloud.cpp */; }; + ADBC8C561FAFD0530094B339 /* app_cloud.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADBC8C511FAFD0360094B339 /* app_cloud.cpp */; }; + ADBC8C571FAFD05A0094B339 /* node_dialog_cloud.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADBC8C521FAFD0370094B339 /* node_dialog_cloud.cpp */; }; + ADBC8C581FAFD05A0094B339 /* node_dialog_cloud.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADBC8C521FAFD0370094B339 /* node_dialog_cloud.cpp */; }; ADC6F4621F3AFF2C004177FA /* node_dialog_layer_rename.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADC6F4611F3AFA2B004177FA /* node_dialog_layer_rename.cpp */; }; ADC6F4631F3AFF2D004177FA /* node_dialog_layer_rename.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADC6F4611F3AFA2B004177FA /* node_dialog_layer_rename.cpp */; }; ADC6F4641F3AFF2E004177FA /* node_dialog_layer_rename.cpp in Sources */ = {isa = PBXBuildFile; fileRef = ADC6F4611F3AFA2B004177FA /* node_dialog_layer_rename.cpp */; }; @@ -347,6 +357,12 @@ ADB1C3DB1EA531B0009A65BD /* keymap.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = keymap.h; sourceTree = ""; }; ADB61C801E3D38450093280F /* util.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = util.cpp; sourceTree = ""; }; ADB61C811E3D38450093280F /* util.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.h; path = util.h; sourceTree = ""; }; + ADBC8C471FAE7CC20094B339 /* node_dialog_browse.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = node_dialog_browse.cpp; sourceTree = ""; }; + ADBC8C481FAE7CC30094B339 /* app_commands.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = app_commands.cpp; sourceTree = ""; }; + ADBC8C491FAE7CC30094B339 /* node_dialog_browse.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = node_dialog_browse.h; sourceTree = ""; }; + ADBC8C501FAFD0360094B339 /* node_dialog_cloud.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = node_dialog_cloud.h; sourceTree = ""; }; + ADBC8C511FAFD0360094B339 /* app_cloud.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = app_cloud.cpp; sourceTree = ""; }; + ADBC8C521FAFD0370094B339 /* node_dialog_cloud.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = node_dialog_cloud.cpp; sourceTree = ""; }; ADC6F4601F3AFA2A004177FA /* node_dialog_layer_rename.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = node_dialog_layer_rename.h; sourceTree = ""; }; ADC6F4611F3AFA2B004177FA /* node_dialog_layer_rename.cpp */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.cpp.cpp; path = node_dialog_layer_rename.cpp; sourceTree = ""; }; ADC6F4651F3E66FA004177FA /* app_dialogs.cpp */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.cpp.cpp; path = app_dialogs.cpp; sourceTree = ""; }; @@ -458,6 +474,10 @@ AD10635A1EC7ADFA002A525F /* node_checkbox.h */, AD10635B1EC7ADFA002A525F /* node_color_quad.cpp */, AD10635C1EC7ADFA002A525F /* node_color_quad.h */, + ADBC8C471FAE7CC20094B339 /* node_dialog_browse.cpp */, + ADBC8C491FAE7CC30094B339 /* node_dialog_browse.h */, + ADBC8C521FAFD0370094B339 /* node_dialog_cloud.cpp */, + ADBC8C501FAFD0360094B339 /* node_dialog_cloud.h */, AD10635D1EC7ADFA002A525F /* node_dialog_open.cpp */, AD10635E1EC7ADFA002A525F /* node_dialog_open.h */, ADC6F4611F3AFA2B004177FA /* node_dialog_layer_rename.cpp */, @@ -542,6 +562,8 @@ AD29CC601EA2B214008C8BFA /* action.cpp */, AD29CC611EA2B214008C8BFA /* action.h */, AD58E0701E2A90EF006ACC15 /* app.cpp */, + ADBC8C511FAFD0360094B339 /* app_cloud.cpp */, + ADBC8C481FAE7CC30094B339 /* app_commands.cpp */, ADC6F4651F3E66FA004177FA /* app_dialogs.cpp */, AD0E11921ECA20F200CDA6BB /* app_events.cpp */, AD0E11931ECA20F200CDA6BB /* app_layout.cpp */, @@ -786,8 +808,10 @@ AD0E5CD21ECC72AD00C35669 /* app_events.cpp in Sources */, AD0E5CD11ECC72AD00C35669 /* app.cpp in Sources */, AD0E5CC21ECC72AD00C35669 /* node_image.cpp in Sources */, + ADBC8C4F1FAE7D370094B339 /* node_dialog_browse.cpp in Sources */, ADD6AFD71F94DEB000E92461 /* node_progress_bar.cpp in Sources */, AD0E5CDB1ECC72AD00C35669 /* font.cpp in Sources */, + ADBC8C561FAFD0530094B339 /* app_cloud.cpp in Sources */, AD0E5CDA1ECC72AD00C35669 /* event.cpp in Sources */, AD0E5CCB1ECC72AD00C35669 /* node_scroll.cpp in Sources */, AD0E5CBF1ECC72AD00C35669 /* node_dialog_open.cpp in Sources */, @@ -828,6 +852,7 @@ AD0E5CC01ECC72AD00C35669 /* node_icon.cpp in Sources */, AD0E5CC11ECC72AD00C35669 /* node_image_texture.cpp in Sources */, AD0E5CBD1ECC72AD00C35669 /* node_checkbox.cpp in Sources */, + ADBC8C581FAFD05A0094B339 /* node_dialog_cloud.cpp in Sources */, AD0E5CC91ECC72AD00C35669 /* node_settings.cpp in Sources */, AD0E5CBB1ECC72AD00C35669 /* node_button.cpp in Sources */, AD0E5CD41ECC72AD00C35669 /* app_shaders.cpp in Sources */, @@ -844,6 +869,7 @@ AD58E0791E342205006ACC15 /* tinyxml2.cpp in Sources */, AD10638B1EC7ADFA002A525F /* node_panel_color.cpp in Sources */, AD10638C1EC7ADFA002A525F /* node_panel_layer.cpp in Sources */, + ADBC8C4B1FAE7CC40094B339 /* app_commands.cpp in Sources */, AD29CC621EA2B214008C8BFA /* action.cpp in Sources */, AD1063891EC7ADFA002A525F /* node_message_box.cpp in Sources */, AD10638A1EC7ADFA002A525F /* node_panel_brush.cpp in Sources */, @@ -853,6 +879,7 @@ AD58E0651E2A76FD006ACC15 /* shader.cpp in Sources */, AD4C08DA1E89BD0F0051D85F /* bezier.cpp in Sources */, AD0E11991ECA20F200CDA6BB /* app_shaders.cpp in Sources */, + ADBC8C531FAFD0370094B339 /* app_cloud.cpp in Sources */, ADD6AFDA1F94DEB900E92461 /* node_progress_bar.cpp in Sources */, AD10638F1EC7ADFA002A525F /* node_settings.cpp in Sources */, AD10638D1EC7ADFA002A525F /* node_panel_stroke.cpp in Sources */, @@ -889,12 +916,14 @@ AD58E0771E3421F2006ACC15 /* Yoga.c in Sources */, AD4C08DB1E89BD0F0051D85F /* brush.cpp in Sources */, AD1063951EC7ADFA002A525F /* node.cpp in Sources */, + ADBC8C4A1FAE7CC40094B339 /* node_dialog_browse.cpp in Sources */, AD1063871EC7ADFA002A525F /* node_image_texture.cpp in Sources */, AD1063941EC7ADFA002A525F /* node_viewport.cpp in Sources */, AD8CF7211E913F0500083FFD /* log.cpp in Sources */, AD95AEC71E41EDEC002DD03A /* pch.cpp in Sources */, AD1063861EC7ADFA002A525F /* node_icon.cpp in Sources */, AD1063821EC7ADFA002A525F /* node_canvas.cpp in Sources */, + ADBC8C541FAFD0370094B339 /* node_dialog_cloud.cpp in Sources */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -902,6 +931,7 @@ isa = PBXSourcesBuildPhase; buildActionMask = 2147483647; files = ( + ADBC8C571FAFD05A0094B339 /* node_dialog_cloud.cpp in Sources */, ADD7D2951EBF9E1C00D5A897 /* bezier.cpp in Sources */, AD1063A21EC7AE92002A525F /* node_panel_brush.cpp in Sources */, AD0E11A51ECA61B900CDA6BB /* jpgd.cpp in Sources */, @@ -946,6 +976,7 @@ AD10639F1EC7AE92002A525F /* node_image_texture.cpp in Sources */, ADD7D2721EBF9AE300D5A897 /* AppDelegate.m in Sources */, AD1063981EC7AE92002A525F /* node_button_custom.cpp in Sources */, + ADBC8C4E1FAE7D360094B339 /* node_dialog_browse.cpp in Sources */, AD1063971EC7AE92002A525F /* node_border.cpp in Sources */, AD1063A81EC7AE92002A525F /* node_slider.cpp in Sources */, ADD7D2A21EBF9E1C00D5A897 /* util.cpp in Sources */, @@ -954,6 +985,7 @@ ADD7D2A01EBF9E1C00D5A897 /* image.cpp in Sources */, ADD7D2A11EBF9E1C00D5A897 /* texture.cpp in Sources */, AD0E119C1ECA215600CDA6BB /* app_events.cpp in Sources */, + ADBC8C551FAFD0520094B339 /* app_cloud.cpp in Sources */, ADD7D2961EBF9E1C00D5A897 /* brush.cpp in Sources */, ADE4911A1F86E65D00FB8E92 /* sweep.cc in Sources */, AD02F0C31EDC457C00B2E692 /* sequencer.cpp in Sources */, @@ -1082,6 +1114,7 @@ /opt/local/include, libs/jpeg, libs/poly2tri/poly2tri, + libs/base64, ); LIBRARY_SEARCH_PATHS = /opt/local/lib; MACOSX_DEPLOYMENT_TARGET = 10.11; @@ -1132,6 +1165,7 @@ /opt/local/include, libs/jpeg, libs/poly2tri/poly2tri, + libs/base64, ); LIBRARY_SEARCH_PATHS = /opt/local/lib; MACOSX_DEPLOYMENT_TARGET = 10.11; @@ -1182,6 +1216,7 @@ /opt/local/include, libs/jpeg, libs/poly2tri/poly2tri, + libs/base64, ); INFOPLIST_FILE = PanoPainter/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 9.2; @@ -1211,6 +1246,7 @@ /opt/local/include, libs/jpeg, libs/poly2tri/poly2tri, + libs/base64, ); INFOPLIST_FILE = PanoPainter/Info.plist; IPHONEOS_DEPLOYMENT_TARGET = 9.2; diff --git a/engine/asset.cpp b/engine/asset.cpp index 8852162..7d06d9d 100644 --- a/engine/asset.cpp +++ b/engine/asset.cpp @@ -34,6 +34,7 @@ bool Asset::exist(std::string path, bool is_asset) std::ifstream f(path); return f.is_open(); } + return false; // useless return for the stupid xcode } std::vector Asset::list_files(std::string folder, bool is_asset, const std::string& filter_regex) diff --git a/engine/canvas.cpp b/engine/canvas.cpp index e52c031..51ef8cf 100644 --- a/engine/canvas.cpp +++ b/engine/canvas.cpp @@ -941,7 +941,7 @@ void ui::Canvas::export_equirectangular_thread(std::string file_path) //int ret = stbi_write_png(name, m_latlong.getWidth(), m_latlong.getHeight(), 4, latlong_data.get(), m_latlong.stride()); #ifdef __IOS__ [[PHPhotoLibrary sharedPhotoLibrary] performChanges:^{ - NSURL* url = [NSURL fileURLWithPath:[NSString stringWithUTF8String:name]]; + NSURL* url = [NSURL fileURLWithPath:[NSString stringWithUTF8String:file_path.c_str()]]; PHAssetChangeRequest *changeRequest = [PHAssetChangeRequest creationRequestForAssetFromImageAtFileURL:url]; changeRequest.creationDate = [NSDate date]; } completionHandler:^(BOOL success, NSError *error) { diff --git a/engine/node_dialog_cloud.cpp b/engine/node_dialog_cloud.cpp index 54a1803..7d7d4c1 100644 --- a/engine/node_dialog_cloud.cpp +++ b/engine/node_dialog_cloud.cpp @@ -37,36 +37,6 @@ void NodeDialogCloud::init_controls() }; container = find("files-list"); std::thread(&NodeDialogCloud::load_thumbs_thread, this).detach(); -/* - auto names = Asset::list_files(data_path, false, ".*\\.pano"); - for (const auto& n : names) - { - auto node = new NodeDialogCloudItem; - node->m_manager = m_manager; - node->init(); - node->m_text->set_text(n.c_str()); - node->m_path = data_path + "/" + n; - node->m_file_name = n; - node->on_selected = [&](NodeDialogCloudItem* target) { - if (target == current) - return; - selected_path = target->m_path; - selected_file = target->m_file_name; - selected_name = selected_file.substr(0, selected_file.length() - 5); - if (current) - current->m_selected = false; - current = target; - }; - - // load thumb - ui::Image thumb = ui::Canvas::I->thumbnail_read(node->m_path); - auto image_tex = node->find("thumb-tex"); - image_tex->tex.destroy(); - image_tex->tex.create(thumb); - - container->add_child(node); - } -*/ } void NodeDialogCloud::loaded() @@ -131,6 +101,7 @@ void NodeDialogCloud::load_thumbs_thread() image_tex->tex.destroy(); image_tex->tex.create(thumb); container->add_child(node); + App::I.async_update(); App::I.async_end(); // node->on_selected = [&](NodeDialogCloudItem* target) {