/* * Copyright (c) 2009, 2014, Oracle and/or its affiliates. All rights reserved. * ORACLE PROPRIETARY/CONFIDENTIAL. Use is subject to license terms. * * * * * * * * * * * * * * * * * * * * */ package com.sun.javafx.tk; import java.security.AccessControlContext; import com.sun.javafx.sg.prism.NGCamera; import com.sun.javafx.sg.prism.NGLightBase; import com.sun.javafx.sg.prism.NGNode; /** * TKScene * */ public interface TKScene { /** * This method is called from Scene, when it is being destroyed. */ public void dispose(); public void waitForRenderingToComplete(); /** * Waits until the render thread is available for synchronization * from the scene graph. Once this method returns, the caller has * the lock, and will continue to hold the lock until releaseSynchronization * is called. */ public void waitForSynchronization(); /** * Releases the synchronization lock previously held. If the updateState * flag is set then the glass scene state is updated prior to releasing * the lock. */ public void releaseSynchronization(boolean updateState); public void setTKSceneListener(TKSceneListener listener); public void setTKScenePaintListener(final TKScenePaintListener listener); public void setRoot(NGNode root); public void markDirty(); public void setCamera(NGCamera camera); NGLightBase[] getLights(); public void setLights(NGLightBase[] lights); /** * Set the background fill for the scene * * @param fillPaint This must be a paint class as returned from Toolkit.createPaint(...) */ public void setFillPaint(Object fillPaint); public void setCursor(Object cursor); public void enableInputMethodEvents(boolean enable); public void finishInputMethodComposition(); public void entireSceneNeedsRepaint(); public TKClipboard createDragboard(boolean isDragSource); public AccessControlContext getAccessControlContext(); }