package org.geogebra.common.gui; import java.util.Vector; import org.geogebra.common.gui.toolbar.ToolBar; import org.geogebra.common.gui.toolbar.ToolbarItem; public class CustomizeToolbarModel { /** * @param toolbarDefinition * toolbar definition string (see EuclidianConstants) * @return vector of menus (vectors of ints) and separators (ints) * */ public static Vector<Integer> generateToolsVector( String toolbarDefinition) { Vector<Integer> vector = new Vector<Integer>(); // separator vector.add(ToolBar.SEPARATOR); // get default toolbar as nested vectors Vector<ToolbarItem> defTools = null; try { defTools = ToolBar.parseToolbarString(toolbarDefinition); } catch (Exception e) { return new Vector<Integer>(); } for (int i = 0; i < defTools.size(); i++) { ToolbarItem element = defTools.get(i); if (element.getMenu() != null) { Vector<Integer> menu = element.getMenu(); for (int j = 0; j < menu.size(); j++) { Integer modeInt = menu.get(j); int mode = modeInt.intValue(); if (mode != -1) { vector.add(modeInt); } } } else { Integer modeInt = element.getMode(); int mode = modeInt.intValue(); if (mode != -1) { vector.add(modeInt); } } } return vector; } }