aboutsummaryrefslogtreecommitdiff
path: root/engines/titanic/support/credit_text.h
diff options
context:
space:
mode:
authorPaul Gilbert2016-07-23 21:50:51 -0400
committerPaul Gilbert2016-07-23 21:50:51 -0400
commitf1344c2c277125e652092b94a0a5347f842c45d0 (patch)
tree6424d8afb5a45ea0ba9a940d9f12ffb7f337ce5e /engines/titanic/support/credit_text.h
parent2efee2ae8c1c4e285fe81bce66a594d9b949548a (diff)
downloadscummvm-rg350-f1344c2c277125e652092b94a0a5347f842c45d0.tar.gz
scummvm-rg350-f1344c2c277125e652092b94a0a5347f842c45d0.tar.bz2
scummvm-rg350-f1344c2c277125e652092b94a0a5347f842c45d0.zip
TITANIC: Added CCreditText loading
Diffstat (limited to 'engines/titanic/support/credit_text.h')
-rw-r--r--engines/titanic/support/credit_text.h36
1 files changed, 26 insertions, 10 deletions
diff --git a/engines/titanic/support/credit_text.h b/engines/titanic/support/credit_text.h
index 82da833bbe..ec8fc22cda 100644
--- a/engines/titanic/support/credit_text.h
+++ b/engines/titanic/support/credit_text.h
@@ -30,15 +30,21 @@ namespace Titanic {
class CGameObject;
class CScreenManager;
-class COverrideSubItem : public ListItem {
-
+class CCreditLine : public ListItem {
+public:
+ CString _line;
+ uint _lineWidth;
+public:
+ CCreditLine() : _lineWidth(0) {}
+ CCreditLine(const CString &line, uint lineWidth) : _line(line), _lineWidth(lineWidth) {}
};
-typedef List<COverrideSubItem> CCreditTextSubList;
-
-class CCreditTextItem : public ListItem {
+typedef List<CCreditLine> CCreditLines;
+class CCreditLineGroup : public ListItem {
+public:
+ CCreditLines _lines;
};
-typedef List<CCreditTextItem> CCreditTextList;
+typedef List<CCreditLineGroup> CCreditLineGroups;
class CCreditText {
private:
@@ -46,17 +52,27 @@ private:
* Sets up needed data
*/
void setup();
+
+ /**
+ * Read in a text line from the passed stream
+ */
+ CString readLine(Common::SeekableReadStream *stream);
+
+ /**
+ * Handles a group where the .... sequence was encountered
+ */
+ void handleDots(CCreditLineGroup *group);
public:
CScreenManager *_screenManagerP;
Rect _rect;
int _field14;
- CCreditTextList _list;
+ CCreditLineGroups _groups;
uint _ticks;
uint _fontHeight;
CGameObject *_objectP;
- int _field34;
- int _field38;
- int _field3C;
+ CCreditLineGroups::iterator _groupIt;
+ CCreditLines::iterator _lineIt;
+ uint _totalHeight;
int _field40;
int _field44;
int _field48;