webgen 0.3.8 → 0.4.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (618) hide show
  1. data/ChangeLog +2565 -14
  2. data/README +4 -6
  3. data/Rakefile +207 -89
  4. data/TODO +175 -17
  5. data/VERSION +1 -1
  6. data/bin/webgen +1 -2
  7. data/data/webgen/gallery-creator/default.png +0 -0
  8. data/data/webgen/gallery_styles/default/README +6 -0
  9. data/data/webgen/gallery_styles/default/gallery_gallery.template +38 -0
  10. data/data/webgen/gallery_styles/default/gallery_image.template +30 -0
  11. data/data/webgen/gallery_styles/default/gallery_main.template +18 -0
  12. data/data/webgen/gallery_styles/slides/README +18 -0
  13. data/data/webgen/gallery_styles/slides/collage.rb +334 -0
  14. data/data/webgen/gallery_styles/slides/gallery_gallery.template +62 -0
  15. data/data/webgen/gallery_styles/slides/gallery_image.template +53 -0
  16. data/data/webgen/gallery_styles/slides/gallery_main.template +32 -0
  17. data/data/webgen/resources/images/generated_by_webgen.png +0 -0
  18. data/data/webgen/resources/images/webgen_logo.png +0 -0
  19. data/data/webgen/website_styles/1024px/README +10 -0
  20. data/data/webgen/website_styles/1024px/default.css +188 -0
  21. data/data/webgen/website_styles/1024px/default.template +62 -0
  22. data/data/webgen/website_styles/1024px/images/background.gif +0 -0
  23. data/data/webgen/website_styles/andreas00/README +10 -0
  24. data/data/webgen/website_styles/andreas00/default.css +290 -0
  25. data/data/webgen/website_styles/andreas00/default.template +62 -0
  26. data/data/webgen/website_styles/andreas00/images/bg.gif +0 -0
  27. data/data/webgen/website_styles/andreas00/images/front.jpg +0 -0
  28. data/data/webgen/website_styles/andreas00/images/menubg.gif +0 -0
  29. data/data/webgen/website_styles/andreas00/images/menubg2.gif +0 -0
  30. data/data/webgen/website_styles/andreas01/README +11 -0
  31. data/data/webgen/website_styles/andreas01/default.css +310 -0
  32. data/data/webgen/website_styles/andreas01/default.template +63 -0
  33. data/data/webgen/website_styles/andreas01/images/bg.gif +0 -0
  34. data/data/webgen/website_styles/andreas01/images/front.jpg +0 -0
  35. data/data/webgen/website_styles/andreas01/print.css +35 -0
  36. data/data/webgen/website_styles/andreas03/README +11 -0
  37. data/data/webgen/website_styles/andreas03/default.css +223 -0
  38. data/data/webgen/website_styles/andreas03/default.template +60 -0
  39. data/data/webgen/website_styles/andreas03/images/bodybg.png +0 -0
  40. data/data/webgen/website_styles/andreas03/images/contbg.png +0 -0
  41. data/data/webgen/website_styles/andreas03/images/footerbg.png +0 -0
  42. data/data/webgen/website_styles/andreas03/images/gradient1.png +0 -0
  43. data/data/webgen/website_styles/andreas03/images/gradient2.png +0 -0
  44. data/data/webgen/website_styles/andreas04/README +12 -0
  45. data/data/webgen/website_styles/andreas04/default.css +290 -0
  46. data/data/webgen/website_styles/andreas04/default.template +83 -0
  47. data/data/webgen/website_styles/andreas04/images/blinkarrow.gif +0 -0
  48. data/data/webgen/website_styles/andreas04/images/bodybg.png +0 -0
  49. data/data/webgen/website_styles/andreas04/images/contentbg.png +0 -0
  50. data/data/webgen/website_styles/andreas04/images/entrybg.png +0 -0
  51. data/data/webgen/website_styles/andreas04/images/flash.gif +0 -0
  52. data/data/webgen/website_styles/andreas04/images/flash2.gif +0 -0
  53. data/data/webgen/website_styles/andreas04/images/globe.gif +0 -0
  54. data/data/webgen/website_styles/andreas04/images/globebottom.gif +0 -0
  55. data/data/webgen/website_styles/andreas04/images/linkarrow.gif +0 -0
  56. data/data/webgen/website_styles/andreas04/images/menuhover.png +0 -0
  57. data/data/webgen/website_styles/andreas05/README +11 -0
  58. data/data/webgen/website_styles/andreas05/default.css +33 -0
  59. data/data/webgen/website_styles/andreas05/default.template +42 -0
  60. data/data/webgen/website_styles/andreas05/images/bodybg.gif +0 -0
  61. data/data/webgen/website_styles/andreas05/images/front.png +0 -0
  62. data/data/webgen/website_styles/andreas06/README +11 -0
  63. data/data/webgen/website_styles/andreas06/default.css +353 -0
  64. data/data/webgen/website_styles/andreas06/default.template +72 -0
  65. data/data/webgen/website_styles/andreas06/images/bodybg.gif +0 -0
  66. data/data/webgen/website_styles/andreas06/images/boxbg.gif +0 -0
  67. data/data/webgen/website_styles/andreas06/images/greypx.gif +0 -0
  68. data/data/webgen/website_styles/andreas06/images/header.jpg +0 -0
  69. data/data/webgen/website_styles/andreas06/images/innerbg.gif +0 -0
  70. data/data/webgen/website_styles/andreas06/images/leaves.jpg +0 -0
  71. data/data/webgen/website_styles/andreas06/images/tabs.gif +0 -0
  72. data/data/webgen/website_styles/andreas07/README +12 -0
  73. data/data/webgen/website_styles/andreas07/browserfix.css +7 -0
  74. data/data/webgen/website_styles/andreas07/default.css +92 -0
  75. data/data/webgen/website_styles/andreas07/default.template +44 -0
  76. data/data/webgen/website_styles/andreas07/images/bodybg.gif +0 -0
  77. data/data/webgen/website_styles/andreas07/images/sidebarbg.gif +0 -0
  78. data/data/webgen/website_styles/andreas08/README +11 -0
  79. data/data/webgen/website_styles/andreas08/default.css +224 -0
  80. data/data/webgen/website_styles/andreas08/default.template +53 -0
  81. data/data/webgen/website_styles/andreas09/README +11 -0
  82. data/data/webgen/website_styles/andreas09/default.css +308 -0
  83. data/data/webgen/website_styles/andreas09/default.template +70 -0
  84. data/data/webgen/website_styles/andreas09/images/bodybg-black.jpg +0 -0
  85. data/data/webgen/website_styles/andreas09/images/bodybg-green.jpg +0 -0
  86. data/data/webgen/website_styles/andreas09/images/bodybg-orange.jpg +0 -0
  87. data/data/webgen/website_styles/andreas09/images/bodybg-purple.jpg +0 -0
  88. data/data/webgen/website_styles/andreas09/images/bodybg-red.jpg +0 -0
  89. data/data/webgen/website_styles/andreas09/images/bodybg.jpg +0 -0
  90. data/data/webgen/website_styles/andreas09/images/footerbg.jpg +0 -0
  91. data/data/webgen/website_styles/andreas09/images/menuhover-black.jpg +0 -0
  92. data/data/webgen/website_styles/andreas09/images/menuhover-green.jpg +0 -0
  93. data/data/webgen/website_styles/andreas09/images/menuhover-orange.jpg +0 -0
  94. data/data/webgen/website_styles/andreas09/images/menuhover-purple.jpg +0 -0
  95. data/data/webgen/website_styles/andreas09/images/menuhover-red.jpg +0 -0
  96. data/data/webgen/website_styles/andreas09/images/menuhover.jpg +0 -0
  97. data/data/webgen/website_styles/default/README +6 -0
  98. data/data/webgen/website_styles/default/default.css +1 -1
  99. data/data/webgen/website_styles/default/default.template +9 -3
  100. data/data/webgen/website_styles/plain/README +12 -0
  101. data/data/webgen/website_styles/plain/default.css +244 -0
  102. data/data/webgen/website_styles/plain/default.template +63 -0
  103. data/data/webgen/website_styles/plain/images/a_hover.jpg +0 -0
  104. data/data/webgen/website_styles/plain/images/desc.jpg +0 -0
  105. data/data/webgen/website_styles/plain/images/li.gif +0 -0
  106. data/data/webgen/website_styles/plain/images/mainbar.jpg +0 -0
  107. data/data/webgen/website_styles/plain/images/menu.jpg +0 -0
  108. data/data/webgen/website_styles/plain/images/submenua.gif +0 -0
  109. data/data/webgen/website_styles/plain/images/submenua_hover.jpg +0 -0
  110. data/data/webgen/website_templates/default/README +7 -5
  111. data/data/webgen/website_templates/personal_hp/README +7 -5
  112. data/data/webgen/website_templates/project/README +8 -6
  113. data/doc/config.yaml +2 -2
  114. data/doc/examples/website_styles/1024px/README +9 -0
  115. data/doc/examples/website_styles/1024px/config.yaml +2 -0
  116. data/doc/examples/website_styles/1024px/src/about.page +12 -0
  117. data/doc/examples/website_styles/1024px/src/default.css +188 -0
  118. data/doc/examples/website_styles/1024px/src/default.template +62 -0
  119. data/doc/examples/website_styles/1024px/src/download.page +15 -0
  120. data/doc/examples/website_styles/1024px/src/features.page +8 -0
  121. data/doc/examples/website_styles/1024px/src/images/background.gif +0 -0
  122. data/doc/examples/website_styles/1024px/src/index.page +9 -0
  123. data/doc/examples/website_styles/1024px/src/screenshots.page +18 -0
  124. data/doc/examples/website_styles/andreas00/README +9 -0
  125. data/doc/examples/website_styles/andreas00/config.yaml +2 -0
  126. data/doc/examples/website_styles/andreas00/src/about.page +12 -0
  127. data/doc/examples/website_styles/andreas00/src/default.css +290 -0
  128. data/doc/examples/website_styles/andreas00/src/default.template +62 -0
  129. data/doc/examples/website_styles/andreas00/src/download.page +15 -0
  130. data/doc/examples/website_styles/andreas00/src/features.page +8 -0
  131. data/doc/examples/website_styles/andreas00/src/images/bg.gif +0 -0
  132. data/doc/examples/website_styles/andreas00/src/images/front.jpg +0 -0
  133. data/doc/examples/website_styles/andreas00/src/images/menubg.gif +0 -0
  134. data/doc/examples/website_styles/andreas00/src/images/menubg2.gif +0 -0
  135. data/doc/examples/website_styles/andreas00/src/index.page +9 -0
  136. data/doc/examples/website_styles/andreas00/src/screenshots.page +18 -0
  137. data/doc/examples/website_styles/andreas01/README +9 -0
  138. data/doc/examples/website_styles/andreas01/config.yaml +2 -0
  139. data/doc/examples/website_styles/andreas01/src/about.page +12 -0
  140. data/doc/examples/website_styles/andreas01/src/default.css +310 -0
  141. data/doc/examples/website_styles/andreas01/src/default.template +63 -0
  142. data/doc/examples/website_styles/andreas01/src/download.page +15 -0
  143. data/doc/examples/website_styles/andreas01/src/features.page +8 -0
  144. data/doc/examples/website_styles/andreas01/src/images/bg.gif +0 -0
  145. data/doc/examples/website_styles/andreas01/src/images/front.jpg +0 -0
  146. data/doc/examples/website_styles/andreas01/src/index.page +9 -0
  147. data/doc/examples/website_styles/andreas01/src/print.css +35 -0
  148. data/doc/examples/website_styles/andreas01/src/screenshots.page +18 -0
  149. data/doc/examples/website_styles/andreas03/README +9 -0
  150. data/doc/examples/website_styles/andreas03/config.yaml +2 -0
  151. data/doc/examples/website_styles/andreas03/src/about.page +12 -0
  152. data/doc/examples/website_styles/andreas03/src/default.css +223 -0
  153. data/doc/examples/website_styles/andreas03/src/default.template +60 -0
  154. data/doc/examples/website_styles/andreas03/src/download.page +15 -0
  155. data/doc/examples/website_styles/andreas03/src/features.page +8 -0
  156. data/doc/examples/website_styles/andreas03/src/images/bodybg.png +0 -0
  157. data/doc/examples/website_styles/andreas03/src/images/contbg.png +0 -0
  158. data/doc/examples/website_styles/andreas03/src/images/footerbg.png +0 -0
  159. data/doc/examples/website_styles/andreas03/src/images/gradient1.png +0 -0
  160. data/doc/examples/website_styles/andreas03/src/images/gradient2.png +0 -0
  161. data/doc/examples/website_styles/andreas03/src/index.page +9 -0
  162. data/doc/examples/website_styles/andreas03/src/screenshots.page +18 -0
  163. data/doc/examples/website_styles/andreas04/README +9 -0
  164. data/doc/examples/website_styles/andreas04/config.yaml +2 -0
  165. data/doc/examples/website_styles/andreas04/src/about.page +12 -0
  166. data/doc/examples/website_styles/andreas04/src/default.css +290 -0
  167. data/doc/examples/website_styles/andreas04/src/default.template +83 -0
  168. data/doc/examples/website_styles/andreas04/src/download.page +15 -0
  169. data/doc/examples/website_styles/andreas04/src/features.page +8 -0
  170. data/doc/examples/website_styles/andreas04/src/images/blinkarrow.gif +0 -0
  171. data/doc/examples/website_styles/andreas04/src/images/bodybg.png +0 -0
  172. data/doc/examples/website_styles/andreas04/src/images/contentbg.png +0 -0
  173. data/doc/examples/website_styles/andreas04/src/images/entrybg.png +0 -0
  174. data/doc/examples/website_styles/andreas04/src/images/flash.gif +0 -0
  175. data/doc/examples/website_styles/andreas04/src/images/flash2.gif +0 -0
  176. data/doc/examples/website_styles/andreas04/src/images/globe.gif +0 -0
  177. data/doc/examples/website_styles/andreas04/src/images/globebottom.gif +0 -0
  178. data/doc/examples/website_styles/andreas04/src/images/linkarrow.gif +0 -0
  179. data/doc/examples/website_styles/andreas04/src/images/menuhover.png +0 -0
  180. data/doc/examples/website_styles/andreas04/src/index.page +9 -0
  181. data/doc/examples/website_styles/andreas04/src/screenshots.page +18 -0
  182. data/doc/examples/website_styles/andreas05/README +9 -0
  183. data/doc/examples/website_styles/andreas05/config.yaml +2 -0
  184. data/doc/examples/website_styles/andreas05/src/about.page +12 -0
  185. data/doc/examples/website_styles/andreas05/src/default.css +33 -0
  186. data/doc/examples/website_styles/andreas05/src/default.template +42 -0
  187. data/doc/examples/website_styles/andreas05/src/download.page +15 -0
  188. data/doc/examples/website_styles/andreas05/src/features.page +8 -0
  189. data/doc/examples/website_styles/andreas05/src/images/bodybg.gif +0 -0
  190. data/doc/examples/website_styles/andreas05/src/images/front.png +0 -0
  191. data/doc/examples/website_styles/andreas05/src/index.page +9 -0
  192. data/doc/examples/website_styles/andreas05/src/screenshots.page +18 -0
  193. data/doc/examples/website_styles/andreas06/README +9 -0
  194. data/doc/examples/website_styles/andreas06/config.yaml +2 -0
  195. data/doc/examples/website_styles/andreas06/src/about.page +12 -0
  196. data/doc/examples/website_styles/andreas06/src/default.css +353 -0
  197. data/doc/examples/website_styles/andreas06/src/default.template +72 -0
  198. data/doc/examples/website_styles/andreas06/src/download.page +15 -0
  199. data/doc/examples/website_styles/andreas06/src/features.page +8 -0
  200. data/doc/examples/website_styles/andreas06/src/images/bodybg.gif +0 -0
  201. data/doc/examples/website_styles/andreas06/src/images/boxbg.gif +0 -0
  202. data/doc/examples/website_styles/andreas06/src/images/greypx.gif +0 -0
  203. data/doc/examples/website_styles/andreas06/src/images/header.jpg +0 -0
  204. data/doc/examples/website_styles/andreas06/src/images/innerbg.gif +0 -0
  205. data/doc/examples/website_styles/andreas06/src/images/leaves.jpg +0 -0
  206. data/doc/examples/website_styles/andreas06/src/images/tabs.gif +0 -0
  207. data/doc/examples/website_styles/andreas06/src/index.page +9 -0
  208. data/doc/examples/website_styles/andreas06/src/screenshots.page +18 -0
  209. data/doc/examples/website_styles/andreas07/README +9 -0
  210. data/doc/examples/website_styles/andreas07/config.yaml +2 -0
  211. data/doc/examples/website_styles/andreas07/src/about.page +12 -0
  212. data/doc/examples/website_styles/andreas07/src/browserfix.css +7 -0
  213. data/doc/examples/website_styles/andreas07/src/default.css +92 -0
  214. data/doc/examples/website_styles/andreas07/src/default.template +44 -0
  215. data/doc/examples/website_styles/andreas07/src/download.page +15 -0
  216. data/doc/examples/website_styles/andreas07/src/features.page +8 -0
  217. data/doc/examples/website_styles/andreas07/src/images/bodybg.gif +0 -0
  218. data/doc/examples/website_styles/andreas07/src/images/sidebarbg.gif +0 -0
  219. data/doc/examples/website_styles/andreas07/src/index.page +9 -0
  220. data/doc/examples/website_styles/andreas07/src/screenshots.page +18 -0
  221. data/doc/examples/website_styles/andreas08/README +9 -0
  222. data/doc/examples/website_styles/andreas08/config.yaml +2 -0
  223. data/doc/examples/website_styles/andreas08/src/about.page +12 -0
  224. data/doc/examples/website_styles/andreas08/src/default.css +224 -0
  225. data/doc/examples/website_styles/andreas08/src/default.template +53 -0
  226. data/doc/examples/website_styles/andreas08/src/download.page +15 -0
  227. data/doc/examples/website_styles/andreas08/src/features.page +8 -0
  228. data/doc/examples/website_styles/andreas08/src/index.page +9 -0
  229. data/doc/examples/website_styles/andreas08/src/screenshots.page +18 -0
  230. data/doc/examples/website_styles/andreas09/README +9 -0
  231. data/doc/examples/website_styles/andreas09/config.yaml +2 -0
  232. data/doc/examples/website_styles/andreas09/src/about.page +12 -0
  233. data/doc/examples/website_styles/andreas09/src/default.css +308 -0
  234. data/doc/examples/website_styles/andreas09/src/default.template +70 -0
  235. data/doc/examples/website_styles/andreas09/src/download.page +15 -0
  236. data/doc/examples/website_styles/andreas09/src/features.page +8 -0
  237. data/doc/examples/website_styles/andreas09/src/images/bodybg-black.jpg +0 -0
  238. data/doc/examples/website_styles/andreas09/src/images/bodybg-green.jpg +0 -0
  239. data/doc/examples/website_styles/andreas09/src/images/bodybg-orange.jpg +0 -0
  240. data/doc/examples/website_styles/andreas09/src/images/bodybg-purple.jpg +0 -0
  241. data/doc/examples/website_styles/andreas09/src/images/bodybg-red.jpg +0 -0
  242. data/doc/examples/website_styles/andreas09/src/images/bodybg.jpg +0 -0
  243. data/doc/examples/website_styles/andreas09/src/images/footerbg.jpg +0 -0
  244. data/doc/examples/website_styles/andreas09/src/images/menuhover-black.jpg +0 -0
  245. data/doc/examples/website_styles/andreas09/src/images/menuhover-green.jpg +0 -0
  246. data/doc/examples/website_styles/andreas09/src/images/menuhover-orange.jpg +0 -0
  247. data/doc/examples/website_styles/andreas09/src/images/menuhover-purple.jpg +0 -0
  248. data/doc/examples/website_styles/andreas09/src/images/menuhover-red.jpg +0 -0
  249. data/doc/examples/website_styles/andreas09/src/images/menuhover.jpg +0 -0
  250. data/doc/examples/website_styles/andreas09/src/index.page +9 -0
  251. data/doc/examples/website_styles/andreas09/src/screenshots.page +18 -0
  252. data/doc/examples/website_styles/default/README +9 -0
  253. data/doc/examples/website_styles/default/config.yaml +2 -0
  254. data/doc/examples/website_styles/default/src/about.page +12 -0
  255. data/doc/examples/website_styles/default/src/default.css +84 -0
  256. data/doc/examples/website_styles/default/src/default.template +38 -0
  257. data/doc/examples/website_styles/default/src/download.page +15 -0
  258. data/doc/examples/website_styles/default/src/features.page +8 -0
  259. data/doc/examples/website_styles/default/src/index.page +9 -0
  260. data/doc/examples/website_styles/default/src/screenshots.page +18 -0
  261. data/doc/examples/website_styles/plain/README +9 -0
  262. data/doc/examples/website_styles/plain/config.yaml +2 -0
  263. data/doc/examples/website_styles/plain/src/about.page +12 -0
  264. data/doc/examples/website_styles/plain/src/default.css +244 -0
  265. data/doc/examples/website_styles/plain/src/default.template +63 -0
  266. data/doc/examples/website_styles/plain/src/download.page +15 -0
  267. data/doc/examples/website_styles/plain/src/features.page +8 -0
  268. data/doc/examples/website_styles/plain/src/images/a_hover.jpg +0 -0
  269. data/doc/examples/website_styles/plain/src/images/desc.jpg +0 -0
  270. data/doc/examples/website_styles/plain/src/images/li.gif +0 -0
  271. data/doc/examples/website_styles/plain/src/images/mainbar.jpg +0 -0
  272. data/doc/examples/website_styles/plain/src/images/menu.jpg +0 -0
  273. data/doc/examples/website_styles/plain/src/images/submenua.gif +0 -0
  274. data/doc/examples/website_styles/plain/src/images/submenua_hover.jpg +0 -0
  275. data/doc/examples/website_styles/plain/src/index.page +9 -0
  276. data/doc/examples/website_styles/plain/src/screenshots.page +18 -0
  277. data/doc/examples/website_templates/default/README +8 -0
  278. data/doc/examples/website_templates/default/config.yaml +2 -0
  279. data/doc/examples/website_templates/default/src/default.css +84 -0
  280. data/doc/examples/website_templates/default/src/default.template +38 -0
  281. data/doc/examples/website_templates/default/src/index.page +8 -0
  282. data/doc/examples/website_templates/personal_hp/README +8 -0
  283. data/doc/examples/website_templates/personal_hp/config.yaml +2 -0
  284. data/doc/examples/website_templates/personal_hp/src/about.page +12 -0
  285. data/doc/examples/website_templates/personal_hp/src/default.css +84 -0
  286. data/doc/examples/website_templates/personal_hp/src/default.template +38 -0
  287. data/doc/examples/website_templates/personal_hp/src/index.page +9 -0
  288. data/doc/examples/website_templates/personal_hp/src/links.page +22 -0
  289. data/doc/examples/website_templates/personal_hp/src/projects.page +20 -0
  290. data/doc/examples/website_templates/project/README +9 -0
  291. data/doc/examples/website_templates/project/config.yaml +2 -0
  292. data/doc/examples/website_templates/project/src/about.page +12 -0
  293. data/doc/examples/website_templates/project/src/default.css +84 -0
  294. data/doc/examples/website_templates/project/src/default.template +38 -0
  295. data/doc/examples/website_templates/project/src/download.page +15 -0
  296. data/doc/examples/website_templates/project/src/features.page +8 -0
  297. data/doc/examples/website_templates/project/src/index.page +9 -0
  298. data/doc/examples/website_templates/project/src/screenshots.page +18 -0
  299. data/doc/metainfo.yaml +85 -0
  300. data/doc/plugin/emoticon.rb +19 -21
  301. data/doc/plugin/extension.rb +134 -55
  302. data/doc/plugin/gallery/slides/collage.rb +334 -0
  303. data/doc/plugin/listpluginparameters.rb +24 -26
  304. data/doc/plugin/resources.rb +20 -22
  305. data/doc/src/default.css +333 -154
  306. data/doc/src/default.template +92 -39
  307. data/doc/src/documentation/extending_webgen.page +1 -2
  308. data/doc/src/documentation/gettingstarted.page +161 -44
  309. data/doc/src/documentation/index.page +15 -28
  310. data/doc/src/documentation/plugins/contentconverter/default.page +15 -0
  311. data/doc/src/documentation/plugins/contentconverter/html.page +10 -0
  312. data/doc/src/documentation/plugins/contentconverter/markdown.page +21 -0
  313. data/doc/src/documentation/plugins/contentconverter/rdoc.page +11 -0
  314. data/doc/src/documentation/plugins/contentconverter/textile.page +21 -0
  315. data/doc/src/documentation/plugins/contentconverter/xmlbuilder.page +61 -0
  316. data/doc/src/documentation/plugins/core/configuration.page +11 -0
  317. data/doc/src/documentation/plugins/core/filehandler.page +214 -0
  318. data/doc/src/documentation/plugins/core/index.page +11 -0
  319. data/doc/src/documentation/plugins/core/resourcemanager.page +46 -0
  320. data/doc/src/documentation/plugins/core/tagprocessor.page +17 -0
  321. data/doc/src/documentation/plugins/file/copyhandler.page +26 -0
  322. data/doc/src/documentation/plugins/file/defaulthandler.page +15 -0
  323. data/doc/src/documentation/plugins/file/directoryhandler.page +37 -0
  324. data/doc/src/documentation/plugins/file/galleryhandler.page +181 -0
  325. data/doc/src/documentation/plugins/file/pagehandler.page +154 -0
  326. data/doc/src/documentation/plugins/file/templatehandler.page +34 -0
  327. data/doc/src/documentation/plugins/file/thumbnailwriter.page +39 -0
  328. data/doc/src/documentation/plugins/htmlvalidator/default.page +12 -0
  329. data/doc/src/documentation/plugins/htmlvalidator/xmllint.page +12 -0
  330. data/doc/src/documentation/plugins/index.page +32 -11
  331. data/doc/src/documentation/plugins/menustyle/default.page +19 -0
  332. data/doc/src/documentation/plugins/menustyle/horizontal.page +32 -0
  333. data/doc/src/documentation/plugins/{menustyles → menustyle}/horizontaldropdown.page +25 -19
  334. data/doc/src/documentation/plugins/menustyle/section.page +34 -0
  335. data/doc/src/documentation/plugins/menustyle/vertical.page +48 -0
  336. data/doc/src/documentation/plugins/menustyle/verticaldropdown.page +29 -0
  337. data/doc/src/documentation/plugins/misc/index.page +9 -0
  338. data/doc/src/documentation/plugins/{miscplugins → misc}/smileyreplacer.page +15 -14
  339. data/doc/src/documentation/plugins/misc/syntaxhighlighter.page +26 -0
  340. data/doc/src/documentation/plugins/tag/block.page +29 -0
  341. data/doc/src/documentation/plugins/tag/breadcrumbtrail.page +29 -0
  342. data/doc/src/documentation/plugins/tag/date.page +34 -0
  343. data/doc/src/documentation/plugins/tag/default.page +27 -0
  344. data/doc/src/documentation/plugins/tag/download.page +60 -0
  345. data/doc/src/documentation/plugins/tag/executecommand.page +29 -0
  346. data/doc/src/documentation/plugins/tag/includefile.page +30 -0
  347. data/doc/src/documentation/plugins/{tags → tag}/langbar.de.page +1 -1
  348. data/doc/src/documentation/plugins/tag/langbar.fr.page +6 -0
  349. data/doc/src/documentation/plugins/tag/langbar.page +41 -0
  350. data/doc/src/documentation/plugins/tag/menu.page +78 -0
  351. data/doc/src/documentation/plugins/{tags → tag}/meta.page +8 -7
  352. data/doc/src/documentation/plugins/tag/relocatable.page +46 -0
  353. data/doc/src/documentation/plugins/tag/resource.page +35 -0
  354. data/doc/src/documentation/plugins/tag/sitemap.page +35 -0
  355. data/doc/src/documentation/plugins/tag/wikilink.page +33 -0
  356. data/doc/src/documentation/references/index.page +0 -1
  357. data/doc/src/documentation/references/meta_info_reference.page +90 -13
  358. data/doc/src/documentation/references/parameter_reference.page +0 -1
  359. data/doc/src/documentation/references/webpage_format.page +249 -0
  360. data/doc/src/download.page +50 -21
  361. data/doc/src/examples/gallery_styles/default/default.gallery +78 -0
  362. data/doc/src/examples/gallery_styles/default/gallery_gallery.template +38 -0
  363. data/doc/src/examples/gallery_styles/default/gallery_image.template +30 -0
  364. data/doc/src/examples/gallery_styles/default/gallery_main.template +18 -0
  365. data/doc/src/examples/gallery_styles/index.page +22 -0
  366. data/doc/src/examples/gallery_styles/slides/gallery_gallery.template +62 -0
  367. data/doc/src/examples/gallery_styles/slides/gallery_image.template +53 -0
  368. data/doc/src/examples/gallery_styles/slides/gallery_main.template +32 -0
  369. data/doc/src/examples/gallery_styles/slides/slides.gallery +79 -0
  370. data/doc/src/examples/images/image01.jpg +0 -0
  371. data/doc/src/examples/images/image02.jpg +0 -0
  372. data/doc/src/examples/images/image03.jpg +0 -0
  373. data/doc/src/examples/images/image04.jpg +0 -0
  374. data/doc/src/examples/images/image05.jpg +0 -0
  375. data/doc/src/examples/images/image06.jpg +0 -0
  376. data/doc/src/examples/images/image07.jpg +0 -0
  377. data/doc/src/examples/images/image08.jpg +0 -0
  378. data/doc/src/examples/images/image09.jpg +0 -0
  379. data/doc/src/examples/images/image10.jpg +0 -0
  380. data/doc/src/examples/images/image11.jpg +0 -0
  381. data/doc/src/examples/images/image12.jpg +0 -0
  382. data/doc/src/examples/images/image13.jpg +0 -0
  383. data/doc/src/examples/images/image14.jpg +0 -0
  384. data/doc/src/examples/images/image15.jpg +0 -0
  385. data/doc/src/examples/images/image16.jpg +0 -0
  386. data/doc/src/examples/images/image17.jpg +0 -0
  387. data/doc/src/examples/images/image18.jpg +0 -0
  388. data/doc/src/examples/index.page +18 -0
  389. data/doc/src/examples/website_styles/1024px.page +5 -0
  390. data/doc/src/examples/website_styles/andreas00.page +5 -0
  391. data/doc/src/examples/website_styles/andreas01.page +5 -0
  392. data/doc/src/examples/website_styles/andreas03.page +5 -0
  393. data/doc/src/examples/website_styles/andreas04.page +5 -0
  394. data/doc/src/examples/website_styles/andreas05.page +5 -0
  395. data/doc/src/examples/website_styles/andreas06.page +5 -0
  396. data/doc/src/examples/website_styles/andreas07.page +5 -0
  397. data/doc/src/examples/website_styles/andreas08.page +5 -0
  398. data/doc/src/examples/website_styles/andreas09.page +5 -0
  399. data/doc/src/examples/website_styles/default.page +5 -0
  400. data/doc/src/examples/website_styles/index.page +71 -0
  401. data/doc/src/examples/website_styles/plain.page +5 -0
  402. data/doc/src/examples/website_templates/default.page +5 -0
  403. data/doc/src/examples/website_templates/index.page +24 -0
  404. data/doc/src/examples/website_templates/personal_hp.page +5 -0
  405. data/doc/src/examples/website_templates/project.page +5 -0
  406. data/doc/src/features.page +16 -14
  407. data/doc/src/images/bodybg.jpg +0 -0
  408. data/doc/src/images/footerbg.jpg +0 -0
  409. data/doc/src/images/menuhover.jpg +0 -0
  410. data/doc/src/images/node_diagram.svg +7132 -0
  411. data/doc/src/images/thumb_example.jpg +0 -0
  412. data/doc/src/images/thumb_example_cropped.jpg +0 -0
  413. data/doc/src/images/thumb_example_normal.jpg +0 -0
  414. data/doc/src/index.page +14 -102
  415. data/doc/src/news.page +154 -0
  416. data/doc/src/plugin.template +10 -0
  417. data/lib/webgen/cli.rb +427 -0
  418. data/lib/webgen/composite.rb +11 -11
  419. data/lib/webgen/config.rb +52 -0
  420. data/lib/webgen/content.rb +172 -0
  421. data/lib/webgen/extcommand.rb +23 -0
  422. data/lib/webgen/languages.rb +110 -0
  423. data/lib/webgen/listener.rb +1 -1
  424. data/lib/webgen/node.rb +196 -124
  425. data/lib/webgen/plugin.rb +480 -144
  426. data/lib/webgen/plugins/{contenthandlers → contentconverters}/default.rb +10 -9
  427. data/lib/webgen/plugins/{contenthandlers → contentconverters}/html.rb +11 -8
  428. data/lib/webgen/plugins/contentconverters/markdown.rb +54 -0
  429. data/lib/webgen/plugins/{contenthandlers → contentconverters}/rdoc.rb +16 -12
  430. data/lib/webgen/plugins/{contenthandlers → contentconverters}/textile.rb +18 -13
  431. data/lib/webgen/plugins/contentconverters/xmlbuilder.rb +58 -0
  432. data/lib/webgen/plugins/coreplugins/configuration.rb +11 -102
  433. data/lib/webgen/plugins/coreplugins/resourcemanager.rb +95 -74
  434. data/lib/webgen/plugins/filehandlers/copy.rb +41 -19
  435. data/lib/webgen/plugins/filehandlers/directory.rb +52 -50
  436. data/lib/webgen/plugins/filehandlers/filehandler.rb +370 -123
  437. data/lib/webgen/plugins/filehandlers/gallery.rb +368 -117
  438. data/lib/webgen/plugins/filehandlers/page.rb +160 -146
  439. data/lib/webgen/plugins/filehandlers/template.rb +65 -52
  440. data/lib/webgen/plugins/htmlvalidators/default.rb +9 -7
  441. data/lib/webgen/plugins/htmlvalidators/xmllint.rb +17 -33
  442. data/lib/webgen/plugins/menustyles/default.rb +27 -25
  443. data/lib/webgen/plugins/menustyles/horizontal.rb +22 -41
  444. data/lib/webgen/plugins/menustyles/horizontal_dropdown.rb +25 -39
  445. data/lib/webgen/plugins/menustyles/section.rb +68 -0
  446. data/lib/webgen/plugins/menustyles/vertical.rb +36 -56
  447. data/lib/webgen/plugins/menustyles/vertical_dropdown.rb +24 -32
  448. data/lib/webgen/plugins/miscplugins/smileyreplacer.rb +20 -17
  449. data/lib/webgen/plugins/miscplugins/syntax_highlighter.rb +72 -0
  450. data/lib/webgen/plugins/miscplugins/treewalker.rb +9 -36
  451. data/lib/webgen/plugins/tags/block.rb +65 -0
  452. data/lib/webgen/plugins/tags/breadcrumbtrail.rb +15 -11
  453. data/lib/webgen/plugins/tags/date.rb +11 -7
  454. data/lib/webgen/plugins/tags/download.rb +38 -38
  455. data/lib/webgen/plugins/tags/executecommand.rb +30 -15
  456. data/lib/webgen/plugins/tags/includefile.rb +26 -13
  457. data/lib/webgen/plugins/tags/langbar.rb +23 -18
  458. data/lib/webgen/plugins/tags/menu.rb +49 -70
  459. data/lib/webgen/plugins/tags/meta.rb +12 -9
  460. data/lib/webgen/plugins/tags/relocatable.rb +41 -13
  461. data/lib/webgen/plugins/tags/sitemap.rb +32 -28
  462. data/lib/webgen/plugins/tags/tag_processor.rb +279 -0
  463. data/lib/webgen/plugins/tags/wikilink.rb +25 -20
  464. data/lib/webgen/test.rb +202 -0
  465. data/lib/webgen/website.rb +310 -0
  466. data/test/fixtures/sample_site/src/chained.template +3 -0
  467. data/test/fixtures/sample_site/src/default.template +3 -0
  468. data/test/fixtures/sample_site/src/dir1/dir11/file111.de.page +3 -0
  469. data/test/fixtures/sample_site/src/dir1/dir11/file111.page +3 -0
  470. data/test/fixtures/sample_site/src/dir1/dir11/index.page +3 -0
  471. data/test/fixtures/sample_site/src/dir1/file11.page +3 -0
  472. data/test/fixtures/sample_site/src/dir2/file21.page +3 -0
  473. data/test/fixtures/sample_site/src/embedded.rhtml +1 -0
  474. data/test/fixtures/sample_site/src/file1.page +8 -0
  475. data/test/fixtures/sample_site/src/file2.de.page +6 -0
  476. data/test/fixtures/sample_site/src/index.de.page +4 -0
  477. data/test/fixtures/sample_site/src/index.en.page +1 -0
  478. data/test/fixtures/sample_site/src/invalid.template +3 -0
  479. data/test/fixtures/sample_site/src/test.jpg +1 -0
  480. data/test/fixtures/sample_site/src/test.template +3 -0
  481. data/test/fixtures/tc_content/blocks.yaml +40 -0
  482. data/test/fixtures/tc_content/correct.yaml +65 -0
  483. data/test/fixtures/tc_content/incorrect.yaml +42 -0
  484. data/test/fixtures/tc_filehandler_filehandler/backing/metainfo.yaml +9 -0
  485. data/test/fixtures/tc_filehandler_filehandler/backing_empty/metainfo.yaml +6 -0
  486. data/test/fixtures/tc_filehandler_filehandler/sample_plugin.rb +49 -0
  487. data/test/fixtures/tc_filehandler_filehandler/unmodified +0 -0
  488. data/test/fixtures/tc_filehandler_gallery/test.gallery +2 -0
  489. data/test/fixtures/tc_filehandler_gallery/test1.gallery +2 -0
  490. data/test/fixtures/tc_filehandler_gallery/test1.jpg +0 -0
  491. data/test/fixtures/tc_filehandler_gallery/test2.jpg +0 -0
  492. data/test/fixtures/tc_filehandler_gallery/test3.jpg +0 -0
  493. data/test/fixtures/tc_filehandler_gallery/test4.jpg +0 -0
  494. data/test/fixtures/tc_filehandler_page/testdata.yaml +10 -0
  495. data/test/fixtures/tc_menustyles_default/menustyle.rb +7 -0
  496. data/test/fixtures/tc_node/nodes.yaml +64 -0
  497. data/test/fixtures/tc_plugin/handlerplugin.rb +15 -0
  498. data/test/fixtures/tc_plugin/plugin1.rb +33 -0
  499. data/test/fixtures/tc_plugin/plugin2.rb +8 -0
  500. data/test/fixtures/tc_tags_includefile/testfile +1 -0
  501. data/test/fixtures/tc_tags_tag_processor/test_file1 +1 -0
  502. data/test/fixtures/tc_tags_tag_processor/testtag.rb +17 -0
  503. data/test/fixtures/tc_website/correct.yaml +6 -0
  504. data/test/fixtures/tc_website/incorrect_structure.yaml +2 -0
  505. data/test/fixtures/tc_website/incorrect_yaml.yaml +5 -0
  506. data/test/fixtures/tc_website/meta_info_test.yaml +10 -0
  507. data/test/fixtures/tc_website/testdir/README +1 -0
  508. data/test/fixtures/tc_website/testdir/falsedir/README +1 -0
  509. data/test/runtests.rb +2 -0
  510. data/test/unittests/tc_composite.rb +82 -0
  511. data/test/unittests/tc_config.rb +18 -0
  512. data/test/unittests/tc_content.rb +88 -0
  513. data/test/unittests/tc_contentconverters_default.rb +13 -0
  514. data/test/unittests/tc_contentconverters_html.rb +16 -0
  515. data/test/unittests/tc_contentconverters_markdown.rb +22 -0
  516. data/test/unittests/tc_contentconverters_rdoc.rb +16 -0
  517. data/test/unittests/tc_contentconverters_textile.rb +22 -0
  518. data/test/unittests/tc_contentconverters_xmlbuilder.rb +22 -0
  519. data/test/unittests/tc_filehandler_copy.rb +65 -0
  520. data/test/unittests/tc_filehandler_directory.rb +134 -0
  521. data/test/unittests/tc_filehandler_filehandler.rb +294 -0
  522. data/test/unittests/tc_filehandler_gallery.rb +165 -0
  523. data/test/unittests/tc_filehandler_page.rb +183 -0
  524. data/test/unittests/tc_filehandler_template.rb +60 -0
  525. data/test/unittests/tc_htmlvalidators_default.rb +12 -0
  526. data/test/unittests/tc_htmlvalidators_xmllint.rb +19 -0
  527. data/test/unittests/tc_languages.rb +57 -0
  528. data/test/unittests/tc_listener.rb +72 -0
  529. data/test/unittests/tc_menustyles_default.rb +51 -0
  530. data/test/unittests/tc_menustyles_horizontal.rb +18 -0
  531. data/test/unittests/tc_menustyles_horizontal_dropdown.rb +18 -0
  532. data/test/unittests/tc_menustyles_section.rb +59 -0
  533. data/test/unittests/tc_menustyles_vertical.rb +79 -0
  534. data/test/unittests/tc_menustyles_vertical_dropdown.rb +18 -0
  535. data/test/unittests/tc_node.rb +202 -0
  536. data/test/unittests/tc_plugin.rb +214 -0
  537. data/test/unittests/tc_resourcemanager.rb +42 -0
  538. data/test/unittests/tc_smileyreplacer.rb +25 -0
  539. data/test/unittests/tc_syntax_highlighter.rb +30 -0
  540. data/test/unittests/tc_tags_block.rb +27 -0
  541. data/test/unittests/tc_tags_breadcrumbtrail.rb +22 -0
  542. data/test/unittests/tc_tags_date.rb +15 -0
  543. data/test/unittests/tc_tags_download.rb +32 -0
  544. data/test/unittests/tc_tags_executecommand.rb +37 -0
  545. data/test/unittests/tc_tags_includefile.rb +53 -0
  546. data/test/unittests/tc_tags_langbar.rb +42 -0
  547. data/test/unittests/tc_tags_menu.rb +50 -0
  548. data/test/unittests/tc_tags_meta.rb +19 -0
  549. data/test/unittests/tc_tags_relocatable.rb +66 -0
  550. data/test/unittests/tc_tags_sitemap.rb +33 -0
  551. data/test/unittests/tc_tags_tag_processor.rb +107 -0
  552. data/test/unittests/tc_tags_wikilink.rb +22 -0
  553. data/test/unittests/tc_treewalker.rb +44 -0
  554. data/test/unittests/tc_website.rb +188 -0
  555. metadata +829 -312
  556. data/bin/webgen-gallery-editor +0 -654
  557. data/bin/webgen-gui +0 -10
  558. data/data/webgen/website_templates/default/config.yaml +0 -2
  559. data/doc/plugin/clidesc.rb +0 -46
  560. data/doc/plugin/source.rb +0 -21
  561. data/doc/src/about.page +0 -22
  562. data/doc/src/documentation/cli.page +0 -12
  563. data/doc/src/documentation/plugins/contenthandlers/html.page +0 -11
  564. data/doc/src/documentation/plugins/contenthandlers/index.page +0 -7
  565. data/doc/src/documentation/plugins/contenthandlers/markdown.page +0 -11
  566. data/doc/src/documentation/plugins/contenthandlers/rdoc.page +0 -11
  567. data/doc/src/documentation/plugins/contenthandlers/textile.page +0 -11
  568. data/doc/src/documentation/plugins/coreplugins/configuration.page +0 -12
  569. data/doc/src/documentation/plugins/coreplugins/index.page +0 -7
  570. data/doc/src/documentation/plugins/coreplugins/logging.page +0 -13
  571. data/doc/src/documentation/plugins/coreplugins/resourcemanager.page +0 -34
  572. data/doc/src/documentation/plugins/filehandlers/backing.page +0 -46
  573. data/doc/src/documentation/plugins/filehandlers/copy.page +0 -12
  574. data/doc/src/documentation/plugins/filehandlers/directoryhandler.page +0 -35
  575. data/doc/src/documentation/plugins/filehandlers/gallery.page +0 -86
  576. data/doc/src/documentation/plugins/filehandlers/index.page +0 -34
  577. data/doc/src/documentation/plugins/filehandlers/page.page +0 -170
  578. data/doc/src/documentation/plugins/filehandlers/template.page +0 -21
  579. data/doc/src/documentation/plugins/gallerylayouters/index.page +0 -18
  580. data/doc/src/documentation/plugins/htmlvalidators/index.page +0 -6
  581. data/doc/src/documentation/plugins/htmlvalidators/xmllint.page +0 -14
  582. data/doc/src/documentation/plugins/menustyles/horizontal.page +0 -21
  583. data/doc/src/documentation/plugins/menustyles/index.page +0 -12
  584. data/doc/src/documentation/plugins/menustyles/partial.page +0 -27
  585. data/doc/src/documentation/plugins/menustyles/vertical.page +0 -32
  586. data/doc/src/documentation/plugins/menustyles/verticaldropdown.page +0 -23
  587. data/doc/src/documentation/plugins/miscplugins/index.page +0 -7
  588. data/doc/src/documentation/plugins/tags/breadcrumbtrail.page +0 -20
  589. data/doc/src/documentation/plugins/tags/date.page +0 -19
  590. data/doc/src/documentation/plugins/tags/download.page +0 -23
  591. data/doc/src/documentation/plugins/tags/executecommand.page +0 -18
  592. data/doc/src/documentation/plugins/tags/includefile.page +0 -15
  593. data/doc/src/documentation/plugins/tags/index.page +0 -44
  594. data/doc/src/documentation/plugins/tags/langbar.page +0 -27
  595. data/doc/src/documentation/plugins/tags/menu.de.page +0 -12
  596. data/doc/src/documentation/plugins/tags/menu.page +0 -19
  597. data/doc/src/documentation/plugins/tags/multilang.de.page +0 -4
  598. data/doc/src/documentation/plugins/tags/multilang.fr.page +0 -4
  599. data/doc/src/documentation/plugins/tags/multilang.page +0 -4
  600. data/doc/src/documentation/plugins/tags/relocatable.page +0 -16
  601. data/doc/src/documentation/plugins/tags/resource.page +0 -22
  602. data/doc/src/documentation/plugins/tags/sitemap.page +0 -17
  603. data/doc/src/documentation/plugins/tags/wikilink.page +0 -18
  604. data/doc/src/documentation/webgen_gallery_editor.page +0 -82
  605. data/doc/src/images/screenshots/wge-image.png +0 -0
  606. data/doc/src/images/screenshots/wge-layout-preview.png +0 -0
  607. data/doc/src/images/screenshots/wge-main-disabled.png +0 -0
  608. data/doc/src/images/screenshots/wge-main.png +0 -0
  609. data/doc/src/meta.info +0 -30
  610. data/doc/src/screenshots.gallery +0 -33
  611. data/install.rb +0 -19
  612. data/lib/webgen.rb +0 -277
  613. data/lib/webgen/plugins/contenthandlers/markdown.rb +0 -50
  614. data/lib/webgen/plugins/coreplugins/logging.rb +0 -101
  615. data/lib/webgen/plugins/filehandlers/backing.rb +0 -159
  616. data/lib/webgen/plugins/gallerylayouters/default.rb +0 -152
  617. data/lib/webgen/plugins/menustyles/partial.rb +0 -95
  618. data/lib/webgen/plugins/tags/tags.rb +0 -254
