mirror of
https://github.com/baldurk/renderdoc.git
synced 2026-08-30 18:35:50 +00:00
Add a settings window entry to add extra python stubs paths
This commit is contained in:
@@ -31,6 +31,7 @@
|
||||
#include <QToolButton>
|
||||
#include "Code/Interface/QRDInterface.h"
|
||||
#include "Code/QRDUtils.h"
|
||||
#include "Code/pyrenderdoc/PythonContext.h"
|
||||
#include "Styles/StyleData.h"
|
||||
#include "Widgets/OrderedListEditor.h"
|
||||
#include "Widgets/ReplayOptionsSelector.h"
|
||||
@@ -793,6 +794,57 @@ void SettingsDialog::on_browseRGPPath_clicked()
|
||||
m_Ctx.Config().Save();
|
||||
}
|
||||
|
||||
void SettingsDialog::on_Python_StubPaths_clicked()
|
||||
{
|
||||
QDialog listEditor;
|
||||
|
||||
listEditor.setWindowTitle(tr("Extra python stubs generation directories"));
|
||||
listEditor.setWindowFlags(listEditor.windowFlags() & ~Qt::WindowContextHelpButtonHint);
|
||||
|
||||
OrderedListEditor list(tr("Stubs Directory"),
|
||||
OrderedItemExtras::BrowseFolder | OrderedItemExtras::Delete);
|
||||
|
||||
QVBoxLayout layout;
|
||||
QDialogButtonBox okCancel;
|
||||
okCancel.setStandardButtons(QDialogButtonBox::Cancel | QDialogButtonBox::Ok);
|
||||
layout.addWidget(&list);
|
||||
layout.addWidget(&okCancel);
|
||||
|
||||
QObject::connect(&okCancel, &QDialogButtonBox::accepted, &listEditor, &QDialog::accept);
|
||||
QObject::connect(&okCancel, &QDialogButtonBox::rejected, &listEditor, &QDialog::reject);
|
||||
|
||||
listEditor.setLayout(&layout);
|
||||
|
||||
QStringList items;
|
||||
for(const rdcstr &dir : m_Ctx.Config().Python_StubDirs)
|
||||
{
|
||||
items.append(dir);
|
||||
}
|
||||
|
||||
list.setItems(items);
|
||||
|
||||
int res = RDDialog::show(&listEditor);
|
||||
|
||||
if(res)
|
||||
{
|
||||
items = list.getItems();
|
||||
|
||||
rdcarray<rdcstr> newDirs;
|
||||
newDirs.resize(items.size());
|
||||
for(int i = 0; i < items.size(); i++)
|
||||
{
|
||||
newDirs[i] = items[i];
|
||||
}
|
||||
|
||||
if(newDirs.size() > m_Ctx.Config().Python_StubDirs.size())
|
||||
PythonContext::GenerateStubs(newDirs);
|
||||
|
||||
m_Ctx.Config().Python_StubDirs = newDirs;
|
||||
|
||||
m_Ctx.Config().Save();
|
||||
}
|
||||
}
|
||||
|
||||
// texture viewer
|
||||
void SettingsDialog::on_TextureViewer_PerTexSettings_toggled(bool checked)
|
||||
{
|
||||
@@ -817,7 +869,8 @@ void SettingsDialog::on_TextureViewer_ChooseShaderDirectories_clicked()
|
||||
listEditor.setWindowTitle(tr("Custom shaders search directories"));
|
||||
listEditor.setWindowFlags(listEditor.windowFlags() & ~Qt::WindowContextHelpButtonHint);
|
||||
|
||||
OrderedListEditor list(tr("Shaders Directory"), OrderedItemExtras::BrowseFolder);
|
||||
OrderedListEditor list(tr("Shaders Directory"),
|
||||
OrderedItemExtras::BrowseFolder | OrderedItemExtras::Delete);
|
||||
|
||||
QVBoxLayout layout;
|
||||
QDialogButtonBox okCancel;
|
||||
@@ -852,6 +905,8 @@ void SettingsDialog::on_TextureViewer_ChooseShaderDirectories_clicked()
|
||||
}
|
||||
|
||||
m_Ctx.Config().TextureViewer_ShaderDirs = newDirs;
|
||||
|
||||
m_Ctx.Config().Save();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user