@@ -30,8 +30,7 @@ using namespace qReal;
3030using namespace text ;
3131
3232TextManager::TextManager (SystemEvents &systemEvents, gui::MainWindowInterpretersInterface &mainWindow)
33- : mRecentFilesLimit(SettingsManager::value(" recentFilesLimit" ).toInt())
34- , mMainWindow(mainWindow)
33+ : mMainWindow(mainWindow)
3534 , mSystemEvents(systemEvents)
3635{
3736 connect (&mSystemEvents , &SystemEvents::codeTabClosed, this , &TextManager::onTabClosed);
@@ -239,31 +238,6 @@ void TextManager::showInTextEditor(const QFileInfo &fileInfo
239238 }
240239}
241240
242- void TextManager::refreshRecentFilesList (const QString &fileName) {
243- auto previousString = SettingsManager::value (" recentFiles" ).toString ();
244- auto previousList = previousString.split (" ;" , QString::SkipEmptyParts);
245- previousList.removeOne (fileName);
246-
247- if (!previousList.isEmpty () && (previousList.size () == mRecentFilesLimit )) {
248- previousList.removeLast ();
249- }
250-
251- previousString.clear ();
252- if (mRecentFilesLimit > 0 ) {
253- previousList.push_front (fileName);
254- QStringListIterator iterator (previousList);
255- while (iterator.hasNext ()) {
256- const auto recentFileName = iterator.next ();
257- const QFileInfo fileInfo (recentFileName);
258- if (fileInfo.exists () && fileInfo.isFile ()) {
259- previousString = previousString + recentFileName + " ;" ;
260- }
261- }
262- }
263-
264- SettingsManager::setValue (" recentFiles" , previousString);
265- }
266-
267241void TextManager::showInTextEditor (const QFileInfo &fileInfo, const text::LanguageInfo &language)
268242{
269243 Q_ASSERT (!fileInfo.completeBaseName ().isEmpty ());
@@ -280,7 +254,7 @@ void TextManager::showInTextEditor(const QFileInfo &fileInfo, const text::Langua
280254 return ;
281255 }
282256
283- refreshRecentFilesList (filePath);
257+ emit needRefreshRecentFileList (filePath);
284258 area->show ();
285259
286260 // Need to bind diagram and code file only if code is just generated
@@ -331,7 +305,7 @@ bool TextManager::saveText(bool saveAs)
331305 emit mSystemEvents .codePathChanged (diagram, path (area), fileInfo);
332306 }
333307
334- refreshRecentFilesList (fileInfo.absoluteFilePath ());
308+ emit needRefreshRecentFileList (fileInfo.absoluteFilePath ());
335309 }
336310
337311 return true ;
0 commit comments