class SecondPage

Attributes

baseIncludeLineEdit[RW]
commentCheckBox[RW]
includeBaseCheckBox[RW]
macroNameLineEdit[RW]
protectCheckBox[RW]

Public Class Methods

new(wizard) click to toggle source
Calls superclass method
# File examples/dialogs/simplewizard/classwizard.rb, line 272
def initialize(wizard)
    super(wizard)
    @topLabel = Qt::Label.new(tr("<center><b>Code style options</b></center>"))

    @commentCheckBox = Qt::CheckBox.new(tr("&Start generated files with a comment"))
    @commentCheckBox.checked = true
    setFocusProxy(@commentCheckBox)

    @protectCheckBox = Qt::CheckBox.new(tr("&Protect header file against multiple " +
                                       "inclusions"))
    @protectCheckBox.checked = true

    @macroNameLabel = Qt::Label.new(tr("&Macro name:"))
    @macroNameLineEdit = Qt::LineEdit.new
    @macroNameLabel.buddy = @macroNameLineEdit

    @includeBaseCheckBox = Qt::CheckBox.new(tr("&Include base class definition"))
    @baseIncludeLabel = Qt::Label.new(tr("Base class include:"))
    @baseIncludeLineEdit = Qt::LineEdit.new
    @baseIncludeLabel.buddy = @baseIncludeLineEdit

    className = wizard.firstPage.classNameLineEdit.text()
    @macroNameLineEdit.text = className.upcase + "_H"

    baseClass = wizard.firstPage.baseClassLineEdit.text()
    if baseClass.empty?
        @includeBaseCheckBox.enabled = false
        @baseIncludeLabel.enabled = false
        @baseIncludeLineEdit.enabled = false
    else
        @includeBaseCheckBox.checked = true
        if Regexp.new("Q[A-Z].*").match(baseClass)
            @baseIncludeLineEdit.text = "<" + baseClass + ">"
        else
            @baseIncludeLineEdit.text = '"' + baseClass.downcase + '.h"'
        end
    end

    connect(@protectCheckBox, SIGNAL('toggled(bool)'),
            @macroNameLabel, SLOT('setEnabled(bool)'))
    connect(@protectCheckBox, SIGNAL('toggled(bool)'),
            @macroNameLineEdit, SLOT('setEnabled(bool)'))
    connect(@includeBaseCheckBox, SIGNAL('toggled(bool)'),
            @baseIncludeLabel, SLOT('setEnabled(bool)'))
    connect(@includeBaseCheckBox, SIGNAL('toggled(bool)'),
            @baseIncludeLineEdit, SLOT('setEnabled(bool)'))

    self.layout = Qt::GridLayout.new do |l|
        l.setColumnMinimumWidth(0, 20)
        l.addWidget(@topLabel, 0, 0, 1, 3)
        l.setRowMinimumHeight(1, 10)
        l.addWidget(@commentCheckBox, 2, 0, 1, 3)
        l.addWidget(@protectCheckBox, 3, 0, 1, 3)
        l.addWidget(@macroNameLabel, 4, 1)
        l.addWidget(@macroNameLineEdit, 4, 2)
        l.addWidget(@includeBaseCheckBox, 5, 0, 1, 3)
        l.addWidget(@baseIncludeLabel, 6, 1)
        l.addWidget(@baseIncludeLineEdit, 6, 2)
        l.setRowStretch(7, 1)
    end
end