inline void z::CmakeGenerator::Impl::generateConfig(const z::Ast::Config& config) {
    z::Compiler compiler(_project, config);
    compiler.compile();
    z::dir::mkpath(config.srcdir() + "/");
    z::ofile osPro(config.srcdir() + "/" + "CMakeLists.txt");
    generateProject(config, osPro);
}
Beispiel #2
0
void testApp::openFolderDialog()
{
    dialogSettings s;
    s.canChooseFolders = true;
    s.canChooseFiles = false;
    s.allowMultipleSelection = false;
    files = openDialog(s);

    if(files.size() > 0)
    {
        generateProject();
    }
}
//--------------------------------------------------------------
void testApp::mousePressed(int x, int y, int button){
    ofPoint mouse = ofPoint(x, y);
    if (mode == MODE_NORMAL){

        for (int i = 0; i < buttons.size(); i++){
            buttons[i]->checkMousePressed(mouse);
        }
        
        //-------------------------------------
        // 0 = sketch name
        //-------------------------------------
//        if (buttons[0].bMouseOver == true){
//            string text = ofSystemTextBoxDialog("choose sketch name", buttons[0].text);
//            fixStringCharacters(text);
//            setStatus("sketch name set to: " + text);
//            buttons[0].setText(text);
//        }

        //-------------------------------------
        // 1 = sketch path
        //-------------------------------------
        if (buttons[1]->bMouseOver == true){

            string command = "";

            ofDirectory dir(ofFilePath::join(getOFRoot(),defaultLoc));

            if (!dir.exists()){
                dir.create();
            }
          	
        #ifdef TARGET_WIN32
                    ofFileDialogResult res = ofSystemLoadDialog("please select sketch folder", true, windowsFromUnixPath(dir.path()));
        #else 
                    ofFileDialogResult res = ofSystemLoadDialog("please select sketch folder", true, dir.path());
        #endif
            

            if (res.bSuccess){
                string result = res.filePath;
                convertWindowsToUnixPath(result);
                buttons[1]->setText( result );
                
                setStatus("path set to: " + result);
            }
        }

        //-------------------------------------
        // 2 = platform  (disabled)
        //-------------------------------------
        if (buttons[2]->bMouseOver == true){
            // platform is diabled for now
             mode = MODE_PLATFORM;
        }

        //-------------------------------------
        // 3 = addon
        //-------------------------------------
        if (buttons[3]->bMouseOver == true){
            mode = MODE_ADDON;
        }
        
        //-------------------------------------
        // 4 = genearate
        //-------------------------------------
        if (generateButton.bMouseOver == true){
            generateProject();
        }
    }

    if (mode == MODE_ADDON ){
        
        coreAddonsList.checkMousePressed(mouse);
        if(bHaveNonCoreAddons)
            otherAddonsList.checkMousePressed(mouse);
        
        //-------------------------------------
        // if we hit he back button, collect the addons for display
        //-------------------------------------

        if (backButton.bMouseOver){
            string addons = coreAddonsList.getSelectedAsString() + otherAddonsList.getSelectedAsString();
            buttons[3]->setText(addons);
            setStatus("addons set to: " + addons);

            backButton.bMouseOver = false;
            mode = MODE_NORMAL;
        }
    }

    if (mode == MODE_PLATFORM){
        platformsList.checkMousePressed(mouse);
        
        if (backButton.bMouseOver){
            string platforms = platformsList.getSelectedAsString();
            buttons[2]->setText( platforms );
            setStatus("Platform targets set to: " + platforms);
            
            backButton.bMouseOver = false;
            mode = MODE_NORMAL;
        }
    }
}
Beispiel #4
0
//--------------------------------------------------------------
void testApp::mousePressed(int x, int y, int button){

    if (mode == MODE_NORMAL){


        // check the mouse for press

        for (int i = 0; i < buttons.size(); i++){
            buttons[i].checkMousePressed(ofPoint(x, y));
        }
        

        //-------------------------------------
        // 4 = genearate
        //-------------------------------------

        
        if (generateButton.bMouseOver == true){
            generateProject();
        }

        //-------------------------------------
        // 0 = sketch name
        //-------------------------------------

        if (buttons[0].bMouseOver == true){
            string text = ofSystemTextBoxDialog("choose sketch name", buttons[0].myText);
            fixStringCharacters(text);
            setStatus("sketch name set to: " + text);
            buttons[0].setText(text);
        }

        //-------------------------------------
        // 1 = sketch path
        //-------------------------------------

        if (buttons[1].bMouseOver == true){

            string command = "";

            ofDirectory dir(ofFilePath::join(getOFRoot(),defaultLoc));

            if (!dir.exists()){
                dir.create();
            }

          	
        #ifdef TARGET_WIN32
                    ofFileDialogResult res = ofSystemLoadDialog("please select sketch folder", true, windowsFromUnixPath(dir.path()));
        #else 
                    ofFileDialogResult res = ofSystemLoadDialog("please select sketch folder", true, dir.path());
        #endif
            

            if (res.bSuccess){
                string result = res.filePath;
                convertWindowsToUnixPath(result);
                buttons[1].setText( result );
                
                setStatus("path set to: " + result);
            }


        }


        //-------------------------------------
        // 2 = platform  (disabled)
        //-------------------------------------


        if (buttons[2].bMouseOver == true){
            // platform is diabled for now
             mode = 2;
        }

        //-------------------------------------
        // 3 = addon
        //-------------------------------------

        if (buttons[3].bMouseOver == true){
            mode = MODE_ADDON;

        }
    }

    //-------------------------------------
    // handle addon mode
    //-------------------------------------

    if (mode == MODE_ADDON ){

        //-------------------------------------
        // if we hit he back button, collect the addons for display
        //-------------------------------------

        if (addonButton.bMouseOver){

            string addons = "";

            for (int i = 0; i < panelCoreAddons.getNumControls(); i++){
                if (*((ofxToggle *)panelCoreAddons.getControl(i))){
                   if (addons.length() > 0) addons+=", ";
                    addons += ((ofxToggle *)panelCoreAddons.getControl(i))->getName();

                }

            }
            for (int i = 0; i < panelOtherAddons.getNumControls(); i++){
                if (*((ofxToggle *)panelOtherAddons.getControl(i))){
                    if (addons.length() > 0) addons+=", ";
                    addons += ((ofxToggle *)panelOtherAddons.getControl(i))->getName();

                }

            }
            buttons[3].setText(addons);

            setStatus("addons set to: " + addons);

            addonButton.bMouseOver = false;
            mode = MODE_NORMAL;
        }
    }

    if (mode == MODE_PLATFORM){

    }
}
//--------------------------------------------------------------
void testApp::mousePressed(int x, int y, int button){

    if (mode == MODE_NORMAL){


        // check the mouse for press

        for (int i = 0; i < buttons.size(); i++){
            buttons[i].checkMousePressed(ofPoint(x, y));
        }

        //-------------------------------------
        // 4 = genearate
        //-------------------------------------

        if (buttons[4].bMouseOver == true){
            generateProject();
        }

        //-------------------------------------
        // 0 = sketch name
        //-------------------------------------

        if (buttons[0].bMouseOver == true){
            string text = ofSystemTextBoxDialog("choose sketch name", buttons[0].myText);
            fixStringCharacters(text);
            status = "sketch name set to: " + text;
            buttons[0].setText(text);
        }

        //-------------------------------------
        // 1 = sketch path
        //-------------------------------------

        if (buttons[1].bMouseOver == true){

             printf("here2? \n");

            string command;


            ofDirectory dir(ofFilePath::join(getOFRoot(),defaultLoc));

            //cout << dir.getAbsolutePath() << endl;

            if (!dir.exists()){
                dir.create();
            }

#ifdef TARGET_OSX

            printf("here? \n");

            char * MessageBuffer = "please select sketch folder";
            char * FileExtension = "";
            char ResultBuffer[1024];
            memset(ResultBuffer, 0,1024);

            string defaultStr = ofFilePath::join(getOFRoot(),defaultLoc);
            cout << defaultStr << endl;
            if (__g2ShowOpenDialog((char *)defaultStr.c_str(), MessageBuffer, FileExtension, ResultBuffer, 1024)){

                string res = string(ResultBuffer);
                buttons[1].setText(res);
                status = "sketch path set to: " + res;

            }
#else

            ofFileDialogResult results = ofSystemLoadDialog("please select sketch folder",true,buttons[1].myText);
            if(results.bSuccess){
				buttons[1].setText(results.filePath);
				status = "sketch path set to: " + results.filePath;
            }

#endif


        }


        //-------------------------------------
        // 2 = platform  (disabled)
        //-------------------------------------


        if (buttons[2].bMouseOver == true){
            // platform is diabled for now
            // mode = 2;
        }

        //-------------------------------------
        // 3 = addon
        //-------------------------------------

        if (buttons[3].bMouseOver == true){
            mode = MODE_ADDON;

        }
    }

    //-------------------------------------
    // handle addon mode
    //-------------------------------------

    if (mode == MODE_ADDON){

        //-------------------------------------
        // if we hit he back button, collect the addons for display
        //-------------------------------------

        if (addonButton.bMouseOver){

            string addons = "";

            for (int i = 0; i < panelCoreAddons.getNumControls(); i++){
                if (*((ofxToggle *)panelCoreAddons.getControl(i))){
                   if (addons.length() > 0) addons+=", ";
                    addons += ((ofxToggle *)panelCoreAddons.getControl(i))->getName();

                };

            }
            for (int i = 0; i < panelOtherAddons.getNumControls(); i++){
                if (*((ofxToggle *)panelOtherAddons.getControl(i))){
                    if (addons.length() > 0) addons+=", ";
                    addons += ((ofxToggle *)panelOtherAddons.getControl(i))->getName();

                };

            }
            buttons[3].setText(addons);

            status = "addons set to: " + addons;

            addonButton.bMouseOver = false;
            mode = MODE_NORMAL;
        }
    }

    if (mode == MODE_PLATFORM){

    }
}