Python: add pyside uic extra compiler

To be able to autocomplete code from .ui forms we need to feed the
python language server the compiled form. The uic extra compiler
generates a temporary ui_name.py file for uncompiled or unsaved ui
files. These files are inside a folder that gets appended to the python
path environment variable for the python language server.

Change-Id: I9f48d2012162f33986639315189c41e0a7e0dad2
Reviewed-by: Christian Stenger <christian.stenger@qt.io>
This commit is contained in:
David Schulz
2022-05-25 15:24:09 +02:00
parent d8b404a1a3
commit b9627ddba7
11 changed files with 366 additions and 35 deletions

View File

@@ -29,6 +29,7 @@
#include <languageserverprotocol/jsonrpcmessages.h>
#include <utils/environment.h>
#include <utils/qtcprocess.h>
#include <QBuffer>
@@ -84,12 +85,14 @@ public:
// These functions only have an effect if they are called before start
void setCommandLine(const Utils::CommandLine &cmd);
void setWorkingDirectory(const Utils::FilePath &workingDirectory);
void setEnvironment(const Utils::Environment &environment);
protected:
void sendData(const QByteArray &data) final;
Utils::CommandLine m_cmd;
Utils::FilePath m_workingDirectory;
Utils::QtcProcess *m_process = nullptr;
Utils::Environment m_env;
private:
void readError();