@@ -0,0 +1,334 @@
1
+ load_plugin 'webgen/plugins/filehandlers/filehandler'
2
+
3
+ require 'rubygems'
4
+ require 'RMagick'
5
+
6
+ module Collage
7
+
8
+ class Layouter < Webgen::Plugin
9
+
10
+ infos( :name => 'GalleryLayouter/slides',
11
+ :author => Webgen::AUTHOR,
12
+ :summary => 'Handles additional tasks for the gallery layout \'slides\''
13
+ )
14
+
15
+ depends_on 'Core/ResourceManager'
16
+
17
+ def initialize( plugin_manager )
18
+ super
19
+ @plugin_manager['Core/ResourceManager'].append_data( 'webgen-css', '
20
+ .thumb {
21
+ display:block;
22
+ }
23
+ ')
24
+ end
25
+
26
+ def handle_gallery( ginfo, parent )
27
+ # Create collage node
28
+ collage_writer = @plugin_manager['File/CollageWriter']
29
+ file_handler = @plugin_manager['Core/FileHandler']
30
+ node = file_handler.create_node( collage_name( ginfo ), parent, collage_writer ) do |fn, parent, h, mi|
31
+ h.create_node( fn, parent, mi, {:parent => parent, :ginfo => ginfo} )
32
+ end
33
+ ginfo[:collage_node] = node
34
+
35
+ # Create collage thumbnail node
36
+ collage_thumb_writer = @plugin_manager['File/CollageThumbWriter']
37
+ node = file_handler.create_node( collage_thumb_name( ginfo ), parent, collage_thumb_writer ) do |fn, parent, h, mi|
38
+ h.create_node( fn, parent, mi, {:parent => parent, :ginfo => ginfo} )
39
+ end
40
+ ginfo[:collage_thumb_node] = node
41
+
42
+ # Create background slide
43
+ slide_writer = @plugin_manager['File/SlideWriter']
44
+ node = file_handler.create_node( slide_name( ginfo ), parent, slide_writer ) do |fn, parent, h, mi|
45
+ h.create_node( fn, parent, mi, {:parent => parent, :ginfo => ginfo} )
46
+ end
47
+ ginfo[:slide_node] = node
48
+
49
+ slide_url = ginfo[:slide_node].to_url
50
+ css_url = slide_url + ( '/' + @plugin_manager['Core/ResourceManager'].get_resource( 'webgen-css' ).output_path )
51
+
52
+ @plugin_manager['Core/ResourceManager'].append_data( 'webgen-css', "
53
+ .thumb-#{collage_title(ginfo)} {
54
+ background: url(\"#{slide_url.route_from(css_url)}\") 0 0 no-repeat;
55
+ width: #{ginfo[:slide_node].slide_size[0]}px;
56
+ height: #{ginfo[:slide_node].slide_size[0]}px;
57
+ }
58
+ .thumb-#{collage_title(ginfo)} img {
59
+ padding: #{ginfo[:slide_node].slide_border_width}px;
60
+ }
61
+ .thumb-#{collage_title(ginfo)} img:hover {
62
+ border: 1px solid black;
63
+ }
64
+
65
+ }")
66
+ end
67
+
68
+ #######
69
+ private
70
+ #######
71
+
72
+ def collage_title( ginfo )
73
+ ginfo['title'].tr( ' ', '_' )
74
+ end
75
+
76
+ def collage_name( ginfo )
77
+ collage_title( ginfo ) + '_collage.jpg'
78
+ end
79
+
80
+ def collage_thumb_name( ginfo )
81
+ collage_title( ginfo ) + '_collage_tn.jpg'
82
+ end
83
+
84
+ def slide_name( ginfo )
85
+ collage_title( ginfo ) + '_slide.png'
86
+ end
87
+
88
+ end
89
+
90
+
91
+ class SlideWriter < FileHandlers::DefaultHandler
92
+
93
+ include Magick
94
+
95
+ infos( :name => 'File/SlideWriter',
96
+ :author => Webgen::AUTHOR,
97
+ :summary => 'Generates a slide background for image thumbnails' )
98
+
99
+ param 'borderWidth', 10, 'The width of the slide border'
100
+ param 'color', '#ffffff', 'The color of the slide'
101
+
102
+ def create_node( path, parent, meta_info, data )
103
+ node = Node.new( parent, File.basename( path ) )
104
+ node.meta_info.update( meta_info )
105
+ node.node_info[:data] = data
106
+ node.node_info[:processor] = self
107
+
108
+ node
109
+ end
110
+
111
+ def slide_size( node )
112
+ (node.node_info[:data][:ginfo]['thumbnailSize'] || param( 'thumbnailSize', 'File/ThumbnailWriter' )).split('x').collect{ |s| s.to_i + slide_border_width( node )*2 }
113
+ end
114
+
115
+ def slide_color( node )
116
+ node.node_info[:data][:ginfo]['slideColor'] || param( 'color' )
117
+ end
118
+
119
+ def slide_border_width( node )
120
+ node.node_info[:data][:ginfo]['slideBorderWidth'] || param( 'borderWidth' )
121
+ end
122
+
123
+ def create_slide( node )
124
+ return if node.node_info[:slide]
125
+
126
+ ginfo = node.node_info[:data][:ginfo]
127
+
128
+ width, height = node.slide_size
129
+ border_width = node.slide_border_width
130
+
131
+ slide = Image.new( width, height ) { self.background_color = 'transparent' }
132
+
133
+ gc = Magick::Draw.new
134
+ gc.fill_opacity(0)
135
+ gc.stroke( node.slide_color )
136
+ gc.stroke_width( border_width )
137
+ gc.roundrectangle( border_width/2, border_width/2, width-border_width/2, height-border_width/2, 5, 5)
138
+ gc.draw(slide)
139
+
140
+ node.node_info[:slide] = slide
141
+ end
142
+
143
+ def write_node( node )
144
+ return if File.exists?( node.full_path ) #TODO always create? what settings to check?
145
+ create_slide( node )
146
+ node.node_info[:slide].write( node.full_path )
147
+ end
148
+
149
+ end
150
+
151
+
152
+ # Most of the code in create_slide, backandforth and creat_collage is from Corban Brook from
153
+ # his tutorial
154
+ # http://schf.uc.org/articles/2006/10/18/render-greatlooking-collages-with-ruby-and-rmagick
155
+ # and has slightly been adapted for use in this gallery style.
156
+ class CollageWriter < FileHandlers::DefaultHandler
157
+
158
+ include Magick
159
+
160
+ infos( :name => 'File/CollageWriter',
161
+ :author => Webgen::AUTHOR,
162
+ :summary => 'Generates a pretty collage for the main gallery page' )
163
+
164
+ param 'size', '700x300', 'The size of the generated collage'
165
+ param 'color', '#CCCCCC', 'The background color of the collage'
166
+
167
+ def create_node( path, parent, meta_info, data )
168
+ node = Node.new( parent, File.basename( path ) )
169
+ node.meta_info.update( meta_info )
170
+ node.node_info[:data] = data
171
+ node.node_info[:processor] = self
172
+ node
173
+ end
174
+
175
+ def collage_size( node )
176
+ (node.node_info[:data][:ginfo]['collageSize'] || param( 'size' )).split('x').collect{ |s| s.to_i}
177
+ end
178
+
179
+ def collage_color( node )
180
+ node.node_info[:data][:ginfo]['collageColor'] || param( 'color' )
181
+ end
182
+
183
+ def create_collage( node )
184
+ return if node.node_info[:collage]
185
+ parent = node.node_info[:data][:parent]
186
+ ginfo = node.node_info[:data][:ginfo]
187
+
188
+ ginfo[:slide_node].create_slide
189
+
190
+ width, height = node.collage_size
191
+ slide_border_width = ginfo[:slide_node].slide_border_width
192
+ slide_width, slide_height = ginfo[:slide_node].slide_size
193
+
194
+ # create background
195
+ create_collage_background( node )
196
+ collage = node.node_info[:collage_background]
197
+
198
+ # fetch four random images
199
+ images = []
200
+ (1..4).each do
201
+ gal_number = rand(ginfo.galleries.length)
202
+ pic_number = rand(ginfo.galleries[gal_number].images.length)
203
+ redo if images.include?( [gal_number, pic_number] )
204
+ images << [gal_number, pic_number]
205
+ end
206
+
207
+ # create main image
208
+ base_image = images.shift
209
+ base_image = ginfo.galleries[base_image[0]].images[base_image[1]]
210
+ base_image_file = File.join( parent.node_info[:src], base_image.filename )
211
+ photo = Image.read( base_image_file ).first
212
+ photo.crop_resized!( width - slide_border_width*2, height*2/3 - slide_border_width )
213
+ collage.composite!( photo, slide_border_width, slide_border_width, OverCompositeOp )
214
+
215
+ # Arrange the other three images
216
+ (images.size-1).downto(0) do |i|
217
+ image = ginfo.galleries[i[0]].images[i[1]]
218
+ image_file = File.join( parent.node_info[:src], image.filename )
219
+ slide = create_slide( ginfo, image_file, slide_width, slide_height, slide_border_width )
220
+ collage.composite!( slide, width/2 - slide_width*3/2 + i * slide_width*2/3 + rand(15),
221
+ height*2/3 - slide_height*2/3 + rand(15), OverCompositeOp)
222
+ end
223
+
224
+ node.node_info[:collage] = collage
225
+ end
226
+
227
+ def write_node( node )
228
+ return if File.exists?( node.full_path ) #TODO always create? what settings to check?
229
+ create_collage( node )
230
+ node.node_info[:collage].write( node.full_path )
231
+ end
232
+
233
+ #######
234
+ private
235
+ #######
236
+
237
+ def create_collage_background( node )
238
+ return if node.node_info[:collage_background]
239
+
240
+ ginfo = node.node_info[:data][:ginfo]
241
+ width, height = node.collage_size
242
+ color = node.collage_color
243
+ slide_color = ginfo[:slide_node].slide_color
244
+ slide_border_width = ginfo[:slide_node].slide_border_width
245
+
246
+ temp = Image.new( width, height ) { self.background_color = color }
247
+ pic = Image.new( width, height) { self.background_color = 'transparent' }
248
+
249
+ gc = Draw.new
250
+ gc.fill( color )
251
+ gc.stroke( slide_color )
252
+ gc.stroke_width( slide_border_width )
253
+ gc.rectangle( slide_border_width/2, slide_border_width/2, width-slide_border_width/2-3, height*2/3 )
254
+ gc.draw(pic)
255
+
256
+ shadow = pic.shadow( 0, 0, 0.1, '20%' )
257
+ temp.composite!( shadow, 3, 3, OverCompositeOp )
258
+ temp.composite!( pic, 0, 0, OverCompositeOp )
259
+
260
+ node.node_info[:collage_background] = temp
261
+ end
262
+
263
+ def backandforth(degree)
264
+ polarity = rand(2) * -1
265
+ (polarity < 0 ? rand(degree) * polarity : rand(degree) )
266
+ end
267
+
268
+ def create_slide( ginfo, filename, s_width, s_height, s_border_width )
269
+ slide = ginfo[:slide_node].node_info[:slide].clone
270
+ slide_background = Image.new( slide.columns, slide.rows ) { self.background_color = 'transparent' }
271
+ photo = Image.read( filename ).first
272
+
273
+ i_width = s_width - s_border_width*2
274
+ i_height = s_height - s_border_width*2
275
+
276
+ # create a grey scale gradient fill for our mask
277
+ mask_fill = GradientFill.new( 0, 0, 0, i_height, '#FFFFFF', '#AAAAAA' )
278
+ mask = Image.new( i_width, i_height, mask_fill )
279
+ # create thumbnail sized square image of photo
280
+ photo.crop_resized!( i_width, i_height )
281
+
282
+ # apply alpha mask to slide
283
+ photo.matte = true
284
+ mask.matte = false
285
+ photo.composite!( mask, 0, 0, CopyOpacityCompositeOp )
286
+
287
+ # composite photo and slide on transparent background
288
+ slide_background.composite!( photo, s_border_width, s_border_width, OverCompositeOp)
289
+ slide_background.composite!( slide, 0, 0, OverCompositeOp)
290
+
291
+ # rotate slide a little bit
292
+ slide_background.rotate!( backandforth(40) )
293
+
294
+ # create workspace to apply shadow
295
+ workspace = Image.new( slide_background.columns+5, slide_background.rows+5 ) { self.background_color = 'transparent' }
296
+ shadow = slide_background.shadow( 0, 0, 0.1, '20%' )
297
+ workspace.composite!( shadow, 3, 3, OverCompositeOp )
298
+ workspace.composite!( slide_background, NorthWestGravity, OverCompositeOp )
299
+
300
+ return workspace
301
+ end
302
+
303
+ end
304
+
305
+
306
+ class CollageThumbWriter < FileHandlers::DefaultHandler
307
+
308
+ include Magick
309
+
310
+ infos( :name => 'File/CollageThumbWriter',
311
+ :author => Webgen::AUTHOR,
312
+ :summary => 'Generates a thumbnail of a collage image' )
313
+
314
+ def create_node( path, parent, meta_info, data )
315
+ node = Node.new( parent, File.basename( path ) )
316
+ node.meta_info.update( meta_info )
317
+ node.node_info[:data] = data
318
+ node.node_info[:processor] = self
319
+ node
320
+ end
321
+
322
+ def write_node( node )
323
+ return if File.exists?( node.full_path ) #TODO always create? what settings to check?
324
+ ginfo = node.node_info[:data][:ginfo]
325
+ ginfo[:collage_node].create_collage
326
+ collage = ginfo[:collage_node].node_info[:collage]
327
+ collage.change_geometry( ginfo[:slide_node].slide_size.collect {|s| s*2}.join('x') ) {|c,r,i| i.resize!( c, r )}
328
+ collage.write( node.full_path )
329
+ end
330
+
331
+ end
332
+
333
+
334
+ end
@@ -1,39 +1,37 @@
1
1
  require 'set'
