aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/pet_control/pet_text.h
diff options
context:
space:
mode:
Diffstat (limited to 'engines/titanic/pet_control/pet_text.h')
-rw-r--r--engines/titanic/pet_control/pet_text.h285
1 files changed, 0 insertions, 285 deletions
diff --git a/engines/titanic/pet_control/pet_text.h b/engines/titanic/pet_control/pet_text.h
deleted file mode 100644
index 9b2f47274c..0000000000
--- a/engines/titanic/pet_control/pet_text.h
+++ /dev/null
@@ -1,285 +0,0 @@
-/* ScummVM - Graphic Adventure Engine
- *
- * ScummVM is the legal property of its developers, whose names
- * are too numerous to list here. Please refer to the COPYRIGHT
- * file distributed with this source distribution.
- *
- * This program is free software; you can redistribute it and/or
- * modify it under the terms of the GNU General Public License
- * as published by the Free Software Foundation; either version 2
- * 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 General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
- *
- */
-
-#ifndef TITANIC_PET_TEXT_H
-#define TITANIC_PET_TEXT_H
-
-#include "common/keyboard.h"
-#include "titanic/support/simple_file.h"
-#include "titanic/support/screen_manager.h"
-#include "titanic/support/text_cursor.h"
-
-namespace Titanic {
-
-class CPetText {
- struct ArrayEntry {
- CString _line;
- CString _rgb;
- CString _string3;
- };
-private:
- Common::Array<ArrayEntry> _array;
- CString _lines;
- bool _stringsMerged;
- Rect _bounds;
- int _maxCharsPerLine;
- int _lineCount;
- int _displayEndCharIndex;
- int _unused1;
- int _unused2;
- int _unused3;
- int _backR;
- int _backG;
- int _backB;
- int _textR;
- int _textG;
- int _textB;
- int _fontNumber;
- int _npcFlag;
- int _npcId;
- bool _hasBorder;
- int _scrollTop;
- CTextCursor *_textCursor;
-private:
- void setupArrays(int count);
-
- void freeArrays();
-
- /**
- * Merges the strings in the strings array
- */
- void mergeStrings();
-
- /**
- * Append text to the current text line
- */
- void appendText(const CString &str);
-
- void updateStr3(int lineNum);
-
- /**
- * Ensures the Y scrolling for the text is in the valid range
- */
- void constrainScrollUp(CScreenManager *screenManager);
-
- /**
- * Ensures the Y scrolling for the text is in the valid range
- */
- void constrainScrollDown(CScreenManager *screenManager);
-
- /**
- * Get the page height for paging up and down
- */
- int getPageHeight(CScreenManager *screenManager);
-public:
- CPetText(uint count = 10);
-
- /**
- * Set up the control
- */
- void setup();
-
- /**
- * Load the data for the control
- */
- void load(SimpleFile *file, int param);
-
- /**
- * Save the data for the control
- */
- void save(SimpleFile *file, int indent);
-
- /**
- * Set the bounds for the control
- */
- void setBounds(const Rect &bounds) { _bounds = bounds; }
-
- /**
- * Sets the flag for whether to draw a frame border around the control
- */
- void setHasBorder(bool val) { _hasBorder = val; }
-
- /**
- * Draw the control
- */
- void draw(CScreenManager *screenManager);
-
- void resize(uint count);
-
- /**
- * Returns the text from all the lines as a single string
- */
- CString getText() const;
-
- /**
- * Set the text
- */
- void setText(const CString &str);
-
- /**
- * Set the text
- */
- void setText(StringId stringId);
-
- /**
- * Set text color
- */
- void setColor(uint col);
-
- /**
- * Set text color
- */
- void setColor(byte r, byte g, byte b);
-
- /**
- * Set the color for a line
- */
- void setLineColor(uint lineNum, byte r, byte g, byte b);
-
- /**
- * Gets the text string representing a color encoding
- */
- static CString getColorText(byte r, byte g, byte b);
-
- /**
- * Set the color for a line
- */
- void setLineColor(uint lineNum, uint col);
-
- /**
- * Sets the maximum number of characters per line
- */
- void setMaxCharsPerLine(int maxChars);
-
- /**
- * Delete the last character from the last line
- */
- void deleteLastChar();
-
- /**
- * Sets the current NPC text is being added for
- */
- void setNPC(int npcFlag, int npcId);
-
- /**
- * Returns the character index into _lines of the last
- * character to be displayed on-screen
- */
- int displayEndIndex() const { return _displayEndCharIndex; }
-
- /**
- * Scroll the text up
- */
- void scrollUp(CScreenManager *screenManager);
-
- /**
- * Scroll the text down
- */
- void scrollDown(CScreenManager *screenManager);
-
- /**
- * Scroll the text up one page
- */
- void scrollUpPage(CScreenManager *screenManager);
-
- /**
- * Scroll the text down one page
- */
- void scrollDownPage(CScreenManager *screenManager);
-
- /**
- * Scroll to the top of the text
- */
- void scrollToTop(CScreenManager *screenManager);
-
- /**
- * Scroll to the bottom of the text
- */
- void scrollToBottom(CScreenManager *screenManager);
-
- /**
- * Add a line to the text
- */
- void addLine(const CString &str);
-
- /**
- * Add a line to the text
- */
- void addLine(const CString &str, uint color);
-
- /**
- * Add a line to the text
- */
- void addLine(const CString &str, byte r, byte g, byte b);
-
- /**
- * Handles character processing to add or remove characters to
- * the current text line
- * @returns True if the Enter key was pressed
- */
- bool handleKey(char c);
-
- /**
- * Attaches the current system cursor to the text control,
- * and give it suitable defaults
- */
- void showCursor(int mode);
-
- /**
- * Removes the cursor attached to the text
- */
- void hideCursor();
-
- /**
- * Get an NPC Number embedded within on-screen text.
- * Used by the PET log to encode which NPC spoke
- * @param ident Npc Type. Always passed as 1
- * @param startIndex Starting index to scan backwards
- * through the log text to find an NPC ident sequence
- */
- int getNPCNum(uint ident, uint startIndex);
-
- /**
- * Replaces any occurances of line colors that appear in the
- * first list with the entry at the same index in the dest list
- */
- void remapColors(uint count, uint *srcColors, uint *destColors);
-
- /**
- * Set the font number to use
- */
- void setFontNumber(int fontNumber);
-
- /**
- * Get the width of the text
- */
- int getTextWidth(CScreenManager *screenManager);
-
- /**
- * Get the required height to draw the text
- */
- int getTextHeight(CScreenManager *screenManager);
-};
-
-} // End of namespace Titanic
-
-#endif /* TITANIC_PET_TEXT_H */