MCPcopy Create free account
hub / github.com/MITK/MITK / SaveState

Method SaveState

Plugins/org.blueberry.ui.qt/src/internal/berryPartStack.cpp:1058–1155  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

1056}
1057
1058bool PartStack::SaveState(IMemento::Pointer memento)
1059{
1060
1061 if (GetAppearance() != PresentationFactoryUtil::ROLE_EDITOR)
1062 {
1063 // Save the active tab.
1064 if (requestedCurrent)
1065 {
1066 memento->PutString(WorkbenchConstants::TAG_ACTIVE_PAGE_ID, requestedCurrent->GetID());
1067 }
1068
1069 // Write out the presentable parts (in order)
1070 QSet<QString> cachedIds;
1071 PartStack::PresentableVector pparts(GetPresentableParts());
1072 for (PartStack::PresentableVector::iterator ppIter = pparts.begin();
1073 ppIter != pparts.end(); ++ppIter)
1074 {
1075 PresentablePart::Pointer presPart = ppIter->Cast<PresentablePart>();
1076
1077 IMemento::Pointer childMem = memento->CreateChild(WorkbenchConstants::TAG_PAGE);
1078 PartPane::Pointer part = presPart->GetPane();
1079 QString tabText = part->GetPartReference()->GetPartName();
1080
1081 childMem->PutString(WorkbenchConstants::TAG_LABEL, tabText);
1082 childMem->PutString(WorkbenchConstants::TAG_CONTENT, presPart->GetPane()->GetPlaceHolderId());
1083
1084 // Cache the id so we don't write it out later
1085 cachedIds.insert(presPart->GetPane()->GetPlaceHolderId());
1086 }
1087
1088 for (ChildVector::iterator iter = children.begin();
1089 iter != children.end(); ++iter)
1090 {
1091 LayoutPart::Pointer next = *iter;
1092
1093 PartPane::Pointer part;
1094 if ((part = next.Cast<PartPane>()))
1095 {
1096 // Have we already written it out?
1097 if (cachedIds.find(part->GetPlaceHolderId()) != cachedIds.end())
1098 continue;
1099 }
1100
1101 IMemento::Pointer childMem = memento
1102 ->CreateChild(WorkbenchConstants::TAG_PAGE);
1103
1104 QString tabText = "LabelNotFound";
1105 if (part)
1106 {
1107 tabText = part->GetPartReference()->GetPartName();
1108 }
1109 childMem->PutString(WorkbenchConstants::TAG_LABEL, tabText);
1110 childMem->PutString(WorkbenchConstants::TAG_CONTENT, next->GetID());
1111 }
1112 }
1113
1114 // IPreferenceStore preferenceStore = PrefUtil.getAPIPreferenceStore();
1115 // boolean useNewMinMax = preferenceStore.getBoolean(IWorkbenchPreferenceConstants.ENABLE_NEW_MIN_MAX);

Callers 1

SavePresentationStateMethod · 0.45

Calls 15

SavePresentationStateMethod · 0.95
PutStringMethod · 0.80
CreateChildMethod · 0.80
GetPlaceHolderIdMethod · 0.80
PutIntegerMethod · 0.80
PutMementoMethod · 0.80
PutTextDataMethod · 0.80
GetIDMethod · 0.45
beginMethod · 0.45
endMethod · 0.45
GetPaneMethod · 0.45
GetPartNameMethod · 0.45

Tested by

no test coverage detected