/** * (Internal use only) Resets all {@link NativeObject}s. * This is typically called when the context is restarted. */ public void resetObjects(){ for (NativeObjectRef ref : refMap.values()) { // Must use the real object here, for this to be effective. NativeObject realObj = ref.realObj.get(); if (realObj == null) { continue; } realObj.resetObject(); if (logger.isLoggable(Level.FINEST)) { logger.log(Level.FINEST, "Reset: {0}", realObj); } } refMap.clear(); refQueue = new ReferenceQueue<Object>(); }
/** * Resets all {@link NativeObject}s. */ public void resetObjects(){ for (NativeObjectRef ref : refList){ // here we use the actual obj not the clone, // otherwise its useless NativeObject realObj = ref.realObj.get(); if (realObj == null) continue; realObj.resetObject(); if (logger.isLoggable(Level.FINEST)) logger.log(Level.FINEST, "Reset: {0}", realObj); } refList.clear(); }
/** * (Internal use only) Resets all {@link NativeObject}s. * This is typically called when the context is restarted. */ public void resetObjects(){ for (NativeObjectRef ref : refMap.values()) { // Must use the real object here, for this to be effective. NativeObject realObj = ref.realObj.get(); if (realObj == null) { continue; } realObj.resetObject(); if (logger.isLoggable(Level.FINEST)) { logger.log(Level.FINEST, "Reset: {0}", realObj); } } refMap.clear(); refQueue = new ReferenceQueue<Object>(); }
/** * Deletes all objects. Must only be called when display is destroyed. */ public void deleteAllObjects(Object rendererObject){ deleteUnused(rendererObject); for (NativeObjectRef ref : refList){ ref.objClone.deleteObject(rendererObject); NativeObject realObj = ref.realObj.get(); if (realObj != null){ // Note: make sure to reset them as well // They may get used in a new renderer in the future realObj.resetObject(); } } refList.clear(); }