2
2
 
3
- module WebgenDocuPlugins
3
+ class ListPluginParametersTag < Tags::DefaultTag
4
4
 
5
- class ListPluginParametersTag < Tags::DefaultTag
5
+ infos( :name => 'WebgenDocu/PluginParameterRefTag',
6
+ :summary => "Lists all available plugin parameters"
7
+ )
6
8
 
7
- summary "Lists all available plugin parameters"
9
+ register_tag 'listPluginParameters'
8
10
 
9
- tag 'listPluginParameters'
10
-
11
- def initialize
12
- super
13
- @processOutput = false
14
- end
11
+ def initialize( plugin_manager )
12
+ super
13
+ @process_output = false
14
+ end
15
15
 
16
- def process_tag( tag, node, refNode )
17
- plugins = Webgen::Plugin.config.select {|k,v| k.name !~ /^WebgenDocuPlugins::/ }
16
+ def process_tag( tag, chain )
17
+ plugins = @plugin_manager.plugins.select {|k,v| k !~ /^WebgenDocu/ }
18
18
 
19
- mydata = {}
20
- plugins.each do |klass, data|
21
- next if data.params.nil?
22
- (mydata[klass.name[/^.*?(?=::)/].gsub(/([A-Z][a-z])/, ' \1').strip] ||= []) << data
23
- end
19
+ mydata = {}
20
+ plugins.each do |name, plugin|
21
+ next if plugin.class.config.params.empty?
22
+ (mydata[name[/^.*?(?=\/)/].gsub(/([A-Z][a-z])/, ' \1').strip] ||= []) << plugin
23
+ end
24
24
 
