rem: SIGNAL( changed() ) );
add: SLOT( slotWidChanged() ) );
context:     KOPrefsDialogTime( QWidget *parent, const char *name )      : KPrefsModule( KOPrefs::instance(), parent, name )    {      QBoxLayout *topTopLayout = new QVBoxLayout( this );          QWidget *topFrame = new QWidget( this );      topTopLayout->addWidget( topFrame );            QGridLayout *topLayout = new QGridLayout(topFrame,5,2);      topLayout->setSpacing( KDialog::spacingHint() );      QHBox *timeZoneBox = new QHBox( topFrame );      topLayout->addMultiCellWidget( timeZoneBox, 0, 0, 0, 1 );      new QLabel( i18n("Timezone:"), timeZoneBox );      mTimeZoneCombo = new QComboBox( timeZoneBox );      connect( mTimeZoneCombo, SIGNAL( activated( int ) ),               SIGNAL( changed() ) );      FILE *f;      char tempstring[101] = "Unknown";      QString sCurrentlySet(i18n("Unknown"));      int nCurrentlySet = 0;      QStringList list;      // read the currently set time zone    #if defined(USE_SOLARIS)       // MARCO        char buf[MAXPATHLEN];        snprintf(buf, MAXPATHLEN,                "/bin/fgrep 'TZ=' %s | /bin/head -n 1 | /bin/cut -b 4-",                INITFILE);        if (f = popen(buf, "r"))          {           if (fgets(buf, MAXPATHLEN - 1, f) != NULL)             {               buf[strlen(buf) - 1] = '\0';               sCurrentlySet = QString(buf);             }           pclose(f);          }    #else      if((f = fopen("/etc/timezone", "r")) != NULL) {        // get the currently set timezone        fgets(tempstring, 100, f);        tempstring[strlen(tempstring) - 1] = '\0';        sCurrentlySet = QString(tempstring);        fclose(f);      }    #endif // !USE_SOLARIS      mTimeZoneCombo->insertItem(i18n("[No selection]"));      // Read all system time zones    #if defined(USE_SOLARIS)       // MARCO        snprintf(buf, MAXPATHLEN,               "/bin/find %s \\( -name src -prune \\) -o -type f -print | /bin/cut -b %d-",               ZONEINFODIR, strlen(ZONEINFODIR) + 2);        if (f = popen(buf, "r"))          {           while(fgets(buf, MAXPATHLEN - 1, f) != NULL)             {               buf[strlen(buf) - 1] = '\0';               list.append(buf);             }           pclose(f);          }    #else      f = popen("grep -e  ^[^#] /usr/share/zoneinfo/zone.tab | cut -f 3","r");      if (!f) return;      while(fgets(tempstring, 100, f) != NULL) {        tempstring[strlen(tempstring)-1] = '\0';        list.append(i18n(tempstring));        tzonenames << tempstring;      }      pclose(f);    #endif // !USE_SOLARIS      list.sort();      mTimeZoneCombo->insertStringList(list);        // find the currently set time zone and select it      for (int i = 0; i < mTimeZoneCombo->count(); i++)        {          if (mTimeZoneCombo->text(i) == sCurrentlySet)            {             nCurrentlySet = i;             break;            }        }      mTimeZoneCombo->setCurrentItem(nCurrentlySet);      topLayout->addWidget(new QLabel(i18n("Default appointment time:"),                           topFrame),1,0);      mStartTimeSpin = new QSpinBox(0,23,1,topFrame);      connect( mStartTimeSpin, SIGNAL( valueChanged( int ) ),               SIGNAL( changed() ) );      mStartTimeSpin->setSuffix(":00");      topLayout->addWidget(mStartTimeSpin,1,1);      topLayout->addWidget(new QLabel(i18n("Default duration of new appointment:"),                           topFrame),2,0);      mDefaultDurationSpin = new QSpinBox(0,23,1,topFrame);      connect( mDefaultDurationSpin, SIGNAL( valueChanged( int ) ),               SIGNAL( changed() ) );      mDefaultDurationSpin->setSuffix(":00");      topLayout->addWidget(mDefaultDurationSpin,2,1);      QStringList alarmList;      alarmList << i18n("1 minute") << i18n("5 minutes") << i18n("10 minutes")                << i18n("15 minutes") << i18n("30 minutes");      topLayout->addWidget(new QLabel(i18n("Default alarm time:"),topFrame),                           3,0);      mAlarmTimeCombo = new QComboBox(topFrame);      connect( mAlarmTimeCombo, SIGNAL( activated( int ) ),               SIGNAL( changed() ) );      mAlarmTimeCombo->insertStringList(alarmList);      topLayout->addWidget(mAlarmTimeCombo,3,1);      QGroupBox *workingHoursGroup = new QGroupBox(1,Horizontal,                                                   i18n("Working Hours"),                                                   topFrame);      topLayout->addMultiCellWidget(workingHoursGroup,4,4,0,1);      QHBox *workStartBox = new QHBox(workingHoursGroup);      addWidTime(i18n("Daily starting hour:"),                 KOPrefs::instance()->mWorkingHoursStart,workStartBox);      QHBox *workEndBox = new QHBox(workingHoursGroup);      addWidTime(i18n("Daily ending hour:"),                 KOPrefs::instance()->mWorkingHoursEnd,workEndBox);      addWidBool(i18n("Exclude holidays"),                 KOPrefs::instance()->mExcludeHolidays,workingHoursGroup);      addWidBool(i18n("Exclude Saturdays"),                 KOPrefs::instance()->mExcludeSaturdays,workingHoursGroup);      KPrefsWidBool *marcusBainsShowSeconds = addWidBool(i18n("Show seconds on Marcus Bains line"),	         KOPrefs::instance()->mMarcusBainsShowSeconds,	         topFrame);      topLayout->addWidget(marcusBainsShowSeconds->checkBox(),5,0);      topLayout->setRowStretch(6,1);          load();    }