mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-10-19 23:01:22 -06:00
some misc changes (#1848)
* some misc changes * stealth_mode: disable hms * fix bbl camera #1091 #1830 * fix anker
This commit is contained in:
parent
a202fde769
commit
6e1bdaf9d4
49 changed files with 360 additions and 296 deletions
|
@ -204,7 +204,7 @@ if (WIN32)
|
|||
if ("${CMAKE_BUILD_TYPE}" STREQUAL "Debug")
|
||||
orcaslicer_copy_dlls(COPY_DLLS "Debug" "d" output_dlls_Debug)
|
||||
elseif("${CMAKE_BUILD_TYPE}" STREQUAL "RelWithDebInfo")
|
||||
orcaslicer_copy_dlls(COPY_DLLS "RelWithDebInfo" "" output_dlls_RelWithDebInfo)
|
||||
orcaslicer_copy_dlls(COPY_DLLS "RelWithDebInfo" "" output_dlls_Release)
|
||||
else()
|
||||
orcaslicer_copy_dlls(COPY_DLLS "Release" "" output_dlls_Release)
|
||||
endif()
|
||||
|
@ -264,11 +264,11 @@ endif()
|
|||
message(STATUS "libslic3r-CMAKE_BUILD_TYPE: ${build_type}")
|
||||
message(STATUS "CMAKE_CURRENT_BINARY_DIR: ${CMAKE_CURRENT_BINARY_DIR}")
|
||||
if (WIN32)
|
||||
install(TARGETS OrcaSlicer RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}")
|
||||
install(TARGETS OrcaSlicer RUNTIME DESTINATION ".")
|
||||
if (MSVC)
|
||||
install(TARGETS OrcaSlicer_app_gui RUNTIME DESTINATION "${CMAKE_INSTALL_PREFIX}")
|
||||
install(TARGETS OrcaSlicer_app_gui RUNTIME DESTINATION ".")
|
||||
endif ()
|
||||
install(FILES ${output_dlls_${build_type}} DESTINATION "${CMAKE_INSTALL_PREFIX}")
|
||||
install(FILES ${output_dlls_${build_type}} DESTINATION ".")
|
||||
else ()
|
||||
install(TARGETS OrcaSlicer RUNTIME DESTINATION "${CMAKE_INSTALL_BINDIR}" BUNDLE DESTINATION ${CMAKE_INSTALL_BINDIR})
|
||||
endif ()
|
||||
|
|
|
@ -229,6 +229,10 @@ void AppConfig::set_defaults()
|
|||
set("slicer_uuid", to_string(uuid));
|
||||
}
|
||||
|
||||
// Orca
|
||||
if (get("stealth_mode").empty()) {
|
||||
set_bool("stealth_mode", false);
|
||||
}
|
||||
if (get("show_model_mesh").empty()) {
|
||||
set_bool("show_model_mesh", false);
|
||||
}
|
||||
|
|
|
@ -32,8 +32,8 @@ inline std::string utc_timestamp()
|
|||
return utc_timestamp(get_current_time_utc());
|
||||
}
|
||||
|
||||
inline std::string local_timestamp() {
|
||||
return time2str(get_current_time_utc(), TimeZone::local, TimeFormat::gcode);
|
||||
inline std::string local_timestamp(TimeFormat fmt = TimeFormat::gcode) {
|
||||
return time2str(get_current_time_utc(), TimeZone::local, fmt);
|
||||
}
|
||||
|
||||
// String to time_t function. Returns time_t(-1) if fails to parse the input.
|
||||
|
|
|
@ -297,88 +297,88 @@ endif()
|
|||
|
||||
# TODO: package documentation files
|
||||
|
||||
if(MCUT_BUILD_AS_SHARED_LIB)
|
||||
#
|
||||
# dynamic libs
|
||||
#
|
||||
# if(MCUT_BUILD_AS_SHARED_LIB)
|
||||
# #
|
||||
# # dynamic libs
|
||||
# #
|
||||
|
||||
install(TARGETS ${mpn_shared_lib_name}
|
||||
LIBRARY
|
||||
DESTINATION lib/shared
|
||||
COMPONENT dynamic_libraries)
|
||||
else()
|
||||
#
|
||||
# static libs
|
||||
#
|
||||
# install(TARGETS ${mpn_shared_lib_name}
|
||||
# LIBRARY
|
||||
# DESTINATION lib/shared
|
||||
# COMPONENT dynamic_libraries)
|
||||
# else()
|
||||
# #
|
||||
# # static libs
|
||||
# #
|
||||
|
||||
install(TARGETS ${mpn_static_lib_name}
|
||||
ARCHIVE
|
||||
DESTINATION lib/static
|
||||
COMPONENT static_libraries)
|
||||
endif()
|
||||
# install(TARGETS ${mpn_static_lib_name}
|
||||
# ARCHIVE
|
||||
# DESTINATION lib/static
|
||||
# COMPONENT static_libraries)
|
||||
# endif()
|
||||
|
||||
#
|
||||
# headers
|
||||
#
|
||||
install(FILES ${MCUT_INCLUDE_DIR}/mcut/mcut.h ${MCUT_INCLUDE_DIR}/mcut/platform.h
|
||||
DESTINATION include/mcut
|
||||
COMPONENT headers)
|
||||
# install(FILES ${MCUT_INCLUDE_DIR}/mcut/mcut.h ${MCUT_INCLUDE_DIR}/mcut/platform.h
|
||||
# DESTINATION include/mcut
|
||||
# COMPONENT headers)
|
||||
|
||||
install(FILES
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/LICENSE.txt
|
||||
${CMAKE_CURRENT_SOURCE_DIR}/README.md
|
||||
DESTINATION ./
|
||||
COMPONENT text_files)
|
||||
# install(FILES
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE.txt
|
||||
# ${CMAKE_CURRENT_SOURCE_DIR}/README.md
|
||||
# DESTINATION ./
|
||||
# COMPONENT text_files)
|
||||
|
||||
#
|
||||
# notify CPack of the names of all of the components in the project
|
||||
#
|
||||
set(CPACK_COMPONENTS_ALL static_libraries dynamic_libraries headers text_files) # applications
|
||||
# set(CPACK_COMPONENTS_ALL static_libraries dynamic_libraries headers text_files) # applications
|
||||
|
||||
set(CPACK_COMPONENT_APPLICATIONS_DISPLAY_NAME "MCUT Application")
|
||||
set(CPACK_COMPONENT_STATIC_LIBRARIES_DISPLAY_NAME "Static Libraries")
|
||||
set(CPACK_COMPONENT_DYNAMIC_LIBRARIES_DISPLAY_NAME "Dynamics Libraries")
|
||||
set(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "C++ Headers")
|
||||
# set(CPACK_COMPONENT_APPLICATIONS_DISPLAY_NAME "MCUT Application")
|
||||
# set(CPACK_COMPONENT_STATIC_LIBRARIES_DISPLAY_NAME "Static Libraries")
|
||||
# set(CPACK_COMPONENT_DYNAMIC_LIBRARIES_DISPLAY_NAME "Dynamics Libraries")
|
||||
# set(CPACK_COMPONENT_HEADERS_DISPLAY_NAME "C++ Headers")
|
||||
|
||||
set(CPACK_COMPONENT_APPLICATIONS_DESCRIPTION
|
||||
"A simple application using MCUT")
|
||||
set(CPACK_COMPONENT_STATIC_LIBRARIES_DESCRIPTION
|
||||
"Static libraries used to build programs with MCUT")
|
||||
set(CPACK_COMPONENT_DYNAMIC_LIBRARIES_DESCRIPTION
|
||||
"Dynamic libraries used to build programs with MCUT")
|
||||
set(CPACK_COMPONENT_HEADERS_DESCRIPTION
|
||||
"C/C++ header files for use with MCUT")
|
||||
# set(CPACK_COMPONENT_APPLICATIONS_DESCRIPTION
|
||||
# "A simple application using MCUT")
|
||||
# set(CPACK_COMPONENT_STATIC_LIBRARIES_DESCRIPTION
|
||||
# "Static libraries used to build programs with MCUT")
|
||||
# set(CPACK_COMPONENT_DYNAMIC_LIBRARIES_DESCRIPTION
|
||||
# "Dynamic libraries used to build programs with MCUT")
|
||||
# set(CPACK_COMPONENT_HEADERS_DESCRIPTION
|
||||
# "C/C++ header files for use with MCUT")
|
||||
|
||||
#
|
||||
# component dependencies
|
||||
#
|
||||
set(CPACK_COMPONENT_HEADERS_DEPENDS static_libraries dynamic_libraries)
|
||||
# #
|
||||
# # component dependencies
|
||||
# #
|
||||
# set(CPACK_COMPONENT_HEADERS_DEPENDS static_libraries dynamic_libraries)
|
||||
|
||||
set(CPACK_COMPONENT_APPLICATIONS_GROUP "Runtime")
|
||||
set(CPACK_COMPONENT_STATIC_LIBRARIES_GROUP "Development")
|
||||
set(CPACK_COMPONENT_DYNAMIC_LIBRARIES_GROUP "Development")
|
||||
set(CPACK_COMPONENT_HEADERS_GROUP "Development")
|
||||
# set(CPACK_COMPONENT_APPLICATIONS_GROUP "Runtime")
|
||||
# set(CPACK_COMPONENT_STATIC_LIBRARIES_GROUP "Development")
|
||||
# set(CPACK_COMPONENT_DYNAMIC_LIBRARIES_GROUP "Development")
|
||||
# set(CPACK_COMPONENT_HEADERS_GROUP "Development")
|
||||
|
||||
set(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION
|
||||
"All of the tools you'll ever need to develop software")
|
||||
# set(CPACK_COMPONENT_GROUP_DEVELOPMENT_DESCRIPTION
|
||||
# "All of the tools you'll ever need to develop software")
|
||||
|
||||
set (CPACK_PACKAGE_NAME "MCUT")
|
||||
set (CPACK_PACKAGE_VENDOR "Floyd M. Chitalu")
|
||||
set (CPACK_PACKAGE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
set (CPACK_PACKAGE_VERSION_MAJOR "${MCUT_MAJOR}")
|
||||
set (CPACK_PACKAGE_VERSION_MINOR "${MCUT_MINOR}")
|
||||
set (CPACK_PACKAGE_VERSION_PATCH "${MCUT_PATCH}")
|
||||
#set (CPACK_PACKAGE_DESCRIPTION "MCUT (pronounced ‘emcut’) is a tool for cutting meshes.")
|
||||
#set (CPACK_PACKAGE_DESCRIPTION_FILE ${CMAKE_CURRENT_SOURCE_DIR}/DESCRIPTION.txt)
|
||||
set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "MCUT is a library for cutting meshes to perform tasks like boolean operations and more.")
|
||||
set (CPACK_PACKAGE_HOMEPAGE_URL "https://cutdigital.github.io/mcut.site/")
|
||||
set (CPACK_PACKAGE_INSTALL_DIRECTORY ${CPACK_PACKAGE_NAME})
|
||||
# set (CPACK_PACKAGE_ICON )
|
||||
set (CPACK_PACKAGE_CHECKSUM SHA256)
|
||||
#set (CPACK_PROJECT_CONFIG_FILE )
|
||||
set (CPACK_RESOURCE_FILE_LICENSE ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE.txt) # must also include in install command
|
||||
set (CPACK_RESOURCE_FILE_README ${CMAKE_CURRENT_SOURCE_DIR}/README.md)
|
||||
#set (CPACK_RESOURCE_FILE_WELCOME ${CMAKE_CURRENT_SOURCE_DIR}/WELCOME.txt)
|
||||
# set (CPACK_PACKAGE_NAME "MCUT")
|
||||
# set (CPACK_PACKAGE_VENDOR "Floyd M. Chitalu")
|
||||
# set (CPACK_PACKAGE_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}")
|
||||
# set (CPACK_PACKAGE_VERSION_MAJOR "${MCUT_MAJOR}")
|
||||
# set (CPACK_PACKAGE_VERSION_MINOR "${MCUT_MINOR}")
|
||||
# set (CPACK_PACKAGE_VERSION_PATCH "${MCUT_PATCH}")
|
||||
# #set (CPACK_PACKAGE_DESCRIPTION "MCUT (pronounced ‘emcut’) is a tool for cutting meshes.")
|
||||
# #set (CPACK_PACKAGE_DESCRIPTION_FILE ${CMAKE_CURRENT_SOURCE_DIR}/DESCRIPTION.txt)
|
||||
# set (CPACK_PACKAGE_DESCRIPTION_SUMMARY "MCUT is a library for cutting meshes to perform tasks like boolean operations and more.")
|
||||
# set (CPACK_PACKAGE_HOMEPAGE_URL "https://cutdigital.github.io/mcut.site/")
|
||||
# set (CPACK_PACKAGE_INSTALL_DIRECTORY ${CPACK_PACKAGE_NAME})
|
||||
# # set (CPACK_PACKAGE_ICON )
|
||||
# set (CPACK_PACKAGE_CHECKSUM SHA256)
|
||||
# #set (CPACK_PROJECT_CONFIG_FILE )
|
||||
# set (CPACK_RESOURCE_FILE_LICENSE ${CMAKE_CURRENT_SOURCE_DIR}/LICENSE.txt) # must also include in install command
|
||||
# set (CPACK_RESOURCE_FILE_README ${CMAKE_CURRENT_SOURCE_DIR}/README.md)
|
||||
# #set (CPACK_RESOURCE_FILE_WELCOME ${CMAKE_CURRENT_SOURCE_DIR}/WELCOME.txt)
|
||||
|
||||
if (WIN32)
|
||||
if (USE_WIX_TOOLSET)
|
||||
|
@ -394,7 +394,7 @@ endif ()
|
|||
|
||||
#set (CPACK_OUTPUT_CONFIG_FILE ) # Defaults to CPackConfig.cmake.
|
||||
#set (CPACK_PACKAGE_EXECUTABLES )
|
||||
set (CPACK_STRIP_FILES TRUE)
|
||||
# set (CPACK_STRIP_FILES TRUE)
|
||||
# set (CPACK_VERBATIM_VARIABLES )
|
||||
# set (CPACK_SOURCE_PACKAGE_FILE_NAME )
|
||||
# set (CPACK_SOURCE_STRIP_FILES )
|
||||
|
@ -412,6 +412,6 @@ set (CPACK_STRIP_FILES TRUE)
|
|||
# set ( )
|
||||
|
||||
|
||||
include(CPack)
|
||||
# include(CPack)
|
||||
|
||||
# eof
|
|
@ -1141,6 +1141,9 @@ void GUI_App::post_init()
|
|||
}
|
||||
#endif
|
||||
|
||||
if (app_config->get("stealth_mode") == "false")
|
||||
hms_query = new HMSQuery();
|
||||
|
||||
m_show_gcode_window = app_config->get("show_gcode_window") == "true";
|
||||
if (m_networking_need_update) {
|
||||
//updating networking
|
||||
|
@ -1165,17 +1168,17 @@ void GUI_App::post_init()
|
|||
CallAfter([this] {
|
||||
bool cw_showed = this->config_wizard_startup();
|
||||
|
||||
std::string http_url = get_http_url(app_config->get_country_code());
|
||||
std::string language = GUI::into_u8(current_language_code());
|
||||
std::string network_ver = Slic3r::NetworkAgent::get_version();
|
||||
bool sys_preset = app_config->get("sync_system_preset") == "true";
|
||||
this->preset_updater->sync(http_url, language, network_ver, sys_preset ? preset_bundle : nullptr);
|
||||
// std::string http_url = get_http_url(app_config->get_country_code());
|
||||
// std::string language = GUI::into_u8(current_language_code());
|
||||
// std::string network_ver = Slic3r::NetworkAgent::get_version();
|
||||
// bool sys_preset = app_config->get("sync_system_preset") == "true";
|
||||
// this->preset_updater->sync(http_url, language, network_ver, sys_preset ? preset_bundle : nullptr);
|
||||
|
||||
//BBS: check new version
|
||||
this->check_new_version_sf();
|
||||
//BBS: check privacy version
|
||||
if (is_user_login())
|
||||
this->check_privacy_version(0);
|
||||
// if (is_user_login())
|
||||
// this->check_privacy_version(0);
|
||||
});
|
||||
}
|
||||
|
||||
|
@ -1269,7 +1272,6 @@ GUI_App::GUI_App()
|
|||
, m_app_mode(EAppMode::Editor)
|
||||
, m_em_unit(10)
|
||||
, m_imgui(new ImGuiWrapper())
|
||||
, hms_query(new HMSQuery())
|
||||
, m_removable_drive_manager(std::make_unique<RemovableDriveManager>())
|
||||
//, m_other_instance_message_handler(std::make_unique<OtherInstanceMessageHandler>())
|
||||
{
|
||||
|
|
|
@ -925,6 +925,8 @@ wxWindow* PreferencesDialog::create_general_page()
|
|||
std::vector<wxString> Regions = {_L("Asia-Pacific"), _L("China"), _L("Europe"), _L("North America"), _L("Others")};
|
||||
auto item_region= create_item_region_combobox(_L("Login Region"), page, _L("Login Region"), Regions);
|
||||
|
||||
auto item_stealth_mode = create_item_checkbox(_L("Stealth Mode"), page, _L("Stealth Mode"), 50, "stealth_mode");
|
||||
|
||||
std::vector<wxString> Units = {_L("Metric") + " (mm, g)", _L("Imperial") + " (in, oz)"};
|
||||
auto item_currency = create_item_combobox(_L("Units"), page, _L("Units"), "use_inches", Units);
|
||||
|
||||
|
@ -984,6 +986,7 @@ wxWindow* PreferencesDialog::create_general_page()
|
|||
sizer_page->Add(item_hints, 0, wxTOP, FromDIP(3));
|
||||
sizer_page->Add(item_gcode_window, 0, wxTOP, FromDIP(3));
|
||||
sizer_page->Add(title_presets, 0, wxTOP | wxEXPAND, FromDIP(20));
|
||||
sizer_page->Add(item_stealth_mode, 0, wxTOP, FromDIP(3));
|
||||
sizer_page->Add(item_user_sync, 0, wxTOP, FromDIP(3));
|
||||
sizer_page->Add(item_system_sync, 0, wxTOP, FromDIP(3));
|
||||
sizer_page->Add(item_save_presets, 0, wxTOP, FromDIP(3));
|
||||
|
|
|
@ -1,6 +1,9 @@
|
|||
#include "wxMediaCtrl2.h"
|
||||
#include "libslic3r/Time.hpp"
|
||||
#include "I18N.hpp"
|
||||
#include "GUI_App.hpp"
|
||||
#include <boost/filesystem/operations.hpp>
|
||||
#include <winuser.h>
|
||||
#ifdef __WIN32__
|
||||
#include <versionhelpers.h>
|
||||
#include <wx/msw/registry.h>
|
||||
|
@ -72,14 +75,34 @@ void wxMediaCtrl2::Load(wxURI url)
|
|||
std::string data_dir_str = Slic3r::data_dir();
|
||||
boost::filesystem::path data_dir_path(data_dir_str);
|
||||
auto dll_path = data_dir_path / "plugins" / "BambuSource.dll";
|
||||
|
||||
if (boost::filesystem::exists(dll_path)) {
|
||||
CallAfter(
|
||||
[dll_path] {
|
||||
int res = wxMessageBox(_L("BambuSource has not correctly been registered for media playing! Press Yes to re-register it."), _L("Error"), wxYES_NO);
|
||||
int res = wxMessageBox(_L("BambuSource has not correctly been registered for media playing! Press Yes to re-register it. You will be promoted twice"), _L("Error"), wxYES_NO);
|
||||
if (res == wxYES) {
|
||||
wstring quoted_dll_path = L"\"" + dll_path.wstring() + "\"";
|
||||
std::string regContent = R"(Windows Registry Editor Version 5.00
|
||||
[HKEY_CLASSES_ROOT\bambu]
|
||||
"Source Filter"="{233E64FB-2041-4A6C-AFAB-FF9BCF83E7AA}"
|
||||
)";
|
||||
|
||||
auto reg_path = (fs::temp_directory_path() / fs::unique_path()).replace_extension(".reg");
|
||||
std::ofstream temp_reg_file(reg_path.c_str());
|
||||
if (!temp_reg_file) {
|
||||
return false;
|
||||
}
|
||||
temp_reg_file << regContent;
|
||||
temp_reg_file.close();
|
||||
auto sei_params = L"/q /s " + reg_path.wstring();
|
||||
SHELLEXECUTEINFO sei{sizeof(sei), SEE_MASK_NOCLOSEPROCESS, NULL, L"open",
|
||||
L"regedit", sei_params.c_str(),SW_HIDE,SW_HIDE};
|
||||
::ShellExecuteEx(&sei);
|
||||
|
||||
wstring quoted_dll_path = L"\"" + dll_path.wstring() + L"\"";
|
||||
SHELLEXECUTEINFO info{sizeof(info), 0, NULL, L"runas", L"regsvr32", quoted_dll_path.c_str(), SW_HIDE };
|
||||
::ShellExecuteEx(&info);
|
||||
fs::remove(reg_path);
|
||||
|
||||
}
|
||||
});
|
||||
} else {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue