Added HangmanGame class, but does not work yet

Dependencies:   SDFileSystem app epson mbed msp430 pl tests

Committer:
markpsymonds
Date:
Mon Dec 04 20:15:18 2017 +0000
Revision:
1:a5ec6f9dcf0d
Parent:
0:fa7450a43b99
Fixed most compile issues in hangman.cpp/.h.

Who changed what in which revision?

UserRevisionLine numberNew contents of line
group-FlexBook 0:fa7450a43b99 1 //
group-FlexBook 0:fa7450a43b99 2 // Filename: book.h
group-FlexBook 0:fa7450a43b99 3 //
group-FlexBook 0:fa7450a43b99 4 // Container for Flexbook pages.
group-FlexBook 0:fa7450a43b99 5 //
group-FlexBook 0:fa7450a43b99 6
group-FlexBook 0:fa7450a43b99 7 #include "book.h"
group-FlexBook 0:fa7450a43b99 8
group-FlexBook 0:fa7450a43b99 9 #include "log.h"
group-FlexBook 0:fa7450a43b99 10 #include "pagefactory.h"
group-FlexBook 0:fa7450a43b99 11 #include "page.h"
group-FlexBook 0:fa7450a43b99 12
group-FlexBook 0:fa7450a43b99 13 #include <iostream>
group-FlexBook 0:fa7450a43b99 14
group-FlexBook 0:fa7450a43b99 15 namespace Flexbook {
group-FlexBook 0:fa7450a43b99 16
group-FlexBook 0:fa7450a43b99 17 Book::Book(PageFactory &thefactory)
group-FlexBook 0:fa7450a43b99 18 : factory(thefactory),
group-FlexBook 0:fa7450a43b99 19 pagetype(PageType_PageNull),
group-FlexBook 0:fa7450a43b99 20 page(nullptr)
group-FlexBook 0:fa7450a43b99 21 {
group-FlexBook 0:fa7450a43b99 22 Log("Creating Book");
group-FlexBook 0:fa7450a43b99 23 }
group-FlexBook 0:fa7450a43b99 24
group-FlexBook 0:fa7450a43b99 25 Book::~Book()
group-FlexBook 0:fa7450a43b99 26 {
group-FlexBook 0:fa7450a43b99 27 Log("Deleting Book");
group-FlexBook 0:fa7450a43b99 28 }
group-FlexBook 0:fa7450a43b99 29
group-FlexBook 0:fa7450a43b99 30 void Book::PageChange(PageType type)
group-FlexBook 0:fa7450a43b99 31 {
group-FlexBook 0:fa7450a43b99 32 Log("Page change");
group-FlexBook 0:fa7450a43b99 33
group-FlexBook 0:fa7450a43b99 34 // Delete the old page.
group-FlexBook 0:fa7450a43b99 35 page.reset();
group-FlexBook 0:fa7450a43b99 36 pagetype = PageType_PageNull;
group-FlexBook 0:fa7450a43b99 37
group-FlexBook 0:fa7450a43b99 38 // Create the new page and any of it's dependencies.
group-FlexBook 0:fa7450a43b99 39 page = factory.CreatePages(type);
group-FlexBook 0:fa7450a43b99 40 pagetype = type;
group-FlexBook 0:fa7450a43b99 41 }
group-FlexBook 0:fa7450a43b99 42
group-FlexBook 0:fa7450a43b99 43 PageType Book::GetPageType() const
group-FlexBook 0:fa7450a43b99 44 {
group-FlexBook 0:fa7450a43b99 45 return pagetype;
group-FlexBook 0:fa7450a43b99 46 }
group-FlexBook 0:fa7450a43b99 47
group-FlexBook 0:fa7450a43b99 48 void Book::HandleActions()
group-FlexBook 0:fa7450a43b99 49 {
group-FlexBook 0:fa7450a43b99 50 if(page.get())
group-FlexBook 0:fa7450a43b99 51 page->HandlePageActions();
group-FlexBook 0:fa7450a43b99 52 }
group-FlexBook 0:fa7450a43b99 53
group-FlexBook 0:fa7450a43b99 54 } // End Flexbook namespace.
group-FlexBook 0:fa7450a43b99 55
group-FlexBook 0:fa7450a43b99 56