17class ProjectSelectWindow
20 ProjectSelectWindow();
21 ~ProjectSelectWindow();
26 bool IsOpen()
const {
return mIsOpen; }
29 void OpenIfNoProject();
32 void DrawRecentProjects();
33 void DrawCreateProject();
34 void DrawCloneFromGit();
36 void DrawAddTemplatePopup();
38 void OnOpenProject(
const std::string& path);
39 void OnBrowseProject();
40 void OnCreateNewProject();
41 void OnCreateFromTemplate(
const std::string& templateId);
42 void OnRemoveRecentProject(
const std::string& path);
43 void OnAddTemplateFromGitHub();
49 bool mShowAddTemplatePopup =
false;
50 char mGitHubUrlBuffer[512] = {};
51 std::string mAddTemplateError;
54 char mProjectNameBuffer[256] = {};
55 char mProjectPathBuffer[512] = {};
57 bool mInitGitRepo =
false;
58 int mSelectedTemplateIndex = -1;
61 int mCloneUrlMode = 0;
62 char mCloneHttpsUrl[512] = {};
63 char mCloneSshRepoPath[256] = {};
64 char mCloneProjectName[256] = {};
65 char mCloneLocation[512] = {};
66 int mCloneProjectType = 0;
67 int mCloneSshHostIndex = -1;
68 bool mCloneInProgress =
false;
69 bool mCloneDone =
false;
70 std::string mCloneResult;
71 int mCloneResultLevel = 0;
74 std::vector<std::string> mProjectsToRemove;
77ProjectSelectWindow* GetProjectSelectWindow();