Source Code (Use browser search to find items of interest.)

Class Index

kcontrol'KLocaleConfigNumber (./kdebase/kcontrol/locale/localenum.h:36)

class KLocaleConfigNumber : public QWidget
{
  Q_OBJECT

public:
  KLocaleConfigNumber( QWidget *parent=0, const char *name=0);
  ~KLocaleConfigNumber( );

  void load();
  void save();
  void defaults();

public slots:
  void reset();
  void reTranslate();

private slots:
  // Numbers
  void slotMonPosSignChanged(const QString &t);
  void slotMonNegSignChanged(const QString &t);
  void slotDecSymChanged(const QString &t);
  void slotThoSepChanged(const QString &t);

signals:
  void translate();
  void resample();

private:
  // Numbers
  QLineEdit *edDecSym;
  QLineEdit *edThoSep;
  QLineEdit *edMonPosSign;
  QLineEdit *edMonNegSign;
};

kcontrol'KLocaleConfigNumber::KLocaleConfigNumber() (./kdebase/kcontrol/locale/localenum.cpp:44)

KLocaleConfigNumber::KLocaleConfigNumber(QWidget *parent, const char*name)
 : QWidget(parent, name)
{
  QGridLayout *tl1 = new QGridLayout(this, 1, 1, 10, 5);
  tl1->setColStretch(2, 1); 

  QLabel *label = new QLabel(this, I18N_NOOP("Decimal symbol"));
  edDecSym = new QLineEdit(this);
  connect( edDecSym, SIGNAL( textChanged(const QString &) ), this, SLOT( slotDecSymChanged(const QString &) ) );
  tl1->addWidget(label, 0, 1);
  tl1->addWidget(edDecSym, 0, 2);

  label = new QLabel(this, I18N_NOOP("Thousands separator"));
  edThoSep = new QLineEdit(this);
  connect( edThoSep, SIGNAL( textChanged(const QString &) ), this, SLOT( slotThoSepChanged(const QString &) ) );
  tl1->addWidget(label, 1, 1);
  tl1->addWidget(edThoSep, 1, 2);

  label = new QLabel(this, I18N_NOOP("Positive sign"));
  edMonPosSign = new QLineEdit(this);
  connect( edMonPosSign, SIGNAL( textChanged(const QString &) ), this, SLOT( slotMonPosSignChanged(const QString &) ) );
  tl1->addWidget(label, 2, 1);
  tl1->addWidget(edMonPosSign, 2, 2);

  label = new QLabel(this, I18N_NOOP("Negative sign"));
  edMonNegSign = new QLineEdit(this);
  connect( edMonNegSign, SIGNAL( textChanged(const QString &) ), this, SLOT( slotMonNegSignChanged(const QString &) ) );
  tl1->addWidget(label, 3, 1);
  tl1->addWidget(edMonNegSign, 3, 2);

  tl1->setRowStretch(4, 1);
}


kcontrol'KLocaleConfigNumber::~KLocaleConfigNumber() (./kdebase/kcontrol/locale/localenum.cpp:77)

KLocaleConfigNumber::~KLocaleConfigNumber()
{
}

/**
 * Load stored configuration.
 */

kcontrol'KLocaleConfigNumber::load() (./kdebase/kcontrol/locale/localenum.cpp:84)

void KLocaleConfigNumber::load()
{
  KConfig *config = KGlobal::config();
  KConfigGroupSaver saver(config, QString::fromLatin1("Locale"));

  KSimpleConfig ent(locate("locale", QString::fromLatin1("l10n/") + locale->number() + QString::fromLatin1("/entry.desktop")), true);
  ent.setGroup(QString::fromLatin1("KCM Locale"));

  // different tmp variables
  QString str;

  // DecimalSymbol
  str = config->readEntry(QString::fromLatin1("DecimalSymbol"));
  if (str.isNull())
    str = ent.readEntry(QString::fromLatin1("DecimalSymbol"), QString::fromLatin1("."));
  locale->setDecimalSymbol(str);

  // ThousandsSeparator
  str = config->readEntry(QString::fromLatin1("ThousandsSeparator"));
  if (str.isNull())
    str = ent.readEntry(QString::fromLatin1("ThousandsSeparator"), QString::fromLatin1(","));
  locale->setThousandsSeparator(str);
 
  // PositiveSign
  str = config->readEntry(QString::fromLatin1("PositiveSign"));
  if (str.isNull())
    str = ent.readEntry(QString::fromLatin1("PositiveSign"));
  locale->setPositiveSign(str);

  // NegativeSign
  str = config->readEntry(QString::fromLatin1("NegativeSign"));
  if (str.isNull())
    str = ent.readEntry(QString::fromLatin1("NegativeSign"), QString::fromLatin1("-"));
  locale->setNegativeSign(str);

  // update the widgets
  edDecSym->setText(locale->decimalSymbol());
  edThoSep->setText(locale->thousandsSeparator());
  edMonPosSign->setText(locale->positiveSign());
  edMonNegSign->setText(locale->negativeSign());
}


