<html>
  <head>
    <meta content="text/html; charset=ISO-8859-1"
      http-equiv="Content-Type">
  </head>
  <body text="#000000" bgcolor="#FFFFFF">
    <div class="moz-cite-prefix">On 12/30/2013 03:17 PM, David Faure
      wrote:<br>
    </div>
    <blockquote cite="mid:2401883.27KL00YeVa@asterix" type="cite">
      <pre wrap="">On Monday 30 December 2013 14:52:51 Mark Gaiser wrote:
</pre>
      <blockquote type="cite">
        <blockquote type="cite">
          <pre wrap="">Could something similar be done in kstyle constructor's ?
(though I have no clue about which signal things should connect to).
</pre>
        </blockquote>
      </blockquote>
      <pre wrap="">
We just have to decide on a dbus signal name (see further down for examples).

Who emits it? Some kcontrol module?
I'm lacking some overview.
How was this done in kde4? With KGlobalSettings?
 
</pre>
      <blockquote type="cite">
        <blockquote type="cite">
          <pre wrap="">And also, I don't understand why this is necessary at all ? Should'nt the
reparseConfiguration be done 'upstream' (ksharedConfig) automatically on
e.g. file change ?
</pre>
        </blockquote>
      </blockquote>
      <pre wrap="">
There's no notification of changes at the KConfig level, nor file-watching.
Both would be very expensive, for things that are in many case of no interest 
to other apps. Or when they are, we'd have the problem that the reparsing 
happens too often (if the notification is done via some IPC, not file-
watching), e.g. when an app changes 10 settings, it wants to only signal other 
processes after that, not for every setting.

The hypothetical switch to DConf would come with notifications, but as long as 
we are using the current KConfig technology, processes need to notify each 
other using DBus when configuration is changed. Konqueror processes do that 
among themselves, many kcontrol modules (systemsettings, whatever it's called 
this decade) use dbus to notify of changes. KGlobalSettings encapsulated some
of that - also using a DBus signal internally.

We already ported some things away from KGlobalSettings by introducing a 
specific DBus signal - for instance the one in KIconLoader or in KToolBar.
See 8b293344e222ef73592ccb633a981083d40a1c1c or 
1da00747ff983e0147b774015ebe66569e59a574 in kdelibs
(or in kiconthemes and kxmlgui, respectively, after grafting).

</pre>
    </blockquote>
    Hi David,<br>
    Thanks for the explanation.<br>
    Indeed oxygen (@KDE4) was using:
    <meta name="qrichtext" content="1">
    <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
      margin-right:0px; -qt-block-indent:0; text-indent:0px;
      -qt-user-state:0;"><!--StartFragment-->connect(
      KGlobalSettings::self(), SIGNAL(kdisplayPaletteChanged()), this,
      SLOT(globalPaletteChanged()) );<br>
    </p>
    <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
      margin-right:0px; -qt-block-indent:0; text-indent:0px;
      -qt-user-state:0;">In fact when porting for KF5 I just commented
      the code.<br>
    </p>
    <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
      margin-right:0px; -qt-block-indent:0; text-indent:0px;
      -qt-user-state:0;"><br>
    </p>
    <p style=" margin-top:0px; margin-bottom:0px; margin-left:0px;
      margin-right:0px; -qt-block-indent:0; text-indent:0px;
      -qt-user-state:0;">Hugo<br>
      <!--EndFragment--></p>
    <meta http-equiv="Content-Type" content="text/html;
      charset=ISO-8859-1">
    <style type="text/css">
p, li { white-space: pre-wrap; }
</style>
  </body>
</html>