mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-10-19 23:01:22 -06:00
ENH: open new process on MacOS
Change-Id: I0bc4069f9ff14ac86d9edf800134f04a26a650f2
This commit is contained in:
parent
77e4599c4a
commit
0471c7d427
5 changed files with 33 additions and 26 deletions
|
@ -286,7 +286,7 @@ namespace GUI {
|
|||
|
||||
void initGestures(void * view, wxEvtHandler * handler)
|
||||
{
|
||||
NSOpenGLView * glView = (NSOpenGLView *) view;
|
||||
wxNSCustomOpenGLView * glView = (wxNSCustomOpenGLView *) view;
|
||||
[glView initGesturesWithHandler: handler];
|
||||
}
|
||||
|
||||
|
|
|
@ -60,17 +60,19 @@ static void start_new_slicer_or_gcodeviewer(const NewSlicerInstanceType instance
|
|||
boost::filesystem::path bin_path = into_path(wxStandardPaths::Get().GetExecutablePath());
|
||||
#if defined(__APPLE__)
|
||||
{
|
||||
bin_path = bin_path.parent_path() / "BambuStudio";
|
||||
//bin_path = bin_path.parent_path() / "BambuStudio";
|
||||
bin_path = "/usr/bin/open";
|
||||
// On Apple the wxExecute fails, thus we use boost::process instead.
|
||||
BOOST_LOG_TRIVIAL(info) << "Trying to spawn a new slicer \"" << bin_path.string() << "\"";
|
||||
try {
|
||||
std::vector<std::string> args;
|
||||
std::vector<std::string> args = { "-n", "-a", "BambuStudio"};
|
||||
if (!paths_to_open.empty()) {
|
||||
for (const auto& file : paths_to_open)
|
||||
args.emplace_back(into_u8(file));
|
||||
}
|
||||
args.emplace_back("--args");
|
||||
if (instance_type == NewSlicerInstanceType::GCodeViewer)
|
||||
args.emplace_back("--gcodeviewer");
|
||||
if (!paths_to_open.empty()) {
|
||||
for (const auto& file : paths_to_open)
|
||||
args.emplace_back(into_u8(file));
|
||||
}
|
||||
if (instance_type == NewSlicerInstanceType::Slicer && single_instance)
|
||||
args.emplace_back("--single-instance");
|
||||
boost::process::spawn(bin_path, args);
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue