mirror of
https://github.com/tildearrow/furnace.git
synced 2025-01-06 23:51:21 +00:00
GUI: this menu is packed with features
that DON'T WORK YET
This commit is contained in:
parent
372f2a20a2
commit
2fb6ea021b
3 changed files with 45 additions and 0 deletions
|
@ -6135,6 +6135,11 @@ FurnaceGUI::FurnaceGUI():
|
||||||
bindSetPending(false),
|
bindSetPending(false),
|
||||||
nextScroll(-1.0f),
|
nextScroll(-1.0f),
|
||||||
nextAddScroll(0.0f),
|
nextAddScroll(0.0f),
|
||||||
|
transposeAmount(0),
|
||||||
|
randomizeMin(0),
|
||||||
|
randomizeMax(255),
|
||||||
|
scaleMin(0.0f),
|
||||||
|
scaleMax(100.0f),
|
||||||
oldOrdersLen(0) {
|
oldOrdersLen(0) {
|
||||||
|
|
||||||
// octave 1
|
// octave 1
|
||||||
|
|
|
@ -650,6 +650,8 @@ class FurnaceGUI {
|
||||||
ImVec2 threeChars, twoChars;
|
ImVec2 threeChars, twoChars;
|
||||||
SelectionPoint sel1, sel2;
|
SelectionPoint sel1, sel2;
|
||||||
int dummyRows, demandX;
|
int dummyRows, demandX;
|
||||||
|
int transposeAmount, randomizeMin, randomizeMax;
|
||||||
|
float scaleMin, scaleMax;
|
||||||
|
|
||||||
int oldOrdersLen;
|
int oldOrdersLen;
|
||||||
DivOrders oldOrders;
|
DivOrders oldOrders;
|
||||||
|
|
|
@ -817,6 +817,24 @@ void FurnaceGUI::drawPattern() {
|
||||||
ImGui::Selectable("cut");
|
ImGui::Selectable("cut");
|
||||||
ImGui::Selectable("copy");
|
ImGui::Selectable("copy");
|
||||||
ImGui::Selectable("paste");
|
ImGui::Selectable("paste");
|
||||||
|
if (ImGui::BeginMenu("paste special...")) {
|
||||||
|
ImGui::Selectable("paste mix");
|
||||||
|
ImGui::Selectable("paste mix (background)");
|
||||||
|
ImGui::Selectable("paste flood");
|
||||||
|
ImGui::Selectable("paste overflow");
|
||||||
|
ImGui::EndMenu();
|
||||||
|
}
|
||||||
|
ImGui::Selectable("delete");
|
||||||
|
ImGui::Separator();
|
||||||
|
|
||||||
|
ImGui::InputInt("##TransposeAmount",&transposeAmount,1,1);
|
||||||
|
ImGui::SameLine();
|
||||||
|
ImGui::Button("Transpose");
|
||||||
|
|
||||||
|
ImGui::Separator();
|
||||||
|
ImGui::Selectable("interpolate");
|
||||||
|
ImGui::Selectable("fade in");
|
||||||
|
ImGui::Selectable("fade out");
|
||||||
if (ImGui::BeginMenu("change instrument...")) {
|
if (ImGui::BeginMenu("change instrument...")) {
|
||||||
if (e->song.ins.empty()) {
|
if (e->song.ins.empty()) {
|
||||||
ImGui::Text("no instruments available");
|
ImGui::Text("no instruments available");
|
||||||
|
@ -828,6 +846,26 @@ void FurnaceGUI::drawPattern() {
|
||||||
}
|
}
|
||||||
ImGui::EndMenu();
|
ImGui::EndMenu();
|
||||||
}
|
}
|
||||||
|
if (ImGui::BeginMenu("scale...")) {
|
||||||
|
ImGui::InputFloat("Bottom",&scaleMin,1,1);
|
||||||
|
ImGui::InputFloat("Top",&scaleMax,1,1);
|
||||||
|
ImGui::Button("Scale");
|
||||||
|
ImGui::EndMenu();
|
||||||
|
}
|
||||||
|
if (ImGui::BeginMenu("randomize...")) {
|
||||||
|
ImGui::InputInt("Minimum",&randomizeMin,1,1);
|
||||||
|
ImGui::InputInt("Maximum",&randomizeMax,1,1);
|
||||||
|
ImGui::Button("Randomize");
|
||||||
|
ImGui::EndMenu();
|
||||||
|
}
|
||||||
|
ImGui::Selectable("invert values");
|
||||||
|
|
||||||
|
ImGui::SameLine();
|
||||||
|
|
||||||
|
ImGui::Selectable("flip selection");
|
||||||
|
ImGui::Selectable("collapse");
|
||||||
|
ImGui::Selectable("expand");
|
||||||
|
|
||||||
ImGui::EndPopup();
|
ImGui::EndPopup();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in a new issue