mirror of
https://github.com/juce-framework/JUCE.git
synced 2026-02-04 03:40:07 +00:00
Introjucer: reconfigured settings files so that per-project settings are stored separately from global properties.
This commit is contained in:
parent
18977ebd44
commit
753ebf48e5
13 changed files with 135 additions and 98 deletions
|
|
@ -27,6 +27,45 @@
|
|||
#include "../Project/jucer_ProjectContentComponent.h"
|
||||
|
||||
|
||||
//==============================================================================
|
||||
void TreePanelBase::setRoot (JucerTreeViewBase* root)
|
||||
{
|
||||
rootItem = root;
|
||||
tree.setRootItem (root);
|
||||
tree.getRootItem()->setOpen (true);
|
||||
|
||||
if (project != nullptr)
|
||||
{
|
||||
const ScopedPointer<XmlElement> treeOpenness (project->getStoredProperties()
|
||||
.getXmlValue (opennessStateKey));
|
||||
if (treeOpenness != nullptr)
|
||||
{
|
||||
tree.restoreOpennessState (*treeOpenness, true);
|
||||
|
||||
for (int i = tree.getNumSelectedItems(); --i >= 0;)
|
||||
{
|
||||
JucerTreeViewBase* item = dynamic_cast<JucerTreeViewBase*> (tree.getSelectedItem (i));
|
||||
|
||||
if (item != nullptr)
|
||||
item->cancelDelayedSelectionTimer();
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
void TreePanelBase::saveOpenness()
|
||||
{
|
||||
if (project != nullptr)
|
||||
{
|
||||
const ScopedPointer<XmlElement> opennessState (tree.getOpennessState (true));
|
||||
|
||||
if (opennessState != nullptr)
|
||||
project->getStoredProperties().setValue (opennessStateKey, opennessState);
|
||||
else
|
||||
project->getStoredProperties().removeValue (opennessStateKey);
|
||||
}
|
||||
}
|
||||
|
||||
//==============================================================================
|
||||
JucerTreeViewBase::JucerTreeViewBase()
|
||||
: textX (0)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue