void FileDialog::init(){ //Directories ListBox* dir = new ListBox(); dir->setPosition(Vector2D(50, 100)); dir->setSpan(Vector2D(400, 600)); dir->addEntries(Filesystem::getDirectories(cwd_+SEPARATOR+path_)); dir->setCbFunc(&changeDir); addElement(dir); //Files ListBox* file = new ListBox(); file->setPosition(Vector2D(564, 100)); file->setSpan(Vector2D(400, 600)); file->addEntries(Filesystem::getFiles(cwd_+SEPARATOR+path_)); file->setCbFunc(&writeFilename); addElement(file); //Input field InputField* inp = new InputField(); inp->setOpacity(0.8f); inp->setPosition(Vector2D(50, 50)); inp->setSpan(Vector2D(300,18)); addUnscaledElement(inp); //OK button PDButton* ok = new PDButton(); ok->setPosition(Vector2D(575, 50)); ok->setSpan(Vector2D(75,18)); ok->setText(" OK"); addUnscaledElement(ok); //Abort button PDButton* abort = new PDButton(); abort->setPosition(Vector2D(700, 50)); abort->setSpan(Vector2D(75,18)); abort->setText(" Abort"); addUnscaledElement(abort); }
//! the assign texture button void Menu::assignTexture(Gui::GuiElement* elem){ //Dialog Dialog* dia = new Dialog(); //Textures ListBox* lb = new ListBox(); lb->setPosition(Vector2D(50, 100)); lb->setSpan(Vector2D(400,600)); vector<Texture*> textures = Graphic::instance()->getScene().getTextures(); for (unsigned i = 0; i < textures.size(); i++){ lb->addEntry(textures[i]->getName()); } dia->addElement(lb); //Texture stages DropDownButton* stages = new DropDownButton(); stages->setPosition(Vector2D(500, 680)); dia->addUnscaledElement(stages); stages->calcDDPos(1); stages->setText("Stage 0"); stages->addEntry("Stage 0"); stages->addEntry("Stage 1"); stages->addEntry("Stage 2"); stages->addEntry("Stage 3"); stages->addEntry("Stage 4"); stages->addEntry("Stage 5"); stages->addEntry("Stage 6"); stages->addEntry("Stage 7"); //OK button PDButton* ok = new PDButton(); ok->setPosition(Vector2D(575, 50)); ok->setSpan(Vector2D(75,18)); ok->setText(" OK"); ok->setCbFunc(assignTextureDialog); dia->addUnscaledElement(ok); CGE::Engine::instance()->addGuiListener(dia); }
//! The add model callback void Menu::addModel(Gui::GuiElement* elem){ //Dialog Dialog* dia = new Dialog(); //Meshes ListBox* lb = new ListBox(); lb->setPosition(Vector2D(50, 100)); lb->setSpan(Vector2D(400,600)); vector<Mesh*> meshes = Graphic::instance()->getScene().getMeshes(); for (unsigned i = 0; i < meshes.size(); i++){ lb->addEntry(meshes[i]->getName()); } dia->addElement(lb); //OK button PDButton* ok = new PDButton(); ok->setPosition(Vector2D(575, 50)); ok->setSpan(Vector2D(75,18)); ok->setText(" OK"); ok->setCbFunc(setModel); dia->addUnscaledElement(ok); CGE::Engine::instance()->addGuiListener(dia); }