On Wed, Oct 18, 2017 at 10:18:42AM +0200, Jean-Marc Lasgouttes wrote:
> Le 18/10/2017 à 10:13, Enrico Forestieri a écrit :
> > > It should be rather safe:
> > > http://doc.qt.io/qt-4.8/qsettings.html#accessing-settings-from-multiple-threads-or-processes-simultaneously
> > 
> > This would be the attached patch. Now I don't experience any delay on quit.
> 
> Thanks for doing it Enrico. Just a question: why is it necessary to #include
> <QSettings> instead of just forward-declaring the class?

The compiler doesn't like it:

../../../../src/frontends/qt4/GuiToolbar.cpp: In member function ‘void 
lyx::frontend::GuiToolbar::saveSession(lyx::QSettings&) const’:
../../../../src/frontends/qt4/GuiToolbar.cpp:356:10: error: invalid use of 
incomplete type ‘class lyx::QSettings’
  settings.setValue(sessionKey() + "/visibility", visibility_);
          ^
In file included from ../../../../src/frontends/qt4/GuiToolbar.cpp:18:0:
../../../../src/frontends/qt4/GuiToolbar.h:27:7: note: forward declaration of 
‘class lyx::QSettings’
 class QSettings;
       ^~~~~~~~~
../../../../src/frontends/qt4/GuiToolbar.cpp:357:10: error: invalid use of 
incomplete type ‘class lyx::QSettings’
  settings.setValue(sessionKey() + "/movability", isMovable());
          ^
In file included from ../../../../src/frontends/qt4/GuiToolbar.cpp:18:0:
../../../../src/frontends/qt4/GuiToolbar.h:27:7: note: forward declaration of 
‘class lyx::QSettings’
 class QSettings;
       ^~~~~~~~~
../../../../src/frontends/qt4/GuiToolbar.cpp: In member function ‘void 
lyx::frontend::GuiToolbar::restoreSession()’:
../../../../src/frontends/qt4/GuiToolbar.cpp:363:12: error: aggregate 
‘lyx::QSettings settings’ has incomplete type and cannot be defined
  QSettings settings;
            ^~~~~~~~

-- 
Enrico

Reply via email to