Downloader feature - Downloads from Printables.com

Custom URL Registration:
 - Windows - writes to registers.
 - Linux - desktop integration file.
 - Macos - info.plist.in creates registration and is controlled only via app config.
Registration is first made in Config Wizard. Or is triggered from Preferences. Path to downloads folder can be set.
URL link starts new instance of PS which sends data to running instance via SingleInstance structures if exists.
New progress notification is introduced with pause and stop buttons.
Downloader writes downloaded data by chunks.
Support for zip files is introduced. Zip files can be opened, downloaded or drag'n'droped in PS. Archive dialog is opened. Then if more than 1 project is selected, only geometry is loaded.
Opening of 3mf project now supports openning project in new PS instance.
This commit is contained in:
David Kocik 2023-01-05 15:00:37 +01:00
parent e70c4849ba
commit ce38e57ec4
37 changed files with 9616 additions and 6577 deletions

View file

@ -152,6 +152,8 @@ public:
void render_project_state_debug_window() const;
#endif // ENABLE_PROJECT_DIRTY_STATE_DEBUG_WINDOW
bool is_project_temp() const;
Sidebar& sidebar();
const Model& model() const;
Model& model();
@ -175,9 +177,11 @@ public:
// To be called when providing a list of files to the GUI slic3r on command line.
std::vector<size_t> load_files(const std::vector<std::string>& input_files, bool load_model = true, bool load_config = true, bool imperial_units = false);
// to be called on drag and drop
bool load_files(const wxArrayString& filenames);
bool load_files(const wxArrayString& filenames, bool delete_after_load = false);
void check_selected_presets_visibility(PrinterTechnology loaded_printer_technology);
bool preview_zip_archive(const boost::filesystem::path& input_file);
const wxString& get_last_loaded_gcode() const { return m_last_loaded_gcode; }
void update();