- enhancement: Show progress dialog if the time for searching compilers is too long.

This commit is contained in:
Roy Qu 2023-08-06 00:05:58 +08:00
parent d3760db7ec
commit dd724e64c2
5 changed files with 406 additions and 360 deletions

View File

@ -4,11 +4,12 @@ Red Panda C++ Version 2.24
- fix: memory view's cell size is too wide in linux. - fix: memory view's cell size is too wide in linux.
- fix: Code completion doesn't work if "min id length to show completion" is not 1. - fix: Code completion doesn't work if "min id length to show completion" is not 1.
- fix: english typos. (thanks for sangiye0@github) - fix: english typos. (thanks for sangiye0@github)
- fix: Goto definition/declaration may choose wrong symbol is multiple files are opened and symbols have the same name. - fix: Goto definition/declaration may choose wrong symbol when multiple files are opened and symbols have the same name.
- fix: "UTF-8 BOM" can't be correctly loaded as project file's encoding. - fix: "UTF-8 BOM" can't be correctly loaded as project file's encoding.
- fix: Project file's encoding is not correctly updated after converted manually. - fix: Project file's encoding is not correctly updated after converted manually.
- enhancement: Press left/right arrow will move caret to the begin/end of the selection. - enhancement: Press left/right arrow will move caret to the begin/end of the selection.
- enhancement: Press up/down arrow will move caret up/down from the begin/end of the selection. - enhancement: Press up/down arrow will move caret up/down from the begin/end of the selection.
- enhancement: Show progress dialog if the time for searching compilers is too long.
Red Panda C++ Version 2.23 Red Panda C++ Version 2.23

View File

@ -20,6 +20,7 @@
#include "../mainwindow.h" #include "../mainwindow.h"
#include "compilersetdirectorieswidget.h" #include "compilersetdirectorieswidget.h"
#include <QMessageBox> #include <QMessageBox>
#include <QProgressDialog>
#include "../utils.h" #include "../utils.h"
#include "../iconsmanager.h" #include "../iconsmanager.h"
#include <qt_utils/charsetinfo.h> #include <qt_utils/charsetinfo.h>
@ -258,9 +259,22 @@ void CompilerSetOptionWidget::on_btnFindCompilers_clicked()
if (QMessageBox::warning(this,tr("Confirm"),msg, if (QMessageBox::warning(this,tr("Confirm"),msg,
QMessageBox::Ok | QMessageBox::Cancel) != QMessageBox::Ok ) QMessageBox::Ok | QMessageBox::Cancel) != QMessageBox::Ok )
return; return;
QProgressDialog progressDlg(
tr("Searching for compilers..."),
tr("Abort"),
0,
1,
pMainWindow);
progressDlg.setWindowModality(Qt::WindowModal);
progressDlg.setMaximum(3);
progressDlg.setLabelText(tr("Searching..."));
pSettings->compilerSets().clearSets(); pSettings->compilerSets().clearSets();
progressDlg.setValue(1);
pSettings->compilerSets().findSets(); pSettings->compilerSets().findSets();
progressDlg.setValue(2);
doLoad(); doLoad();
progressDlg.setValue(3);
setSettingsChanged(); setSettingsChanged();
if (pSettings->compilerSets().size()==0) { if (pSettings->compilerSets().size()==0) {
QMessageBox::warning(this,tr("Failed"),tr("Can't find any compiler.")); QMessageBox::warning(this,tr("Failed"),tr("Can't find any compiler."));

View File

@ -767,6 +767,18 @@
<source>MB</source> <source>MB</source>
<translation type="obsolete">MB</translation> <translation type="obsolete">MB</translation>
</message> </message>
<message>
<source>Searching for compilers...</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Abort</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Searching...</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>CppRefacter</name> <name>CppRefacter</name>
@ -1819,7 +1831,7 @@
</message> </message>
<message> <message>
<source>Independent Red Panda C++ applications</source> <source>Independent Red Panda C++ applications</source>
<translation type="vanished">Aplicativos independentes do Red Panda C++</translation> <translation>Aplicativos independentes do Red Panda C++</translation>
</message> </message>
<message> <message>
<source>The same Red Panda C++ application</source> <source>The same Red Panda C++ application</source>
@ -1833,10 +1845,6 @@
<source>Just check or uncheck for which file types Red Panda C++ wil be registered as the default application to open them ... </source> <source>Just check or uncheck for which file types Red Panda C++ wil be registered as the default application to open them ... </source>
<translation>Basta marcar ou desmarcar quais tipos de arquivos o Red Panda C++ irá registrar como aplicativos padrões para abrí-los ...</translation> <translation>Basta marcar ou desmarcar quais tipos de arquivos o Red Panda C++ irá registrar como aplicativos padrões para abrí-los ...</translation>
</message> </message>
<message>
<source>Independent Red Panda C++ applications</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>EnvironmentFoldersWidget</name> <name>EnvironmentFoldersWidget</name>
@ -2500,7 +2508,7 @@
</message> </message>
<message> <message>
<source>Don&apos;t break multiple statements residing on one line</source> <source>Don&apos;t break multiple statements residing on one line</source>
<translation type="vanished">Não separar instruções múltiplas que estejam em uma mesma linha</translation> <translation>Não separar instruções múltiplas que estejam em uma mesma linha</translation>
</message> </message>
<message> <message>
<source>Break return type from the function name in its declaration</source> <source>Break return type from the function name in its declaration</source>
@ -2538,10 +2546,6 @@
<source>Insert empty lines arround unrelated blocks</source> <source>Insert empty lines arround unrelated blocks</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Don&apos;t break multiple statements residing on one line</source>
<translation type="unfinished"></translation>
</message>
<message> <message>
<source>No minimal indent</source> <source>No minimal indent</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>

File diff suppressed because it is too large Load Diff

View File

@ -656,6 +656,18 @@
<source>Locate windres</source> <source>Locate windres</source>
<translation type="unfinished"></translation> <translation type="unfinished"></translation>
</message> </message>
<message>
<source>Searching for compilers...</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Abort</source>
<translation type="unfinished"></translation>
</message>
<message>
<source>Searching...</source>
<translation type="unfinished"></translation>
</message>
</context> </context>
<context> <context>
<name>CppRefacter</name> <name>CppRefacter</name>