X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fjexer%2Fbackend%2FBackend.java;h=71b9d42924f386b07b47ebbe0950b02839a5ce4e;hb=daa4106c096cd4d2b92c3cbae6491edccd25fcc4;hp=15fcf62620eff7254c73117d8fe8b9c02a521b59;hpb=df8de03f80590dde35f26616db91ad6163007b7e;p=fanfix.git diff --git a/src/jexer/backend/Backend.java b/src/jexer/backend/Backend.java index 15fcf62..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,9 +24,14 @@ * 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; +import java.util.List; + import jexer.event.TInputEvent; import jexer.io.Screen; import jexer.session.SessionInfo; @@ -44,35 +44,51 @@ import jexer.session.SessionInfo; public abstract class Backend { /** - * The session information + * The session information. + */ + protected SessionInfo sessionInfo; + + /** + * Getter for sessionInfo. + * + * @return the SessionInfo */ - public SessionInfo session; + public final SessionInfo getSessionInfo() { + return sessionInfo; + } /** - * The screen to draw on + * The screen to draw on. */ - public Screen screen; + 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 to wait for an event - * @return events received, or an empty list if the timeout was reached + * @param queue list to append new events to */ - abstract public TInputEvent [] 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(); } -