• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • kdesdk API Reference
  • KDE Home
  • Contact Us
 

okteta

  • sources
  • kde-4.12
  • kdesdk
  • okteta
  • kasten
  • controllers
  • view
  • structures
  • datatypes
  • primitive
  • bitfield
boolbitfielddatainformation.cpp
Go to the documentation of this file.
1 /*
2  * This file is part of the Okteta Kasten Framework, made within the KDE community.
3  *
4  * Copyright 2010 Alex Richardson <alex.richardson@gmx.de>
5  *
6  * This library is free software; you can redistribute it and/or
7  * modify it under the terms of the GNU Lesser General Public
8  * License as published by the Free Software Foundation; either
9  * version 2.1 of the License, or (at your option) version 3, or any
10  * later version accepted by the membership of KDE e.V. (or its
11  * successor approved by the membership of KDE e.V.), which shall
12  * act as a proxy defined in Section 6 of version 3 of the license.
13  *
14  * This library is distributed in the hope that it will be useful,
15  * but WITHOUT ANY WARRANTY; without even the implied warranty of
16  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17  * Lesser General Public License for more details.
18  *
19  * You should have received a copy of the GNU Lesser General Public
20  * License along with this library. If not, see <http://www.gnu.org/licenses/>.
21  */
22 #include "boolbitfielddatainformation.h"
23 
24 #include <KComboBox>
25 #include <QScriptValue>
26 
27 #include "../booldatainformation.h"
28 #include "../../../../poddecoder/typeeditors/uintspinbox.h"
29 
30 
31 QString BoolBitfieldDataInformation::valueStringImpl() const
32 {
33  Q_ASSERT(mWasAbleToRead);
34  return BoolDataInformationMethods<quint64>::staticValueString(mValue.value<quint64>());
35 }
36 
37 QWidget* BoolBitfieldDataInformation::createEditWidget(QWidget* parent) const
38 {
39  if (width() == 1)
40  {
41  //just a simple combobox
42  KComboBox* box = new KComboBox(false, parent);
43  box->addItem(i18nc("boolean value", "false"));
44  box->addItem(i18nc("boolean value", "true"));
45  box->setCurrentIndex(mValue.value<quint64>() ? 1 : 0);
46  return box;
47  }
48  UIntSpinBox* ret = new UIntSpinBox(parent);
49  ret->setBase(Kasten2::StructViewPreferences::unsignedDisplayBase());
50  ret->setMaximum(mask());
51  return ret;
52 }
53 
54 QVariant BoolBitfieldDataInformation::dataFromWidget(const QWidget* w) const
55 {
56  if (width() == 1)
57  {
58  const KComboBox* box = dynamic_cast<const KComboBox*>(w);
59  Q_CHECK_PTR(box);
60  return box->currentIndex();
61  }
62  const UIntSpinBox* spin = dynamic_cast<const UIntSpinBox*>(w);
63  Q_CHECK_PTR(spin);
64  if (spin)
65  return spin->value();
66  else
67  return QVariant();
68 }
69 
70 void BoolBitfieldDataInformation::setWidgetData(QWidget* w) const
71 {
72  UIntSpinBox* spin = dynamic_cast<UIntSpinBox*> (w);
73  if (spin)
74  spin->setValue(mValue.value<quint64>());
75 }
76 
77 QScriptValue BoolBitfieldDataInformation::valueAsQScriptValue() const
78 {
79  return (mValue.value<quint64>()) != 0;
80 }
81 
UIntSpinBox
Definition: uintspinbox.h:32
AbstractBitfieldDataInformation::width
BitCount32 width() const
Definition: abstractbitfielddatainformation.h:86
BoolBitfieldDataInformation::dataFromWidget
virtual QVariant dataFromWidget(const QWidget *w) const
get the needed data from the widget
Definition: boolbitfielddatainformation.cpp:54
UIntSpinBox::value
quint64 value() const
Definition: uintspinbox.h:78
QWidget
UIntSpinBox::setMaximum
void setMaximum(quint64 max)
Definition: uintspinbox.h:81
BoolDataInformationMethods::staticValueString
static QString staticValueString(T val, int base=Kasten2::StructViewPreferences::unsignedDisplayBase())
Definition: booldatainformation.cpp:27
DataInformation::mWasAbleToRead
bool mWasAbleToRead
Definition: datainformation.h:243
UIntSpinBox::setBase
void setBase(int base)
Definition: uintspinbox.h:109
BoolBitfieldDataInformation::setWidgetData
virtual void setWidgetData(QWidget *w) const
initialize the delegate widget with the correct data
Definition: boolbitfielddatainformation.cpp:70
BoolBitfieldDataInformation::valueAsQScriptValue
virtual QScriptValue valueAsQScriptValue() const
Definition: boolbitfielddatainformation.cpp:77
boolbitfielddatainformation.h
BoolBitfieldDataInformation::createEditWidget
virtual QWidget * createEditWidget(QWidget *parent) const
create a QWidget for the QItemDelegate
Definition: boolbitfielddatainformation.cpp:37
AllPrimitiveTypes::value
T value() const
AbstractBitfieldDataInformation::mask
quint64 mask() const
Definition: abstractbitfielddatainformation.h:67
UIntSpinBox::setValue
void setValue(quint64 value)
Definition: uintspinbox.h:96
AbstractBitfieldDataInformation::mValue
AllPrimitiveTypes mValue
Definition: abstractbitfielddatainformation.h:55
Kasten2::StructViewPreferences::unsignedDisplayBase
static int unsignedDisplayBase()
Get UnsignedDisplayBase.
Definition: structviewpreferences.h:34
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 23:04:07 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

okteta

Skip menu "okteta"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

kdesdk API Reference

Skip menu "kdesdk API Reference"
  • kapptemplate
  • kcachegrind
  • kompare
  • lokalize
  • okteta
  • umbrello
  •   umbrello

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal