191
195
void PythonConsole::slot_saveAs()
193
197
QString oldFname = filename;
198
QString dirName = QDir::homePath();
199
if (!filename.isEmpty())
201
QFileInfo fInfo(filename);
202
QDir fileDir = fInfo.absoluteDir();
203
if (fileDir.exists())
204
dirName = fileDir.absolutePath();
194
206
filename = QFileDialog::getSaveFileName(this,
195
207
tr("Save the Python Commands in File"),
197
209
tr("Python Scripts (*.py *.PY)"));
198
if (filename.isNull())
210
if (filename.isEmpty())
215
// #10070 : not needed QFileDialog::getSaveFileName() will ask overwrite confirmation by itself
216
/*if (QFile::exists(filename))
203
QString fn = QDir::convertSeparators(filename);
218
QString fn = QDir::toNativeSeparators(filename);
204
219
if (ScMessageBox::warning(this, CommonStrings::trWarning,
205
220
"<qt>" + tr(QString("File %1 already exists. Do you want to replace it?").arg(fn).toLocal8Bit().constData()) + "</qt>",
206
221
QMessageBox::Yes, QMessageBox::No) == QMessageBox::No)
208
223
filename = oldFname;
215
230
void PythonConsole::slot_saveOutput()
232
QString dname = QDir::homePath();
217
233
QString fname = QFileDialog::getSaveFileName(this,
218
234
tr("Save Current Output"),
220
236
tr("Text Files (*.txt)"));
221
if (fname == QString::null)
240
// #10070 : not needed QFileDialog::getSaveFileName() will ask overwrite confirmation by itself
226
QString fn = QDir::convertSeparators(filename);
243
QString fn = QDir::toNativeSeparators(filename);
227
244
if (QMessageBox::warning(this, CommonStrings::trWarning,
228
245
"<qt>" + tr(QString("File %1 already exists. Do you want to replace it?").arg(fn).toLocal8Bit().constData()) + "</qt>",
229
246
QMessageBox::Yes, QMessageBox::No) == QMessageBox::No)
233
250
if (f.open(QIODevice::WriteOnly))
301
318
void SyntaxHighlighter::highlightBlock(const QString &text)
320
// Apply default text color
321
setFormat(0, text.length(), colors.textColor);
303
323
foreach (HighlightingRule rule, highlightingRules)
305
325
QRegExp expression(rule.pattern);
349
369
textColor.setNamedColor(prefs->get("syntaxtext", "#000000"));
352
SyntaxColors::~SyntaxColors()
372
void SyntaxColors::saveToPrefs()
354
374
PrefsContext* prefs = PrefsManager::instance()->prefsFile->getPluginContext("scriptplugin");
355
prefs->set("syntaxerror", qcolor2named(errorColor));
356
prefs->set("syntaxcomment", qcolor2named(commentColor));
357
prefs->set("syntaxkeyword", qcolor2named(keywordColor));
358
prefs->set("syntaxsign", qcolor2named(signColor));
359
prefs->set("syntaxnumber", qcolor2named(numberColor));
360
prefs->set("syntaxstring", qcolor2named(stringColor));
361
prefs->set("syntaxtext", qcolor2named(textColor));
377
prefs->set("syntaxerror", qcolor2named(errorColor));
378
prefs->set("syntaxcomment", qcolor2named(commentColor));
379
prefs->set("syntaxkeyword", qcolor2named(keywordColor));
380
prefs->set("syntaxsign", qcolor2named(signColor));
381
prefs->set("syntaxnumber", qcolor2named(numberColor));
382
prefs->set("syntaxstring", qcolor2named(stringColor));
383
prefs->set("syntaxtext", qcolor2named(textColor));
364
387
QString SyntaxColors::qcolor2named(QColor color)