OSDN Git Service

02eabfaf5adf7a4181e1ce1d306dea6799c6d818
[pettanr/pettanr.git] / lib / manifest / form / field / tag / base.rb
1 module Manifest
2   module FormModule
3     module FieldModule
4       module TagModule
5         class Base
6           attr :field, :tag_manifest, :type, 
7             :size
8           
9           def initialize field, tag_manifest
10             @field = field
11             @tag_manifest = tag_manifest
12             self.set_default
13             self.init
14           end
15           
16           def set_default
17             @tag_manifest['args'] ||= {}
18           end
19           
20           def init
21             @type = @tag_manifest['type']
22             @args = @tag_manifest['args']
23             @size = @args['size']
24           end
25           
26           def form_name
27             @field.form_name
28           end
29           
30           def field_name
31             @field.field_name
32           end
33           
34         end
35         
36         class TextTag < Base
37         end
38         
39         class NumberTag < Base
40         end
41         
42         class TextAreaTag < Base
43         end
44         
45         class SelectTag < Base
46         end
47         
48         class HiddenTag < Base
49         end
50         
51       end
52     end
53   end
54 end