X-Git-Url: http://git.nikiroo.be/?a=blobdiff_plain;f=src%2Fjexer%2Fbits%2FCell.java;h=a8efa2b3c56465dc7ee93dc76fefa399bed85603;hb=738dd8c426dcc6ed2508d68b7985f68d66549889;hp=c6fe4a2a4fed57506c9c501cfb249a6c925eb88e;hpb=daa4106c096cd4d2b92c3cbae6491edccd25fcc4;p=nikiroo-utils.git diff --git a/src/jexer/bits/Cell.java b/src/jexer/bits/Cell.java deleted file mode 100644 index c6fe4a2..0000000 --- a/src/jexer/bits/Cell.java +++ /dev/null @@ -1,183 +0,0 @@ -/* - * Jexer - Java Text User Interface - * - * License: LGPLv3 or later - * - * 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 - * - * This program is free software; you can redistribute it and/or - * modify it under the terms of the GNU Lesser General Public License - * as published by the Free Software Foundation; either version 3 of - * the License, or (at your option) any later version. - * - * This program is distributed in the hope that it will be useful, but - * WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public - * License along with this program; if not, see - * 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.bits; - -/** - * This class represents a single text cell on the screen. - */ -public final class Cell extends CellAttributes { - - /** - * The character at this cell. - */ - private char ch; - - /** - * Getter for cell character. - * - * @return cell character - */ - public char getChar() { - return ch; - } - - /** - * Setter for cell character. - * - * @param ch new cell character - */ - public void setChar(final char ch) { - this.ch = ch; - } - - /** - * Reset this cell to a blank. - */ - @Override - public void reset() { - super.reset(); - ch = ' '; - } - - /** - * Check to see if this cell has default attributes: white foreground, - * black background, no bold/blink/reverse/underline/protect, and a - * character value of ' ' (space). - * - * @return true if this cell has default attributes. - */ - public boolean isBlank() { - if ((getForeColor().equals(Color.WHITE)) - && (getBackColor().equals(Color.BLACK)) - && !isBold() - && !isBlink() - && !isReverse() - && !isUnderline() - && !isProtect() - && (ch == ' ') - ) { - return true; - } - - return false; - } - - /** - * Comparison check. All fields must match to return true. - * - * @param rhs another Cell instance - * @return true if all fields are equal - */ - @Override - public boolean equals(final Object rhs) { - if (!(rhs instanceof Cell)) { - return false; - } - - Cell that = (Cell) rhs; - return (super.equals(rhs) - && (ch == that.ch)); - } - - /** - * Hashcode uses all fields in equals(). - * - * @return the hash - */ - @Override - public int hashCode() { - int A = 13; - int B = 23; - int hash = A; - hash = (B * hash) + super.hashCode(); - hash = (B * hash) + (int)ch; - return hash; - } - - /** - * Set my field values to that's field. - * - * @param rhs an instance of either Cell or CellAttributes - */ - @Override - public void setTo(final Object rhs) { - // Let this throw a ClassCastException - CellAttributes thatAttr = (CellAttributes) rhs; - super.setTo(thatAttr); - - if (rhs instanceof Cell) { - Cell that = (Cell) rhs; - this.ch = that.ch; - } - } - - /** - * Set my field attr values to that's field. - * - * @param that a CellAttributes instance - */ - public void setAttr(final CellAttributes that) { - super.setTo(that); - } - - /** - * Public constructor sets default values of the cell to blank. - * - * @see #isBlank() - * @see #reset() - */ - public Cell() { - reset(); - } - - /** - * Public constructor sets the character. Attributes are the same as - * default. - * - * @param ch character to set to - * @see #reset() - */ - public Cell(final char ch) { - reset(); - this.ch = ch; - } - - /** - * Make human-readable description of this Cell. - * - * @return displayable String - */ - @Override - public String toString() { - return String.format("fore: %d back: %d bold: %s blink: %s ch %c", - getForeColor(), getBackColor(), isBold(), isBlink(), ch); - } -}