Skip to content

Commit

Permalink
Revert "Merge pull request #4626 from pavltom/GUI_TreeView_Item_Order…
Browse files Browse the repository at this point in the history
…ing"

This reverts commit c62239d, reversing
changes made to bef1df4.

See forums discussion: https://forum.freecadweb.org/viewtopic.php?p=549120
  • Loading branch information
chennes committed Nov 24, 2021
1 parent 643460e commit c9a74d4
Show file tree
Hide file tree
Showing 16 changed files with 22 additions and 826 deletions.
115 changes: 0 additions & 115 deletions src/Gui/CommandView.cpp
Expand Up @@ -3684,116 +3684,6 @@ void StdTreeDrag::activated(int)
}
}

//===========================================================================
// Std_GroupMoveUp
//===========================================================================
DEF_STD_CMD_A(StdGroupMoveUp)

StdGroupMoveUp::StdGroupMoveUp()
: Command("Std_GroupMoveUp")
{
sGroup = QT_TR_NOOP("TreeView");
sMenuText = QT_TR_NOOP("Move up in group");
sToolTipText = QT_TR_NOOP("Move object one place higher in its group");
sStatusTip = sToolTipText;
sWhatsThis = "Std_GroupMoveUp";
sPixmap = "button_up";
sAccel = "Alt+Up";
eType = 0;
}

void StdGroupMoveUp::activated(int iMsg)
{
Q_UNUSED(iMsg);

TreeWidget *tree = TreeWidget::instance();
if (!tree) {
return;
}

std::vector<DocumentObjectItem *> selected;
if (!tree->getSelectedSiblingObjectItems(selected)) {
return;
}

DocumentObjectItem *previous;
if (!tree->allowMoveUpInGroup(selected, &previous)) {
return;
}

TreeWidget::moveSiblings(selected, previous, -1);
}

bool StdGroupMoveUp::isActive(void)
{
TreeWidget *tree = TreeWidget::instance();
if (!tree) {
return false;
}

std::vector<DocumentObjectItem *> selected;
if (!tree->getSelectedSiblingObjectItems(selected)) {
return false;
}

return tree->allowMoveUpInGroup(selected);
}

//===========================================================================
// Std_GroupMoveDown
//===========================================================================
DEF_STD_CMD_A(StdGroupMoveDown)

StdGroupMoveDown::StdGroupMoveDown()
: Command("Std_GroupMoveDown")
{
sGroup = QT_TR_NOOP("TreeView");
sMenuText = QT_TR_NOOP("Move down in group");
sToolTipText = QT_TR_NOOP("Move object one place lower in its group");
sStatusTip = sToolTipText;
sWhatsThis = "Std_GroupMoveDown";
sPixmap = "button_down";
sAccel = "Alt+Down";
eType = 0;
}

void StdGroupMoveDown::activated(int iMsg)
{
Q_UNUSED(iMsg);

TreeWidget *tree = TreeWidget::instance();
if (!tree) {
return;
}

std::vector<DocumentObjectItem *> selected;
if (!tree->getSelectedSiblingObjectItems(selected)) {
return;
}

DocumentObjectItem *next ;
if (!tree->allowMoveDownInGroup(selected, &next)) {
return;
}

TreeWidget::moveSiblings(selected, next, +1);
}

bool StdGroupMoveDown::isActive(void)
{
TreeWidget *tree = TreeWidget::instance();
if (!tree) {
return false;
}

std::vector<DocumentObjectItem *> selected;
if (!tree->getSelectedSiblingObjectItems(selected)) {
return false;
}

return tree->allowMoveDownInGroup(selected);
}

//======================================================================
// Std_TreeViewActions
//===========================================================================
Expand Down Expand Up @@ -3828,11 +3718,6 @@ class StdCmdTreeViewActions : public GroupCommand

addCommand(new StdTreeDrag(),cmds.size());
addCommand(new StdTreeSelection(),cmds.size());

addCommand();

addCommand(new StdGroupMoveUp());
addCommand(new StdGroupMoveDown());
};
virtual const char* className() const {return "StdCmdTreeViewActions";}
};
Expand Down
30 changes: 3 additions & 27 deletions src/Gui/Document.cpp
Expand Up @@ -727,9 +727,6 @@ void Document::slotNewObject(const App::DocumentObject& Obj)
activeView->getViewer()->addViewProvider(pcProvider);
}

// If no tree rank was assigned, do it now, otherwise keep the current one
pcProvider->TreeRank.setValue(pcProvider->TreeRank.getValue());

// adding to the tree
signalNewObject(*pcProvider);
pcProvider->pcDocument = this;
Expand Down Expand Up @@ -1438,29 +1435,13 @@ void Document::RestoreDocFile(Base::Reader &reader)
expanded = true;
}
}

int rank = 0;
if (localreader->hasAttribute("rank")) {
rank = localreader->getAttributeAsInteger("rank");
}

ViewProvider* pObj = getViewProviderByName(name.c_str());
if (pObj) // check if this feature has been registered
pObj->Restore(*localreader);

ViewProviderDocumentObject *vpdo = dynamic_cast<ViewProviderDocumentObject *>(pObj);
if (vpdo) {
if (rank <= 0 ) {
// For backward compatibility, use object ID as tree rank
rank = vpdo->getObject()->getID();
}
vpdo->TreeRank.setValue(rank);

if (expanded) {
this->signalExpandObject(*vpdo, TreeItemMode::ExpandItem, 0, 0);
}
if (pObj && expanded) {
Gui::ViewProviderDocumentObject* vp = static_cast<Gui::ViewProviderDocumentObject*>(pObj);
this->signalExpandObject(*vp, TreeItemMode::ExpandItem,0,0);
}

localreader->readEndElement("ViewProvider");
}
localreader->readEndElement("ViewProviderData");
Expand Down Expand Up @@ -1580,11 +1561,6 @@ void Document::SaveDocFile (Base::Writer &writer) const
if (obj->hasExtensions())
writer.Stream() << " Extensions=\"True\"";

ViewProviderDocumentObject *vpdo = dynamic_cast<ViewProviderDocumentObject *>(obj);
if (vpdo && vpdo->TreeRank.getValue()) {
writer.Stream() << " rank=\"" << vpdo->TreeRank.getValue() << "\"";
}

writer.Stream() << ">" << std::endl;
obj->Save(writer);
writer.Stream() << writer.ind() << "</ViewProvider>" << std::endl;
Expand Down

0 comments on commit c9a74d4

Please sign in to comment.