25
- output = "<dl>\n"
26
- mydata.sort.each do |cat, plugins|
27
- output << "<dt>#{cat}</dt><dd><dl>"
28
- plugins.sort {|a,b| a.plugin <=> b.plugin}.each do |data|
29
- output << "<dt>#{data.plugin}</dt>\n"
30
- output << "<dd>#{Webgen::Plugin['DescribeTag'].format_params( data.params )}</dd>\n"
31
- end
32
- output << "</dl></dd>"
25
+ output = "<dl>\n"
26
+ mydata.sort.each do |cat, plugins|
27
+ output << "<dt>#{cat}</dt><dd><dl>"
28
+ plugins.sort {|a,b| a.class.plugin_name <=> b.class.plugin_name}.each do |data|
29
+ output << "<dt>#{data.class.plugin_name}</dt>\n"
30
+ output << "<dd>#{@plugin_manager['WebgenDocu/DescribeTag'].format_params( data.class.config.params )}</dd>\n"
33
31
  end
34
- output << "</dl>\n"
32
+ output << "</dl></dd>"
35
33
  end
36
-
34
+ output << "</dl>\n"
37
35
  end
38
36
 
39
37
  end
@@ -1,30 +1,28 @@
1
- module WebgenDocuPlugins
1
+ class PredefinedResourcesTag < Tags::DefaultTag
2
2
 
