boolean moveInConstructionList(int fromIndex, int toIndex) { // kernel.detach(this); boolean changed = kernel.moveInConstructionList(fromIndex, toIndex); // kernel.attach(this); // reorder rows in this view ConstructionElement ce = kernel.getConstructionElement(toIndex); GeoElement[] geos = ce.getGeoElements(); for (int i = 0; i < geos.length; ++i) { remove(geos[i]); add(geos[i]); } return changed; }
@Override public void keyPressed(KeyEvent event) { // SPECIAL KEYS int keyCode = event.getKeyCode(); switch (keyCode) { case KeyEvent.VK_DELETE: ConstructionElement ce = kernel.getConstructionElement(kernel.getConstructionStep()); if (ce != null) { ce.remove(); app.storeUndoInfo(); } break; case KeyEvent.VK_UP: case KeyEvent.VK_RIGHT: previousStep(); scrollToConstructionStep(); break; case KeyEvent.VK_DOWN: case KeyEvent.VK_LEFT: nextStep(); scrollToConstructionStep(); break; case KeyEvent.VK_HOME: case KeyEvent.VK_PAGE_UP: setConstructionStep(-1); scrollToConstructionStep(); break; case KeyEvent.VK_END: case KeyEvent.VK_PAGE_DOWN: setConstructionStep(kernel.getLastConstructionStep()); scrollToConstructionStep(); break; } }