1 /* 2 * File: IEventQueue.java 3 * Created: 23.02.2006 7:33:19 4 * 5 * Copyright 2007 Michal Burda. 6 * 7 * This program is free software; you can redistribute it and/or modify 8 * it under the terms of the GNU General Public License as published by 9 * the Free Software Foundation; either version 2 of the License, or 10 * (at your option) any later version. 11 * 12 * This program is distributed in the hope that it will be useful, 13 * but WITHOUT ANY WARRANTY; without even the implied warranty of 14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 15 * GNU General Public License for more details. 16 * 17 * You should have received a copy of the GNU General Public License 18 * along with this program; if not, write to the Free Software 19 * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA 20 */ 21 22 package net.sf.webmancer.base; 23 24 25 /** 26 * This interface represents a queue of events that wait for handling by a tree of widgets. 27 * 28 * @author Michal Burda 29 */ 30 public interface IEventQueue { 31 /** 32 * Put the event into the event queue. 33 * 34 * @param event The event to put into this queue (must not be <code>null</code>) 35 */ 36 void putEvent(Event event); 37 38 /** 39 * Determine whether there are some events in the queue. 40 * 41 * @return <code>true</code> if there are some events in the queue. 42 */ 43 boolean hasEvents(); 44 45 /** 46 * Return the next event in the queue or <code>null</code> if the queue is empty. 47 * 48 * @return the next event stored in the queue or <code>null</code> if the queue is empty. 49 */ 50 Event nextEvent(); 51 }