Class: SpinBoxDelegate

Inherits:
Qt::ItemDelegate
  • Object
show all
Defined in:
ext/ruby/qtruby/examples/itemviews/spinboxdelegate/spinboxdelegate.rb

Overview

** ** Copyright © 2004-2005 Trolltech AS. All rights reserved. ** ** This file is part of the example classes of the Qt Toolkit. ** ** This file may be used under the terms of the GNU General Public ** License version 2.0 as published by the Free Software Foundation ** and appearing in the file LICENSE.GPL included in the packaging of ** this file. Please review the following information to ensure GNU ** General Public Licensing requirements will be met: ** www.trolltech.com/products/qt/opensource.html ** ** If you are unsure which license is appropriate for your use, please ** review the following information: ** www.trolltech.com/products/qt/licensing.html or contact the ** sales department at [email protected]. ** ** This file is provided AS IS with NO WARRANTY OF ANY KIND, INCLUDING THE ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. **

** Translated to QtRuby by Richard Dale

Instance Method Summary collapse

Constructor Details

#initialize(parent = nil) ⇒ SpinBoxDelegate

A delegate that allows the user to change integer values from the model using a spin box widget.



31
32
33
# File 'ext/ruby/qtruby/examples/itemviews/spinboxdelegate/spinboxdelegate.rb', line 31

def initialize(parent = nil)
    super(parent)
end

Instance Method Details

#createEditor(parent, option, index) ⇒ Object



35
36
37
38
39
40
41
42
# File 'ext/ruby/qtruby/examples/itemviews/spinboxdelegate/spinboxdelegate.rb', line 35

def createEditor(parent, option, index)
    editor = Qt::SpinBox.new(parent)
    editor.minimum = 0
    editor.maximum = 100
    editor.installEventFilter(self)

    return editor
end

#setEditorData(editor, index) ⇒ Object



44
45
46
47
48
49
# File 'ext/ruby/qtruby/examples/itemviews/spinboxdelegate/spinboxdelegate.rb', line 44

def setEditorData(editor, index)
    value = index.model().data(index, Qt::DisplayRole).to_i

    @spinBox = editor
    @spinBox.value = value
end

#setModelData(editor, model, index) ⇒ Object



51
52
53
54
55
56
57
# File 'ext/ruby/qtruby/examples/itemviews/spinboxdelegate/spinboxdelegate.rb', line 51

def setModelData(editor, model, index)
    @spinBox = editor
    @spinBox.interpretText
    value = @spinBox.value

    model.setData(index, value)
end

#updateEditorGeometry(editor, option, index) ⇒ Object



59
60
61
# File 'ext/ruby/qtruby/examples/itemviews/spinboxdelegate/spinboxdelegate.rb', line 59

def updateEditorGeometry(editor, option, index)
    editor.geometry = option.rect
end