Module: Rubeus::Extensions::Javax::Swing::JTable

Defined in:
lib/rubeus/extensions/javax/swing/j_table.rb

Defined Under Namespace

Classes: DelegatableTableModel

Class Method Summary collapse

Instance Method Summary collapse

Class Method Details

.included(base) ⇒ Object



7
8
9
10
11
12
13
14
15
16
17
18
19
20
# File 'lib/rubeus/extensions/javax/swing/j_table.rb', line 7

def self.included(base)
  base.default_attributes = {
    :preferred_size => [200, 150]
  }
  base.module_eval do
    alias_method :get_model_without_rubeus, :get_model
    alias_method :get_model, :get_model_with_rubeus
    alias_method :model, :get_model

    alias_method :set_model_without_rubeus, :set_model
    alias_method :set_model, :set_model_with_rubeus
    alias_method :model=, :set_model
  end
end

Instance Method Details

#get_model_with_rubeusObject



22
23
24
# File 'lib/rubeus/extensions/javax/swing/j_table.rb', line 22

def get_model_with_rubeus
  @model || get_model_without_rubeus
end

#set_model_with_rubeus(model, *args) ⇒ Object



26
27
28
29
30
31
32
# File 'lib/rubeus/extensions/javax/swing/j_table.rb', line 26

def set_model_with_rubeus(model, *args)
  unless model.is_a?(javax.swing.table.TableModel)
    model = javax.swing.table.DefaultTableModel.new(model, *args)
  end
  delegator = DelegatableTableModel.new(model)
  set_model_without_rubeus(@model = delegator)
end