Merge commit 'dff9f81e073bb994d5ce96a6eaa1bfa547f1fdf4'
Some checks are pending
Build / build (push) Waiting to run
Some checks are pending
Build / build (push) Waiting to run
This commit is contained in:
@ -54,6 +54,7 @@ void NewMenu::draw(StudioContext &sctx) noexcept {
|
||||
case Stage::NewItemType:
|
||||
drawNewItemType(sctx);
|
||||
break;
|
||||
case Stage::NewItemTransitioningToPath:
|
||||
case Stage::NewItemPath:
|
||||
drawNewItemPath(sctx);
|
||||
break;
|
||||
@ -91,8 +92,8 @@ void NewMenu::drawNewItemType(StudioContext const&sctx) noexcept {
|
||||
}, m_types.size(), m_selectedType, {200, 100});
|
||||
auto const&im = *m_types[m_selectedType];
|
||||
drawFirstPageButtons(im.itemTemplates().size() == 1 ?
|
||||
Stage::NewItemPath : Stage::NewItemTemplate);
|
||||
if (m_stage == Stage::NewItemPath || m_stage == Stage::NewItemTemplate) {
|
||||
Stage::NewItemTransitioningToPath : Stage::NewItemTemplate);
|
||||
if (m_stage == Stage::NewItemTransitioningToPath || m_stage == Stage::NewItemTemplate) {
|
||||
if (m_useDefaultPath) {
|
||||
std::ignore = m_explorer.setSelectedPath(im.defaultPath());
|
||||
}
|
||||
@ -108,16 +109,18 @@ void NewMenu::drawNewItemTemplate(StudioContext const&sctx) noexcept {
|
||||
ig::ListBox("Template", [&](size_t const i) -> ox::CStringView {
|
||||
return templates[i]->name();
|
||||
}, templates.size(), m_selectedTemplate, {200, 100});
|
||||
drawButtons(Stage::NewItemPath);
|
||||
drawButtons(Stage::NewItemTransitioningToPath);
|
||||
});
|
||||
}
|
||||
|
||||
void NewMenu::drawNewItemPath(StudioContext &sctx) noexcept {
|
||||
setSize({380, 340});
|
||||
drawWindow(sctx.tctx, m_open, [this, &sctx] {
|
||||
if (m_selectedType < m_types.size()) {
|
||||
ig::InputText("Name", m_itemName);
|
||||
if (m_stage == Stage::NewItemTransitioningToPath) [[unlikely]] {
|
||||
ImGui::SetKeyboardFocusHere();
|
||||
m_stage = Stage::NewItemPath;
|
||||
}
|
||||
ig::InputText("Name", m_itemName);
|
||||
ImGui::NewLine();
|
||||
ImGui::Text("Path");
|
||||
auto const vp = ImGui::GetContentRegionAvail();
|
||||
|
@ -20,6 +20,7 @@ class NewMenu final: public Popup {
|
||||
Closed,
|
||||
Opening,
|
||||
NewItemType,
|
||||
NewItemTransitioningToPath,
|
||||
NewItemPath,
|
||||
NewItemTemplate,
|
||||
};
|
||||
|
@ -2,8 +2,6 @@
|
||||
* Copyright 2016 - 2025 Gary Talent (gary@drinkingtea.net). All rights reserved.
|
||||
*/
|
||||
|
||||
#include <algorithm>
|
||||
|
||||
#include <imgui.h>
|
||||
|
||||
#include "projectexplorer.hpp"
|
||||
|
@ -1,16 +0,0 @@
|
||||
/*
|
||||
* Copyright 2016 - 2025 Gary Talent (gary@drinkingtea.net). All rights reserved.
|
||||
*/
|
||||
|
||||
#pragma once
|
||||
|
||||
#include <ox/std/memory.hpp>
|
||||
#include <ox/std/string.hpp>
|
||||
|
||||
#include <turbine/context.hpp>
|
||||
|
||||
#include <studio/filetreemodel.hpp>
|
||||
|
||||
namespace studio {
|
||||
|
||||
}
|
@ -2,7 +2,6 @@ add_library(
|
||||
Studio
|
||||
configio.cpp
|
||||
editor.cpp
|
||||
projectfilepicker.cpp
|
||||
filetreemodel.cpp
|
||||
imguiutil.cpp
|
||||
module.cpp
|
||||
|
@ -1,18 +0,0 @@
|
||||
/*
|
||||
* Copyright 2016 - 2025 Gary Talent (gary@drinkingtea.net). All rights reserved.
|
||||
*/
|
||||
|
||||
#include <studio/filetreemodel.hpp>
|
||||
#include <studio/projectfilepicker.hpp>
|
||||
|
||||
namespace studio {
|
||||
|
||||
class ProjectFilePicker: public FileExplorer {
|
||||
|
||||
public:
|
||||
explicit ProjectFilePicker(keel::Context &kctx) noexcept: FileExplorer{kctx} {}
|
||||
|
||||
protected:
|
||||
};
|
||||
|
||||
}
|
Reference in New Issue
Block a user