OSDN Git Service

separate manifest
[pettanr/pettanr.git] / lib / locmare / form / field / helper.rb
1 require_dependency "locmare/form/field/helper/base"
2 require_dependency "locmare/form/field/helper/size"
3 require_dependency "locmare/form/field/helper/tail_angle"
4 require_dependency "locmare/form/field/helper/color"
5 require_dependency "locmare/form/field/helper/popup"
6 module Locmare
7   module FormModule
8     module FieldModule
9       class HelperFactory
10         include HelperModule
11         @@types = {
12           'size' => Size, 'tail_angle' => TailAngle, 'color' => Color, 
13           'popup' => Popup
14         }
15         def self.factory field, my_manifest
16           type = my_manifest.type
17           my_class = @@types[type]
18           raise "undefined class for local view forms > #{field.form_name} > fields > #{field.field_name} > helper > #{type}\n" unless my_class
19           my_class.new(field, my_manifest)
20         end
21         
22       end
23       
24     end
25   end
26 end