Class: HMainView

Inherits:
HDivTag show all
Defined in:
lib/hwidgets/hmainview.rb

Instance Attribute Summary collapse

Attributes inherited from HWidget

#tag

Instance Method Summary collapse

Methods inherited from HWidget

#_addJsSlot, #_set, #_setStyle, #addJsFunction, #appendChild, #appendChilds, #buildSignature, #closeTag, #connect, #copyConstructor, #get, #getChilds, #getElementBy, #getSystemProperty, #hotLog, #openTag, #replacePlaceholder, #reset, #set, #setChilds, #setCloseTag, #setClosedTag, #setEnablePlaceholder, #setInnerHTML, #setParent, #setPlaceholder, #setPlaceholders, #setProperties, #setSlots, #setStyle, #setStyles, #setSystemProperties, #setSystemProperty, #setTag, #storeSlots, #storeStyle, #strProperties, test, #unset, widgetSpace

Constructor Details

#initialize(**args) ⇒ HMainView

Returns a new instance of HMainView.



5
6
7
8
9
10
11
# File 'lib/hwidgets/hmainview.rb', line 5

def initialize(**args)
  @view = nil
  @oid = hm().malloc(self).obj.object_id.to_s
  super(class: 'hmainview', id: @oid, **args)
  self.hotLog("HMainView: new hmainview oid: #{@oid}".white)
  return self
end

Instance Attribute Details

#oidObject (readonly)

Returns the value of attribute oid.



3
4
5
# File 'lib/hwidgets/hmainview.rb', line 3

def oid
  @oid
end

Instance Method Details

#html(moduleName: nil, modelName: nil) ⇒ Object



21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
# File 'lib/hwidgets/hmainview.rb', line 21

def html(moduleName: nil, modelName: nil)
  self.reset()
  ooid = @view.oid if @view# old oid 
  
  if moduleName and modelName
    self << @view = HDBView.new(moduleName: moduleName, modelName: modelName, poid: @oid)
    self.connect(:honexit, self, "onExit", mode: 'none', id: @view.oid, overwrite: true)
  end 
  
  hm().dealloc(ooid) if ooid
  self.hotLog("HMainView::dealloc hdbview oid: #{ooid}".red) if ooid
  hm().clean()
  
  return super()
end

#onExitObject



13
14
15
16
17
18
19
# File 'lib/hwidgets/hmainview.rb', line 13

def onExit
  hm().dealloc(@oid) if @view
  self.hotLog("HMainView::onExit dealloc hmainview oid: #{@oid}".yellow)
  hl.<< "################################################################################################".hight_cyan, "DEBUG2"
  hl.<< "#                                          [onExit]#:                                          #".hight_cyan, "DEBUG2"
  hm().showAll
end