summaryrefslogtreecommitdiff
path: root/src/gui/setupitem.cpp
diff options
context:
space:
mode:
authorAndrei Karas <akaras@inbox.ru>2011-08-15 17:31:22 +0300
committerAndrei Karas <akaras@inbox.ru>2011-08-15 17:31:22 +0300
commitdec741233dc709950fe542bcd4f69b254b33eb80 (patch)
tree12d896c748b5af6ac6fd888c3031e680270339d4 /src/gui/setupitem.cpp
parentc604237abc5fd908c75fdd680143dfa4c76673d6 (diff)
downloadplus-dec741233dc709950fe542bcd4f69b254b33eb80.tar.gz
plus-dec741233dc709950fe542bcd4f69b254b33eb80.tar.bz2
plus-dec741233dc709950fe542bcd4f69b254b33eb80.tar.xz
plus-dec741233dc709950fe542bcd4f69b254b33eb80.zip
Move setupitem class to widgets directory.
Diffstat (limited to 'src/gui/setupitem.cpp')
-rw-r--r--src/gui/setupitem.cpp507
1 files changed, 0 insertions, 507 deletions
diff --git a/src/gui/setupitem.cpp b/src/gui/setupitem.cpp
deleted file mode 100644
index defdb4005..000000000
--- a/src/gui/setupitem.cpp
+++ /dev/null
@@ -1,507 +0,0 @@
-/*
- * The ManaPlus Client
- * Copyright (C) 2011 The ManaPlus Developers
- *
- * This file is part of The ManaPlus Client.
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- */
-
-#include "gui/setupitem.h"
-
-#include "configuration.h"
-#include "main.h"
-#include "logger.h"
-
-#include "gui/editdialog.h"
-
-#include "gui/widgets/button.h"
-#include "gui/widgets/checkbox.h"
-#include "gui/widgets/horizontcontainer.h"
-#include "gui/widgets/inttextfield.h"
-#include "gui/widgets/label.h"
-#include "gui/widgets/layouthelper.h"
-#include "gui/widgets/tabbedarea.h"
-#include "gui/widgets/textfield.h"
-#include "gui/widgets/vertcontainer.h"
-
-#include "utils/dtor.h"
-#include "utils/gettext.h"
-
-
-SetupItem::SetupItem(std::string text, std::string description,
- std::string keyName, SetupTabScroll *parent,
- std::string eventName, bool mainConfig) :
- mText(text),
- mDescription(description),
- mKeyName(keyName),
- mParent(parent),
- mEventName(eventName),
- mMainConfig(mainConfig),
- mUseDefault(false),
- mValue(""),
- mDefault(""),
- mWidget(0),
- mValueType(VBOOL)
-{
-}
-
-SetupItem::SetupItem(std::string text, std::string description,
- std::string keyName, SetupTabScroll *parent,
- std::string eventName, std::string def, bool mainConfig) :
- mText(text),
- mDescription(description),
- mKeyName(keyName),
- mParent(parent),
- mEventName(eventName),
- mMainConfig(mainConfig),
- mUseDefault(true),
- mValue(""),
- mDefault(def),
- mWidget(0),
- mValueType(VBOOL)
-{
-}
-
-SetupItem::~SetupItem()
-{
-
-}
-
-Configuration *SetupItem::getConfig()
-{
- if (mMainConfig)
- return &config;
- else
- return &serverConfig;
-}
-
-void SetupItem::load()
-{
- Configuration *cfg = getConfig();
- if (mUseDefault)
- {
- mValue = cfg->getValue(mKeyName, mDefault);
- }
- else
- {
- switch (mValueType)
- {
- case VBOOL:
- if (cfg->getBoolValue(mKeyName))
- mValue = "1";
- else
- mValue = "0";
- break;
- case VSTR:
- default:
- mValue = cfg->getStringValue(mKeyName);
- break;
- case VINT:
- mValue = toString(cfg->getIntValue(mKeyName));
- break;
- case VNONE:
- break;
- }
- }
-}
-
-void SetupItem::save()
-{
- Configuration *cfg = getConfig();
- cfg->setValue(mKeyName, mValue);
-}
-
-std::string SetupItem::getActionEventId()
-{
- if (!mWidget)
- return "";
-
- return mWidget->getActionEventId();
-}
-
-void SetupItem::action(const gcn::ActionEvent &event)
-{
- if (!mWidget)
- return;
-
- if (event.getId() == mWidget->getActionEventId())
- action();
-}
-
-void SetupItem::action()
-{
- fromWidget();
-}
-
-void SetupItem::apply(std::string eventName A_UNUSED)
-{
- save();
-}
-
-void SetupItem::cancel(std::string eventName A_UNUSED)
-{
- load();
- toWidget();
-}
-
-void SetupItem::externalUpdated(std::string eventName A_UNUSED)
-{
- load();
- toWidget();
-}
-
-SetupItemCheckBox::SetupItemCheckBox(std::string text, std::string description,
- std::string keyName,
- SetupTabScroll *parent,
- std::string eventName, bool mainConfig) :
- SetupItem(text, description, keyName, parent, eventName, mainConfig)
-{
- createControls();
-}
-
-SetupItemCheckBox::SetupItemCheckBox(std::string text, std::string description,
- std::string keyName,
- SetupTabScroll *parent,
- std::string eventName, std::string def,
- bool mainConfig) :
- SetupItem(text, description, keyName, parent, eventName, def, mainConfig)
-{
- createControls();
-}
-
-SetupItemCheckBox::~SetupItemCheckBox()
-{
- mWidget = 0;
-}
-
-void SetupItemCheckBox::createControls()
-{
- load();
- mCheckBox = new CheckBox(mText, mValue != "0", mParent, mEventName);
- mWidget = mCheckBox;
- mParent->getContainer()->add(mWidget);
- mParent->addControl(this);
- mParent->addActionListener(this);
- mWidget->addActionListener(this);
-}
-
-void SetupItemCheckBox::fromWidget()
-{
- if (!mCheckBox)
- return;
-
- if (mCheckBox->isSelected())
- mValue = "1";
- else
- mValue = "0";
-}
-
-void SetupItemCheckBox::toWidget()
-{
- if (!mCheckBox)
- return;
-
- mCheckBox->setSelected(mValue != "0");
-}
-
-
-SetupItemTextField::SetupItemTextField(std::string text,
- std::string description,
- std::string keyName,
- SetupTabScroll *parent,
- std::string eventName,
- bool mainConfig) :
- SetupItem(text, description, keyName, parent, eventName, mainConfig),
- mHorizont(0),
- mLabel(0),
- mTextField(0),
- mButton(0),
- mEditDialog(0)
-{
- mValueType = VSTR;
- createControls();
-}
-
-SetupItemTextField::SetupItemTextField(std::string text,
- std::string description,
- std::string keyName,
- SetupTabScroll *parent,
- std::string eventName, std::string def,
- bool mainConfig) :
- SetupItem(text, description, keyName, parent, eventName, def, mainConfig),
- mHorizont(0),
- mLabel(0),
- mTextField(0),
- mButton(0),
- mEditDialog(0)
-{
- mValueType = VSTR;
- createControls();
-}
-
-SetupItemTextField::~SetupItemTextField()
-{
- mHorizont = 0;
- mWidget = 0;
- mTextField = 0;
- mLabel = 0;
- mButton = 0;
-}
-
-void SetupItemTextField::createControls()
-{
- load();
- mHorizont = new HorizontContainer(32, 2);
-
- mLabel = new Label(mText);
- mTextField = new TextField(mValue, true, mParent, mEventName);
- mButton = new Button(_("Edit"), mEventName + "_EDIT", mParent);
- mWidget = mTextField;
- mTextField->setWidth(200);
- mHorizont->add(mLabel);
- mHorizont->add(mTextField);
- mHorizont->add(mButton);
-
- mParent->getContainer()->add(mHorizont, true, 4);
- mParent->addControl(this);
- mParent->addControl(this, mEventName + "_EDIT");
- mParent->addControl(this, mEventName + "_EDIT_OK");
- mParent->addActionListener(this);
- mWidget->addActionListener(this);
- mButton->addActionListener(this);
-}
-
-void SetupItemTextField::fromWidget()
-{
- if (!mTextField)
- return;
-
- mValue = mTextField->getText();
-}
-
-void SetupItemTextField::toWidget()
-{
- if (!mTextField)
- return;
-
- mTextField->setText(mValue);
-}
-
-void SetupItemTextField::action(const gcn::ActionEvent &event)
-{
- if (!mTextField)
- return;
-
- if (event.getId() == mWidget->getActionEventId())
- {
- fromWidget();
- }
- else if (event.getId() == mEventName + "_EDIT")
- {
- mEditDialog = new EditDialog(mText, mTextField->getText(),
- mEventName + "_EDIT_OK");
- mEditDialog->addActionListener(this);
- }
- else if (event.getId() == mEventName + "_EDIT_OK")
- {
- mTextField->setText(mEditDialog->getMsg());
- mEditDialog = 0;
- }
-}
-
-void SetupItemTextField::apply(std::string eventName)
-{
- if (eventName != mEventName)
- return;
-
- fromWidget();
- save();
-}
-
-
-SetupItemIntTextField::SetupItemIntTextField(std::string text,
- std::string description,
- std::string keyName,
- SetupTabScroll *parent,
- std::string eventName,
- int min, int max,
- bool mainConfig) :
- SetupItem(text, description, keyName, parent, eventName, mainConfig),
- mHorizont(0),
- mLabel(0),
- mTextField(0),
- mButton(0),
- mMin(min),
- mMax(max),
- mEditDialog(0)
-{
- mValueType = VSTR;
- createControls();
-}
-
-SetupItemIntTextField::SetupItemIntTextField(std::string text,
- std::string description,
- std::string keyName,
- SetupTabScroll *parent,
- std::string eventName,
- int min, int max,
- std::string def,
- bool mainConfig) :
- SetupItem(text, description, keyName, parent, eventName, def, mainConfig),
- mHorizont(0),
- mLabel(0),
- mTextField(0),
- mButton(0),
- mMin(min),
- mMax(max),
- mEditDialog(0)
-{
- mValueType = VSTR;
- createControls();
-}
-
-SetupItemIntTextField::~SetupItemIntTextField()
-{
- mHorizont = 0;
- mWidget = 0;
- mTextField = 0;
- mLabel = 0;
- mButton = 0;
-}
-
-void SetupItemIntTextField::createControls()
-{
- load();
- mHorizont = new HorizontContainer(32, 2);
-
- mLabel = new Label(mText);
- mTextField = new IntTextField(atoi(mValue.c_str()), mMin, mMax, true, 30);
- mTextField->setActionEventId(mEventName);
- mTextField->addActionListener(mParent);
-
- mButton = new Button(_("Edit"), mEventName + "_EDIT", mParent);
- mWidget = mTextField;
- mTextField->setWidth(50);
- mHorizont->add(mLabel);
- mHorizont->add(mTextField);
- mHorizont->add(mButton);
-
- mParent->getContainer()->add(mHorizont, true, 4);
- mParent->addControl(this);
- mParent->addControl(this, mEventName + "_EDIT");
- mParent->addControl(this, mEventName + "_EDIT_OK");
- mParent->addActionListener(this);
- mWidget->addActionListener(this);
- mButton->addActionListener(this);
-}
-
-void SetupItemIntTextField::fromWidget()
-{
- if (!mTextField)
- return;
-
- mValue = mTextField->getText();
-}
-
-void SetupItemIntTextField::toWidget()
-{
- if (!mTextField)
- return;
-
- mTextField->setText(mValue);
-}
-
-void SetupItemIntTextField::action(const gcn::ActionEvent &event)
-{
- if (!mTextField)
- return;
-
- if (event.getId() == mWidget->getActionEventId())
- {
- fromWidget();
- }
- else if (event.getId() == mEventName + "_EDIT")
- {
- mEditDialog = new EditDialog(mText, mTextField->getText(),
- mEventName + "_EDIT_OK");
- mEditDialog->addActionListener(this);
- }
- else if (event.getId() == mEventName + "_EDIT_OK")
- {
- mTextField->setValue(atoi(mEditDialog->getMsg().c_str()));
- mEditDialog = 0;
- }
-}
-
-void SetupItemIntTextField::apply(std::string eventName)
-{
- if (eventName != mEventName)
- return;
-
- fromWidget();
- save();
-}
-
-SetupItemLabel::SetupItemLabel(std::string text, std::string description,
- SetupTabScroll *parent, bool separator) :
- SetupItem(text, description, "", parent, "", "", true),
- mLabel(0),
- mIsSeparator(separator)
-{
- mValueType = VNONE;
- createControls();
-}
-
-SetupItemLabel::~SetupItemLabel()
-{
- mWidget = 0;
- mLabel = 0;
-}
-
-void SetupItemLabel::createControls()
-{
- if (mIsSeparator)
- {
- const std::string str = " \342\200\225\342\200\225\342\200\225"
- "\342\200\225\342\200\225 ";
- mLabel = new Label(str + mText + str);
- }
- else
- {
- mLabel = new Label(mText);
- }
-
- mWidget = mLabel;
- mParent->getContainer()->add(mWidget);
- mParent->addControl(this);
- mParent->addActionListener(this);
- mWidget->addActionListener(this);
-}
-
-void SetupItemLabel::fromWidget()
-{
-}
-
-void SetupItemLabel::toWidget()
-{
-}
-
-void SetupItemLabel::action(const gcn::ActionEvent &event A_UNUSED)
-{
-}
-
-void SetupItemLabel::apply(std::string eventName A_UNUSED)
-{
-}