mirror of
https://github.com/SoftFever/OrcaSlicer.git
synced 2025-07-11 00:37:51 -06:00
Refactored to get direct access to GLCanvas3D in Plater and Preview.
WIP: SLA update delayed until mouse is released.
This commit is contained in:
parent
6da9d19916
commit
b03f672801
10 changed files with 206 additions and 176 deletions
|
@ -1234,7 +1234,7 @@ void ObjectList::delete_from_model_and_list(const std::vector<ItemForDelete>& it
|
|||
if (item->type&itVolume)
|
||||
{
|
||||
m_objects_model->Delete(m_objects_model->GetItemByVolumeId(item->obj_idx, item->sub_obj_idx));
|
||||
_3DScene::ensure_on_bed(wxGetApp().canvas3D(), item->obj_idx);
|
||||
wxGetApp().plater()->canvas3D()->ensure_on_bed(item->obj_idx);
|
||||
}
|
||||
else
|
||||
m_objects_model->Delete(m_objects_model->GetItemByInstanceId(item->obj_idx, item->sub_obj_idx));
|
||||
|
@ -1323,7 +1323,7 @@ bool ObjectList::multiple_selection() const
|
|||
|
||||
void ObjectList::update_selections()
|
||||
{
|
||||
auto& selection = _3DScene::get_canvas(wxGetApp().canvas3D())->get_selection();
|
||||
auto& selection = wxGetApp().plater()->canvas3D()->get_selection();
|
||||
wxDataViewItemArray sels;
|
||||
|
||||
if (selection.is_single_full_object())
|
||||
|
@ -1354,12 +1354,12 @@ void ObjectList::update_selections()
|
|||
|
||||
void ObjectList::update_selections_on_canvas()
|
||||
{
|
||||
auto& selection = _3DScene::get_canvas(wxGetApp().canvas3D())->get_selection();
|
||||
auto& selection = wxGetApp().plater()->canvas3D()->get_selection();
|
||||
|
||||
const int sel_cnt = GetSelectedItemsCount();
|
||||
if (sel_cnt == 0) {
|
||||
selection.clear();
|
||||
_3DScene::render(wxGetApp().canvas3D());
|
||||
wxGetApp().plater()->canvas3D()->render();
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -1389,7 +1389,7 @@ void ObjectList::update_selections_on_canvas()
|
|||
else
|
||||
add_to_selection(item, selection, true);
|
||||
|
||||
_3DScene::render(wxGetApp().canvas3D());
|
||||
wxGetApp().plater()->canvas3D()->render();
|
||||
return;
|
||||
}
|
||||
|
||||
|
@ -1400,7 +1400,7 @@ void ObjectList::update_selections_on_canvas()
|
|||
for (auto item: sels)
|
||||
add_to_selection(item, selection, false);
|
||||
|
||||
_3DScene::render(wxGetApp().canvas3D());
|
||||
wxGetApp().plater()->canvas3D()->render();
|
||||
}
|
||||
|
||||
void ObjectList::select_item(const wxDataViewItem& item)
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue