litesoft
@ 947
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 |
// This Source Code is in the Public Domain per: http://unlicense.org package org.litesoft.render; public abstract class AbstracNativeRenderHelper extends AbstractRenderHelper { protected AbstracNativeRenderHelper( Object pRectangularRenderableObject, // RenderAccessor pRenderAccessor, // RenderParticipatingAdapter pParticipatingAdapter, // RenderDimensionAdapter pDimensionAdapter ) { super( pRectangularRenderableObject, pRenderAccessor, RenderSizingApproach.None, pParticipatingAdapter, pDimensionAdapter ); } protected final RenderHelperProcess requestFloodSetSize( int pRequestedSize ) { throw exceptionOnSizeChange(); } protected RenderHelperProcess requestFloodAdjustSizeBy( int pRequestedSizeChange ) { throw exceptionOnSizeChange(); } protected final RenderHelperProcess requestSetSize( int pRequestedSize ) { throw exceptionOnSizeChange(); } protected final RenderHelperProcess requestAdjustSizeBy( int pRequestedSizeChange ) { throw exceptionOnSizeChange(); } /** * Get the "Natural" Size - the size something was when it first was Rendered. * * @return null means that is not "yet" available. */ public final Integer getNaturalSize() { return getRectSizeNow(); } /** * Get the "Natural" Size RHP. * <p/> * Note: RHPs are Instance Equality Managed, so for the same underlying dependency the same RHP must be returned! * * @return !null RHP, where its callbacks will be notified when it is complete. */ public final RenderHelperProcess unavailableNaturalSizeRHP() { return queue( mDetermineRectSizeNow ); } /** * Get the "Minimum" Size. * <p/> * Renderable Objects that are not Sizable will return their "Natural" Size. * * @return null means that is not "yet" available. */ public final Integer getMinimumSize() { return getNaturalSize(); } /** * Get the "Minimum" Size RHP. * <p/> * Note: RHPs are Instance Equality Managed, so for the same underlying dependency the same RHP must be returned! * * @return !null RHP, where its callbacks will be notified when it is complete. */ public final RenderHelperProcess unavailableMinimumSizeRHP() { return unavailableNaturalSizeRHP(); } /** * Get the "Current" Size. * <p/> * Renderable Objects that are not Sizable will return their "Natural" Size. * * @return null means that is not "yet" available. */ public final Integer getCurrentSize() { return getNaturalSize(); } /** * Get the "Current" Size RHP. * <p/> * Note: RHPs are Instance Equality Managed, so for the same underlying dependency the same RHP must be returned! * * @return !null RHP, where its callbacks will be notified when it is complete. */ public final RenderHelperProcess unavailableCurrentSizeRHP() { return unavailableNaturalSizeRHP(); } /** * Request "this" RederableRect and its' children be layed out. * <p/> * Note: RHPs are Instance Equality Managed, so for the same underlying dependency the same RHP must be returned! * * @return null if no layout process is needed, * otherwise the returned RHP's callbacks will be notified when it is complete. */ public RenderHelperProcess layoutFromHereDown() { if ( getNaturalSize() == null ) { return unavailableNaturalSizeRHP(); } setLayedOut(); return null; } public String toString() { return toString( "Native" ); } } |