@Test public void testGetFrames() throws Exception { assert data.getFrames().length == 0; data.createFrame("Frame1"); assert data.getFrames().length == 1; data.createFrame("Frame2"); assert data.getFrames().length == 2; data.undoA(); assert data.getFrames().length == 1; data.undoA(); assert data.getFrames().length == 0; data.redoA(); data.redoA(); assert data.getFrames().length == 2; data.undoA(); assert data.getFrameName(data.getFrames()[0]).equals("Frame1"); }
@Override public final Integer[] getFrames() { synchronized (VitcoSettings.SYNC) { if (!frameBufferValid) { if (frameBuffer.length != dataContainer.frames.size()) { frameBuffer = new Integer[dataContainer.frames.size()]; } dataContainer.frames.keySet().toArray(frameBuffer); frameBufferValid = true; } return frameBuffer.clone(); } }
AnimationData extends GeneralData implements AnimationDataInterface { @Override public final Integer[] getFrames() { synchronized (VitcoSettings.SYNC) { if (!frameBufferValid) { if (frameBuffer.length != dataContainer.frames.size()) { frameBuffer = new Integer[dataContainer.frames.size()]; } dataContainer.frames.keySet().toArray(frameBuffer); frameBufferValid = true; } return frameBuffer.clone(); } } }
AnimationData extends GeneralData implements AnimationDataInterface { @Override public final Integer[] getFrames() { synchronized (VitcoSettings.SYNC) { if (!frameBufferValid) { if (frameBuffer.length != dataContainer.frames.size()) { frameBuffer = new Integer[dataContainer.frames.size()]; } dataContainer.frames.keySet().toArray(frameBuffer); frameBufferValid = true; } return frameBuffer.clone(); } } protected  AnimationData(); }
AnimationData extends GeneralData implements AnimationDataInterface { @Override public final Integer[] getFrames() { synchronized (VitcoSettings.SYNC) { if (!frameBufferValid) { if (frameBuffer.length != dataContainer.frames.size()) { frameBuffer = new Integer[dataContainer.frames.size()]; } dataContainer.frames.keySet().toArray(frameBuffer); frameBufferValid = true; } return frameBuffer.clone(); } } protected  AnimationData(); @Override final boolean isValid(int pointId); @Override final int addPoint(SimpleVector position); @Override final boolean removePoint(int pointId); @Override final boolean movePoint(int pointId, SimpleVector pos); @Override final boolean areConnected(int id1, int id2); @Override final boolean connect(int id1, int id2); @Override final boolean clearA(); @Override final boolean disconnect(int id1, int id2); @Override final ExtendedVector getPoint(int pointId); @Override final ExtendedVector[] getPoints(); @Override final ExtendedVector[][] getLines(); @Override final void undoA(); @Override final void redoA(); @Override final boolean canUndoA(); @Override final boolean canRedoA(); @Override final boolean selectFrame(int frameId); @Override final int getSelectedFrame(); @Override final int createFrame(String frameName); @Override final boolean deleteFrame(int frameId); @Override final boolean renameFrame(int frameId, String newName); @Override final Integer[] getFrames(); @Override final boolean resetFrame(int frameId); @Override final String getFrameName(int frameId); }
AnimationData extends GeneralData implements AnimationDataInterface { @Override public final Integer[] getFrames() { synchronized (VitcoSettings.SYNC) { if (!frameBufferValid) { if (frameBuffer.length != dataContainer.frames.size()) { frameBuffer = new Integer[dataContainer.frames.size()]; } dataContainer.frames.keySet().toArray(frameBuffer); frameBufferValid = true; } return frameBuffer.clone(); } } protected  AnimationData(); @Override final boolean isValid(int pointId); @Override final int addPoint(SimpleVector position); @Override final boolean removePoint(int pointId); @Override final boolean movePoint(int pointId, SimpleVector pos); @Override final boolean areConnected(int id1, int id2); @Override final boolean connect(int id1, int id2); @Override final boolean clearA(); @Override final boolean disconnect(int id1, int id2); @Override final ExtendedVector getPoint(int pointId); @Override final ExtendedVector[] getPoints(); @Override final ExtendedVector[][] getLines(); @Override final void undoA(); @Override final void redoA(); @Override final boolean canUndoA(); @Override final boolean canRedoA(); @Override final boolean selectFrame(int frameId); @Override final int getSelectedFrame(); @Override final int createFrame(String frameName); @Override final boolean deleteFrame(int frameId); @Override final boolean renameFrame(int frameId, String newName); @Override final Integer[] getFrames(); @Override final boolean resetFrame(int frameId); @Override final String getFrameName(int frameId);  }