OSDN Git Service

separate manifest
[pettanr/pettanr.git] / lib / locmare / filer / body / file_header.rb
1 require_dependency "locmare/filer/body/file_header/base"
2 require_dependency "locmare/filer/body/file_header/show"
3 require_dependency "locmare/filer/body/file_header/none"
4 module Locmare
5   module FilerModule
6     module BodyModule
7       class FileHeader
8         include FileHeaderModule
9         
10         attr :body,
11           :symbol, :caption, :summary, :icon, :date, :edit
12         def initialize body
13           @body = body
14           c = self.filer.manifest.symbol.visible? ? Show : None
15           @symbol = c.new self, 'symbol'
16           c = self.filer.manifest.caption.visible? ? Show : None
17           @caption = c.new self, 'caption'
18           c = self.filer.manifest.summary.visible? ? Show : None
19           @summary = c.new self, 'summary'
20           c = self.filer.manifest.icon.visible? ? Show : None
21           @icon = c.new self, 'icon'
22           c = self.filer.manifest.date.visible? ? Show : None
23           @date = c.new self, 'date'
24           c = self.filer.manifest.edit.visible? ? Show : None
25           @edit = c.new self, 'edit'
26         end
27         
28         def filer
29           @body.filer
30         end
31         
32         def manifest
33           self.filer.manifest
34         end
35         
36         def item_name
37           self.filer.item_name
38         end
39         
40         def model
41           self.filer.model
42         end
43         
44         def items
45           self.filer.items
46         end
47         
48         def template_dir
49           @body.template_dir
50         end
51         
52         def template_file_name
53           "file_header"
54         end
55         
56         def template_name
57           self.template_dir + self.template_file_name
58         end
59         
60       end
61     end
62   end
63 end