3
- class PredefinedResourcesTag < Tags::DefaultTag
3
+ infos( :name => 'WebgenDocu/ResourcesTag',
4
+ :summary => "Creates a table of all predefined resources"
5
+ )
4
6
 
5
- summary "Creates a table of all predefined resources"
7
+ register_tag 'predefinedResources'
6
8
 
7
- tag 'predefinedResources'
8
-
9
- def initialize
10
- super
11
- @processOutput = false
12
- end
9
+ def initialize( pm )
10
+ super
11
+ @process_output = false
12
+ end
13
13
 
14
- def process_tag( tag, node, refNode )
15
- res = Webgen::Plugin.config[CorePlugins::ResourceManager].resources
16
- output = '<table style="width: 100%; border: 1px solid black" summary="List of predefined resources" rules="cols" frame="border">'
17
- output << '<thead><tr><th>Name</th><th>Type</th><th>Output path</th><th>Description</th></tr></thead>'
18
- output << '<tbody>'
19
- res.sort.each do |name, r|
20
- logger.info { "At resource #{r.name}..." }
21
- next unless r.predefined
22
- logger.info { "Describing resource #{r.name}..." }
23
- output << "<tr><td>#{r.name}</td><td>#{r.type.to_s}</td><td>#{r.output_path}</td><td>#{r.predefined}</td></tr>"
24
- end
25
- output << '</tbody></table>'
14
+ def process_tag( tag, chain )
15
+ res = @plugin_manager['Core/ResourceManager'].resources
16
+ output = '<table class="resources" summary="List of predefined resources">'
17
+ output << '<thead><tr><th>Name</th><th>Type</th><th>Output path</th><th>Description</th></tr></thead>'
18
+ output << '<tbody>'
19
+ res.sort.each do |name, r|
20
+ log(:debug) { "At resource #{r.name}..." }
21
+ next unless r.predefined
22
+ log(:debug) { "Describing resource #{r.name}..." }
23
+ output << "<tr><td>#{r.name}</td><td>#{r.type.to_s}</td><td>#{r.output_path}</td><td>#{r.predefined}</td></tr>"
26
24
  end
