class HFormField
Public Class Methods
new(moduleName, record, odb, oid, dialogLevel)
click to toggle source
# File lib/hwidgets/hformfield.rb, line 3 def initialize(moduleName, record, odb, oid, dialogLevel) @formField = nil @odb = odb @moduleName = moduleName @modelName = odb.modelName.to_s @record = record @oid = oid @dialogLevel = dialogLevel @value = @record.value(:value) @oid = hm().malloc(self, oid).obj.object_id.to_s end
Public Instance Methods
obj()
click to toggle source
# File lib/hwidgets/hformfield.rb, line 15 def obj() record = @record value = @value name = @record.name type = @record.type label = @record.label default = @record.default dialogLevel = @record.dialogLevel if(type == "combobox") @formField = HSelectTag.new(name, "#{@modelName}[#{name}]", label). setItems(record.value("items").split(",")). setValues(record.value("values").split(",")). setCarriageReturn(). setSelected(value) elsif(type == "dbcombobox") hl << "dbComboBox".red modelName = @odb.fieldProperty(name, "modelNameReference") puts "@odb.#{modelName}_id".red odb = eval("@odb.#{modelName}_id") puts "#{odb.class}".red puts "#{odb.table}".red puts "#{odb.type}".red puts "§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§§===========> end".red odb = odb.odb if odb.class == HRecordPtr showedFieldName = record.value("show_field") selectedValue = record.value(:value) puts "#{selectedValue}".red @formField = HDBComboBox.new(@moduleName, odb, name, showedFieldName, label, selectedValue, @oid, @dialogLevel) elsif(type == "lineedit") @formField = HInputTag.new(name, @modelName, label, nil, type). setCarriageReturn(). setSelected(value) elsif(type == "radiobutton") @formField = HRadioButtonTag.new(name, @modelName, label). setCarriageReturn(). setSelected(value) @formField.items = record.value("items").split(",") @formField.values = record.value("values").split(",") elsif(type == "checkbox") @formField = HCheckBoxTag.new(name, @modelName, label). setCarriageReturn(). setSelected(value) @formField.items = record.value("items").split(",") @formField.values = record.value("values").split(",") elsif(type == "textarea") @formField = HTextAreaTag.new(name, @modelName, label).setCarriageReturn(). setSelected(value). setInnerHTML(value) elsif(type == "dbtable") modelName = @odb.fieldProperty(name, "modelNameReference") puts "@odb.#{modelName}_table".red odb = eval("@odb.#{modelName}_table") odb = odb.odb if odb.class == HRecordPtr @formField = HDBTableView.new(moduleName: @moduleName, modelName: modelName, poid: @oid, odb: odb, dialogLevel: dialogLevel.to_i + 1) HDBTableView.tableViewDecorator(@formField) elsif(type == "submit") @formField = HWidget.new("input").setClosedTag(false) @formField.set(type: "submit", value: label) end return @formField end