diff options
| author | Loic Guegan <manzerbredes@mailbox.org> | 2022-02-24 11:50:16 +0100 |
|---|---|---|
| committer | Loic Guegan <manzerbredes@mailbox.org> | 2022-02-24 11:50:16 +0100 |
| commit | 32a0b3e31f1bb0024e96915f58afd991a992d945 (patch) | |
| tree | c1c654728c330c22ca1a40a8981604afb56e0dfa /src | |
| parent | bdfc577a3b8c360d48c4d094d532786de44c5aed (diff) | |
Update BaseTab implementation
Diffstat (limited to 'src')
| -rw-r--r-- | src/base_tab/BaseTab.cpp | 24 | ||||
| -rw-r--r-- | src/base_tab/BaseTab.hpp | 13 | ||||
| -rw-r--r-- | src/base_tab/GameBase.cpp | 1 | ||||
| -rw-r--r-- | src/base_tab/GameBase.hpp | 5 | ||||
| -rw-r--r-- | src/base_tab/gamebase/GameBase.hpp | 10 | ||||
| -rw-r--r-- | src/base_tab/gamebase/PGNGameBase.cpp | 5 | ||||
| -rw-r--r-- | src/base_tab/gamebase/PGNGameBase.hpp | 10 |
7 files changed, 56 insertions, 12 deletions
diff --git a/src/base_tab/BaseTab.cpp b/src/base_tab/BaseTab.cpp index e69de29..9c46d9b 100644 --- a/src/base_tab/BaseTab.cpp +++ b/src/base_tab/BaseTab.cpp @@ -0,0 +1,24 @@ +#include "BaseTab.hpp" +#include <wx/filename.h> + +BaseTab::BaseTab(wxFrame *parent) + : BasePanelBF(parent), TabInfos(TabInfos::BASE), base(NULL) { + LoadFile("/home/loic/text.PGn"); +} + +void BaseTab::ApplyPreferences() {} + +void BaseTab::LoadFile(std::string path) { + wxFileName file(path); + wxString ext = file.GetExt().Lower(); + if (ext == "pgn") { + base = new PGNGameBase(path); + } + + if (base != NULL) { + while(base->HasNextGame()){ + Game *g=base->GetNextGame(); + + } + } +}
\ No newline at end of file diff --git a/src/base_tab/BaseTab.hpp b/src/base_tab/BaseTab.hpp index 56d254c..30d839a 100644 --- a/src/base_tab/BaseTab.hpp +++ b/src/base_tab/BaseTab.hpp @@ -1,12 +1,13 @@ - +#include "ochess.hpp" #include "BasePanelBF.h" +#include "gamebase/GameBase.hpp" +#include "gamebase/PGNGameBase.hpp" class BaseTab : public BasePanelBF, public TabInfos { - + GameBase *base; public: - BaseTab(wxFrame *parent) : BasePanelBF(parent),TabInfos(TabInfos::BASE) {} - void ApplyPreferences(){ - - } + BaseTab(wxFrame *parent); + void ApplyPreferences(); + void LoadFile(std::string path); };
\ No newline at end of file diff --git a/src/base_tab/GameBase.cpp b/src/base_tab/GameBase.cpp deleted file mode 100644 index d833d62..0000000 --- a/src/base_tab/GameBase.cpp +++ /dev/null @@ -1 +0,0 @@ -#include "GameBase.hpp"
\ No newline at end of file diff --git a/src/base_tab/GameBase.hpp b/src/base_tab/GameBase.hpp deleted file mode 100644 index cc9327d..0000000 --- a/src/base_tab/GameBase.hpp +++ /dev/null @@ -1,5 +0,0 @@ -#pragma once - -class GameBase { - -};
\ No newline at end of file diff --git a/src/base_tab/gamebase/GameBase.hpp b/src/base_tab/gamebase/GameBase.hpp new file mode 100644 index 0000000..9982a7d --- /dev/null +++ b/src/base_tab/gamebase/GameBase.hpp @@ -0,0 +1,10 @@ +#pragma once +#include "game_tab/Game.hpp" + +class GameBase { + +public: + virtual bool HasNextGame() = 0; + virtual Game *GetGame(std::uint32_t id) = 0; + virtual Game *GetNextGame() = 0; +};
\ No newline at end of file diff --git a/src/base_tab/gamebase/PGNGameBase.cpp b/src/base_tab/gamebase/PGNGameBase.cpp new file mode 100644 index 0000000..09d87d8 --- /dev/null +++ b/src/base_tab/gamebase/PGNGameBase.cpp @@ -0,0 +1,5 @@ +#include "PGNGameBase.hpp" + +PGNGameBase::PGNGameBase(std::string pgn_file) { + +}
\ No newline at end of file diff --git a/src/base_tab/gamebase/PGNGameBase.hpp b/src/base_tab/gamebase/PGNGameBase.hpp new file mode 100644 index 0000000..2aa0840 --- /dev/null +++ b/src/base_tab/gamebase/PGNGameBase.hpp @@ -0,0 +1,10 @@ +#include "GameBase.hpp" + +class PGNGameBase : public GameBase { +public: + PGNGameBase(std::string pgn_file); + + bool HasNextGame() { return (false); } + Game *GetGame(std::uint32_t id) { return (new Game()); }; + Game *GetNextGame() { return (new Game()); }; +};
\ No newline at end of file |
