litesoft
@ 948
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 |
// This Source Code is in the Public Domain per: http://unlicense.org package org.litesoft.GWT.client.widgets; import org.litesoft.GWT.client.*; import org.litesoft.GWT.client.widgets.nonpublic.*; import org.litesoft.commonfoundation.typeutils.*; import org.litesoft.core.delayed.*; import org.litesoft.logger.*; import com.google.gwt.dom.client.*; import com.google.gwt.user.client.*; import com.google.gwt.user.client.ui.*; public class OurImage extends Image implements OnBrowserEventListenable { public static final Logger LOGGER = LoggerFactory.getLogger( OurImage.class ); private String mUrl; public OurImage() { } public OurImage( String pUrl ) { super( pUrl ); mUrl = pUrl; } public OurImage size( int pWidth, int pHeight ) { setWidth( pWidth ); setHeight( pHeight ); return this; } /** * Set Height of the image in pixels. * * @see <a href="http://www.w3.org/TR/1999/REC-html401-19991224/struct/objects.html#adef-height-IMG">W3C HTML Specification</a> */ public void setHeight( int pPixels ) { getImageElement().setHeight( pPixels ); } /** * Set Width of the image in pixels. * * @see <a href="http://www.w3.org/TR/1999/REC-html401-19991224/struct/objects.html#adef-width-IMG">W3C HTML Specification</a> */ public void setWidth( int pPixels ) { getImageElement().setWidth( pPixels ); } /** * This should have been protected in Image.java */ protected ImageElement getImageElement() { return getElement().cast(); } @Override public String getUrl() { return mUrl; } @Override public void setUrl( String pUrl ) { mUrl = Strings.deNull( pUrl ).trim(); // Stupid GWT & IE thing at: // ImageSrcIE6 // at line: 64 // todo: remove try/catch when Either GWT or IE is fixed try { super.setUrl( pUrl ); } catch ( Throwable e ) { LOGGER.warn.log( e, "OurImage.setUrl(), ignoring exception" ); } String zElementURL = DOM.getElementProperty( getElement(), "src" ); String zActualURL = super.getUrl(); if ( !Objects.areNonArraysEqual( zActualURL, zElementURL ) ) { LOGGER.warn.log( "OurImage.setUrl( '", mUrl, "' ), Actual ( '", zActualURL, "' ) , Element ( '", zElementURL, "' )" ); TimedRunnableManager.INSTANCE.runIn( new TimedRunnable() { @Override public Again runOnce() { setUrl( mUrl ); return null; } }, 100 ); } } private OnBrowserEventListener mListener = null; @Override public Widget getOnBrowserEventListenableWidget() { return this; } @Override public OnBrowserEventListener getOnBrowserEventListener() { return mListener; } @Override public void setOnBrowserEventListener( int pEventBitsToAdd, OnBrowserEventListener pListener ) { if ( null != (mListener = pListener) ) { sinkEvents( pEventBitsToAdd ); } } @Override public void clearOnBrowserEventListener() { mListener = null; } @Override public void onBrowserEvent( Event event ) { if ( mListener != null ) { if ( mListener.onBrowserEvent( event ) ) { return; } } super.onBrowserEvent( event ); } } |
Commits for litesoft/trunk/Java/GWT/Client/src/org/litesoft/GWT/client/widgets/OurImage.java
Revision | Author | Commited | Message |
---|---|---|---|
948 Diff | GeorgeS | Sat 07 Jun, 2014 23:42:39 +0000 | Jusefuls Formatter Updated to New Code Format |
947 Diff | GeorgeS | Fri 06 Jun, 2014 23:36:56 +0000 | Correct Spelling of package! |
939 Diff | GeorgeS | Mon 02 Jun, 2014 21:30:31 +0000 | Extracting commonfoundation |
804 Diff | GeorgeS | Wed 15 Aug, 2012 12:48:51 +0000 | |
802 Diff | GeorgeS | Wed 15 Aug, 2012 04:04:47 +0000 | |
151 Diff | GeorgeS | Thu 17 Mar, 2011 04:16:22 +0000 | |
49 Diff | GeorgeS | Mon 12 Apr, 2010 02:59:10 +0000 | License Text |
23 Diff | GeorgeS | Wed 24 Feb, 2010 00:34:32 +0000 | |
2 | GeorgeS | Sun 07 Feb, 2010 12:50:58 +0000 |