27
-
25
+ output << '</tbody></table>'
28
26
  end
29
27
 
30
28
  end
@@ -1,255 +1,434 @@
1
- /*
2
- #5C73B8 -> background
3
- #405080 -> headings
4
- #CFD4E6 -> code
5
- #3054BF -> other
6
- */
1
+ /* andreas09 v1.0 (Dec 10th 2005) - An open source template by Andreas Viklund -
2
+ http://andreasviklund.com. Free to use for any purpose as long as the proper credits are given to
3
+ the original author. */
4
+ /* modified 2006 by Thomas Leitner */
7
5
 
8
6
  body {
9
- margin: 0px 2em;
10
- padding: 0px;
11
- font-size: 12px;
12
- font-family: Verdana, Arial, Helvetica, sans-serif;
13
- border: 1px solid black;
14
- color: black;
7
+ background:#8b8b8b;
8
+ color:#303030;
9
+ font:76% Verdana,Tahoma,Arial,sans-serif;
10
+ margin:0;
11
+ padding:0;
12
+ text-align:center;
15
13
  }
16
14
 
17
- h1, h2, h3, h4, h5 { color: #405080}
15
+ a {
16
+ color:#505050;
17
+ font-weight:bold;
18
+ text-decoration:none;
19
+ }
18
20
 
19
- a:visited { color: #405080; }
20
- a { color: #5C73B8; }
21
- .bar a { color: white }
22
- .bar a:visited { color: white }
21
+ a:hover {
22
+ color:#808080;
23
+ text-decoration:underline;
24
+ }
23
25
 
24
- #all { background-color: #CFD4E6; }
26
+ p {
27
+ line-height:1.5em;
28
+ margin:0 0 15px;
29
+ }
30
+
31
+ /*** Main container ***/
25
32
 
26
- #header {
27
- border-bottom: 1px solid black;
28
- padding: 1ex;
29
- background-color: #5C73B8;
33
+ #container {
34
+ background:#f0f0f0 url(images/bodybg.jpg) repeat-x;
35
+ color:#303030;
36
+ margin:0;
37
+ min-width:770px;
38
+ padding:0;
39
+ text-align:left;
40
+ width:100%;
30
41
  }
31
- #header img {
32
- padding-right: 5em;
42
+
43
+ /*** Header section ***/
44
+
45
+ #sitename {
46
+ color:#ffffff;
47
+ height:92px;
48
+ margin:0 20px 10px;
49
+ text-align:left;
33
50
  }
34
- #header h1 {
35
- margin: 0ex;
36
- font-size: 300%;
37
- font-style: italic;
38
- font-weight: normal;
39
- color: white;
51
+
52
+ #sitename h1,#sitename h2 {
53
+ font-weight:400;
54
+ letter-spacing:-1px;
55
+ margin:0;
56
+ padding:0;
40
57
  }
