bc32175398ddc8c77d91a08deb4c7824710baa30
[fanfix.git] / TSessionInfo.java
1 /*
2 * Jexer - Java Text User Interface
3 *
4 * The MIT License (MIT)
5 *
6 * Copyright (C) 2017 Kevin Lamonte
7 *
8 * Permission is hereby granted, free of charge, to any person obtaining a
9 * copy of this software and associated documentation files (the "Software"),
10 * to deal in the Software without restriction, including without limitation
11 * the rights to use, copy, modify, merge, publish, distribute, sublicense,
12 * and/or sell copies of the Software, and to permit persons to whom the
13 * Software is furnished to do so, subject to the following conditions:
14 *
15 * The above copyright notice and this permission notice shall be included in
16 * all copies or substantial portions of the Software.
17 *
18 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
19 * IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
20 * FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL
21 * THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
22 * LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
23 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
24 * DEALINGS IN THE SOFTWARE.
25 *
26 * @author Kevin Lamonte [kevin.lamonte@gmail.com]
27 * @version 1
28 */
29 package jexer.backend;
30
31 /**
32 * TSessionInfo provides a default session implementation. The username is
33 * blank, language is "en_US", with a 80x24 text window.
34 */
35 public final class TSessionInfo implements SessionInfo {
36
37 /**
38 * User name.
39 */
40 private String username = "";
41
42 /**
43 * Language.
44 */
45 private String language = "en_US";
46
47 /**
48 * Text window width.
49 */
50 private int windowWidth = 80;
51
52 /**
53 * Text window height.
54 */
55 private int windowHeight = 24;
56
57 /**
58 * Username getter.
59 *
60 * @return the username
61 */
62 public String getUsername() {
63 return this.username;
64 }
65
66 /**
67 * Username setter.
68 *
69 * @param username the value
70 */
71 public void setUsername(final String username) {
72 this.username = username;
73 }
74
75 /**
76 * Language getter.
77 *
78 * @return the language
79 */
80 public String getLanguage() {
81 return this.language;
82 }
83
84 /**
85 * Language setter.
86 *
87 * @param language the value
88 */
89 public void setLanguage(final String language) {
90 this.language = language;
91 }
92
93 /**
94 * Text window width getter.
95 *
96 * @return the window width
97 */
98 public int getWindowWidth() {
99 return windowWidth;
100 }
101
102 /**
103 * Text window height getter.
104 *
105 * @return the window height
106 */
107 public int getWindowHeight() {
108 return windowHeight;
109 }
110
111 /**
112 * Re-query the text window size.
113 */
114 public void queryWindowSize() {
115 // NOP
116 }
117
118 /**
119 * Public constructor.
120 */
121 public TSessionInfo() {
122 this(80, 24);
123 }
124
125 /**
126 * Public constructor.
127 *
128 * @param width the number of columns
129 * @param height the number of rows
130 */
131 public TSessionInfo(final int width, final int height) {
132 this.windowWidth = width;
133 this.windowHeight = height;
134 }
135
136 }