GUI: more mobilework
This commit is contained in:
parent
769a89852f
commit
a34481205a
|
@ -29,7 +29,7 @@ void FurnaceGUI::drawChanOsc() {
|
|||
}
|
||||
if (!chanOscOpen) return;
|
||||
ImGui::SetNextWindowSizeConstraints(ImVec2(64.0f*dpiScale,32.0f*dpiScale),ImVec2(scrW*dpiScale,scrH*dpiScale));
|
||||
if (ImGui::Begin("Oscilloscope (per-channel)",&chanOscOpen)) {
|
||||
if (ImGui::Begin("Oscilloscope (per-channel)",&chanOscOpen,globalWinFlags)) {
|
||||
if (ImGui::BeginTable("ChanOscSettings",3)) {
|
||||
ImGui::TableNextRow();
|
||||
ImGui::TableNextColumn();
|
||||
|
@ -150,4 +150,4 @@ void FurnaceGUI::drawChanOsc() {
|
|||
}
|
||||
if (ImGui::IsWindowFocused(ImGuiFocusedFlags_ChildWindows)) curWindow=GUI_WINDOW_CHAN_OSC;
|
||||
ImGui::End();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -29,7 +29,7 @@ void FurnaceGUI::drawChannels() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!channelsOpen) return;
|
||||
if (ImGui::Begin("Channels",&channelsOpen)) {
|
||||
if (ImGui::Begin("Channels",&channelsOpen,globalWinFlags)) {
|
||||
if (ImGui::BeginTable("ChannelList",3)) {
|
||||
ImGui::TableSetupColumn("c0",ImGuiTableColumnFlags_WidthFixed,0.0);
|
||||
ImGui::TableSetupColumn("c1",ImGuiTableColumnFlags_WidthStretch,0.0);
|
||||
|
@ -64,4 +64,4 @@ void FurnaceGUI::drawChannels() {
|
|||
}
|
||||
if (ImGui::IsWindowFocused(ImGuiFocusedFlags_ChildWindows)) curWindow=GUI_WINDOW_CHANNELS;
|
||||
ImGui::End();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -28,7 +28,7 @@ void FurnaceGUI::drawCompatFlags() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!compatFlagsOpen) return;
|
||||
if (ImGui::Begin("Compatibility Flags",&compatFlagsOpen)) {
|
||||
if (ImGui::Begin("Compatibility Flags",&compatFlagsOpen,globalWinFlags)) {
|
||||
ImGui::TextWrapped("these flags are designed to provide better DefleMask/older Furnace compatibility.");
|
||||
ImGui::Checkbox("Limit slide range",&e->song.limitSlides);
|
||||
if (ImGui::IsItemHovered()) {
|
||||
|
|
|
@ -36,7 +36,7 @@ void FurnaceGUI::drawInsList() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!insListOpen) return;
|
||||
if (ImGui::Begin("Instruments",&insListOpen)) {
|
||||
if (ImGui::Begin("Instruments",&insListOpen,globalWinFlags)) {
|
||||
if (settings.unifiedDataView) settings.horizontalDataView=0;
|
||||
if (ImGui::Button(ICON_FA_PLUS "##InsAdd")) {
|
||||
doAction(GUI_ACTION_INS_LIST_ADD);
|
||||
|
@ -295,7 +295,7 @@ void FurnaceGUI::drawWaveList() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!waveListOpen) return;
|
||||
if (ImGui::Begin("Wavetables",&waveListOpen)) {
|
||||
if (ImGui::Begin("Wavetables",&waveListOpen,globalWinFlags)) {
|
||||
if (ImGui::Button(ICON_FA_PLUS "##WaveAdd")) {
|
||||
doAction(GUI_ACTION_WAVE_LIST_ADD);
|
||||
}
|
||||
|
@ -340,7 +340,7 @@ void FurnaceGUI::drawSampleList() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!sampleListOpen) return;
|
||||
if (ImGui::Begin("Samples",&sampleListOpen)) {
|
||||
if (ImGui::Begin("Samples",&sampleListOpen,globalWinFlags)) {
|
||||
if (ImGui::Button(ICON_FA_FILE "##SampleAdd")) {
|
||||
doAction(GUI_ACTION_SAMPLE_LIST_ADD);
|
||||
}
|
||||
|
|
|
@ -35,7 +35,7 @@ void FurnaceGUI::drawDebug() {
|
|||
}
|
||||
if (!debugOpen) return;
|
||||
ImGui::SetNextWindowSizeConstraints(ImVec2(400.0f*dpiScale,200.0f*dpiScale),ImVec2(scrW*dpiScale,scrH*dpiScale));
|
||||
if (ImGui::Begin("Debug",&debugOpen,ImGuiWindowFlags_NoDocking)) {
|
||||
if (ImGui::Begin("Debug",&debugOpen,globalWinFlags|ImGuiWindowFlags_NoDocking)) {
|
||||
ImGui::Text("NOTE: use with caution.");
|
||||
if (ImGui::TreeNode("Debug Controls")) {
|
||||
if (e->isHalted()) {
|
||||
|
|
|
@ -21,7 +21,7 @@
|
|||
#include "IconsFontAwesome4.h"
|
||||
|
||||
void FurnaceGUI::drawMobileControls() {
|
||||
if (ImGui::Begin("Mobile Controls",NULL,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse)) {
|
||||
if (ImGui::Begin("Mobile Controls",NULL,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse|globalWinFlags)) {
|
||||
float availX=ImGui::GetContentRegionAvail().x;
|
||||
ImVec2 buttonSize=ImVec2(availX,availX);
|
||||
|
||||
|
@ -80,7 +80,7 @@ void FurnaceGUI::drawEditControls() {
|
|||
if (!editControlsOpen) return;
|
||||
switch (settings.controlLayout) {
|
||||
case 0: // classic
|
||||
if (ImGui::Begin("Play/Edit Controls",&editControlsOpen)) {
|
||||
if (ImGui::Begin("Play/Edit Controls",&editControlsOpen,globalWinFlags)) {
|
||||
ImGui::Text("Octave");
|
||||
ImGui::SameLine();
|
||||
if (ImGui::InputInt("##Octave",&curOctave,1,1)) {
|
||||
|
@ -141,7 +141,7 @@ void FurnaceGUI::drawEditControls() {
|
|||
ImGui::End();
|
||||
break;
|
||||
case 1: // compact
|
||||
if (ImGui::Begin("Play/Edit Controls",&editControlsOpen,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse)) {
|
||||
if (ImGui::Begin("Play/Edit Controls",&editControlsOpen,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse|globalWinFlags)) {
|
||||
if (ImGui::Button(ICON_FA_STOP "##Stop")) {
|
||||
stop();
|
||||
}
|
||||
|
@ -218,7 +218,7 @@ void FurnaceGUI::drawEditControls() {
|
|||
ImGui::End();
|
||||
break;
|
||||
case 2: // compact vertical
|
||||
if (ImGui::Begin("Play/Edit Controls",&editControlsOpen,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse)) {
|
||||
if (ImGui::Begin("Play/Edit Controls",&editControlsOpen,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse|globalWinFlags)) {
|
||||
ImGui::PushStyleColor(ImGuiCol_Button,TOGGLE_COLOR(e->isPlaying()));
|
||||
if (ImGui::Button(ICON_FA_PLAY "##Play")) {
|
||||
play();
|
||||
|
@ -292,7 +292,7 @@ void FurnaceGUI::drawEditControls() {
|
|||
ImGui::End();
|
||||
break;
|
||||
case 3: // split
|
||||
if (ImGui::Begin("Play Controls",&editControlsOpen,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse)) {
|
||||
if (ImGui::Begin("Play Controls",&editControlsOpen,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse|globalWinFlags)) {
|
||||
if (e->isPlaying()) {
|
||||
ImGui::PushStyleColor(ImGuiCol_Button,uiColors[GUI_COLOR_TOGGLE_ON]);
|
||||
if (ImGui::Button(ICON_FA_STOP "##Stop")) {
|
||||
|
@ -346,7 +346,7 @@ void FurnaceGUI::drawEditControls() {
|
|||
if (ImGui::IsWindowFocused(ImGuiFocusedFlags_ChildWindows)) curWindow=GUI_WINDOW_EDIT_CONTROLS;
|
||||
ImGui::End();
|
||||
|
||||
if (ImGui::Begin("Edit Controls",&editControlsOpen)) {
|
||||
if (ImGui::Begin("Edit Controls",&editControlsOpen,globalWinFlags)) {
|
||||
ImGui::Columns(2);
|
||||
ImGui::Text("Octave");
|
||||
ImGui::SameLine();
|
||||
|
|
|
@ -9,7 +9,7 @@ void FurnaceGUI::drawEffectList() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!effectListOpen) return;
|
||||
if (ImGui::Begin("Effect List",&effectListOpen)) {
|
||||
if (ImGui::Begin("Effect List",&effectListOpen,globalWinFlags)) {
|
||||
ImGui::Text("System at cursor: %s",e->getSystemName(e->sysOfChan[cursor.xCoarse]));
|
||||
if (ImGui::BeginTable("effectList",2)) {
|
||||
ImGui::TableSetupColumn("c0",ImGuiTableColumnFlags_WidthFixed);
|
||||
|
@ -50,4 +50,4 @@ void FurnaceGUI::drawEffectList() {
|
|||
}
|
||||
if (ImGui::IsWindowFocused(ImGuiFocusedFlags_ChildWindows)) curWindow=GUI_WINDOW_EFFECT_LIST;
|
||||
ImGui::End();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -3013,40 +3013,15 @@ bool FurnaceGUI::loop() {
|
|||
ImGui::EndMainMenuBar();
|
||||
}
|
||||
|
||||
if (!mobileUI) {
|
||||
ImGui::DockSpaceOverViewport(NULL,lockLayout?(ImGuiDockNodeFlags_NoResize|ImGuiDockNodeFlags_NoCloseButton|ImGuiDockNodeFlags_NoDocking|ImGuiDockNodeFlags_NoDockingSplitMe|ImGuiDockNodeFlags_NoDockingSplitOther):0);
|
||||
}
|
||||
|
||||
if (mobileUI) {
|
||||
ImGuiViewport* mainView=ImGui::GetMainViewport();
|
||||
ImGui::SetNextWindowPos(mainView->Pos);
|
||||
ImGui::SetNextWindowSize(mainView->Size);
|
||||
ImGui::SetNextWindowViewport(mainView->ID);
|
||||
ImGuiID dockID=ImGui::GetID("MobileUISpace");
|
||||
ImGuiWindowFlags muiFlags=ImGuiWindowFlags_NoTitleBar|ImGuiWindowFlags_NoCollapse|ImGuiWindowFlags_NoResize|ImGuiWindowFlags_NoMove|ImGuiWindowFlags_NoDocking|ImGuiWindowFlags_NoBringToFrontOnFocus|ImGuiWindowFlags_NoNavFocus;
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_WindowRounding, 0.0f);
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_WindowBorderSize, 0.0f);
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_WindowPadding, ImVec2(0.0f, 0.0f));
|
||||
ImGui::Begin("MobileUI",NULL,muiFlags);
|
||||
ImGui::PopStyleVar(3);
|
||||
if (ImGui::DockBuilderGetNode(dockID)==NULL) {
|
||||
ImGui::DockBuilderRemoveNode(dockID);
|
||||
ImGuiID dn=ImGui::DockBuilderAddNode(dockID);
|
||||
ImGuiID upper, lower, left, right;
|
||||
ImGui::DockBuilderSplitNode(dn,ImGuiDir_Left,0.1f,&left,&right);
|
||||
ImGui::DockBuilderSplitNode(right,ImGuiDir_Down,0.2f,&lower,&upper);
|
||||
ImGui::DockBuilderDockWindow("Mobile Controls",left);
|
||||
ImGui::DockBuilderDockWindow("Pattern",upper);
|
||||
ImGui::DockBuilderDockWindow("Piano",lower);
|
||||
ImGui::DockBuilderFinish(dn);
|
||||
}
|
||||
ImGui::DockSpace(dockID);
|
||||
ImGui::End();
|
||||
|
||||
globalWinFlags=ImGuiWindowFlags_NoTitleBar|ImGuiWindowFlags_NoMove|ImGuiWindowFlags_NoResize|ImGuiWindowFlags_NoBringToFrontOnFocus;
|
||||
drawMobileControls();
|
||||
drawPattern();
|
||||
drawPiano();
|
||||
} else {
|
||||
globalWinFlags=0;
|
||||
ImGui::DockSpaceOverViewport(NULL,lockLayout?(ImGuiDockNodeFlags_NoResize|ImGuiDockNodeFlags_NoCloseButton|ImGuiDockNodeFlags_NoDocking|ImGuiDockNodeFlags_NoDockingSplitMe|ImGuiDockNodeFlags_NoDockingSplitOther):0);
|
||||
|
||||
drawSubSongs();
|
||||
drawPattern();
|
||||
drawEditControls();
|
||||
|
@ -4122,6 +4097,7 @@ FurnaceGUI::FurnaceGUI():
|
|||
vgmExportVersion(0x171),
|
||||
drawHalt(10),
|
||||
macroPointSize(16),
|
||||
globalWinFlags(0),
|
||||
curFileDialog(GUI_FILE_OPEN),
|
||||
warnAction(GUI_WARN_OPEN),
|
||||
postWarnAction(GUI_WARN_GENERIC),
|
||||
|
|
|
@ -816,6 +816,8 @@ class FurnaceGUI {
|
|||
int drawHalt;
|
||||
int macroPointSize;
|
||||
|
||||
ImGuiWindowFlags globalWinFlags;
|
||||
|
||||
FurnaceGUIFileDialogs curFileDialog;
|
||||
FurnaceGUIWarnings warnAction;
|
||||
FurnaceGUIWarnings postWarnAction;
|
||||
|
|
|
@ -1344,7 +1344,7 @@ void FurnaceGUI::drawInsEdit() {
|
|||
}
|
||||
if (!insEditOpen) return;
|
||||
ImGui::SetNextWindowSizeConstraints(ImVec2(440.0f*dpiScale,400.0f*dpiScale),ImVec2(scrW*dpiScale,scrH*dpiScale));
|
||||
if (ImGui::Begin("Instrument Editor",&insEditOpen,settings.allowEditDocking?0:ImGuiWindowFlags_NoDocking)) {
|
||||
if (ImGui::Begin("Instrument Editor",&insEditOpen,globalWinFlags|(settings.allowEditDocking?0:ImGuiWindowFlags_NoDocking))) {
|
||||
if (curIns<0 || curIns>=(int)e->song.ins.size()) {
|
||||
ImGui::Text("no instrument selected");
|
||||
} else {
|
||||
|
|
|
@ -44,7 +44,7 @@ void FurnaceGUI::drawLog() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!logOpen) return;
|
||||
if (ImGui::Begin("Log Viewer",&logOpen)) {
|
||||
if (ImGui::Begin("Log Viewer",&logOpen,globalWinFlags)) {
|
||||
ImGui::Checkbox("Follow",&followLog);
|
||||
ImGui::SameLine();
|
||||
ImGui::Text("Level");
|
||||
|
|
|
@ -28,7 +28,7 @@ void FurnaceGUI::drawMixer() {
|
|||
}
|
||||
if (!mixerOpen) return;
|
||||
ImGui::SetNextWindowSizeConstraints(ImVec2(400.0f*dpiScale,200.0f*dpiScale),ImVec2(scrW*dpiScale,scrH*dpiScale));
|
||||
if (ImGui::Begin("Mixer",&mixerOpen,settings.allowEditDocking?0:ImGuiWindowFlags_NoDocking)) {
|
||||
if (ImGui::Begin("Mixer",&mixerOpen,globalWinFlags|(settings.allowEditDocking?0:ImGuiWindowFlags_NoDocking))) {
|
||||
char id[32];
|
||||
if (ImGui::SliderFloat("Master Volume",&e->song.masterVol,0,3,"%.2fx")) {
|
||||
if (e->song.masterVol<0) e->song.masterVol=0;
|
||||
|
@ -56,4 +56,4 @@ void FurnaceGUI::drawMixer() {
|
|||
}
|
||||
if (ImGui::IsWindowFocused(ImGuiFocusedFlags_ChildWindows)) curWindow=GUI_WINDOW_MIXER;
|
||||
ImGui::End();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -29,7 +29,7 @@ void FurnaceGUI::drawOrders() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!ordersOpen) return;
|
||||
if (ImGui::Begin("Orders",&ordersOpen)) {
|
||||
if (ImGui::Begin("Orders",&ordersOpen,globalWinFlags)) {
|
||||
float regionX=ImGui::GetContentRegionAvail().x;
|
||||
ImVec2 prevSpacing=ImGui::GetStyle().ItemSpacing;
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing,ImVec2(1.0f*dpiScale,1.0f*dpiScale));
|
||||
|
|
|
@ -89,7 +89,7 @@ void FurnaceGUI::drawOsc() {
|
|||
ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing,ImVec2(0,0));
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_ItemInnerSpacing,ImVec2(0,0));
|
||||
}
|
||||
if (ImGui::Begin("Oscilloscope",&oscOpen)) {
|
||||
if (ImGui::Begin("Oscilloscope",&oscOpen,globalWinFlags)) {
|
||||
if (oscZoomSlider) {
|
||||
if (ImGui::VSliderFloat("##OscZoom",ImVec2(20.0f*dpiScale,ImGui::GetContentRegionAvail().y),&oscZoom,0.5,2.0)) {
|
||||
if (oscZoom<0.5) oscZoom=0.5;
|
||||
|
|
|
@ -343,7 +343,7 @@ void FurnaceGUI::drawPattern() {
|
|||
sel2.xFine^=sel1.xFine;
|
||||
}
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_WindowPadding,ImVec2(0.0f,0.0f));
|
||||
if (ImGui::Begin("Pattern",&patternOpen,settings.avoidRaisingPattern?ImGuiWindowFlags_NoBringToFrontOnFocus:0)) {
|
||||
if (ImGui::Begin("Pattern",&patternOpen,globalWinFlags|(settings.avoidRaisingPattern?ImGuiWindowFlags_NoBringToFrontOnFocus:0))) {
|
||||
//ImGui::SetWindowSize(ImVec2(scrW*dpiScale,scrH*dpiScale));
|
||||
patWindowPos=ImGui::GetWindowPos();
|
||||
patWindowSize=ImGui::GetWindowSize();
|
||||
|
|
|
@ -52,7 +52,7 @@ void FurnaceGUI::drawPiano() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!pianoOpen) return;
|
||||
if (ImGui::Begin("Piano",&pianoOpen,((pianoOptions)?0:ImGuiWindowFlags_NoTitleBar)|ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse)) {
|
||||
if (ImGui::Begin("Piano",&pianoOpen,((pianoOptions)?0:ImGuiWindowFlags_NoTitleBar)|ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse|globalWinFlags)) {
|
||||
bool oldPianoKeyPressed[180];
|
||||
memcpy(oldPianoKeyPressed,pianoKeyPressed,180*sizeof(bool));
|
||||
memset(pianoKeyPressed,0,180*sizeof(bool));
|
||||
|
|
|
@ -26,7 +26,7 @@ void FurnaceGUI::drawRegView() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!regViewOpen) return;
|
||||
if (ImGui::Begin("Register View",®ViewOpen)) {
|
||||
if (ImGui::Begin("Register View",®ViewOpen,globalWinFlags)) {
|
||||
for (int i=0; i<e->song.systemLen; i++) {
|
||||
ImGui::Text("%d. %s",i+1,getSystemName(e->song.system[i]));
|
||||
int size=0;
|
||||
|
@ -68,4 +68,4 @@ void FurnaceGUI::drawRegView() {
|
|||
}
|
||||
if (ImGui::IsWindowFocused(ImGuiFocusedFlags_ChildWindows)) curWindow=GUI_WINDOW_REGISTER_VIEW;
|
||||
ImGui::End();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -35,7 +35,7 @@ void FurnaceGUI::drawSampleEdit() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!sampleEditOpen) return;
|
||||
if (ImGui::Begin("Sample Editor",&sampleEditOpen,settings.allowEditDocking?0:ImGuiWindowFlags_NoDocking)) {
|
||||
if (ImGui::Begin("Sample Editor",&sampleEditOpen,globalWinFlags|(settings.allowEditDocking?0:ImGuiWindowFlags_NoDocking))) {
|
||||
if (curSample<0 || curSample>=(int)e->song.sample.size()) {
|
||||
ImGui::Text("no sample selected");
|
||||
} else {
|
||||
|
|
|
@ -218,7 +218,7 @@ void FurnaceGUI::drawSettings() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!settingsOpen) return;
|
||||
if (ImGui::Begin("Settings",&settingsOpen,ImGuiWindowFlags_NoDocking)) {
|
||||
if (ImGui::Begin("Settings",&settingsOpen,ImGuiWindowFlags_NoDocking|globalWinFlags)) {
|
||||
if (!settingsOpen) {
|
||||
settingsOpen=true;
|
||||
showWarning("Do you want to save your settings?",GUI_WARN_CLOSE_SETTINGS);
|
||||
|
|
|
@ -29,7 +29,7 @@ void FurnaceGUI::drawSongInfo() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!songInfoOpen) return;
|
||||
if (ImGui::Begin("Song Information",&songInfoOpen)) {
|
||||
if (ImGui::Begin("Song Information",&songInfoOpen,globalWinFlags)) {
|
||||
if (ImGui::BeginTable("NameAuthor",2,ImGuiTableFlags_SizingStretchProp)) {
|
||||
ImGui::TableSetupColumn("c0",ImGuiTableColumnFlags_WidthFixed,0.0);
|
||||
ImGui::TableSetupColumn("c1",ImGuiTableColumnFlags_WidthStretch,0.0);
|
||||
|
|
|
@ -29,9 +29,9 @@ void FurnaceGUI::drawNotes() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!notesOpen) return;
|
||||
if (ImGui::Begin("Song Comments",¬esOpen)) {
|
||||
if (ImGui::Begin("Song Comments",¬esOpen,globalWinFlags)) {
|
||||
ImGui::InputTextMultiline("##SongNotes",&e->song.notes,ImGui::GetContentRegionAvail());
|
||||
}
|
||||
if (ImGui::IsWindowFocused(ImGuiFocusedFlags_ChildWindows)) curWindow=GUI_WINDOW_NOTES;
|
||||
ImGui::End();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -28,7 +28,7 @@ void FurnaceGUI::drawStats() {
|
|||
nextWindow=GUI_WINDOW_NOTHING;
|
||||
}
|
||||
if (!statsOpen) return;
|
||||
if (ImGui::Begin("Statistics",&statsOpen)) {
|
||||
if (ImGui::Begin("Statistics",&statsOpen,globalWinFlags)) {
|
||||
size_t lastProcTime=e->processTime;
|
||||
double maxGot=1000000000.0*(double)e->getAudioDescGot().bufsize/(double)e->getAudioDescGot().rate;
|
||||
String procStr=fmt::sprintf("%.1f%%",100.0*((double)lastProcTime/(double)maxGot));
|
||||
|
@ -50,4 +50,4 @@ void FurnaceGUI::drawStats() {
|
|||
}
|
||||
if (ImGui::IsWindowFocused(ImGuiFocusedFlags_ChildWindows)) curWindow=GUI_WINDOW_STATS;
|
||||
ImGui::End();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -11,7 +11,7 @@ void FurnaceGUI::drawSubSongs() {
|
|||
}
|
||||
if (!subSongsOpen) return;
|
||||
ImGui::SetNextWindowSizeConstraints(ImVec2(64.0f*dpiScale,32.0f*dpiScale),ImVec2(scrW*dpiScale,scrH*dpiScale));
|
||||
if (ImGui::Begin("Subsongs",&subSongsOpen,ImGuiWindowFlags_NoScrollWithMouse|ImGuiWindowFlags_NoScrollbar)) {
|
||||
if (ImGui::Begin("Subsongs",&subSongsOpen,ImGuiWindowFlags_NoScrollWithMouse|ImGuiWindowFlags_NoScrollbar|globalWinFlags)) {
|
||||
char id[1024];
|
||||
ImGui::SetNextItemWidth(ImGui::GetContentRegionAvail().x-ImGui::GetFrameHeightWithSpacing()*2.0f-ImGui::GetStyle().ItemSpacing.x);
|
||||
if (e->curSubSong->name.empty()) {
|
||||
|
|
|
@ -33,7 +33,7 @@ void FurnaceGUI::drawVolMeter() {
|
|||
ImGui::PushStyleVar(ImGuiStyleVar_FramePadding,ImVec2(0,0));
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_ItemSpacing,ImVec2(0,0));
|
||||
ImGui::PushStyleVar(ImGuiStyleVar_ItemInnerSpacing,ImVec2(0,0));
|
||||
if (ImGui::Begin("Volume Meter",&volMeterOpen)) {
|
||||
if (ImGui::Begin("Volume Meter",&volMeterOpen,globalWinFlags)) {
|
||||
ImDrawList* dl=ImGui::GetWindowDrawList();
|
||||
bool aspectRatio=(ImGui::GetWindowSize().x/ImGui::GetWindowSize().y)>1.0;
|
||||
|
||||
|
@ -100,4 +100,4 @@ void FurnaceGUI::drawVolMeter() {
|
|||
ImGui::PopStyleVar(4);
|
||||
if (ImGui::IsWindowFocused(ImGuiFocusedFlags_ChildWindows)) curWindow=GUI_WINDOW_VOL_METER;
|
||||
ImGui::End();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -32,7 +32,7 @@ void FurnaceGUI::drawWaveEdit() {
|
|||
if (!waveEditOpen) return;
|
||||
float wavePreview[256];
|
||||
ImGui::SetNextWindowSizeConstraints(ImVec2(300.0f*dpiScale,300.0f*dpiScale),ImVec2(scrW*dpiScale,scrH*dpiScale));
|
||||
if (ImGui::Begin("Wavetable Editor",&waveEditOpen,settings.allowEditDocking?0:ImGuiWindowFlags_NoDocking)) {
|
||||
if (ImGui::Begin("Wavetable Editor",&waveEditOpen,globalWinFlags|(settings.allowEditDocking?0:ImGuiWindowFlags_NoDocking))) {
|
||||
if (curWave<0 || curWave>=(int)e->song.wave.size()) {
|
||||
ImGui::Text("no wavetable selected");
|
||||
} else {
|
||||
|
@ -163,4 +163,4 @@ void FurnaceGUI::drawWaveEdit() {
|
|||
}
|
||||
if (ImGui::IsWindowFocused(ImGuiFocusedFlags_ChildWindows)) curWindow=GUI_WINDOW_WAVE_EDIT;
|
||||
ImGui::End();
|
||||
}
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue