You could do it with a single timer then have your blinking components listen for a tick event that the timer would fire.
On Tue, Mar 17, 2009 at 8:52 AM, denis56 <[email protected]> wrote: > > His, > > if anyone could share experience with achieving blinking behavior for > several items on a page? > > in my case there is a table being shown whose rows should have > multiple blinking elements (labels and images). Each of the blinking > elements has -its own- timeout value defined to stop blinking. > > The way I have achieved it now, is by creating a composite (see sample > code below) that takes an image/label and adds a timer to it. > > I am afraid that that is not a right approach as the table is > constantly being updated to add/delete rows with new blinking > components. That would lead to multiple timers being instantiated and > started with .scheduleRepeating(XXX); method again and again without > page being reloaded (the page should stay open for a day and display > changing information). > > Could anyone comment on my approach: is it memory-leak and performance > degradation prone? What would be a feasible alternative? maybe using > external library like prototype? > > Many thanks, > denis > > > public class BlinkingCorner extends Composite { > > private boolean visible; > private int blinkingTime = 5000; > private long timeBlinkingStarted; > > public BlinkingCorner(final Image img) { > timeBlinkingStarted = System.currentTimeMillis(); > new Timer() { > @Override > public void run() { > if (System.currentTimeMillis() <= timeBlinkingStarted > + blinkingTime) { > img.setVisible(visible); > GWT.log("visible=" + visible, null); > visible = !visible; > } else { > GWT.log("cancel", null); > img.setVisible(false); > cancel(); > } > } > }.scheduleRepeating(500); > > initWidget(img); > } > > } > > > > --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Google Web Toolkit" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/Google-Web-Toolkit?hl=en -~----------~----~----~----~------~----~------~--~---
