Mario Kart 64
Loading...
Searching...
No Matches
ContentBrowser.h
Go to the documentation of this file.
1#pragma once
2
3#include <libultraship/libultraship.h>
5
6namespace Editor {
7class ContentBrowserWindow : public Ship::GuiWindow {
8public:
9 using Ship::GuiWindow::GuiWindow;
11
12 struct Tracks {
13 std::shared_ptr<Course> invalidTrack; // If not nullptr, user needs to create a scene file for this track.
14 std::shared_ptr<Course> course; // A valid custom track. Used to reset the Courses array on a file system refresh.
15 std::string SceneFile;
16 std::string Name;
17 std::string Dir; // Directory
18 std::shared_ptr<Ship::Archive> Archive;
19 };
20
21 std::vector<Tracks> Tracks;
22
23 std::vector<std::string> Content;
24
25 bool Refresh = true;
26
27 bool ActorContent = false;
28 bool ObjectContent = false;
29 bool CustomContent = false;
30 bool TrackContent = false;
31protected:
32 void InitElement() override {};
33 void DrawElement() override;
34 void UpdateElement() override {};
35 void AddTrackContent();
36 void RemoveCustomTracksFromTrackList(); // Prevents duplicate courses being added to World->Courses array
37 void AddActorContent();
38 void AddObjectContent();
39 void AddCustomContent();
40 void FindTracks();
41 void FindContent();
42 void FolderButton(const char* label, bool& contentFlag, const ImVec2& size = ImVec2(80, 32));
43};
44}
Definition ContentBrowser.h:7
void FindTracks()
Definition ContentBrowser.cpp:226
bool ObjectContent
Definition ContentBrowser.h:28
void RemoveCustomTracksFromTrackList()
Definition ContentBrowser.cpp:152
bool Refresh
Definition ContentBrowser.h:25
void FindContent()
Definition ContentBrowser.cpp:270
void AddActorContent()
Definition ContentBrowser.cpp:165
void AddObjectContent()
Definition ContentBrowser.cpp:183
void InitElement() override
Definition ContentBrowser.h:32
void AddTrackContent()
Definition ContentBrowser.cpp:124
bool TrackContent
Definition ContentBrowser.h:30
void AddCustomContent()
Definition ContentBrowser.cpp:201
bool CustomContent
Definition ContentBrowser.h:29
void DrawElement() override
Definition ContentBrowser.cpp:28
void FolderButton(const char *label, bool &contentFlag, const ImVec2 &size=ImVec2(80, 32))
Definition ContentBrowser.cpp:71
std::vector< std::string > Content
Definition ContentBrowser.h:23
~ContentBrowserWindow()
Definition ContentBrowser.cpp:24
void UpdateElement() override
Definition ContentBrowser.h:34
bool ActorContent
Definition ContentBrowser.h:27
Definition Collision.cpp:12
Definition ContentBrowser.h:12
std::shared_ptr< Course > invalidTrack
Definition ContentBrowser.h:13
std::string SceneFile
Definition ContentBrowser.h:15
std::string Name
Definition ContentBrowser.h:16
std::shared_ptr< Ship::Archive > Archive
Definition ContentBrowser.h:18
std::string Dir
Definition ContentBrowser.h:17
std::shared_ptr< Course > course
Definition ContentBrowser.h:14