OSDN Git Service

separate manifest
[pettanr/pettanr.git] / lib / locmare / filer / body / file_body / file_item / icon / icon.rb
1 module Locmare
2   module FilerModule
3     module BodyModule
4       module FileBodyModule
5         module FileItemModule
6           module IconItemColumnModule
7             class Base
8               attr :file_item, :icon_manifest, :item, :column_name
9               
10               def initialize file_item, icon_manifest, item
11                 @file_item = file_item
12                 @icon_manifest = icon_manifest
13                 @item = item
14                 @column_name = 'icon'
15               end
16               
17               def filer
18                 @file_item.filer
19               end
20               
21               def manifest
22                 self.filer.manifest
23               end
24               
25               def item_name
26                 self.filer.item_name
27               end
28               
29               def column_template_dir
30                 self.filer.template_dir + 'item_column/'
31               end
32               
33               def column_template_file_name
34                 raise "undefined column_template_file_name\n"
35               end
36               
37               def column_template_name
38                 self.column_template_dir + self.column_template_file_name
39               end
40               
41               def item_template_dir
42                 self.filer.template_dir + 'icon/'
43               end
44               
45               def item_template_file_name
46                 raise "undefined item_template_file_name\n"
47               end
48               
49               def item_template_name
50                 self.item_template_dir + self.item_template_file_name
51               end
52               
53             end
54             
55             class Default < Base
56               def column_template_file_name
57                 'show'
58               end
59               
60               def item_template_file_name
61                 'default'
62               end
63               
64               def icon_file_name
65                 '/images/prof.png'
66               end
67               
68               def icon_size
69                 Manifest.manifest.magic_numbers['thumbnail_width']
70               end
71               
72             end
73             
74             class None < Base
75               def column_template_file_name
76                 'none'
77               end
78               
79             end
80             
81           end
82         end
83       end
84     end
85   end
86 end