1
0
Fork 0
mirror of https://github.com/juce-framework/JUCE.git synced 2026-01-10 23:44:24 +00:00

A couple of minor introjucer changes.

This commit is contained in:
jules 2012-09-07 22:38:32 +01:00
parent 7d953a629d
commit e00bfdc1df
4 changed files with 27 additions and 10 deletions

View file

@ -472,6 +472,14 @@ void LibraryModule::createLocalHeaderWrapper (ProjectSaver& projectSaver, const
} }
//============================================================================== //==============================================================================
File LibraryModule::getLocalFolderFor (Project& project) const
{
if (project.shouldCopyModuleFilesLocally (getID()).getValue())
return project.getGeneratedCodeFolder().getChildFile ("modules").getChildFile (getID());
else
return moduleFolder;
}
void LibraryModule::prepareExporter (ProjectExporter& exporter, ProjectSaver& projectSaver) const void LibraryModule::prepareExporter (ProjectExporter& exporter, ProjectSaver& projectSaver) const
{ {
Project& project = exporter.getProject(); Project& project = exporter.getProject();
@ -649,7 +657,7 @@ void LibraryModule::findAndAddCompiledCode (ProjectExporter& exporter, ProjectSa
} }
} }
void LibraryModule::getLocalCompiledFiles (Array<File>& result) const void LibraryModule::getLocalCompiledFiles (const File& localModuleFolder, Array<File>& result) const
{ {
const var compileArray (moduleInfo ["compile"]); // careful to keep this alive while the array is in use! const var compileArray (moduleInfo ["compile"]); // careful to keep this alive while the array is in use!
const Array<var>* const files = compileArray.getArray(); const Array<var>* const files = compileArray.getArray();
@ -671,8 +679,7 @@ void LibraryModule::getLocalCompiledFiles (Array<File>& result) const
#endif #endif
) )
{ {
const File compiledFile (moduleFolder.getChildFile (filename)); result.add (localModuleFolder.getChildFile (filename));
result.add (compiledFile);
} }
} }
} }

View file

@ -50,7 +50,8 @@ public:
void prepareExporter (ProjectExporter&, ProjectSaver&) const; void prepareExporter (ProjectExporter&, ProjectSaver&) const;
void createPropertyEditors (ProjectExporter&, PropertyListBuilder&) const; void createPropertyEditors (ProjectExporter&, PropertyListBuilder&) const;
void getConfigFlags (Project&, OwnedArray<Project::ConfigFlag>& flags) const; void getConfigFlags (Project&, OwnedArray<Project::ConfigFlag>& flags) const;
void getLocalCompiledFiles (Array<File>& files) const; void getLocalCompiledFiles (const File& localModuleFolder, Array<File>& files) const;
File getLocalFolderFor (Project&) const;
static String getInfoFileName() { return "juce_module_info"; } static String getInfoFileName() { return "juce_module_info"; }

View file

@ -67,12 +67,16 @@ void TreePanelBase::saveOpenness()
} }
//============================================================================== //==============================================================================
JucerTreeViewBase::JucerTreeViewBase() JucerTreeViewBase::JucerTreeViewBase() : textX (0)
: textX (0)
{ {
setLinesDrawnForSubItems (false); setLinesDrawnForSubItems (false);
} }
JucerTreeViewBase::~JucerTreeViewBase()
{
masterReference.clear();
}
void JucerTreeViewBase::refreshSubItems() void JucerTreeViewBase::refreshSubItems()
{ {
WholeTreeOpennessRestorer openness (*this); WholeTreeOpennessRestorer openness (*this);
@ -207,15 +211,16 @@ void JucerTreeViewBase::showDocument() {}
void JucerTreeViewBase::showPopupMenu() {} void JucerTreeViewBase::showPopupMenu() {}
void JucerTreeViewBase::showMultiSelectionPopupMenu() {} void JucerTreeViewBase::showMultiSelectionPopupMenu() {}
static void treeViewMenuItemChosen (int resultCode, JucerTreeViewBase* item) static void treeViewMenuItemChosen (int resultCode, WeakReference<JucerTreeViewBase> item)
{ {
item->handlePopupMenuResult (resultCode); if (item != nullptr)
item->handlePopupMenuResult (resultCode);
} }
void JucerTreeViewBase::launchPopupMenu (PopupMenu& m) void JucerTreeViewBase::launchPopupMenu (PopupMenu& m)
{ {
m.showMenuAsync (PopupMenu::Options(), m.showMenuAsync (PopupMenu::Options(),
ModalCallbackFunction::create (treeViewMenuItemChosen, this)); ModalCallbackFunction::create (treeViewMenuItemChosen, WeakReference<JucerTreeViewBase> (this)));
} }
void JucerTreeViewBase::handlePopupMenuResult (int) void JucerTreeViewBase::handlePopupMenuResult (int)
@ -236,7 +241,7 @@ ProjectContentComponent* JucerTreeViewBase::getProjectContentComponent() const
c = c->getParentComponent(); c = c->getParentComponent();
} }
return 0; return nullptr;
} }
//============================================================================== //==============================================================================

View file

@ -35,6 +35,7 @@ class JucerTreeViewBase : public TreeViewItem
{ {
public: public:
JucerTreeViewBase(); JucerTreeViewBase();
~JucerTreeViewBase();
int getItemWidth() const { return -1; } int getItemWidth() const { return -1; }
int getItemHeight() const { return 20; } int getItemHeight() const { return 20; }
@ -102,6 +103,9 @@ private:
friend class ItemSelectionTimer; friend class ItemSelectionTimer;
ScopedPointer<Timer> delayedSelectionTimer; ScopedPointer<Timer> delayedSelectionTimer;
WeakReference<JucerTreeViewBase>::Master masterReference;
friend class WeakReference<JucerTreeViewBase>;
void invokeShowDocument(); void invokeShowDocument();
}; };