Commit f88dd96e authored by Andrey Filippov's avatar Andrey Filippov
Browse files

Implemented multiple-choice launch actions

parent 216443b3
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -145,5 +145,6 @@ public class VDT {
    public static final String GENERATOR_ID_CURRENT_FILE  = "CurrentFile"; 
    public static final String GENERATOR_ID_SELECTED_FILE = "SelectedFile"; 
    public static final String GENERATOR_ID_CURRENT_BASE  = "CurrentFileBase"; 
    public static final String GENERATOR_ID_CHOSEN_ACTION = "ChosenActionIndex"; 
    public static final String GENERATOR_ID_OS_NAME       = "OS";
} // class VDT
+2 −2
Original line number Diff line number Diff line
@@ -100,8 +100,8 @@ public class VerilogUtils {
     * Returns the top module(s) for given verilog file.
     */

	public static String[] getTopModuleNames(IFile file) {
    	OutlineElement[] outlineElements= getTopModulesVeditor(file);
	public static String[] getTopModuleNames(IFile file) { //L/x353/data/vdt/workspace_11-runtime/x353/x353_1.tf
    	OutlineElement[] outlineElements= getTopModulesVeditor(file); // empty inside
    	if (outlineElements==null) return null;
    	String [] list = new String[outlineElements.length];
    	for (int i=0;i<list.length;i++) {
+7 −1
Original line number Diff line number Diff line
@@ -73,7 +73,13 @@ public class ParamBasedOption extends Option {
    }
    
    public String doLoadDefault() {
        String value = param.getDefaultValue().get(0);
        String value = param.getDefaultValue(true).get(0); // Andrey: ignore faults in TopModuleName generator
        doClear();
        return value;
    }

    public String doLoadDefault(boolean menuMode) {
        String value = param.getDefaultValue(menuMode).get(0);
        doClear();
        return value;
    }
+18 −17
Original line number Diff line number Diff line
@@ -990,28 +990,29 @@ public class XMLConfig extends Config {

    		for(Iterator<Node> n = runForNodes.iterator(); n.hasNext();) {
    			Node node = (Node)n.next();
    			boolean checkExtension=false; // for empty resource field - do not check file or extensions
    			boolean checkExistence=false;
    			String label = getAttributeValue(node, CONTEXT_TOOL_ACTION_LABEL);
    			if (label == null)
    				label=CONTEXT_TOOL_DFLT_ACTION_LABEL;
    			String resource = getAttributeValue(node, CONTEXT_TOOL_ACTION_RESOURCE);
    			if (resource == null)
    				resource= CONTEXT_TOOL_DFLT_ACTION_RESOURCE;

    			if ((resource == null) || (resource.length()==0)) {
    				//    				resource= CONTEXT_TOOL_DFLT_ACTION_RESOURCE;
    				resource = "";
    			} else {
    				String checkExtensionAttr=getAttributeValue(node, CONTEXT_TOOL_ACTION_CHECK_EXTENSION);
    				if (checkExtensionAttr==null){
    					checkExtensionAttr=CONTEXT_TOOL_DFLT_ACTION_CHECK_EXTENSION;
    				}
    				checkBoolAttr(checkExtensionAttr, CONTEXT_TOOL_ACTION_CHECK_EXTENSION);
    			boolean checkExtension=getBoolAttrValue(checkExtensionAttr);
    			

    				checkExtension=getBoolAttrValue(checkExtensionAttr);
    				String checkExistenceAttr=getAttributeValue(node, CONTEXT_TOOL_ACTION_CHECK_EXISTENCE);
    				if (checkExistenceAttr==null){
    					checkExistenceAttr=CONTEXT_TOOL_DFLT_ACTION_CHECK_EXISTENCE;
    				}
    				checkBoolAttr(checkExistenceAttr, CONTEXT_TOOL_ACTION_CHECK_EXISTENCE);
    			boolean checkExistence=getBoolAttrValue(checkExistenceAttr);

    				checkExistence=getBoolAttrValue(checkExistenceAttr);
    			}
    			runForList.add(new RunFor(label, resource, checkExtension, checkExistence));
    		}
    	}
+5 −2
Original line number Diff line number Diff line
@@ -31,7 +31,7 @@ public abstract class AbstractGenerator {
    protected final String prefix, suffix;
    protected String separator;
    private final boolean forcedMultiline;
    private boolean menuMode=false; // managing menu items, not running tool
    private boolean menuMode=false; // managing menu items, not running tool. Ignore Generator errors

    public AbstractGenerator() {
        this(false);
@@ -119,8 +119,11 @@ public abstract class AbstractGenerator {
        return output;
    }
    
    protected void fault(String message) {
    protected String fault(String message) {
    	if (menuMode)
    		return "";
        MessageUI.error("Generator '" + getName() + "' fault: " + message);
        return null;
    }
    
    protected abstract String[] getStringValues();
Loading