Some fixes for mobile edit button
This commit is contained in:
parent
7a8b595e2a
commit
e96a1b7084
|
@ -49,23 +49,25 @@ void FurnaceGUI::drawMobileControls() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
if (dragMobileEditButton) {
|
if (dragMobileEditButton) {
|
||||||
mobileEditButtonPos.x=((ImGui::GetMousePos().x/canvasW)-((mobileEditButtonSize.x*1.3)/2)/canvasW);
|
mobileEditButtonPos.x=((ImGui::GetMousePos().x/canvasW)-((portrait?0.16*canvasW:0.16*canvasH)/2)/canvasW);
|
||||||
mobileEditButtonPos.y=((ImGui::GetMousePos().y/canvasH)-((mobileEditButtonSize.y*1.3)/2)/canvasH);
|
mobileEditButtonPos.y=((ImGui::GetMousePos().y/canvasH)-((portrait?0.16*canvasW:0.16*canvasH)/2)/canvasH);
|
||||||
}
|
}
|
||||||
if (mobileEditButtonPos.x<0) mobileEditButtonPos.x=0;
|
if (mobileEditButtonPos.x<0) mobileEditButtonPos.x=0;
|
||||||
if (mobileEditButtonPos.x>1) mobileEditButtonPos.x=1;
|
if (mobileEditButtonPos.x>1) mobileEditButtonPos.x=1;
|
||||||
if (mobileEditButtonPos.y<0) mobileEditButtonPos.y=0;
|
if (mobileEditButtonPos.y<0) mobileEditButtonPos.y=0;
|
||||||
if (mobileEditButtonPos.y>1) mobileEditButtonPos.y=1;
|
if (mobileEditButtonPos.y>1) mobileEditButtonPos.y=1;
|
||||||
ImGui::SetNextWindowPos(ImVec2(mobileEditButtonPos.x*canvasW, mobileEditButtonPos.y*canvasH));
|
ImGui::SetNextWindowPos(ImVec2(mobileEditButtonPos.x*canvasW, mobileEditButtonPos.y*canvasH));
|
||||||
ImGui::SetNextWindowSize(ImVec2(mobileEditButtonSize.x*1.3, mobileEditButtonSize.y*1.3));
|
ImGui::SetNextWindowSize(portrait?ImVec2(0.16*canvasW,0.16*canvasW):ImVec2(0.16*canvasH,0.16*canvasH));
|
||||||
if (ImGui::Begin("Mobile Edit Button Menu",NULL,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse|ImGuiWindowFlags_NoBackground|ImGuiWindowFlags_NoDecoration|globalWinFlags)) {
|
if (ImGui::Begin("MobileEdit",NULL,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse|ImGuiWindowFlags_NoBackground|ImGuiWindowFlags_NoDecoration|globalWinFlags)) {
|
||||||
|
float avail=portrait?ImGui::GetContentRegionAvail().y:ImGui::GetContentRegionAvail().x;
|
||||||
|
mobileEditButtonSize=ImVec2(avail,avail);
|
||||||
if (ImGui::Button("Edit", mobileEditButtonSize)) {
|
if (ImGui::Button("Edit", mobileEditButtonSize)) {
|
||||||
//click
|
//click
|
||||||
}
|
}
|
||||||
if (ImGui::IsItemActive()) {
|
if (ImGui::IsItemActive()) {
|
||||||
if (CHECK_BUTTON_LONG_HOLD) {
|
if (CHECK_BUTTON_LONG_HOLD) {
|
||||||
//drag
|
//drag
|
||||||
if (!dragMobileEditButton) dragMobileEditButton = !dragMobileEditButton;
|
if (!dragMobileEditButton) dragMobileEditButton=!dragMobileEditButton;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -76,7 +78,6 @@ void FurnaceGUI::drawMobileControls() {
|
||||||
if (ImGui::Begin("Mobile Controls",NULL,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse|globalWinFlags)) {
|
if (ImGui::Begin("Mobile Controls",NULL,ImGuiWindowFlags_NoScrollbar|ImGuiWindowFlags_NoScrollWithMouse|globalWinFlags)) {
|
||||||
float avail=portrait?ImGui::GetContentRegionAvail().y:ImGui::GetContentRegionAvail().x;
|
float avail=portrait?ImGui::GetContentRegionAvail().y:ImGui::GetContentRegionAvail().x;
|
||||||
ImVec2 buttonSize=ImVec2(avail,avail);
|
ImVec2 buttonSize=ImVec2(avail,avail);
|
||||||
mobileEditButtonSize=buttonSize;
|
|
||||||
const char* mobButtonName=ICON_FA_CHEVRON_RIGHT "##MobileMenu";
|
const char* mobButtonName=ICON_FA_CHEVRON_RIGHT "##MobileMenu";
|
||||||
if (portrait) mobButtonName=ICON_FA_CHEVRON_UP "##MobileMenu";
|
if (portrait) mobButtonName=ICON_FA_CHEVRON_UP "##MobileMenu";
|
||||||
if (mobileMenuOpen) {
|
if (mobileMenuOpen) {
|
||||||
|
|
Loading…
Reference in New Issue