kcontrol'KLocaleConfigNumber::save() (./kdebase/kcontrol/locale/localenum.cpp:126)

void KLocaleConfigNumber::save()
{
  KSimpleConfig *c = new KSimpleConfig(QString::fromLatin1("kdeglobals"), false);
  c->setGroup(QString::fromLatin1("Locale"));
  // Write something to the file to make it dirty
  c->writeEntry(QString::fromLatin1("DecimalSymbol"), QString::null);

  c->deleteEntry(QString::fromLatin1("DecimalSymbol"), false);
  c->deleteEntry(QString::fromLatin1("ThousandsSeparator"), false);
  delete c;

  KConfigBase *config = new KConfig;
  config->setGroup(QString::fromLatin1("Locale"));

  KSimpleConfig ent(locate("locale", QString::fromLatin1("l10n/") + locale->number() + QString::fromLatin1("/entry.desktop")), true);
  ent.setGroup(QString::fromLatin1("KCM Locale"));

  QString str;

  str = ent.readEntry(QString::fromLatin1("DecimalSymbol"), QString::fromLatin1("."));
  str = config->readEntry(QString::fromLatin1("DecimalSymbol"), str);
  if (str != locale->decimalSymbol())
    config->writeEntry(QString::fromLatin1("DecimalSymbol"), locale->decimalSymbol(), true, true);

  str = ent.readEntry(QString::fromLatin1("ThousandsSeparator"), QString::fromLatin1(","));
  str = config->readEntry(QString::fromLatin1("ThousandsSeparator"), str);
  if (str != locale->thousandsSeparator())
    config->writeEntry(QString::fromLatin1("ThousandsSeparator"), locale->thousandsSeparator(), true, true);

  delete config;
}


kcontrol'KLocaleConfigNumber::defaults() (./kdebase/kcontrol/locale/localenum.cpp:158)

void KLocaleConfigNumber::defaults()
{
  reset();
}


kcontrol'KLocaleConfigNumber::slotDecSymChanged() (./kdebase/kcontrol/locale/localenum.cpp:163)

void KLocaleConfigNumber::slotDecSymChanged(const QString &t)
{
  locale->setDecimalSymbol(t);
  emit resample();
}


kcontrol'KLocaleConfigNumber::slotThoSepChanged() (./kdebase/kcontrol/locale/localenum.cpp:169)

void KLocaleConfigNumber::slotThoSepChanged(const QString &t)
{
  locale->setThousandsSeparator(t);
  emit resample();
}


kcontrol'KLocaleConfigNumber::slotMonPosSignChanged() (./kdebase/kcontrol/locale/localenum.cpp:175)

void KLocaleConfigNumber::slotMonPosSignChanged(const QString &t)
{
  locale->setPositiveSign(t);
  emit resample();
}


kcontrol'KLocaleConfigNumber::slotMonNegSignChanged() (./kdebase/kcontrol/locale/localenum.cpp:181)

void KLocaleConfigNumber::slotMonNegSignChanged(const QString &t)
{
  locale->setNegativeSign(t);
  emit resample();
}


kcontrol'KLocaleConfigNumber::reset() (./kdebase/kcontrol/locale/localenum.cpp:187)

void KLocaleConfigNumber::reset()
{
  KSimpleConfig ent(locate("locale", QString::fromLatin1("l10n/") + locale->number() + QString::fromLatin1("/entry.desktop")), true);
  ent.setGroup(QString::fromLatin1("KCM Locale"));

  QString str;

  locale->setDecimalSymbol(ent.readEntry(QString::fromLatin1("DecimalSymbol"), QString::fromLatin1(".")));
  locale->setThousandsSeparator(ent.readEntry(QString::fromLatin1("ThousandsSeparator"), QString::fromLatin1(",")));
  locale->setPositiveSign(ent.readEntry(QString::fromLatin1("PositiveSign")));
  locale->setNegativeSign(ent.readEntry(QString::fromLatin1("NegativeSign"), QString::fromLatin1("-")));

  edDecSym->setText(locale->decimalSymbol());
  edThoSep->setText(locale->thousandsSeparator());
  edMonPosSign->setText(locale->positiveSign());
  edMonNegSign->setText(locale->negativeSign());
}


kcontrol'KLocaleConfigNumber::reTranslate() (./kdebase/kcontrol/locale/localenum.cpp:205)

void KLocaleConfigNumber::reTranslate()
{
}