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#include "AllActors.h"
6
7namespace Editor {
8class ContentBrowserWindow : public Ship::GuiWindow {
9public:
10 using Ship::GuiWindow::GuiWindow;
12
13 struct Tracks {
14 std::shared_ptr<Track> invalidTrack; // If not nullptr, user needs to create a scene file for this track.
15 std::shared_ptr<Track> track; // A valid custom track. Used to reset the World->Tracks array on a file system refresh.
16 std::string SceneFile;
17 std::string Name;
18 std::string Dir; // Directory
19 std::shared_ptr<Ship::Archive> Archive;
20 };
21
22 std::vector<Tracks> Tracks;
23
24 std::vector<std::string> Content;
25
26 bool Refresh = true;
27
28 bool ActorContent = false;
29 bool ObjectContent = false;
30 bool CustomContent = false;
31 bool TrackContent = false;
32protected:
33 void InitElement() override {};
34 void DrawElement() override;
35 void UpdateElement() override {};
36 void AddTrackContent();
37 void RemoveCustomTracksFromTrackList(); // Prevents duplicate tracks being added to World->Tracks array
38 void AddActorContent();
39 void AddObjectContent();
40 void AddCustomContent();
41 void FindTracks();
42 void FindContent();
43 void FolderButton(const char* label, bool& contentFlag, const ImVec2& size = ImVec2(80, 32));
45
46};
47}
Definition Train.h:23
Definition ContentBrowser.h:8
void FindTracks()
Definition ContentBrowser.cpp:389
bool ObjectContent
Definition ContentBrowser.h:29
void RemoveCustomTracksFromTrackList()
Definition ContentBrowser.cpp:299
bool Refresh
Definition ContentBrowser.h:26
void FindContent()
Definition ContentBrowser.cpp:434
void AddActorContent()
Definition ContentBrowser.cpp:312
void AddObjectContent()
Definition ContentBrowser.cpp:346
void InitElement() override
Definition ContentBrowser.h:33
void AddTrackContent()
Definition ContentBrowser.cpp:271
ATrain * TrainWindow()
Definition ContentBrowser.cpp:459
bool TrackContent
Definition ContentBrowser.h:31
void AddCustomContent()
Definition ContentBrowser.cpp:364
bool CustomContent
Definition ContentBrowser.h:30
void DrawElement() override
Definition ContentBrowser.cpp:38
void FolderButton(const char *label, bool &contentFlag, const ImVec2 &size=ImVec2(80, 32))
Definition ContentBrowser.cpp:81
std::vector< std::string > Content
Definition ContentBrowser.h:24
~ContentBrowserWindow()
Definition ContentBrowser.cpp:34
void UpdateElement() override
Definition ContentBrowser.h:35
bool ActorContent
Definition ContentBrowser.h:28
Definition Collision.cpp:16
Definition ContentBrowser.h:13
std::shared_ptr< Track > invalidTrack
Definition ContentBrowser.h:14
std::string SceneFile
Definition ContentBrowser.h:16
std::string Name
Definition ContentBrowser.h:17
std::shared_ptr< Track > track
Definition ContentBrowser.h:15
std::shared_ptr< Ship::Archive > Archive
Definition ContentBrowser.h:19
std::string Dir
Definition ContentBrowser.h:18