diff --git a/qrenderdoc/Windows/BufferViewer.cpp b/qrenderdoc/Windows/BufferViewer.cpp index 1516975b6..e753b783e 100644 --- a/qrenderdoc/Windows/BufferViewer.cpp +++ b/qrenderdoc/Windows/BufferViewer.cpp @@ -3207,7 +3207,7 @@ void BufferViewer::on_solidShading_currentIndexChanged(int index) m_Config.wireframeDraw = true; } - m_Config.solidShadeMode = (SolidShade)index; + m_Config.solidShadeMode = (SolidShade)qMax(0, index); m_ModelVSIn->setSecondaryColumn(m_ModelVSIn->secondaryColumn(), m_Config.solidShadeMode == SolidShade::Secondary, diff --git a/qrenderdoc/Windows/Dialogs/EnvironmentEditor.cpp b/qrenderdoc/Windows/Dialogs/EnvironmentEditor.cpp index 06dd4e5a0..f7ed756b0 100644 --- a/qrenderdoc/Windows/Dialogs/EnvironmentEditor.cpp +++ b/qrenderdoc/Windows/Dialogs/EnvironmentEditor.cpp @@ -149,7 +149,7 @@ void EnvironmentEditor::on_addUpdate_clicked() EnvironmentModification mod; mod.name = ui->name->text().toUtf8().data(); mod.value = ui->value->text().toUtf8().data(); - mod.sep = (EnvSep)ui->separator->currentIndex(); + mod.sep = (EnvSep)qMax(0, ui->separator->currentIndex()); if(ui->appendValue->isChecked()) mod.mod = EnvMod::Append; diff --git a/qrenderdoc/Windows/Dialogs/SettingsDialog.cpp b/qrenderdoc/Windows/Dialogs/SettingsDialog.cpp index 6ebd31695..5b0bf560f 100644 --- a/qrenderdoc/Windows/Dialogs/SettingsDialog.cpp +++ b/qrenderdoc/Windows/Dialogs/SettingsDialog.cpp @@ -316,7 +316,7 @@ void SettingsDialog::on_EventBrowser_TimeUnit_currentIndexChanged(int index) if(m_Init) return; - m_Ctx.Config().EventBrowser_TimeUnit = (TimeUnit)ui->EventBrowser_TimeUnit->currentIndex(); + m_Ctx.Config().EventBrowser_TimeUnit = (TimeUnit)qMax(0, ui->EventBrowser_TimeUnit->currentIndex()); if(m_Ctx.HasEventBrowser()) m_Ctx.GetEventBrowser()->UpdateDurationColumn(); diff --git a/qrenderdoc/Windows/Dialogs/TextureSaveDialog.cpp b/qrenderdoc/Windows/Dialogs/TextureSaveDialog.cpp index 716abb84d..08daedde4 100644 --- a/qrenderdoc/Windows/Dialogs/TextureSaveDialog.cpp +++ b/qrenderdoc/Windows/Dialogs/TextureSaveDialog.cpp @@ -191,7 +191,7 @@ void TextureSaveDialog::SetFilenameFromFiletype() void TextureSaveDialog::on_fileFormat_currentIndexChanged(int index) { - saveData.destType = (FileType)ui->fileFormat->currentIndex(); + saveData.destType = (FileType)qMax(0, ui->fileFormat->currentIndex()); ui->jpegCompression->setEnabled(saveData.destType == FileType::JPG); @@ -273,7 +273,7 @@ void TextureSaveDialog::on_oneMip_toggled(bool checked) void TextureSaveDialog::on_mipSelect_currentIndexChanged(int index) { - saveData.mip = index; + saveData.mip = qMax(0, index); } void TextureSaveDialog::on_mapSampleArray_toggled(bool checked) @@ -344,7 +344,7 @@ void TextureSaveDialog::on_oneSample_toggled(bool checked) void TextureSaveDialog::on_sampleSelect_currentIndexChanged(int index) { - saveData.sample.sampleIndex = (uint32_t)index; + saveData.sample.sampleIndex = (uint32_t)qMax(0, index); } void TextureSaveDialog::on_exportAllSlices_toggled(bool checked) @@ -466,7 +466,7 @@ void TextureSaveDialog::on_cubeCruciform_toggled(bool checked) void TextureSaveDialog::on_sliceSelect_currentIndexChanged(int index) { - saveData.slice.sliceIndex = index; + saveData.slice.sliceIndex = qMax(0, index); } void TextureSaveDialog::on_gridWidth_valueChanged(double arg1) @@ -488,7 +488,7 @@ void TextureSaveDialog::on_alphaCol_clicked() void TextureSaveDialog::on_alphaMap_currentIndexChanged(int index) { - saveData.alpha = (AlphaMapping)index; + saveData.alpha = (AlphaMapping)qMax(0, index); ui->alphaCol->setEnabled(saveData.alpha == AlphaMapping::BlendToColor); } @@ -546,7 +546,7 @@ void TextureSaveDialog::on_filename_textEdited(const QString &arg1) void TextureSaveDialog::on_saveCancelButtons_accepted() { - saveData.alpha = (AlphaMapping)ui->alphaMap->currentIndex(); + saveData.alpha = (AlphaMapping)qMax(0, ui->alphaMap->currentIndex()); if(saveData.alpha == AlphaMapping::BlendToCheckerboard) { @@ -556,7 +556,7 @@ void TextureSaveDialog::on_saveCancelButtons_accepted() if(ui->exportAllMips->isChecked()) saveData.mip = -1; else - saveData.mip = (int)ui->mipSelect->currentIndex(); + saveData.mip = (int)qMax(0, ui->mipSelect->currentIndex()); if(ui->resolveSamples->isChecked()) { @@ -570,7 +570,7 @@ void TextureSaveDialog::on_saveCancelButtons_accepted() } else { - saveData.sample.sampleIndex = (uint)ui->sampleSelect->currentIndex(); + saveData.sample.sampleIndex = (uint)qMax(0, ui->sampleSelect->currentIndex()); saveData.sample.mapToArray = false; } @@ -578,7 +578,7 @@ void TextureSaveDialog::on_saveCancelButtons_accepted() { saveData.slice.cubeCruciform = saveData.slice.slicesAsGrid = false; saveData.slice.sliceGridWidth = 1; - saveData.slice.sliceIndex = (int)ui->sliceSelect->currentIndex(); + saveData.slice.sliceIndex = (int)qMax(0, ui->sliceSelect->currentIndex()); } else { @@ -597,7 +597,7 @@ void TextureSaveDialog::on_saveCancelButtons_accepted() } } - saveData.destType = (FileType)ui->fileFormat->currentIndex(); + saveData.destType = (FileType)qMax(0, ui->fileFormat->currentIndex()); saveData.jpegQuality = (int)ui->jpegCompression->value(); bool ok = false; diff --git a/qrenderdoc/Windows/TextureViewer.cpp b/qrenderdoc/Windows/TextureViewer.cpp index f88cdc3e4..39b7cb492 100644 --- a/qrenderdoc/Windows/TextureViewer.cpp +++ b/qrenderdoc/Windows/TextureViewer.cpp @@ -1058,14 +1058,14 @@ void TextureViewer::UI_OnTextureSelectionChanged(bool newdraw) m_TextureSettings[m_TexDisplay.texid].b = ui->channelBlue->isChecked(); m_TextureSettings[m_TexDisplay.texid].a = ui->channelAlpha->isChecked(); - m_TextureSettings[m_TexDisplay.texid].displayType = ui->channels->currentIndex(); + m_TextureSettings[m_TexDisplay.texid].displayType = qMax(0, ui->channels->currentIndex()); m_TextureSettings[m_TexDisplay.texid].customShader = ui->customShader->currentText(); m_TextureSettings[m_TexDisplay.texid].depth = ui->depthDisplay->isChecked(); m_TextureSettings[m_TexDisplay.texid].stencil = ui->stencilDisplay->isChecked(); - m_TextureSettings[m_TexDisplay.texid].mip = ui->mipLevel->currentIndex(); - m_TextureSettings[m_TexDisplay.texid].slice = ui->sliceFace->currentIndex(); + m_TextureSettings[m_TexDisplay.texid].mip = qMax(0, ui->mipLevel->currentIndex()); + m_TextureSettings[m_TexDisplay.texid].slice = qMax(0, ui->sliceFace->currentIndex()); m_TextureSettings[m_TexDisplay.texid].minrange = ui->rangeHistogram->blackPoint(); m_TextureSettings[m_TexDisplay.texid].maxrange = ui->rangeHistogram->whitePoint(); @@ -3145,13 +3145,13 @@ void TextureViewer::on_mipLevel_currentIndexChanged(int index) if(tex.mips > 1) { - m_TexDisplay.mip = (uint32_t)index; + m_TexDisplay.mip = (uint32_t)qMax(0, index); m_TexDisplay.sampleIdx = 0; } else { m_TexDisplay.mip = 0; - m_TexDisplay.sampleIdx = (uint32_t)index; + m_TexDisplay.sampleIdx = (uint32_t)qMax(0, index); if(m_TexDisplay.sampleIdx == tex.msSamp) m_TexDisplay.sampleIdx = ~0U; } @@ -3191,10 +3191,10 @@ void TextureViewer::on_sliceFace_currentIndexChanged(int index) return; TextureDescription &tex = *texptr; - m_TexDisplay.sliceFace = (uint32_t)index; + m_TexDisplay.sliceFace = (uint32_t)qMax(0, index); if(tex.depth > 1) - m_TexDisplay.sliceFace = (uint32_t)(index << (int)m_TexDisplay.mip); + m_TexDisplay.sliceFace = (uint32_t)(qMax(0, index) << (int)m_TexDisplay.mip); INVOKE_MEMFN(RT_UpdateVisualRange);