mirror of
https://git.dev.opencascade.org/repos/occt.git
synced 2025-08-04 13:13:25 +03:00
0031362: Inspectors - MessageView plugin for message alerts
- append new MessageView plugin to display content of Message_Report; - correct DumpJson of TDataStd array attributes to print Lower/Upper values; - correct remove level of Message_Report to store stop time during removing all levels; - append DumpJson for TFunction, TPrsStd attributes; - correct DumpJson of XCAFDoc tools due to simplify performance of it; - move AttributeInfo functionality from XDEDRAW into a static public method of XCAFDoc to call it outside; - remove obsolete pane classes in DFBrowser plugin, now we may use DumpJSon panel to visualize this content of attributes; - add new property panel in DFBrowser (synchronized with the same in other plugins); - add button to switch ON DumpJson in DFBrowser(OFF by default, for better performance), also there is a context menu item in tree view; - rename in DFBrowser "Property Panel" into "Property Panel (custom)"; - implement ViewControl_ColorSeletor and setting color in TreeModel_ItemProperties. Use only for light in VInspector now; - implement setting false for all created AIS_Shape presentation to don't modify source TopoDS_Shape; - remove not use VInspector_CallBack. It's possible using Message_Report/MessageView to track commands way; - remove History panel in VInspector as not used, MessageView will be better solution for this; - implement item and actions in VInspector for setting Lights in the view.
This commit is contained in:
@@ -86,19 +86,17 @@ QByteArray TreeModel_Tools::ToByteArray (const QString& theValue)
|
||||
void TreeModel_Tools::SaveState (QTreeView* theTreeView, QMap<QString, QString>& theItems,
|
||||
const QString& thePrefix)
|
||||
{
|
||||
QStringList aColumnWidths, aHiddenColumns;
|
||||
QStringList aColumnWidths;
|
||||
for (int aColumnId = 0; aColumnId < theTreeView->model()->columnCount(); aColumnId++)
|
||||
{
|
||||
if (theTreeView->isColumnHidden (aColumnId))
|
||||
{
|
||||
aHiddenColumns.append (QString::number (aColumnId));
|
||||
aColumnWidths.append (QString());
|
||||
}
|
||||
else
|
||||
aColumnWidths.append (QString::number (theTreeView->columnWidth (aColumnId)));
|
||||
}
|
||||
theItems[thePrefix + "columns_width"] = aColumnWidths.join (",");
|
||||
theItems[thePrefix + "columns_hidden"] = aHiddenColumns.join (",");
|
||||
}
|
||||
|
||||
// =======================================================================
|
||||
@@ -115,25 +113,10 @@ bool TreeModel_Tools::RestoreState (QTreeView* theTreeView, const QString& theKe
|
||||
{
|
||||
bool isOk;
|
||||
int aWidth = aValues.at (aColumnId).toInt (&isOk);
|
||||
if (isOk && !theTreeView->isColumnHidden (aColumnId)) // do not resize hidden columnsa
|
||||
if (isOk && !theTreeView->isColumnHidden (aColumnId)) // do not resize hidden columns
|
||||
theTreeView->setColumnWidth (aColumnId, aWidth);
|
||||
}
|
||||
}
|
||||
else if (theKey == thePrefix + "columns_hidden")
|
||||
{
|
||||
int aColumnSize = theTreeView->model()->columnCount();
|
||||
QStringList aValues = theValue.split (",", QString::SkipEmptyParts);
|
||||
QList<int> aColumnIds;
|
||||
for (int aValueId = 0; aValueId < aValues.size(); aValueId++)
|
||||
{
|
||||
if (aValueId < aColumnSize)
|
||||
aColumnIds.append (aValues.at (aValueId).toInt());
|
||||
}
|
||||
for (int aColumnId = 0; aColumnId < aColumnSize; aColumnId++)
|
||||
{
|
||||
theTreeView->setColumnHidden (aColumnId, aColumnIds.contains(aColumnId) == true);
|
||||
}
|
||||
}
|
||||
else
|
||||
return false;
|
||||
return true;
|
||||
@@ -149,9 +132,9 @@ void TreeModel_Tools::SetDefaultHeaderSections(QTreeView* theTreeView)
|
||||
|
||||
for (int aColumnId = 0, aNbColumns = aTreeModel->columnCount(); aColumnId < aNbColumns; aColumnId++)
|
||||
{
|
||||
TreeModel_HeaderSection aSection = aTreeModel->GetHeaderItem (aColumnId);
|
||||
theTreeView->setColumnWidth (aColumnId, aSection.GetWidth());
|
||||
theTreeView->setColumnHidden (aColumnId, aSection.IsHidden());
|
||||
TreeModel_HeaderSection* aSection = aTreeModel->ChangeHeaderItem (aColumnId);
|
||||
theTreeView->setColumnWidth (aColumnId, aSection->GetWidth());
|
||||
theTreeView->setColumnHidden (aColumnId, aSection->IsHidden());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -170,8 +153,10 @@ void TreeModel_Tools::UseVisibilityColumn (QTreeView* theTreeView, const bool th
|
||||
aHeader->moveSection (TreeModel_ColumnType_Name, TreeModel_ColumnType_Visibility);
|
||||
|
||||
TreeModel_ModelBase* aModel = dynamic_cast<TreeModel_ModelBase*> (theTreeView->model());
|
||||
aModel->SetHeaderItem (TreeModel_ColumnType_Visibility,
|
||||
TreeModel_HeaderSection ("Visibility", TreeModel_ModelBase::ColumnVisibilityWidth()));
|
||||
TreeModel_HeaderSection* anItem = aModel->ChangeHeaderItem ((int)TreeModel_ColumnType_Visibility);
|
||||
anItem->SetIsHidden (theActive);
|
||||
anItem->SetWidth (TreeModel_ModelBase::ColumnVisibilityWidth());
|
||||
|
||||
aModel->SetUseVisibilityColumn (theActive);
|
||||
}
|
||||
|
||||
|
Reference in New Issue
Block a user