41
58
 
42
- #headerbar { border-bottom: 1px solid black; }
43
- #footer { border-top: 1px solid black; }
59
+ #sitename h1 {
60
+ font-size:2.4em;
61
+ padding-top:20px;
62
+ }
44
63
 
45
- #body {
46
- margin-left: 17em;
47
- margin-right: 20px;
48
- padding: 10px;
64
+ #sitename h2 {
65
+ font-size:1.6em;
49
66
  }
50
67
 
51
- .bar {
52
- clear: both;
53
- padding: 3px;
54
- text-align: center;
55
- font-size: 90%;
56
- background-color: #3054BF;
68
+ /*** Horizontal menu ***/
69
+
70
+ #mainmenu {
71
+ float:left;
72
+ margin-bottom:25px;
57
73
  }
58
74
 
59
- .left, .right {
60
- padding: 3px 1em;
75
+ #mainmenu ul {
76
+ font-size:16px;
77
+ margin:0;
78
+ padding:0;
61
79
  }
62
80
 
63
- .left {
64
- float: left;
65
- text-align: left;
81
+ #mainmenu li {
82
+ float:left;
83
+ height:35px;
84
+ list-style:none;
85
+ margin:0;
86
+ padding:0;
66
87
  }
67
88
 
68
- .right {
69
- float: right;
70
- text-align: right;
89
+ #mainmenu a, #mainmenu span {
90
+ border-right:1px solid #b0b0b0;
91
+ color:#606060;
92
+ display:block;
93
+ font-size:0.7em;
94
+ padding:11px 10px 10px;
95
+ text-transform:uppercase;
71
96
  }
72
97
 
73
- /** styling the website menus **/
98
+ #mainmenu span {
99
+ font-weight: bold;
100
+ }
74
101
 
75
- #menu, #quickmenu {
76
- float: left;
77
- margin: 1em;
78
- border: 1px solid black;
79
- width: 15em;
80
- text-align: center;
81
- background: #3054bf;
102
+ #mainmenu a:hover {
103
+ background:#f0f0f0 url(images/menuhover.jpg) top left repeat-x;
104
+ color:#505050;
105
+ text-decoration:none;
82
106
  }
83
107
 
84
- #quickmenu {
85
- clear: both;
108
+ #mainmenu li.webgen-menu-item-selected a, #mainmenu li.webgen-menu-item-selected span, #mainmenu li.webgen-menu-submenu-inhierarchy a, #mainmenu li.webgen-menu-submenu-inhierarchy span {
109
+ background:#f0f0f0 url(images/menuhover.jpg) top left repeat-x;
110
+ color:#505050;
111
+ text-decoration:none;
86
112
  }
87
113
 
88
- /** styling the sample menus **/
114
+ /*** Content wrap ***/
89
115
 
90
- /* horizontal menu */
116
+ #wrap {
117
+ clear:both;
118
+ font-size:0.9em;
119
+ padding:0;
120
+ }
91
121
 
92
- .horiz-menu a { color: white }
93
- .horiz-menu a:visited { color: white }
122
+ /*** Sidebars ***/
94
123
 
95
- .horiz-menu {
96
- padding: 3px;
124
+ #leftside, #rightside {
125
+ margin:0;
126
+ padding:0 10px 10px;
127
+ width:165px;
97
128
  }
98
129
 
99
- .horiz-menu ul {
100
- background-color: #3054BF;
130
+ #leftside {
131
+ float:left;
132
+ margin-right:10px;
101
133
  }
102
134
 
103
- /* vertical menu */
135
+ #rightside {
136
+ float:right;
137
+ margin-left:10px;
138
+ }
139
+
140
+ #leftside h1, #rightside h1 {
141
+ color:#505050;
142
+ font-size:1.6em;
143
+ font-weight:bold;
144
+ letter-spacing:-1px;
145
+ margin: 0 0 12px;
146
+ }
104
147
 
105
- .vert-menu ul {
106
- list-style-type: none;
148
+ #leftside h2, #rightside h2 {
149
+ font-size:1.2em;
150
+ margin: 0 0 20px;
107
151
  }
108
152
 
109
- .vert-menu li {
110
- border-left: 3px solid #ccc;
153
+ #leftside p, #leftside ul.list, #rightside p {
154
+ font-size:0.9em;
155
+ line-height:1.4em;
156
+ margin:0 0 16px 10px;
111
157
  }
112
158
 
113
- .vert-menu .webgen-menu-item-selected {
114
- border-left: 3px solid #405080;
159
+ #leftside ul.list {
160
+ margin: 0px;
161
+ padding: 0px;
115
162
  }
