Просмотр исходного кода

Uppercase extensions will now show up in the IDE asset browser, project files won't be opened by default now (this only happened so their fonts would load, now loaded by ProjectManager)

Ivan Safrin 12 лет назад
Родитель
Сommit
cc0ef59a4a

+ 2 - 7
IDE/Contents/Source/PolycodeIDEApp.cpp

@@ -372,8 +372,7 @@ void PolycodeIDEApp::openProject() {
 		PolycodeProject *project = projectManager->openProject(paths[0]);
 		if(project) {
 			projectManager->setActiveProject(project);
-			OSFileEntry projectEntry =	OSFileEntry(project->getProjectFile(), OSFileEntry::TYPE_FILE);
-			openFile(projectEntry);			
+			OSFileEntry projectEntry =	OSFileEntry(project->getProjectFile(), OSFileEntry::TYPE_FILE);	
 		}
 	}
 #endif
@@ -582,7 +581,6 @@ void PolycodeIDEApp::handleEvent(Event *event) {
 				if(project) {
 					projectManager->setActiveProject(project);
 					OSFileEntry projectEntry =	OSFileEntry(project->getProjectFile(), OSFileEntry::TYPE_FILE);
-					openFile(projectEntry);			
 				}
 				
 			}
@@ -931,9 +929,7 @@ void PolycodeIDEApp::handleEvent(Event *event) {
 			String fullPath = String(core->getDefaultWorkingDirectory()+"/"+frame->exampleBrowserWindow->getExamplePath());
 			PolycodeProject* project = projectManager->openProject(fullPath);
 			OSFileEntry projectEntry =	OSFileEntry(project->getProjectFile(), OSFileEntry::TYPE_FILE);
-			projectManager->setActiveProject(project);
-			openFile(projectEntry);			
-			
+			projectManager->setActiveProject(project);			
 			frame->hideModal();			
 		}
 	}
@@ -1015,7 +1011,6 @@ void PolycodeIDEApp::loadConfigFile() {
 					if(project) {
 						OSFileEntry projectEntry =	OSFileEntry(project->getProjectFile(), OSFileEntry::TYPE_FILE);
 						projectManager->setActiveProject(project);
-						openFile(projectEntry);
 					}
 				}
 			}

+ 6 - 0
IDE/Contents/Source/PolycodeProjectManager.cpp

@@ -66,6 +66,12 @@ PolycodeProject* PolycodeProjectManager::openProject(String path) {
 	PolycodeProject* newProject = new PolycodeProject(projectName, projectPath, path);
 	projects.push_back(newProject);
 	
+	for(int i=0; i < newProject->data.fonts.size(); i++) {
+		String fontPath = projectPath+"/"+newProject->data.fonts[i].fontPath;
+		String fontName = newProject->data.fonts[i].fontName;
+		CoreServices::getInstance()->getFontManager()->registerFont(fontName, fontPath);		
+	}
+	
 	projectBrowser->addProject(newProject);
 	return newProject;
 }

+ 3 - 1
IDE/Contents/Source/TextureBrowser.cpp

@@ -40,6 +40,8 @@ AssetEntry::AssetEntry(String assetPath, String assetName, String extension) : U
 	imageShape->setPositionMode(ScreenEntity::POSITION_TOPLEFT);
 	addChild(imageShape);
 	
+	extension = extension.toLowerCase();
+	
 	if(extension == "png") {
 		imageShape->loadTexture(assetPath);
 	} else if(extension == "ogg" || extension == "wav") {
@@ -93,7 +95,7 @@ void AssetList::setExtensions(std::vector<String> extensions) {
 
 bool AssetList::hasExtension(String extension) {
 	for(int i=0; i < extensions.size(); i++) {
-		if(extensions[i] == extension) {
+		if(extensions[i] == extension.toLowerCase()) {
 			return true;
 		}
 	}