@@ -212,8 +212,15 @@ IDE::IDE(int& argc, char* argv[]) : QApplication(argc,argv) {
212
212
QSettings settings;
213
213
settings.beginGroup (" MainWindow" );
214
214
215
- QFont defaultFont (" Courier New" );
216
- defaultFont.setStyleHint (QFont::Monospace);
215
+ QFont defaultFont;
216
+ defaultFont.setFamily (" Menlo" );
217
+ if (!defaultFont.exactMatch ()) {
218
+ defaultFont.setFamily (" Consolas" );
219
+ }
220
+ if (!defaultFont.exactMatch ()) {
221
+ defaultFont.setFamily (" Courier New" );
222
+ }
223
+ defaultFont.setStyleHint (QFont::TypeWriter);
217
224
defaultFont.setPointSize (13 );
218
225
QFont editorFont = settings.value (" editorFont" , defaultFont).value <QFont>();
219
226
bool darkMode = settings.value (" darkMode" , false ).value <bool >();
@@ -640,8 +647,15 @@ void MainWindow::init(const QString& projectFile)
640
647
QSettings settings;
641
648
settings.beginGroup (" MainWindow" );
642
649
643
- QFont defaultFont (" Courier New" );
644
- defaultFont.setStyleHint (QFont::Monospace);
650
+ QFont defaultFont;
651
+ defaultFont.setFamily (" Menlo" );
652
+ if (!defaultFont.exactMatch ()) {
653
+ defaultFont.setFamily (" Consolas" );
654
+ }
655
+ if (!defaultFont.exactMatch ()) {
656
+ defaultFont.setFamily (" Courier New" );
657
+ }
658
+ defaultFont.setStyleHint (QFont::TypeWriter);
645
659
defaultFont.setPointSize (13 );
646
660
editorFont = settings.value (" editorFont" , defaultFont).value <QFont>();
647
661
darkMode = settings.value (" darkMode" , false ).value <bool >();
@@ -1189,10 +1203,10 @@ void MainWindow::tabChange(int tab) {
1189
1203
}
1190
1204
if (curEditor->filepath .isEmpty ()) {
1191
1205
setWindowFilePath (curEditor->filename );
1192
- setWindowTitle (curEditor->filename +p);
1206
+ setWindowTitle (curEditor->filename +p+ " [*] " );
1193
1207
} else {
1194
1208
setWindowFilePath (curEditor->filepath );
1195
- setWindowTitle (curEditor->filename +p);
1209
+ setWindowTitle (curEditor->filename +p+ " [*] " );
1196
1210
}
1197
1211
ui->actionSave ->setEnabled (true );
1198
1212
ui->actionSave_as ->setEnabled (true );
@@ -1247,7 +1261,7 @@ void MainWindow::tabChange(int tab) {
1247
1261
QFileInfo fi (projectPath);
1248
1262
p = " Project: " +fi.baseName ();
1249
1263
}
1250
- setWindowTitle (p);
1264
+ setWindowTitle (p+ " [*] " );
1251
1265
}
1252
1266
}
1253
1267
}
@@ -2144,15 +2158,21 @@ void MainWindow::on_actionAbout_MiniZinc_IDE_triggered()
2144
2158
AboutDialog (IDE::instance ()->applicationVersion ()).exec ();
2145
2159
}
2146
2160
2147
- void MainWindow::errorClicked (const QUrl & url )
2161
+ void MainWindow::errorClicked (const QUrl & anUrl )
2148
2162
{
2163
+ QUrl url = anUrl;
2164
+ QString query = url.query ();
2165
+ url.setQuery (" " );
2166
+ url.setScheme (" file" );
2167
+ QFileInfo urlinfo (url.toLocalFile ());
2149
2168
IDE::instance ()->stats .errorsClicked ++;
2150
2169
for (int i=0 ; i<ui->tabWidget ->count (); i++) {
2151
2170
if (ui->tabWidget ->widget (i) != ui->configuration ) {
2152
2171
CodeEditor* ce = static_cast <CodeEditor*>(ui->tabWidget ->widget (i));
2153
- if (ce->filepath == url.path ()) {
2172
+ QFileInfo ceinfo (ce->filepath );
2173
+ if (ceinfo.canonicalFilePath () == urlinfo.canonicalFilePath ()) {
2154
2174
QRegExp re_line (" line=([0-9]+)" );
2155
- if (re_line.indexIn (url. query () ) != -1 ) {
2175
+ if (re_line.indexIn (query) != -1 ) {
2156
2176
bool ok;
2157
2177
int line = re_line.cap (1 ).toInt (&ok);
2158
2178
if (ok) {
0 commit comments