mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-08 07:27:41 -06:00
Drop object on the plate (#6166)
Co-authored-by: SoftFever <softfeverever@gmail.com>
This commit is contained in:
parent
724762bbc8
commit
98a243c302
10 changed files with 52 additions and 0 deletions
|
@ -1314,6 +1314,8 @@ void MenuFactory::create_extra_object_menu()
|
|||
append_menu_item_merge_parts_to_single_part(&m_object_menu);
|
||||
// Object Center
|
||||
append_menu_item_center(&m_object_menu);
|
||||
// Object Drop
|
||||
append_menu_item_drop(&m_object_menu);
|
||||
// Object Split
|
||||
wxMenu* split_menu = new wxMenu();
|
||||
if (!split_menu)
|
||||
|
@ -1436,6 +1438,7 @@ void MenuFactory::create_bbl_part_menu()
|
|||
append_menu_item_fix_through_netfabb(menu);
|
||||
append_menu_item_simplify(menu);
|
||||
append_menu_item_center(menu);
|
||||
append_menu_item_drop(menu);
|
||||
append_menu_items_mirror(menu);
|
||||
wxMenu* split_menu = new wxMenu();
|
||||
if (!split_menu)
|
||||
|
@ -1675,6 +1678,7 @@ wxMenu* MenuFactory::multi_selection_menu()
|
|||
index++;
|
||||
}
|
||||
append_menu_item_center(menu);
|
||||
append_menu_item_drop(menu);
|
||||
append_menu_item_fix_through_netfabb(menu);
|
||||
//append_menu_item_simplify(menu);
|
||||
append_menu_item_delete(menu);
|
||||
|
@ -1691,6 +1695,7 @@ wxMenu* MenuFactory::multi_selection_menu()
|
|||
}
|
||||
else {
|
||||
append_menu_item_center(menu);
|
||||
append_menu_item_drop(menu);
|
||||
append_menu_item_fix_through_netfabb(menu);
|
||||
//append_menu_item_simplify(menu);
|
||||
append_menu_item_delete(menu);
|
||||
|
@ -1819,6 +1824,21 @@ void MenuFactory::append_menu_item_center(wxMenu* menu)
|
|||
}, m_parent);
|
||||
}
|
||||
|
||||
void MenuFactory::append_menu_item_drop(wxMenu* menu)
|
||||
{
|
||||
append_menu_item(menu, wxID_ANY, _L("Drop") , "",
|
||||
[this](wxCommandEvent&) {
|
||||
plater()->drop_selection();
|
||||
}, "", nullptr,
|
||||
[]() {
|
||||
if (plater()->canvas3D()->get_canvas_type() != GLCanvas3D::ECanvasType::CanvasView3D)
|
||||
return false;
|
||||
else {
|
||||
return (plater()->get_view3D_canvas3D()->get_selection().get_bounding_box().min.z() != 0);
|
||||
} //disable if model is on the bed / not in View3D
|
||||
}, m_parent);
|
||||
}
|
||||
|
||||
void MenuFactory::append_menu_item_per_object_process(wxMenu* menu)
|
||||
{
|
||||
const std::vector<wxString> names = { _L("Edit Process Settings"), _L("Edit Process Settings") };
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue