Linux specific: Fixed ObjectDataViewModel::GetColumnType()

When "string" type was returned, strange editing TextControl was appeared.
+ Added check of the selection for ObjectList::toggle_printable_state() function
This commit is contained in:
YuSanka 2021-05-10 17:57:17 +02:00
parent 426d2cd725
commit b87c03fc09
3 changed files with 12 additions and 1 deletions

View File

@ -3909,6 +3909,8 @@ void ObjectList::toggle_printable_state()
{
wxDataViewItemArray sels;
GetSelections(sels);
if (sels.IsEmpty())
return;
wxDataViewItem frst_item = sels[0];

View File

@ -1180,6 +1180,15 @@ int ObjectDataViewModel::GetExtruderNumber(const wxDataViewItem& item) const
return atoi(node->m_extruder.c_str());
}
wxString ObjectDataViewModel::GetColumnType(unsigned int col) const
{
if (col == colName || col == colExtruder)
return wxT("DataViewBitmapText");
if (col == colPrint || col == colEditing)
return wxT("DataViewBitmap");
return wxT("string");
}
void ObjectDataViewModel::GetValue(wxVariant &variant, const wxDataViewItem &item, unsigned int col) const
{
wxASSERT(item.IsOk());

View File

@ -316,7 +316,7 @@ public:
// helper methods to change the model
unsigned int GetColumnCount() const override { return 3;}
wxString GetColumnType(unsigned int col) const override{ return wxT("string"); }
wxString GetColumnType(unsigned int col) const override;
void GetValue( wxVariant &variant,
const wxDataViewItem &item,