116
163
 
117
- .vert-menu .webgen-menu-submenu > a {
118
- background-color: #ccc;
164
+ #leftside ul.list li {
165
+ margin:0 0 8px 25px;
166
+ padding: 0px;
119
167
  }
120
168
 
121
- .vert-menu .webgen-menu-submenu-inhierarchy > a {
122
- background-color: #aaa;
169
+ .linklist {
170
+ list-style:none;
171
+ margin:0 0 16px 10px;
172
+ padding:0;
123
173
  }
124
174
 
125
- /* partial menu */
175
+ .linklist li {margin-bottom:0.7em;}
126
176
 
127
- .partial-menu ul {
128
- background: #3054bf;
129
- margin: 0px;
177
+ /*** Sidebar menu ***/
178
+
179
+ #leftside .webgen-menu ul {
180
+ margin: 0 0 10px 0px;
130
181
  padding: 0px;
131
- list-style-type: none;
182
+ list-style: none;
132
183
  }
133
184
 
134
- .partial-menu ul { text-align: left; }
135
-
136
- .partial-menu li {
137
- margin: 0px;
138
- padding: 3px 1em;
185
+ #leftside .webgen-menu a, #leftside .webgen-menu span {
186
+ background:#e8e9ea;
187
+ border:1px solid #b0b0b0;
188
+ color:#606060;
189
+ display:block;
190
+ margin-top:4px;
191
+ padding:2px 4px 2px 4px;
192
+ position:relative;
193
+ width:140px;
139
194
  }
140
195
 
141
- .partial-menu .webgen-menu-item-selected {
196
+ #leftside .webgen-menu span {
142
197
  font-weight: bold;
143
198
  }
144
199
 
145
- .partial-menu .webgen-menu-submenu {
146
- background: #405080;
200
+ #leftside .webgen-menu a:hover, #leftside .webgen-menu li.webgen-menu-item-selected > a, #leftside .webgen-menu li.webgen-menu-item-selected > span, #leftside .webgen-menu li.webgen-menu-submenu-inhierarchy > a, #leftside .webgen-menu li.webgen-menu-submenu-inhierarchy > span {
201
+ background:#f8f9fa;
202
+ border:1px solid #909090;
203
+ color:#303030;
204
+ text-decoration:none;
147
205
  }
148
206
 
149
- .partial-menu a {
150
- color: white;
151
- display: block;
207
+ #leftside .webgen-menu ul ul {
208
+ margin-left: 8px;
152
209
  }
153
210
 
154
- .partial-menu a:visited { color: white; }
155
-
156
- .partial-menu ul li:hover a, .partial-menu ul li:hover a:visited { color: #3054bf; }
211
+ /*** Content ***/
157
212
 
158
- .partial-menu ul li:hover {
159
- background: #fff;
160
- color: #3054bf;
213
+ #navbar {
214
+ height: 15px;
215
+ margin-bottom: 5px;
216
+ padding: 2px;
161
217
  }
162
218
 
163
- /* horizontal dd menu */
219
+ .rightbox {
220
+ float: right;
221
+ padding-left: 10px;
222
+ }
164
223
 
165
- .horiz-dd-menu {
166
- background: #3054bf;
224
+ .leftbox {
167
225
  float: left;
226
+ padding-right: 10px;
168
227
  }
169
228
 
170
- .horiz-dd-menu a { color: white }
171
- .horiz-dd-menu a:visited { color: white }
172
229
 
173
- .horiz-dd-menu a {
174
- display: block;
175
- margin: 0px;
176
- padding: 3px 1em;
177
- text-align: left;
178
- background: #3054bf;
230
+ .content {
231
+ background-color:#fafcff;
232
+ border:1px solid #909090;
233
+ color:#2a2a2a;
234
+ padding:15px 20px 5px;
179
235
  }
180
236
 
181
- .horiz-dd-menu li.webgen-menu-submenu > a {
182
- background: #405080;
237
+ .content {margin:0 200px;}
238
+
239
+ .content h1, .content h2, .content h3 {
240
+ background-color:inherit;
241
+ color:#606060;
242
+ font-size: 2.0em;
243
+ font-weight:bold;
244
+ letter-spacing:-1px;
245
+ margin: 15px 0 10px;
246
+ padding:0;
183
247
  }
184
248
 
185
- .horiz-dd-menu li:hover > a {
186
- background: #fff;
187
- color: #3054bf;
249
+ .content h2 {
250
+ font-size:1.8em;
251
+ letter-spacing: 0px;
252
+ margin-bottom:10px;
188
253
  }
189
254
 
190
- /* vertical dd menu */
255
+ .content h3 {
256
+ font-size:1.6em;
257
+ letter-spacing: 0px;
258
+ margin-bottom:10px;
259
+ }
191
260
 
192
- .vert-dd-menu ul {
193
- background: #3054bf;
261
+ #inpage-menu {
262
+ padding: 3px;
263
+ margin-left: 0px;
264
+ margin-top: -15px;
265
+ margin-right: -20px;
266
+ float: right;
267
+ border-left: 1px solid #909090;
268
+ border-bottom: 1px solid #909090;
269
+ max-width: 250px;
270
+ background-color: inherit;
194
271
  }
195
272
 
196
- .vert-dd-menu a { color: white }
197
- .vert-dd-menu a:visited { color: white }
273
+ /*** Footer ***/
198
274
 
199
- .vert-dd-menu a {
200
- display: block;
201
- margin: 0px;
202
- padding: 3px 1em;
203
- text-align: left;
204
- background: #3054bf;
275
+ #footer {
276
+ background:#8b8b8b url(images/footerbg.jpg) top left repeat-x;
277
+ clear:both;
278
+ color:#d0d0d0;
279
+ font-size:0.9em;
280
+ font-weight:normal;
281
+ margin:0;
282
+ padding:20px 0;
283
+ text-align:center;
284
+ width:100%;
285
+ }
286
+
287
+ #footer a {
288
+ color:#d0d0d0;
289
+ font-weight:bold;
205
290
  }
206
291
 
207
- .vert-dd-menu li.webgen-menu-submenu > a {
208
- background: #405080;
292
+ /*** Various classes ***/
293
+
294
+ .thumbnail {
295
+ background:#fafbfc;
296
+ border:1px solid #b0b0b0;
297
+ margin:0 0 10px 10px;
298
+ padding:5px;
209
299
  }
210
300
 
211
- .vert-dd-menu li:hover > a {
212
- background: #fff;
213
- color: #3054bf;
301
+ .clearingdiv {
302
+ clear:both;
303
+ height:30px;
304
+ width:1px;
214
305
  }
215
306
 
216
- /** styling the content **/
307
+ .hide {display:none;}
308
+
309
+ /*** Text format ***/
217
310
 
218
- h2 {
311
+ .intro {
312
+ font-size:1.1em;
313
+ font-weight:bold;
314
+ letter-spacing:-1px;
315
+ }
316
+
317
+ .small {font-size:0.8em;}
318
+ .large {font-size:1.4em;}
319
+ .center {text-align:center;}
320
+ .right {text-align:right;}
321
+
322
+ /*** End of file ***/
323
+
324
+
325
+ /*** General style ***/
326
+ /*********************/
327
+
328
+ .content ul {
329
+ padding-left: 20px;
330
+ }
331
+
332
+ .content ul p {
333
+ margin-bottom: 0px;
334
+ }
335
+
336
+ .content li {
337
+ padding: 3px 0px;
338
+ }
339
+
340
+ /*** Other Styless ***/
341
+ /*******************************/
342
+
343
+ table.plugin-info {
344
+ margin: 10px 0px;
219
345
  padding: 0px;
220
- letter-spacing: 0.2em;
221
- font-size: 150%;
222
- font-weight: bold;
223
- border-bottom: 1px solid #405080;
224
346
  }
225
347
 
226
- pre {
227
- padding-left: 10px;
228
- margin: 0px 10px;
229
- border-left: 3px solid #5C73B8;
348
+ table.plugin-info th {
349
+ text-align: left;
350
+ width: 10em;
230
351
  }
231
352
 
232
- dt {
233
- font-weight: bold;
353
+ .param {
354
+ margin-bottom: 5px;
355
+ }
356
+
357
+ .param-name {
358
+ color: red;
234
359
  }
235
360
 
236
- .webgen-image {
237
- text-align: center;
361
+ .param-default-value {
362
+ color: blue;
238
363
  }
239
364
 
240
- .webgen-image img {
365
+ .param-description {
366
+ }
367
+
368
+ table.examples {
369
+ width: 100%;
241
370
  border: 1px solid black;
371
+ border-collapse: collapse;
372
+ margin-bottom: 10px;
242
373
  }
243
374
 
244
- .webgen-gallery {
245
- text-align: center;
375
+ table.examples th, table.examples td {
376
+ border: 1px solid black;
377
+ padding: 5px;
246
378
  }
247
379
 
248
- .webgen-gallery table {
380
+ table.resources {
249
381
  width: 100%;
382
+ border: 1px solid black;
383
+ border-collapse: collapse;
250
384
  }
251
385
 
252
- .webgen-gallery table td{
253
- text-align: center;
386
+ table.resources th, table.resources td {
254
387
  border: 1px solid black;
255
- }
388
+ padding: 5px;
389
+ }
390
+
391
+ .plugin-ref {
392
+ }
393
+
394
+ .param-ref {
395
+ }
396
+
397
+ .menu-example-horiz li {
398
+ margin-left: 2px;
399
+ margin-right: 2px;
400
+ border: 1px solid #333;
401
+ padding: 1px;
402
+ background-color: #ddd;
403
+ }
404
+
405
+ .menu-example-horiz ul {
406
+ margin-bottom: 15px;
407
+ }
408
+
409
+ .menu-example-horiz .webgen-menu-item-selected a, .menu-example-horiz .webgen-menu-submenu-inhierarchy a, .menu-example-horiz .webgen-menu-item-selected span, .menu-example-horiz .webgen-menu-submenu-inhierarchy span {
410
+ background-color: #880000;
411
+ color: white;
412
+ }
413
+
414
+
415
+
416
+
417
+ table.metainfo {
418
+ width: 100%;
419
+ border: 1px solid black;
420
+ border-collapse: collapse;
421
+ margin-bottom: 10px;
422
+ }
423
+
424
+ table.metainfo th, table.metainfo td {
425
+ border: 1px solid black;
426
+ padding: 2px;
427
+ }
428
+
429
+ pre {
430
+ margin-left: 10px;
431
+ margin-right: 10px;
432
+ background: #ccc;
433
+ border: 1px solid #aaa;
434
+ }