X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fjexer%2Fbackend%2FBackend.java;h=71b9d42924f386b07b47ebbe0950b02839a5ce4e;hb=daa4106c096cd4d2b92c3cbae6491edccd25fcc4;hp=66c7cf3567a1200ec4dc4a54b6bccdd1273f7604;hpb=05dbb28d6e8613216f43e8d0fae487c1d9c2fcd3;p=fanfix.git diff --git a/src/jexer/backend/Backend.java b/src/jexer/backend/Backend.java index 66c7cf3..71b9d42 100644 --- a/src/jexer/backend/Backend.java +++ b/src/jexer/backend/Backend.java @@ -1,16 +1,11 @@ -/** +/* * Jexer - Java Text User Interface * - * Version: $Id$ - * - * Author: Kevin Lamonte, kevin.lamonte@gmail.com - * * License: LGPLv3 or later * - * Copyright: This module is licensed under the GNU Lesser General - * Public License Version 3. Please see the file "COPYING" in this - * directory for more information about the GNU Lesser General Public - * License Version 3. + * This module is licensed under the GNU Lesser General Public License + * Version 3. Please see the file "COPYING" in this directory for more + * information about the GNU Lesser General Public License Version 3. * * Copyright (C) 2015 Kevin Lamonte * @@ -29,6 +24,9 @@ * http://www.gnu.org/licenses/, or write to the Free Software * Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA * 02110-1301 USA + * + * @author Kevin Lamonte [kevin.lamonte@gmail.com] + * @version 1 */ package jexer.backend; @@ -46,36 +44,51 @@ import jexer.session.SessionInfo; public abstract class Backend { /** - * The session information + * The session information. */ - public SessionInfo session; + protected SessionInfo sessionInfo; /** - * The screen to draw on + * Getter for sessionInfo. + * + * @return the SessionInfo */ - public Screen screen; + public final SessionInfo getSessionInfo() { + return sessionInfo; + } + + /** + * The screen to draw on. + */ + protected Screen screen; + + /** + * Getter for screen. + * + * @return the Screen + */ + public final Screen getScreen() { + return screen; + } /** * Subclasses must provide an implementation that syncs the logical * screen to the physical device. */ - abstract public void flushScreen(); + public abstract void flushScreen(); /** * Subclasses must provide an implementation to get keyboard, mouse, and * screen resize events. * - * @param timeout maximum amount of time (in millis) to wait for an - * event. 0 means to return immediately, i.e. perform a poll. - * @return events received, or an empty list if the timeout was reached + * @param queue list to append new events to */ - abstract public List getEvents(int timeout); + public abstract void getEvents(List queue); /** * Subclasses must provide an implementation that closes sockets, * restores console, etc. */ - abstract public void shutdown(); + public abstract void shutdown(); } -