コード例 #1
0
ファイル: NewFileWindow.cpp プロジェクト: Censacrof/Polycode
NewFileWindow::NewFileWindow() : UIWindow(L"Create New File", 580, 280) {
	defaultTemplateTree = NULL;
	
	Config *conf = CoreServices::getInstance()->getConfig();	
	String fontName = conf->getStringValue("Polycode", "uiDefaultFontName");
	
	closeOnEscape = true;	
	
	templateContainer = new UITreeContainer("boxIcon.png", L"File Templates", 250, 300-topPadding-padding-padding);	
	
	FileTemplateUserData *data = new FileTemplateUserData();
	data->type = 0;
	templateContainer->getRootNode()->setUserData(data);			

	addChild(templateContainer);		
	templateContainer->setPosition(padding,topPadding+padding);	
	templateContainer->getRootNode()->toggleCollapsed();
	
	templateContainer->getRootNode()->addEventListener(this, UITreeEvent::SELECTED_EVENT);
	templateContainer->getRootNode()->addEventListener(this, UITreeEvent::EXECUTED_EVENT);
	
	
	vector<OSFileEntry> templates = OSBasics::parseFolder(RESOURCE_PATH"FileTemplates", false);
	for(int i=0; i < templates.size(); i++) {
		OSFileEntry entry = templates[i];
		if(entry.type == OSFileEntry::TYPE_FOLDER) {
			UITree *newChild = templateContainer->getRootNode()->addTreeChild("folder.png", entry.name, NULL);			
			FileTemplateUserData *data = new FileTemplateUserData();
			data->type = 0;
			newChild->setUserData(data);			
			newChild->toggleCollapsed();
			parseTemplatesIntoTree(newChild, entry);
		}
	}	
	
	UILabel *label2 = new UILabel(L"NEW FILE NAME (NO EXTENSION)", 18, "section", Label::ANTIALIAS_FULL);
	label2->color.a = 1.0;
	label2->getLabel()->setColorForRange(Color(),0, 12);
	label2->getLabel()->setColorForRange(Color(0.6, 0.6, 0.6, 1.0),12, 40);
	label2->setText("NEW FILE NAME (NO EXTENSION)");
		
	addChild(label2);
	label2->setPosition(padding+270, templateContainer->getPosition().y-5);			
	
	fileNameInput = new UITextInput(false, 550-padding-210-padding-padding, 12);	
	addFocusChild(fileNameInput);
	fileNameInput->setPosition(label2->getPosition().x, label2->getPosition().y+30);
	
	
	cancelButton = new UIButton(L"Cancel", 100);
	cancelButton->addEventListener(this, UIEvent::CLICK_EVENT);
	addFocusChild(cancelButton);
	cancelButton->setPosition(600-100-padding-100-10, 265);
			
	okButton = new UIButton(L"Create File", 100);
	okButton->addEventListener(this, UIEvent::CLICK_EVENT);
	addFocusChild(okButton);
	okButton->setPosition(600-100-padding, 265);	
}
コード例 #2
0
ファイル: NewFileWindow.cpp プロジェクト: Flapstah/Polycode
NewFileWindow::NewFileWindow() : UIWindow(L"Create New File", 480, 280) {
	defaultTemplateTree = NULL;
	
	Config *conf = CoreServices::getInstance()->getConfig();	
	String fontName = conf->getStringValue("Polycode", "uiDefaultFontName");
	int fontSize = conf->getNumericValue("Polycode", "uiDefaultFontSize");
	
	closeOnEscape = true;	
	
	templateContainer = new UITreeContainer("boxIcon.png", L"File Templates", 200, 300-topPadding-padding-padding);	
	
	FileTemplateUserData *data = new FileTemplateUserData();
	data->type = 0;
	templateContainer->getRootNode()->setUserData(data);			

	addChild(templateContainer);		
	templateContainer->setPosition(padding,topPadding+padding);	
	templateContainer->getRootNode()->toggleCollapsed();
	
	templateContainer->getRootNode()->addEventListener(this, UITreeEvent::SELECTED_EVENT);
	
	
	vector<OSFileEntry> templates = OSBasics::parseFolder(RESOURCE_PATH"FileTemplates", false);
	for(int i=0; i < templates.size(); i++) {
		OSFileEntry entry = templates[i];
		if(entry.type == OSFileEntry::TYPE_FOLDER) {
			UITree *newChild = templateContainer->getRootNode()->addTreeChild("folder.png", entry.name, NULL);			
			FileTemplateUserData *data = new FileTemplateUserData();
			data->type = 0;
			newChild->setUserData(data);			
			newChild->toggleCollapsed();
			parseTemplatesIntoTree(newChild, entry);
		}
	}	
	
	ScreenLabel *label2 = new ScreenLabel(L"New File Name (without extension)", fontSize, fontName, Label::ANTIALIAS_FULL);
	addChild(label2);
	label2->setPosition(padding+220, templateContainer->getPosition().y);			
	
	fileNameInput = new UITextInput(false, 500-padding-220-padding-padding, 12);	
	addChild(fileNameInput);
	fileNameInput->setPosition(label2->getPosition().x, label2->getPosition().y+label2->getHeight()+2);
	
	
	cancelButton = new UIButton(L"Cancel", 100);
	cancelButton->addEventListener(this, UIEvent::CLICK_EVENT);
	addChild(cancelButton);
	cancelButton->setPosition(500-100-padding-100-10, 265);
			
	okButton = new UIButton(L"Create File", 100);
	okButton->addEventListener(this, UIEvent::CLICK_EVENT);
	addChild(okButton);
	okButton->setPosition(500-100-padding, 265);	
}
コード例 #3
0
ExampleBrowserWindow::ExampleBrowserWindow() : UIWindow(L"Example Browser", 320, 300){
	
	templateFolder = "";
	
	closeOnEscape = true;
	defaultTemplateTree = NULL;
	
	Config *conf = CoreServices::getInstance()->getConfig();	
	String fontName = conf->getStringValue("Polycode", "uiDefaultFontName");
	int fontSize = conf->getNumericValue("Polycode", "uiDefaultFontSize");
	
	
	templateContainer = new UITreeContainer("boxIcon.png", L"Examples", 300, 300-topPadding-padding-padding- 40);	
	
	ExampleTemplateUserData *data = new ExampleTemplateUserData();
	data->type = 0;
	templateContainer->getRootNode()->setUserData(data);			
	
	
	addChild(templateContainer);		
	templateContainer->setPosition(padding,topPadding+padding);	
	templateContainer->getRootNode()->toggleCollapsed();
	
	templateContainer->getRootNode()->addEventListener(this, UITreeEvent::SELECTED_EVENT);
	
	vector<OSFileEntry> templates = OSBasics::parseFolder(RESOURCE_PATH"Standalone/Examples/Lua", false);
	for(int i=0; i < templates.size(); i++) {
		OSFileEntry entry = templates[i];
		if(entry.type == OSFileEntry::TYPE_FOLDER) {
			UITree *newChild = templateContainer->getRootNode()->addTreeChild("folder.png", entry.name, NULL);			
			ExampleTemplateUserData *data = new ExampleTemplateUserData();
			data->type = 0;
			newChild->setUserData(data);			
			if(i == 0) {
				newChild->toggleCollapsed();
			}
			parseTemplatesIntoTree(newChild, entry);
		}
	}
	
	
	
	cancelButton = new UIButton(L"Cancel", 100);
	cancelButton->addEventListener(this, UIEvent::CLICK_EVENT);
	addChild(cancelButton);
	cancelButton->setPosition(300-100-padding-80-10, 265);
		
	
	okButton = new UIButton(L"Open Example", 100);
	okButton->addEventListener(this, UIEvent::CLICK_EVENT);
	addChild(okButton);
	okButton->setPosition(300-80-padding, 265);
}
コード例 #4
0
NewProjectWindow::NewProjectWindow() : UIWindow(L"Create New Project", 480, 280){
	
	templateFolder = "";
	
	closeOnEscape = true;
	defaultTemplateTree = NULL;
	
	Config *conf = CoreServices::getInstance()->getConfig();	
	String fontName = conf->getStringValue("Polycode", "uiDefaultFontName");
	int fontSize = conf->getNumericValue("Polycode", "uiDefaultFontSize");
	
	
	templateContainer = new UITreeContainer("boxIcon.png", L"Templates", 200, 300-topPadding-padding-padding);	
	
	TemplateUserData *data = new TemplateUserData();
	data->type = 0;
	templateContainer->getRootNode()->setUserData(data);			
	
	
	addChild(templateContainer);		
	templateContainer->setPosition(padding,topPadding+padding);	
	templateContainer->getRootNode()->toggleCollapsed();
	
	templateContainer->getRootNode()->addEventListener(this, UITreeEvent::SELECTED_EVENT);
	
	vector<OSFileEntry> templates = OSBasics::parseFolder(RESOURCE_PATH"ProjectTemplates", false);
	for(int i=0; i < templates.size(); i++) {
		OSFileEntry entry = templates[i];
		if(entry.type == OSFileEntry::TYPE_FOLDER) {
			UITree *newChild = templateContainer->getRootNode()->addTreeChild("folder.png", entry.name, NULL);			
			TemplateUserData *data = new TemplateUserData();
			data->type = 0;
			newChild->setUserData(data);			
			if(i == 0) {
				newChild->toggleCollapsed();
			}
			parseTemplatesIntoTree(newChild, entry);
		}
	}
	
	ScreenLabel *label2 = new ScreenLabel(L"PROJECT NAME", 22, "section", Label::ANTIALIAS_FULL);
	label2->color.a = 0.4;
	addChild(label2);
	label2->setPosition(padding+220, templateContainer->getPosition().y-5);		

	projectNameInput = new UITextInput(false, 500-padding-210-padding-padding, 12);	
	addChild(projectNameInput);
	projectNameInput->setPosition(label2->getPosition().x, label2->getPosition().y + 30);
	
	ScreenLabel *label3 = new ScreenLabel(L"PROJECT LOCATION", 22, "section", Label::ANTIALIAS_FULL);
	label3->color.a = 0.4;
	addChild(label3);
	label3->setPosition(padding+220, templateContainer->getPosition().y+60);		
	
	projectLocationInput = new UITextInput(false, 500-padding-210-padding-padding, 12);	
	addChild(projectLocationInput);
	projectLocationInput->setPosition(label3->getPosition().x, label3->getPosition().y+30);

	
	locationSelectButton = new UIButton(L"Choose...", 100);
	locationSelectButton->addEventListener(this, UIEvent::CLICK_EVENT);	
	addChild(locationSelectButton);
	locationSelectButton->setPosition(500-103-padding, projectLocationInput->getPosition().y+projectLocationInput->getHeight()+10);
	
	
	cancelButton = new UIButton(L"Cancel", 100);
	cancelButton->addEventListener(this, UIEvent::CLICK_EVENT);
	addChild(cancelButton);
	cancelButton->setPosition(500-100-padding-100-10, 265);
		
	
	okButton = new UIButton(L"Create Project", 100);
	okButton->addEventListener(this, UIEvent::CLICK_EVENT);
	addChild(okButton);
	okButton->setPosition(500-100-padding, 265);
}