taskjuggler 0.0.2 → 0.0.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (432) hide show
  1. data/Rakefile +1 -0
  2. data/benchmarks/depends.tjp +2 -1
  3. data/benchmarks/htmltaskreport.tjp +2 -1
  4. data/doc/classes/AppConfig.html +124 -120
  5. data/doc/classes/Arguments.html +10 -6
  6. data/doc/classes/Object.html +229 -0
  7. data/doc/classes/String.html +35 -31
  8. data/doc/classes/TaskJuggler/Account.html +18 -18
  9. data/doc/classes/TaskJuggler/AccountAttribute.html +261 -0
  10. data/doc/classes/TaskJuggler/AccountScenario.html +12 -12
  11. data/doc/classes/TaskJuggler/Allocation.html +34 -30
  12. data/doc/classes/TaskJuggler/AllocationAttribute.html +70 -70
  13. data/doc/classes/TaskJuggler/AttributeBase.html +131 -147
  14. data/doc/classes/TaskJuggler/AttributeDefinition.html +38 -21
  15. data/doc/classes/TaskJuggler/BatchProcessor.html +313 -0
  16. data/doc/classes/TaskJuggler/Booking.html +22 -18
  17. data/doc/classes/TaskJuggler/BookingListAttribute.html +42 -42
  18. data/doc/classes/TaskJuggler/BooleanAttribute.html +40 -40
  19. data/doc/classes/TaskJuggler/CSVFile.html +28 -24
  20. data/doc/classes/TaskJuggler/Charge.html +22 -18
  21. data/doc/classes/TaskJuggler/ChargeListAttribute.html +30 -30
  22. data/doc/classes/TaskJuggler/ChargeSet.html +41 -37
  23. data/doc/classes/TaskJuggler/ChargeSetListAttribute.html +46 -46
  24. data/doc/classes/TaskJuggler/ColumnListAttribute.html +231 -0
  25. data/doc/classes/TaskJuggler/ColumnTable.html +23 -21
  26. data/doc/classes/TaskJuggler/DateAttribute.html +20 -20
  27. data/doc/classes/TaskJuggler/DefinitionListAttribute.html +162 -0
  28. data/doc/classes/TaskJuggler/DependencyListAttribute.html +46 -46
  29. data/doc/classes/TaskJuggler/DurationAttribute.html +30 -30
  30. data/doc/classes/TaskJuggler/FixnumAttribute.html +20 -20
  31. data/doc/classes/TaskJuggler/FlagListAttribute.html +42 -42
  32. data/doc/classes/TaskJuggler/FloatAttribute.html +30 -30
  33. data/doc/classes/TaskJuggler/FormatListAttribute.html +197 -0
  34. data/doc/classes/TaskJuggler/GanttChart.html +236 -207
  35. data/doc/classes/TaskJuggler/GanttContainer.html +46 -42
  36. data/doc/classes/TaskJuggler/GanttHeader.html +16 -12
  37. data/doc/classes/TaskJuggler/GanttHeaderScaleItem.html +16 -12
  38. data/doc/classes/TaskJuggler/GanttLine.html +28 -24
  39. data/doc/classes/TaskJuggler/GanttLoadStack.html +22 -18
  40. data/doc/classes/TaskJuggler/GanttMilestone.html +46 -42
  41. data/doc/classes/TaskJuggler/GanttRouter.html +104 -98
  42. data/doc/classes/TaskJuggler/GanttTaskBar.html +46 -42
  43. data/doc/classes/TaskJuggler/HTMLDocument.html +12 -12
  44. data/doc/classes/TaskJuggler/HTMLGraphics.html +12 -12
  45. data/doc/classes/TaskJuggler/Interval.html +126 -120
  46. data/doc/classes/TaskJuggler/IntervalListAttribute.html +46 -46
  47. data/doc/classes/TaskJuggler/JobInfo.html +284 -0
  48. data/doc/classes/TaskJuggler/Journal.html +197 -0
  49. data/doc/classes/TaskJuggler/JournalEntry.html +218 -0
  50. data/doc/classes/TaskJuggler/KeywordArray.html +179 -0
  51. data/doc/classes/TaskJuggler/KeywordDocumentation.html +445 -396
  52. data/doc/classes/TaskJuggler/Limits/Limit.html +34 -30
  53. data/doc/classes/TaskJuggler/Limits.html +68 -62
  54. data/doc/classes/TaskJuggler/LimitsAttribute.html +40 -40
  55. data/doc/classes/TaskJuggler/ListAttributeBase.html +207 -0
  56. data/doc/classes/TaskJuggler/Log.html +72 -68
  57. data/doc/classes/TaskJuggler/LogicalAttribute.html +38 -34
  58. data/doc/classes/TaskJuggler/LogicalExpression.html +16 -12
  59. data/doc/classes/TaskJuggler/LogicalExpressionAttribute.html +194 -0
  60. data/doc/classes/TaskJuggler/LogicalFlag.html +32 -32
  61. data/doc/classes/TaskJuggler/LogicalFunction.html +28 -24
  62. data/doc/classes/TaskJuggler/LogicalOperation.html +17 -13
  63. data/doc/classes/TaskJuggler/Macro.html +10 -6
  64. data/doc/classes/TaskJuggler/MacroParser.html +36 -36
  65. data/doc/classes/TaskJuggler/MacroTable.html +40 -36
  66. data/doc/classes/TaskJuggler/Message.html +16 -12
  67. data/doc/classes/TaskJuggler/MessageHandler.html +16 -12
  68. data/doc/classes/TaskJuggler/Navigator.html +249 -0
  69. data/doc/classes/TaskJuggler/OnShiftCache.html +316 -0
  70. data/doc/classes/TaskJuggler/Project.html +1064 -678
  71. data/doc/classes/TaskJuggler/ProjectFileParser.html +90 -85
  72. data/doc/classes/TaskJuggler/PropertyAttribute.html +194 -0
  73. data/doc/classes/TaskJuggler/PropertyList.html +114 -113
  74. data/doc/classes/TaskJuggler/PropertySet.html +355 -312
  75. data/doc/classes/TaskJuggler/PropertyTreeNode.html +527 -474
  76. data/doc/classes/TaskJuggler/Query.html +90 -85
  77. data/doc/classes/TaskJuggler/RTPNavigator.html +292 -0
  78. data/doc/classes/TaskJuggler/RTPReport.html +301 -0
  79. data/doc/classes/TaskJuggler/RealFormat.html +114 -57
  80. data/doc/classes/TaskJuggler/RealFormatAttribute.html +162 -0
  81. data/doc/classes/TaskJuggler/ReferenceAttribute.html +87 -20
  82. data/doc/classes/TaskJuggler/Report.html +82 -291
  83. data/doc/classes/TaskJuggler/ReportBase.html +448 -0
  84. data/doc/classes/TaskJuggler/ReportContext.html +243 -0
  85. data/doc/classes/TaskJuggler/ReportTable.html +158 -129
  86. data/doc/classes/TaskJuggler/ReportTableCell.html +30 -26
  87. data/doc/classes/TaskJuggler/ReportTableColumn.html +29 -25
  88. data/doc/classes/TaskJuggler/ReportTableLegend.html +28 -24
  89. data/doc/classes/TaskJuggler/ReportTableLine.html +34 -30
  90. data/doc/classes/TaskJuggler/Resource.html +12 -12
  91. data/doc/classes/TaskJuggler/ResourceListAttribute.html +46 -46
  92. data/doc/classes/TaskJuggler/ResourceListRE.html +49 -57
  93. data/doc/classes/TaskJuggler/ResourceScenario.html +126 -126
  94. data/doc/classes/TaskJuggler/RichText.html +52 -48
  95. data/doc/classes/TaskJuggler/RichTextAttribute.html +30 -30
  96. data/doc/classes/TaskJuggler/RichTextDocument.html +41 -37
  97. data/doc/classes/TaskJuggler/RichTextElement.html +274 -264
  98. data/doc/classes/TaskJuggler/RichTextException.html +13 -13
  99. data/doc/classes/TaskJuggler/RichTextParser.html +48 -47
  100. data/doc/classes/TaskJuggler/RichTextProtocolExample.html +52 -55
  101. data/doc/classes/TaskJuggler/RichTextProtocolHandler.html +55 -10
  102. data/doc/classes/TaskJuggler/RichTextScanner.html +106 -245
  103. data/doc/classes/TaskJuggler/RichTextSnip.html +28 -24
  104. data/doc/classes/TaskJuggler/RichTextSyntaxRules.html +381 -301
  105. data/doc/classes/TaskJuggler/Scenario.html +6 -6
  106. data/doc/classes/TaskJuggler/ScenarioData.html +40 -36
  107. data/doc/classes/TaskJuggler/ScenarioListAttribute.html +229 -0
  108. data/doc/classes/TaskJuggler/Scoreboard.html +70 -66
  109. data/doc/classes/TaskJuggler/Shift.html +18 -18
  110. data/doc/classes/TaskJuggler/ShiftAssignment.html +58 -54
  111. data/doc/classes/TaskJuggler/ShiftAssignments.html +82 -78
  112. data/doc/classes/TaskJuggler/ShiftAssignmentsAttribute.html +40 -40
  113. data/doc/classes/TaskJuggler/ShiftScenario.html +24 -24
  114. data/doc/classes/TaskJuggler/SortListAttribute.html +196 -0
  115. data/doc/classes/TaskJuggler/SourceFileInfo.html +16 -12
  116. data/doc/classes/TaskJuggler/StringAttribute.html +30 -30
  117. data/doc/classes/TaskJuggler/SymbolAttribute.html +20 -20
  118. data/doc/classes/TaskJuggler/SyntaxReference.html +46 -42
  119. data/doc/classes/TaskJuggler/TOCEntry.html +16 -12
  120. data/doc/classes/TaskJuggler/TableColumnDefinition.html +48 -33
  121. data/doc/classes/TaskJuggler/TableOfContents.html +22 -18
  122. data/doc/classes/TaskJuggler/TableReport.html +1036 -0
  123. data/doc/classes/TaskJuggler/Task.html +12 -12
  124. data/doc/classes/TaskJuggler/TaskDependency.html +16 -12
  125. data/doc/classes/TaskJuggler/TaskListAttribute.html +46 -46
  126. data/doc/classes/TaskJuggler/TaskListRE.html +49 -58
  127. data/doc/classes/TaskJuggler/TaskScenario.html +1270 -1180
  128. data/doc/classes/TaskJuggler/TextParser/Pattern.html +100 -96
  129. data/doc/classes/TaskJuggler/TextParser/Rule.html +88 -84
  130. data/doc/classes/TaskJuggler/TextParser/StackElement.html +16 -12
  131. data/doc/classes/TaskJuggler/TextParser/TextParserResultArray.html +12 -12
  132. data/doc/classes/TaskJuggler/TextParser/TokenDoc.html +10 -6
  133. data/doc/classes/TaskJuggler/TextParser.html +203 -140
  134. data/doc/classes/TaskJuggler/TextReport.html +364 -0
  135. data/doc/classes/TaskJuggler/TextScanner/BufferStreamHandle.html +70 -70
  136. data/doc/classes/TaskJuggler/TextScanner/FileStreamHandle.html +50 -42
  137. data/doc/classes/TaskJuggler/TextScanner/StreamHandle.html +16 -12
  138. data/doc/classes/TaskJuggler/TextScanner.html +334 -240
  139. data/doc/classes/TaskJuggler/TjException.html +6 -6
  140. data/doc/classes/TaskJuggler/TjTime.html +547 -497
  141. data/doc/classes/TaskJuggler/TjpExample.html +29 -25
  142. data/doc/classes/TaskJuggler/TjpExportRE.html +77 -97
  143. data/doc/classes/TaskJuggler/TjpSyntaxRules.html +3911 -3886
  144. data/doc/classes/TaskJuggler/UserManual.html +54 -54
  145. data/doc/classes/TaskJuggler/WorkingHours.html +53 -49
  146. data/doc/classes/TaskJuggler/WorkingHoursAttribute.html +53 -85
  147. data/doc/classes/TaskJuggler/XMLBlob.html +21 -21
  148. data/doc/classes/TaskJuggler/XMLComment.html +21 -21
  149. data/doc/classes/TaskJuggler/XMLDocument.html +28 -24
  150. data/doc/classes/TaskJuggler/XMLElement.html +70 -58
  151. data/doc/classes/TaskJuggler/XMLNamedText.html +11 -11
  152. data/doc/classes/TaskJuggler/XMLText.html +36 -36
  153. data/doc/classes/TaskJuggler.html +266 -183
  154. data/doc/files/COPYING.html +1 -1
  155. data/doc/files/README.html +1 -1
  156. data/doc/files/lib/AccountScenario_rb.html +1 -1
  157. data/doc/files/lib/Account_rb.html +1 -1
  158. data/doc/files/lib/Allocation_rb.html +1 -1
  159. data/doc/files/lib/AppConfig_rb.html +1 -1
  160. data/doc/files/lib/AttributeBase_rb.html +11 -1
  161. data/doc/files/lib/AttributeDefinition_rb.html +1 -1
  162. data/doc/files/lib/Attributes_rb.html +1 -1
  163. data/doc/files/lib/{LogicalFlag_rb.html → BatchProcessor_rb.html} +8 -6
  164. data/doc/files/lib/Booking_rb.html +1 -1
  165. data/doc/files/lib/ChargeSet_rb.html +1 -1
  166. data/doc/files/lib/Charge_rb.html +1 -1
  167. data/doc/files/lib/HTMLDocument_rb.html +1 -1
  168. data/doc/files/lib/Interval_rb.html +1 -1
  169. data/doc/files/lib/Journal_rb.html +106 -0
  170. data/doc/files/lib/KeywordArray_rb.html +106 -0
  171. data/doc/files/lib/KeywordDocumentation_rb.html +1 -1
  172. data/doc/files/lib/Limits_rb.html +1 -1
  173. data/doc/files/lib/Log_rb.html +1 -1
  174. data/doc/files/lib/LogicalExpression_rb.html +1 -3
  175. data/doc/files/lib/LogicalFunction_rb.html +1 -1
  176. data/doc/files/lib/LogicalOperation_rb.html +1 -1
  177. data/doc/files/lib/MacroParser_rb.html +1 -1
  178. data/doc/files/lib/MacroTable_rb.html +1 -1
  179. data/doc/files/lib/MessageHandler_rb.html +1 -1
  180. data/doc/files/lib/Message_rb.html +1 -1
  181. data/doc/files/lib/ProjectFileParser_rb.html +5 -1
  182. data/doc/files/lib/Project_rb.html +5 -1
  183. data/doc/files/lib/PropertyList_rb.html +1 -1
  184. data/doc/files/lib/PropertySet_rb.html +1 -1
  185. data/doc/files/lib/PropertyTreeNode_rb.html +1 -1
  186. data/doc/files/lib/Query_rb.html +1 -1
  187. data/doc/files/lib/RTPNavigator_rb.html +120 -0
  188. data/doc/files/lib/RTPReport_rb.html +118 -0
  189. data/doc/files/lib/RealFormat_rb.html +1 -1
  190. data/doc/files/lib/ResourceScenario_rb.html +1 -1
  191. data/doc/files/lib/Resource_rb.html +1 -1
  192. data/doc/files/lib/RichTextDocument_rb.html +1 -1
  193. data/doc/files/lib/RichTextElement_rb.html +1 -1
  194. data/doc/files/lib/RichTextParser_rb.html +1 -1
  195. data/doc/files/lib/RichTextProtocolExample_rb.html +1 -1
  196. data/doc/files/lib/RichTextProtocolHandler_rb.html +1 -1
  197. data/doc/files/lib/RichTextScanner_rb.html +1 -1
  198. data/doc/files/lib/RichTextSnip_rb.html +1 -1
  199. data/doc/files/lib/RichTextSyntaxRules_rb.html +1 -1
  200. data/doc/files/lib/RichText_rb.html +1 -1
  201. data/doc/files/lib/ScenarioData_rb.html +1 -1
  202. data/doc/files/lib/Scenario_rb.html +1 -1
  203. data/doc/files/lib/Scoreboard_rb.html +1 -1
  204. data/doc/files/lib/ShiftAssignments_rb.html +1 -1
  205. data/doc/files/lib/ShiftScenario_rb.html +1 -1
  206. data/doc/files/lib/Shift_rb.html +1 -1
  207. data/doc/files/lib/SourceFileInfo_rb.html +1 -1
  208. data/doc/files/lib/SyntaxReference_rb.html +1 -1
  209. data/doc/files/lib/TOCEntry_rb.html +1 -1
  210. data/doc/files/lib/TableColumnDefinition_rb.html +1 -1
  211. data/doc/files/lib/TableOfContents_rb.html +1 -1
  212. data/doc/files/lib/TaskDependency_rb.html +1 -1
  213. data/doc/files/lib/TaskJuggler_rb.html +1 -1
  214. data/doc/files/lib/TaskScenario_rb.html +1 -1
  215. data/doc/files/lib/Task_rb.html +1 -1
  216. data/doc/files/lib/TextParser/Pattern_rb.html +1 -1
  217. data/doc/files/lib/TextParser/Rule_rb.html +1 -1
  218. data/doc/files/lib/TextParser/StackElement_rb.html +1 -1
  219. data/doc/files/lib/TextParser/TokenDoc_rb.html +1 -1
  220. data/doc/files/lib/TextParser_rb.html +1 -1
  221. data/doc/files/lib/TextScanner_rb.html +1 -1
  222. data/doc/files/lib/Tj3Config_rb.html +1 -1
  223. data/doc/files/lib/TjException_rb.html +1 -1
  224. data/doc/files/lib/TjTime_rb.html +1 -1
  225. data/doc/files/lib/TjpExample_rb.html +1 -1
  226. data/doc/files/lib/TjpSyntaxRules_rb.html +1 -1
  227. data/doc/files/lib/UTF8String_rb.html +1 -1
  228. data/doc/files/lib/UserManual_rb.html +1 -1
  229. data/doc/files/lib/WorkingHours_rb.html +1 -1
  230. data/doc/files/lib/XMLDocument_rb.html +1 -1
  231. data/doc/files/lib/XMLElement_rb.html +1 -1
  232. data/doc/files/lib/deep_copy_rb.html +106 -0
  233. data/doc/files/lib/ms_test_rb.html +90 -0
  234. data/doc/files/lib/reports/CSVFile_rb.html +1 -1
  235. data/doc/files/lib/reports/ColumnTable_rb.html +1 -1
  236. data/doc/files/lib/reports/GanttChart_rb.html +1 -1
  237. data/doc/files/lib/reports/GanttContainer_rb.html +1 -1
  238. data/doc/files/lib/reports/GanttHeaderScaleItem_rb.html +1 -1
  239. data/doc/files/lib/reports/GanttHeader_rb.html +1 -1
  240. data/doc/files/lib/reports/GanttLine_rb.html +1 -1
  241. data/doc/files/lib/reports/GanttLoadStack_rb.html +1 -1
  242. data/doc/files/lib/reports/GanttMilestone_rb.html +1 -1
  243. data/doc/files/lib/reports/GanttRouter_rb.html +1 -1
  244. data/doc/files/lib/reports/GanttTaskBar_rb.html +1 -1
  245. data/doc/files/lib/reports/HTMLGraphics_rb.html +1 -1
  246. data/doc/files/lib/reports/{ReportElement_rb.html → Navigator_rb.html} +6 -8
  247. data/doc/files/lib/reports/ReportBase_rb.html +106 -0
  248. data/doc/files/lib/reports/ReportContext_rb.html +106 -0
  249. data/doc/files/lib/reports/ReportTableCell_rb.html +1 -1
  250. data/doc/files/lib/reports/ReportTableColumn_rb.html +1 -1
  251. data/doc/files/lib/reports/ReportTableLegend_rb.html +1 -1
  252. data/doc/files/lib/reports/ReportTableLine_rb.html +1 -1
  253. data/doc/files/lib/reports/ReportTable_rb.html +1 -1
  254. data/doc/files/lib/reports/Report_rb.html +8 -2
  255. data/doc/files/lib/reports/ResourceListRE_rb.html +2 -2
  256. data/doc/files/lib/reports/{ReportTableElement_rb.html → TableReport_rb.html} +7 -5
  257. data/doc/files/lib/reports/TaskListRE_rb.html +2 -2
  258. data/doc/files/lib/reports/TextReport_rb.html +116 -0
  259. data/doc/files/lib/reports/TjpExportRE_rb.html +2 -2
  260. data/doc/files/lib/taskjuggler3_rb.html +61 -56
  261. data/doc/files/lib/tj3man_rb.html +1 -1
  262. data/doc/fr_class_index.html +41 -3
  263. data/doc/fr_file_index.html +21 -5
  264. data/doc/fr_method_index.html +1069 -959
  265. data/examples/ContactList.html +1467 -0
  266. data/examples/Deliveries.html +485 -0
  267. data/examples/Development.html +2525 -0
  268. data/examples/Overview.html +747 -0
  269. data/examples/Resource Graph.html +616 -0
  270. data/examples/tutorial.tjp +63 -67
  271. data/lib/AttributeBase.rb +27 -31
  272. data/lib/AttributeDefinition.rb +12 -7
  273. data/lib/Attributes.rb +134 -34
  274. data/lib/Interval.rb +2 -0
  275. data/lib/Journal.rb +44 -0
  276. data/lib/{LogicalFlag.rb → KeywordArray.rb} +5 -13
  277. data/lib/KeywordDocumentation.rb +84 -47
  278. data/lib/Limits.rb +7 -5
  279. data/lib/LogicalExpression.rb +1 -1
  280. data/lib/LogicalOperation.rb +33 -0
  281. data/lib/Project.rb +313 -99
  282. data/lib/ProjectFileParser.rb +88 -11
  283. data/lib/PropertyList.rb +2 -1
  284. data/lib/PropertySet.rb +13 -4
  285. data/lib/PropertyTreeNode.rb +34 -15
  286. data/lib/Query.rb +2 -1
  287. data/lib/RTPNavigator.rb +53 -0
  288. data/lib/RTPReport.rb +62 -0
  289. data/lib/RealFormat.rb +28 -10
  290. data/lib/RichTextElement.rb +18 -12
  291. data/lib/RichTextParser.rb +1 -0
  292. data/lib/RichTextProtocolExample.rb +8 -11
  293. data/lib/RichTextProtocolHandler.rb +11 -1
  294. data/lib/RichTextScanner.rb +308 -164
  295. data/lib/RichTextSyntaxRules.rb +24 -0
  296. data/lib/TableColumnDefinition.rb +5 -1
  297. data/lib/TaskJuggler.rb +3 -2
  298. data/lib/TaskScenario.rb +123 -31
  299. data/lib/TextParser.rb +14 -3
  300. data/lib/TextScanner.rb +210 -34
  301. data/lib/Tj3Config.rb +1 -1
  302. data/lib/TjTime.rb +15 -0
  303. data/lib/TjpExample.rb +1 -1
  304. data/lib/TjpSyntaxRules.rb +674 -473
  305. data/lib/WorkingHours.rb +1 -1
  306. data/lib/XMLElement.rb +11 -3
  307. data/lib/deep_copy.rb +72 -0
  308. data/lib/ms_test.rb +27 -0
  309. data/lib/reports/ColumnTable.rb +7 -5
  310. data/lib/reports/GanttChart.rb +60 -34
  311. data/lib/reports/GanttHeader.rb +1 -1
  312. data/lib/reports/GanttRouter.rb +7 -5
  313. data/lib/reports/Navigator.rb +72 -0
  314. data/lib/reports/Report.rb +58 -73
  315. data/lib/reports/ReportBase.rb +241 -0
  316. data/lib/reports/ReportContext.rb +41 -0
  317. data/lib/reports/ReportTable.rb +7 -2
  318. data/lib/reports/ReportTableCell.rb +3 -3
  319. data/lib/reports/ResourceListRE.rb +19 -26
  320. data/lib/reports/{ReportTableElement.rb → TableReport.rb} +297 -97
  321. data/lib/reports/TaskListRE.rb +16 -24
  322. data/lib/reports/TextReport.rb +87 -0
  323. data/lib/reports/TjpExportRE.rb +55 -50
  324. data/lib/taskjuggler3.rb +6 -1
  325. data/manual/Getting_Started +57 -6
  326. data/manual/How_To_Contribute +2 -4
  327. data/manual/Intro +2 -2
  328. data/manual/Reporting_Bugs +9 -2
  329. data/manual/Rich_Text_Attributes +41 -0
  330. data/manual/Tutorial +219 -173
  331. data/tasks/test.rake +3 -0
  332. data/test/TestSuite/CSV-Reports/celltext.tjp +2 -1
  333. data/test/TestSuite/CSV-Reports/resourcereport.tjp +2 -1
  334. data/test/TestSuite/CSV-Reports/resourcereport_with_tasks.tjp +2 -1
  335. data/test/TestSuite/CSV-Reports/sortByTree.tjp +2 -1
  336. data/test/TestSuite/CSV-Reports/sortBy_duration.down.tjp +2 -1
  337. data/test/TestSuite/CSV-Reports/sortBy_effort.up.tjp +2 -1
  338. data/test/TestSuite/CSV-Reports/sortBy_plan.start.down.tjp +2 -1
  339. data/test/TestSuite/CSV-Reports/taskreport.tjp +2 -1
  340. data/test/TestSuite/CSV-Reports/taskreport_with_resources.tjp +2 -1
  341. data/test/TestSuite/HTML-Reports/depArrows.tjp +72 -0
  342. data/test/TestSuite/HTML-Reports/reference-export.html +187 -0
  343. data/test/TestSuite/HTML-Reports/reference.tjp +21 -0
  344. data/test/TestSuite/Scheduler/Correct/Allocate.tjp +2 -1
  345. data/test/TestSuite/Scheduler/Correct/AutomaticMilestones.tjp +3 -3
  346. data/test/TestSuite/Scheduler/Correct/Booking.tjp +3 -3
  347. data/test/TestSuite/Scheduler/Correct/Container-2.tjp +37 -0
  348. data/test/TestSuite/Scheduler/Correct/Container.tjp +40 -0
  349. data/test/TestSuite/Scheduler/Correct/Depends.tjp +9 -14
  350. data/test/TestSuite/Scheduler/Correct/Duration.tjp +2 -1
  351. data/test/TestSuite/Scheduler/Correct/InheritStartEnd.tjp +20 -29
  352. data/test/TestSuite/Scheduler/Correct/Limits.tjp +11 -13
  353. data/test/TestSuite/Scheduler/Correct/Optimize-1.tjp +6 -5
  354. data/test/TestSuite/Scheduler/Correct/Optimize-2.tjp +10 -6
  355. data/test/TestSuite/Scheduler/Correct/Optimize-3.tjp +9 -6
  356. data/test/TestSuite/Scheduler/Correct/Optimize-4.tjp +9 -6
  357. data/test/TestSuite/Scheduler/Correct/Optimize-5.tjp +13 -10
  358. data/test/TestSuite/Scheduler/Correct/Precedes.tjp +9 -14
  359. data/test/TestSuite/Scheduler/Correct/Shift.tjp +9 -8
  360. data/test/TestSuite/Scheduler/Correct/checks.tji +4 -0
  361. data/test/TestSuite/Scheduler/Errors/weak_end_dep.tjp +16 -0
  362. data/test/TestSuite/Scheduler/Errors/weak_start_dep.tjp +16 -0
  363. data/test/TestSuite/Syntax/Correct/Account.tjp +1 -1
  364. data/test/TestSuite/Syntax/Correct/AutoID.tjp +21 -0
  365. data/test/TestSuite/Syntax/Correct/AutoMacros.tjp +2 -1
  366. data/test/TestSuite/Syntax/Correct/Caption.tjp +7 -6
  367. data/test/TestSuite/Syntax/Correct/Celltext.tjp +7 -4
  368. data/test/TestSuite/Syntax/Correct/Comments.tjp +1 -1
  369. data/test/TestSuite/Syntax/Correct/CompletedWork.tji +11 -19
  370. data/test/TestSuite/Syntax/Correct/CriticalPath.tjp +4 -3
  371. data/test/TestSuite/Syntax/Correct/Export.tjp +3 -1
  372. data/test/TestSuite/Syntax/Correct/Flags.tjp +2 -1
  373. data/test/TestSuite/Syntax/Correct/HtmlTaskReport.tjp +2 -1
  374. data/test/TestSuite/Syntax/Correct/Journal.tjp +18 -0
  375. data/test/TestSuite/Syntax/Correct/LoadUnits.tjp +2 -1
  376. data/test/TestSuite/Syntax/Correct/LogicalExpression.tjp +16 -0
  377. data/test/TestSuite/Syntax/Correct/Period.tjp +2 -1
  378. data/test/TestSuite/Syntax/Correct/RawHTML.tjp +4 -2
  379. data/test/TestSuite/Syntax/Correct/Reports.tjp +4 -2
  380. data/test/TestSuite/Syntax/Correct/ResourcePrefix.tji +2 -0
  381. data/test/TestSuite/Syntax/Correct/ResourcePrefix.tjp +23 -0
  382. data/test/TestSuite/Syntax/Correct/Responsible.tjp +1 -1
  383. data/test/TestSuite/Syntax/Correct/Simple.tjp +1 -1
  384. data/test/TestSuite/Syntax/Correct/String.tjp +1 -1
  385. data/test/TestSuite/Syntax/Correct/TaskRoot.tjp +2 -1
  386. data/test/TestSuite/Syntax/Correct/tutorial.tjp +92 -70
  387. data/test/TestSuite/Syntax/Errors/bad_comment.tjp +7 -0
  388. data/test/TestSuite/Syntax/Errors/bad_include.tjp +1 -1
  389. data/test/TestSuite/Syntax/Errors/bad_time_zone.tjp +6 -0
  390. data/test/TestSuite/Syntax/Errors/bad_timing_res.tjp +5 -0
  391. data/test/TestSuite/Syntax/Errors/chargeset_master.tjp +1 -1
  392. data/test/TestSuite/Syntax/Errors/container_attribute.tjp +1 -1
  393. data/test/TestSuite/Syntax/Errors/cost_acct_no_top.tjp +3 -2
  394. data/test/TestSuite/Syntax/Errors/cost_rev_same.tjp +1 -1
  395. data/test/TestSuite/Syntax/Errors/eof_in_istring1.tjp +5 -0
  396. data/test/TestSuite/Syntax/Errors/eof_in_istring2.tjp +5 -0
  397. data/test/TestSuite/Syntax/Errors/eof_in_istring3.tjp +6 -0
  398. data/test/TestSuite/Syntax/Errors/eof_in_istring4.tjp +6 -0
  399. data/test/TestSuite/Syntax/Errors/eof_in_istring5.tjp +6 -0
  400. data/test/TestSuite/Syntax/Errors/include_recursion.tji +1 -0
  401. data/test/TestSuite/Syntax/Errors/include_recursion.tjp +7 -0
  402. data/test/TestSuite/Syntax/Errors/junk_after_cut.tjp +6 -0
  403. data/test/TestSuite/Syntax/Errors/navigator_exists.tjp +10 -0
  404. data/test/TestSuite/Syntax/Errors/operand_unkn_flag.tjp +1 -1
  405. data/test/TestSuite/Syntax/Errors/report_end.tjp +1 -1
  406. data/test/TestSuite/Syntax/Errors/report_exists.tjp +10 -0
  407. data/test/TestSuite/Syntax/Errors/report_start.tjp +1 -1
  408. data/test/TestSuite/Syntax/Errors/rev_acct_no_top.tjp +1 -1
  409. data/test/TestSuite/Syntax/Errors/sort_direction.tjp +1 -1
  410. data/test/TestSuite/Syntax/Errors/sort_unknown_scen.tjp +1 -1
  411. data/test/TestSuite/Syntax/Errors/sorting_crit_exptd1.tjp +1 -1
  412. data/test/TestSuite/Syntax/Errors/sorting_crit_exptd2.tjp +1 -1
  413. data/test/TestSuite/Syntax/Errors/sorting_wbs.tjp +1 -1
  414. data/test/TestSuite/Syntax/Errors/too_large_timing_res.tjp +7 -0
  415. data/test/TestSuite/Syntax/Errors/unknown_scenario_idx.tjp +1 -1
  416. data/test/TestSuite/Syntax/Errors/unknown_task.tjp +1 -1
  417. data/test/all.rb +1 -16
  418. data/test/test_CSV-Reports.rb +8 -5
  419. data/test/test_Query.rb +2 -2
  420. data/test/test_RichText.rb +95 -0
  421. data/test/test_Scheduler.rb +8 -4
  422. data/test/test_Syntax.rb +8 -4
  423. data/test/test_deep_copy.rb +83 -0
  424. metadata +549 -487
  425. data/benchmarks/UTF-8-Strings.rb +0 -58
  426. data/doc/classes/TaskJuggler/ReportElement.html +0 -1070
  427. data/doc/classes/TaskJuggler/ReportTableElement.html +0 -644
  428. data/lib/reports/ReportElement.rb +0 -427
  429. data/test/TestSuite/Syntax/Correct/csvtest +0 -16
  430. data/test/TestSuite/Syntax/Errors/no_csv_suffix.tjp +0 -10
  431. data/test/TestSuite/Syntax/Errors/no_html_suffix.tjp +0 -10
  432. data/test/TestSuite/Syntax/Errors/report_redifinition.tjp +0 -10
@@ -70,8 +70,12 @@
70
70
  <td><strong>Parent:</strong></td>
71
71
  <td>
72
72
 
73
+ <a href="../Object.html">
74
+
73
75
  Object
74
76
 
77
+ </a>
78
+
75
79
  </td>
76
80
  </tr>
77
81
 
@@ -105,23 +109,23 @@ identifies the content of the node.
105
109
 
106
110
  <div class="name-list">
107
111
 
108
- <a href="#M000272">children_to_s</a>&nbsp;&nbsp;
112
+ <a href="#M000314">children_to_s</a>&nbsp;&nbsp;
109
113
 
110
- <a href="#M000266">cleanUp</a>&nbsp;&nbsp;
114
+ <a href="#M000308">cleanUp</a>&nbsp;&nbsp;
111
115
 
112
- <a href="#M000273">convertToID</a>&nbsp;&nbsp;
116
+ <a href="#M000315">convertToID</a>&nbsp;&nbsp;
113
117
 
114
- <a href="#M000268">internalReferences</a>&nbsp;&nbsp;
118
+ <a href="#M000310">internalReferences</a>&nbsp;&nbsp;
115
119
 
116
- <a href="#M000265">new</a>&nbsp;&nbsp;
120
+ <a href="#M000307">new</a>&nbsp;&nbsp;
117
121
 
118
- <a href="#M000267">tableOfContents</a>&nbsp;&nbsp;
122
+ <a href="#M000309">tableOfContents</a>&nbsp;&nbsp;
119
123
 
120
- <a href="#M000271">to_html</a>&nbsp;&nbsp;
124
+ <a href="#M000313">to_html</a>&nbsp;&nbsp;
121
125
 
122
- <a href="#M000269">to_s</a>&nbsp;&nbsp;
126
+ <a href="#M000311">to_s</a>&nbsp;&nbsp;
123
127
 
124
- <a href="#M000270">to_tagged</a>&nbsp;&nbsp;
128
+ <a href="#M000312">to_tagged</a>&nbsp;&nbsp;
125
129
 
126
130
  </div>
127
131
  </div>
@@ -184,12 +188,12 @@ identifies the content of the node.
184
188
  <h3 class="section-bar">Public Class methods</h3>
185
189
 
186
190
 
187
- <div id="method-M000265" class="method-detail">
188
- <a name="M000265"></a>
191
+ <div id="method-M000307" class="method-detail">
192
+ <a name="M000307"></a>
189
193
 
190
194
  <div class="method-heading">
191
195
 
192
- <a href="#M000265" class="method-signature">
196
+ <a href="#M000307" class="method-signature">
193
197
 
194
198
  <span class="method-name">new</span><span class="method-args">(rt, category, arg = nil)</span>
195
199
 
@@ -209,8 +213,8 @@ href="RichTextElement.html">RichTextElement</a> nodes.
209
213
  </p>
210
214
 
211
215
  <p><a class="source-toggle" href="#"
212
- onclick="toggleCode('M000265-source');return false;">[Source]</a></p>
213
- <div class="method-source-code" id="M000265-source">
216
+ onclick="toggleCode('M000307-source');return false;">[Source]</a></p>
217
+ <div class="method-source-code" id="M000307-source">
214
218
  <pre>
215
219
  <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 34</span>
216
220
  34: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">rt</span>, <span class="ruby-identifier">category</span>, <span class="ruby-identifier">arg</span> = <span class="ruby-keyword kw">nil</span>)
@@ -246,12 +250,12 @@ href="RichTextElement.html">RichTextElement</a> nodes.
246
250
  <h3 class="section-bar">Public Instance methods</h3>
247
251
 
248
252
 
249
- <div id="method-M000272" class="method-detail">
250
- <a name="M000272"></a>
253
+ <div id="method-M000314" class="method-detail">
254
+ <a name="M000314"></a>
251
255
 
252
256
  <div class="method-heading">
253
257
 
254
- <a href="#M000272" class="method-signature">
258
+ <a href="#M000314" class="method-signature">
255
259
 
256
260
  <span class="method-name">children_to_s</span><span class="method-args">()</span>
257
261
 
@@ -267,17 +271,17 @@ href="../String.html">String</a>.
267
271
  </p>
268
272
 
269
273
  <p><a class="source-toggle" href="#"
270
- onclick="toggleCode('M000272-source');return false;">[Source]</a></p>
271
- <div class="method-source-code" id="M000272-source">
274
+ onclick="toggleCode('M000314-source');return false;">[Source]</a></p>
275
+ <div class="method-source-code" id="M000314-source">
272
276
  <pre>
273
- <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 367</span>
274
- 367: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">children_to_s</span>
275
- 368: <span class="ruby-identifier">text</span> = <span class="ruby-value str">''</span>
276
- 369: <span class="ruby-ivar">@children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span>
277
- 370: <span class="ruby-identifier">text</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">+</span> (<span class="ruby-identifier">c</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RichTextElement</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">appendSpace</span> <span class="ruby-value">? </span><span class="ruby-value str">' '</span> <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>)
278
- 371: <span class="ruby-keyword kw">end</span>
279
- 372: <span class="ruby-identifier">text</span>
280
- 373: <span class="ruby-keyword kw">end</span>
277
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 373</span>
278
+ 373: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">children_to_s</span>
279
+ 374: <span class="ruby-identifier">text</span> = <span class="ruby-value str">''</span>
280
+ 375: <span class="ruby-ivar">@children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span>
281
+ 376: <span class="ruby-identifier">text</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">+</span> (<span class="ruby-identifier">c</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RichTextElement</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">appendSpace</span> <span class="ruby-value">? </span><span class="ruby-value str">' '</span> <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>)
282
+ 377: <span class="ruby-keyword kw">end</span>
283
+ 378: <span class="ruby-identifier">text</span>
284
+ 379: <span class="ruby-keyword kw">end</span>
281
285
  </pre>
282
286
  </div>
283
287
 
@@ -285,12 +289,12 @@ href="../String.html">String</a>.
285
289
  </div>
286
290
 
287
291
 
288
- <div id="method-M000266" class="method-detail">
289
- <a name="M000266"></a>
292
+ <div id="method-M000308" class="method-detail">
293
+ <a name="M000308"></a>
290
294
 
291
295
  <div class="method-heading">
292
296
 
293
- <a href="#M000266" class="method-signature">
297
+ <a href="#M000308" class="method-signature">
294
298
 
295
299
  <span class="method-name">cleanUp</span><span class="method-args">()</span>
296
300
 
@@ -306,8 +310,8 @@ richtext. The paragraph children will become richtext children.
306
310
  </p>
307
311
 
308
312
  <p><a class="source-toggle" href="#"
309
- onclick="toggleCode('M000266-source');return false;">[Source]</a></p>
310
- <div class="method-source-code" id="M000266-source">
313
+ onclick="toggleCode('M000308-source');return false;">[Source]</a></p>
314
+ <div class="method-source-code" id="M000308-source">
311
315
  <pre>
312
316
  <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 60</span>
313
317
  60: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cleanUp</span>
@@ -324,12 +328,12 @@ richtext. The paragraph children will become richtext children.
324
328
  </div>
325
329
 
326
330
 
327
- <div id="method-M000273" class="method-detail">
328
- <a name="M000273"></a>
331
+ <div id="method-M000315" class="method-detail">
332
+ <a name="M000315"></a>
329
333
 
330
334
  <div class="method-heading">
331
335
 
332
- <a href="#M000273" class="method-signature">
336
+ <a href="#M000315" class="method-signature">
333
337
 
334
338
  <span class="method-name">convertToID</span><span class="method-args">(text)</span>
335
339
 
@@ -346,20 +350,20 @@ acceptable for HTML tag IDs.
346
350
  </p>
347
351
 
348
352
  <p><a class="source-toggle" href="#"
349
- onclick="toggleCode('M000273-source');return false;">[Source]</a></p>
350
- <div class="method-source-code" id="M000273-source">
353
+ onclick="toggleCode('M000315-source');return false;">[Source]</a></p>
354
+ <div class="method-source-code" id="M000315-source">
351
355
  <pre>
352
- <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 377</span>
353
- 377: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">convertToID</span>(<span class="ruby-identifier">text</span>)
354
- 378: <span class="ruby-identifier">out</span> = <span class="ruby-value str">''</span>
355
- 379: <span class="ruby-identifier">text</span>.<span class="ruby-identifier">each_utf8_char</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span>
356
- 380: <span class="ruby-identifier">out</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">c</span> <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">c</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value str">'A'</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value str">'Z'</span>) <span class="ruby-operator">||</span>
357
- 381: (<span class="ruby-identifier">c</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value str">'a'</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value str">'z'</span>) <span class="ruby-operator">||</span>
358
- 382: (<span class="ruby-identifier">c</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value str">'0'</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value str">'9'</span>)
359
- 383: <span class="ruby-identifier">out</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">'_'</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">==</span> <span class="ruby-value str">' '</span>
360
- 384: <span class="ruby-keyword kw">end</span>
361
- 385: <span class="ruby-identifier">out</span>.<span class="ruby-identifier">chomp</span>(<span class="ruby-value str">'_'</span>)
362
- 386: <span class="ruby-keyword kw">end</span>
356
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 383</span>
357
+ 383: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">convertToID</span>(<span class="ruby-identifier">text</span>)
358
+ 384: <span class="ruby-identifier">out</span> = <span class="ruby-value str">''</span>
359
+ 385: <span class="ruby-identifier">text</span>.<span class="ruby-identifier">each_utf8_char</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">c</span><span class="ruby-operator">|</span>
360
+ 386: <span class="ruby-identifier">out</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">c</span> <span class="ruby-keyword kw">if</span> (<span class="ruby-identifier">c</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value str">'A'</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value str">'Z'</span>) <span class="ruby-operator">||</span>
361
+ 387: (<span class="ruby-identifier">c</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value str">'a'</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value str">'z'</span>) <span class="ruby-operator">||</span>
362
+ 388: (<span class="ruby-identifier">c</span> <span class="ruby-operator">&gt;=</span> <span class="ruby-value str">'0'</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">&lt;=</span> <span class="ruby-value str">'9'</span>)
363
+ 389: <span class="ruby-identifier">out</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">'_'</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">c</span> <span class="ruby-operator">==</span> <span class="ruby-value str">' '</span>
364
+ 390: <span class="ruby-keyword kw">end</span>
365
+ 391: <span class="ruby-identifier">out</span>.<span class="ruby-identifier">chomp</span>(<span class="ruby-value str">'_'</span>)
366
+ 392: <span class="ruby-keyword kw">end</span>
363
367
  </pre>
364
368
  </div>
365
369
 
@@ -367,12 +371,12 @@ acceptable for HTML tag IDs.
367
371
  </div>
368
372
 
369
373
 
370
- <div id="method-M000268" class="method-detail">
371
- <a name="M000268"></a>
374
+ <div id="method-M000310" class="method-detail">
375
+ <a name="M000310"></a>
372
376
 
373
377
  <div class="method-heading">
374
378
 
375
- <a href="#M000268" class="method-signature">
379
+ <a href="#M000310" class="method-signature">
376
380
 
377
381
  <span class="method-name">internalReferences</span><span class="method-args">()</span>
378
382
 
@@ -389,8 +393,8 @@ href="RichTextElement.html">RichTextElement</a>.
389
393
  </p>
390
394
 
391
395
  <p><a class="source-toggle" href="#"
392
- onclick="toggleCode('M000268-source');return false;">[Source]</a></p>
393
- <div class="method-source-code" id="M000268-source">
396
+ onclick="toggleCode('M000310-source');return false;">[Source]</a></p>
397
+ <div class="method-source-code" id="M000310-source">
394
398
  <pre>
395
399
  <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 100</span>
396
400
  100: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">internalReferences</span>
@@ -415,12 +419,12 @@ href="RichTextElement.html">RichTextElement</a>.
415
419
  </div>
416
420
 
417
421
 
418
- <div id="method-M000267" class="method-detail">
419
- <a name="M000267"></a>
422
+ <div id="method-M000309" class="method-detail">
423
+ <a name="M000309"></a>
420
424
 
421
425
  <div class="method-heading">
422
426
 
423
- <a href="#M000267" class="method-signature">
427
+ <a href="#M000309" class="method-signature">
424
428
 
425
429
  <span class="method-name">tableOfContents</span><span class="method-args">(toc, fileName)</span>
426
430
 
@@ -439,8 +443,8 @@ other suffix) of the file the TOCEntries should point to.
439
443
  </p>
440
444
 
441
445
  <p><a class="source-toggle" href="#"
442
- onclick="toggleCode('M000267-source');return false;">[Source]</a></p>
443
- <div class="method-source-code" id="M000267-source">
446
+ onclick="toggleCode('M000309-source');return false;">[Source]</a></p>
447
+ <div class="method-source-code" id="M000309-source">
444
448
  <pre>
445
449
  <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 72</span>
446
450
  72: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">tableOfContents</span>(<span class="ruby-identifier">toc</span>, <span class="ruby-identifier">fileName</span>)
@@ -475,12 +479,12 @@ other suffix) of the file the TOCEntries should point to.
475
479
  </div>
476
480
 
477
481
 
478
- <div id="method-M000271" class="method-detail">
479
- <a name="M000271"></a>
482
+ <div id="method-M000313" class="method-detail">
483
+ <a name="M000313"></a>
480
484
 
481
485
  <div class="method-heading">
482
486
 
483
- <a href="#M000271" class="method-signature">
487
+ <a href="#M000313" class="method-signature">
484
488
 
485
489
  <span class="method-name">to_html</span><span class="method-args">()</span>
486
490
 
@@ -495,100 +499,97 @@ Convert the intermediate representation into HTML elements.
495
499
  </p>
496
500
 
497
501
  <p><a class="source-toggle" href="#"
498
- onclick="toggleCode('M000271-source');return false;">[Source]</a></p>
499
- <div class="method-source-code" id="M000271-source">
502
+ onclick="toggleCode('M000313-source');return false;">[Source]</a></p>
503
+ <div class="method-source-code" id="M000313-source">
500
504
  <pre>
501
- <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 275</span>
502
- 275: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_html</span>
503
- 276: <span class="ruby-identifier">html</span> =
504
- 277: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@category</span>
505
- 278: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:richtext</span>
506
- 279: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'div'</span>)
507
- 280: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title1</span>
508
- 281: <span class="ruby-identifier">el</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'h1'</span>, <span class="ruby-value str">'id'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">convertToID</span>(<span class="ruby-identifier">children_to_s</span>))
509
- 282: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">sectionNumbers</span>
510
- 283: <span class="ruby-identifier">el</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;#{@data[0]} &quot;</span>)
511
- 284: <span class="ruby-keyword kw">end</span>
512
- 285: <span class="ruby-identifier">el</span>
513
- 286: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title2</span>
514
- 287: <span class="ruby-identifier">el</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'h2'</span>, <span class="ruby-value str">'id'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">convertToID</span>(<span class="ruby-identifier">children_to_s</span>))
515
- 288: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">sectionNumbers</span>
516
- 289: <span class="ruby-identifier">el</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;#{@data[0]}.#{@data[1]} &quot;</span>)
517
- 290: <span class="ruby-keyword kw">end</span>
518
- 291: <span class="ruby-identifier">el</span>
519
- 292: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title3</span>
520
- 293: <span class="ruby-identifier">el</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'h3'</span>, <span class="ruby-value str">'id'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">convertToID</span>(<span class="ruby-identifier">children_to_s</span>))
521
- 294: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">sectionNumbers</span>
522
- 295: <span class="ruby-identifier">el</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>)
523
- 296: <span class="ruby-keyword kw">end</span>
524
- 297: <span class="ruby-identifier">el</span>
525
- 298: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:hline</span>
526
- 299: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'hr'</span>)
527
- 300: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:paragraph</span>
528
- 301: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'p'</span>)
529
- 302: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:pre</span>
530
- 303: <span class="ruby-identifier">pre</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'pre'</span>)
531
- 304: <span class="ruby-identifier">pre</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@children</span>[<span class="ruby-value">0</span>])
532
- 305: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist1</span>
533
- 306: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ul'</span>)
534
- 307: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem1</span>
535
- 308: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
536
- 309: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist2</span>
537
- 310: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ul'</span>)
538
- 311: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem2</span>
539
- 312: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
540
- 313: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist3</span>
541
- 314: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ul'</span>)
542
- 315: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem3</span>
543
- 316: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
544
- 317: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist1</span>
545
- 318: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ol'</span>)
546
- 319: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem1</span>
505
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 284</span>
506
+ 284: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_html</span>
507
+ 285: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">false</span>
508
+ 286: <span class="ruby-identifier">html</span> =
509
+ 287: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@category</span>
510
+ 288: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:richtext</span>
511
+ 289: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'div'</span>)
512
+ 290: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title1</span>
513
+ 291: <span class="ruby-identifier">el</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'h1'</span>, <span class="ruby-value str">'id'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">convertToID</span>(<span class="ruby-identifier">children_to_s</span>))
514
+ 292: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">sectionNumbers</span>
515
+ 293: <span class="ruby-identifier">el</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;#{@data[0]} &quot;</span>)
516
+ 294: <span class="ruby-keyword kw">end</span>
517
+ 295: <span class="ruby-identifier">el</span>
518
+ 296: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title2</span>
519
+ 297: <span class="ruby-identifier">el</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'h2'</span>, <span class="ruby-value str">'id'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">convertToID</span>(<span class="ruby-identifier">children_to_s</span>))
520
+ 298: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">sectionNumbers</span>
521
+ 299: <span class="ruby-identifier">el</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;#{@data[0]}.#{@data[1]} &quot;</span>)
522
+ 300: <span class="ruby-keyword kw">end</span>
523
+ 301: <span class="ruby-identifier">el</span>
524
+ 302: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title3</span>
525
+ 303: <span class="ruby-identifier">el</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'h3'</span>, <span class="ruby-value str">'id'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">convertToID</span>(<span class="ruby-identifier">children_to_s</span>))
526
+ 304: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">sectionNumbers</span>
527
+ 305: <span class="ruby-identifier">el</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">&quot;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>)
528
+ 306: <span class="ruby-keyword kw">end</span>
529
+ 307: <span class="ruby-identifier">el</span>
530
+ 308: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:hline</span>
531
+ 309: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">true</span>
532
+ 310: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'hr'</span>)
533
+ 311: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:paragraph</span>
534
+ 312: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'p'</span>)
535
+ 313: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:pre</span>
536
+ 314: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">true</span>
537
+ 315: <span class="ruby-identifier">pre</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'pre'</span>)
538
+ 316: <span class="ruby-identifier">pre</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@children</span>[<span class="ruby-value">0</span>])
539
+ 317: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist1</span>
540
+ 318: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ul'</span>)
541
+ 319: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem1</span>
547
542
  320: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
548
- 321: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist2</span>
549
- 322: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ol'</span>)
550
- 323: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem2</span>
543
+ 321: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist2</span>
544
+ 322: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ul'</span>)
545
+ 323: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem2</span>
551
546
  324: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
552
- 325: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist3</span>
553
- 326: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ol'</span>)
554
- 327: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem3</span>
547
+ 325: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist3</span>
548
+ 326: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ul'</span>)
549
+ 327: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem3</span>
555
550
  328: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
556
- 329: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:ref</span>
557
- 330: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@data</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-value str">':'</span>)
558
- 331: <span class="ruby-identifier">protocol</span>, <span class="ruby-identifier">path</span> = <span class="ruby-ivar">@data</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">':'</span>)
559
- 332: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">&quot;Reference protocol empty.&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">protocol</span>.<span class="ruby-identifier">empty?</span>
560
- 333: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">path</span>.<span class="ruby-identifier">empty?</span>
561
- 334: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">&quot;Reference path may not be empty.&quot;</span>
562
- 335: <span class="ruby-keyword kw">end</span>
563
- 336: <span class="ruby-identifier">args</span> = <span class="ruby-identifier">children_to_s</span>.<span class="ruby-identifier">split</span>(<span class="ruby-value str">' '</span>)
564
- 337: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">protocolHandler</span>(<span class="ruby-identifier">protocol</span>).<span class="ruby-identifier">to_html</span>(<span class="ruby-identifier">path</span>, <span class="ruby-identifier">args</span>)
565
- 338: <span class="ruby-keyword kw">else</span>
566
- 339: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'a'</span>, <span class="ruby-value str">'href'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;#{@data}.html&quot;</span>)
567
- 340: <span class="ruby-keyword kw">end</span>
568
- 341: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:href</span>
569
- 342: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'a'</span>, <span class="ruby-value str">'href'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@data</span>, <span class="ruby-value str">'target'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'_blank'</span>)
570
- 343: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:italic</span>
571
- 344: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'i'</span>)
572
- 345: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bold</span>
573
- 346: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'b'</span>)
574
- 347: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:code</span>
575
- 348: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'code'</span>)
576
- 349: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:text</span>
577
- 350: <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@children</span>[<span class="ruby-value">0</span>])
578
- 351: <span class="ruby-keyword kw">else</span>
579
- 352: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Unknown RichTextElement category #{@category}&quot;</span>
580
- 353: <span class="ruby-keyword kw">end</span>
581
- 354:
582
- 355: <span class="ruby-comment cmt"># Some elements never have leaves.</span>
583
- 356: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">html</span> <span class="ruby-keyword kw">if</span> [ <span class="ruby-identifier">:text</span>, <span class="ruby-identifier">:pre</span>, <span class="ruby-identifier">:hline</span> ].<span class="ruby-identifier">include?</span>(<span class="ruby-ivar">@category</span>)
584
- 357:
585
- 358: <span class="ruby-ivar">@children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">el_i</span><span class="ruby-operator">|</span>
586
- 359: <span class="ruby-identifier">html</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">el_i</span>.<span class="ruby-identifier">to_html</span>
587
- 360: <span class="ruby-identifier">html</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">' '</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">el_i</span>.<span class="ruby-identifier">appendSpace</span>
588
- 361: <span class="ruby-keyword kw">end</span>
589
- 362:
590
- 363: <span class="ruby-identifier">html</span>
591
- 364: <span class="ruby-keyword kw">end</span>
551
+ 329: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist1</span>
552
+ 330: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ol'</span>)
553
+ 331: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem1</span>
554
+ 332: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
555
+ 333: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist2</span>
556
+ 334: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ol'</span>)
557
+ 335: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem2</span>
558
+ 336: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
559
+ 337: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist3</span>
560
+ 338: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ol'</span>)
561
+ 339: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem3</span>
562
+ 340: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
563
+ 341: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:ref</span>
564
+ 342: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'a'</span>, <span class="ruby-value str">'href'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;#{@data}.html&quot;</span>)
565
+ 343: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:href</span>
566
+ 344: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'a'</span>, <span class="ruby-value str">'href'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@data</span>, <span class="ruby-value str">'target'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'_blank'</span>)
567
+ 345: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:blockfunc</span>
568
+ 346: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">true</span>
569
+ 347: <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">protocolHandler</span>(<span class="ruby-ivar">@data</span>[<span class="ruby-value">0</span>]).<span class="ruby-identifier">to_html</span>(<span class="ruby-ivar">@data</span>[<span class="ruby-value">1</span>])
570
+ 348: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:italic</span>
571
+ 349: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'i'</span>)
572
+ 350: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bold</span>
573
+ 351: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'b'</span>)
574
+ 352: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:code</span>
575
+ 353: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'code'</span>)
576
+ 354: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:text</span>
577
+ 355: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">true</span>
578
+ 356: <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@children</span>[<span class="ruby-value">0</span>])
579
+ 357: <span class="ruby-keyword kw">else</span>
580
+ 358: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Unknown RichTextElement category #{@category}&quot;</span>
581
+ 359: <span class="ruby-keyword kw">end</span>
582
+ 360:
583
+ 361: <span class="ruby-comment cmt"># Some elements never have leaves.</span>
584
+ 362: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">html</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">noChilds</span>
585
+ 363:
586
+ 364: <span class="ruby-ivar">@children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">el_i</span><span class="ruby-operator">|</span>
587
+ 365: <span class="ruby-identifier">html</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">el_i</span>.<span class="ruby-identifier">to_html</span>
588
+ 366: <span class="ruby-identifier">html</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">' '</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">el_i</span>.<span class="ruby-identifier">appendSpace</span>
589
+ 367: <span class="ruby-keyword kw">end</span>
590
+ 368:
591
+ 369: <span class="ruby-identifier">html</span>
592
+ 370: <span class="ruby-keyword kw">end</span>
592
593
  </pre>
593
594
  </div>
594
595
 
@@ -596,12 +597,12 @@ Convert the intermediate representation into HTML elements.
596
597
  </div>
597
598
 
598
599
 
599
- <div id="method-M000269" class="method-detail">
600
- <a name="M000269"></a>
600
+ <div id="method-M000311" class="method-detail">
601
+ <a name="M000311"></a>
601
602
 
602
603
  <div class="method-heading">
603
604
 
604
- <a href="#M000269" class="method-signature">
605
+ <a href="#M000311" class="method-signature">
605
606
 
606
607
  <span class="method-name">to_s</span><span class="method-args">()</span>
607
608
 
@@ -618,8 +619,8 @@ ignored or just their value will be included.
618
619
  </p>
619
620
 
620
621
  <p><a class="source-toggle" href="#"
621
- onclick="toggleCode('M000269-source');return false;">[Source]</a></p>
622
- <div class="method-source-code" id="M000269-source">
622
+ onclick="toggleCode('M000311-source');return false;">[Source]</a></p>
623
+ <div class="method-source-code" id="M000311-source">
623
624
  <pre>
624
625
  <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 119</span>
625
626
  119: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
@@ -668,16 +669,17 @@ ignored or just their value will be included.
668
669
  162: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
669
670
  163: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:ref</span>
670
671
  164: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:href</span>
671
- 165: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:italic</span>
672
- 166: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bold</span>
673
- 167: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:code</span>
674
- 168: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:text</span>
675
- 169: <span class="ruby-keyword kw">else</span>
676
- 170: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Unknown RichTextElement category #{@category}&quot;</span>
677
- 171: <span class="ruby-keyword kw">end</span>
678
- 172:
679
- 173: <span class="ruby-identifier">pre</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">children_to_s</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">post</span>
680
- 174: <span class="ruby-keyword kw">end</span>
672
+ 165: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:blockfunc</span>
673
+ 166: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:italic</span>
674
+ 167: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bold</span>
675
+ 168: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:code</span>
676
+ 169: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:text</span>
677
+ 170: <span class="ruby-keyword kw">else</span>
678
+ 171: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Unknown RichTextElement category #{@category}&quot;</span>
679
+ 172: <span class="ruby-keyword kw">end</span>
680
+ 173:
681
+ 174: <span class="ruby-identifier">pre</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">children_to_s</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">post</span>
682
+ 175: <span class="ruby-keyword kw">end</span>
681
683
  </pre>
682
684
  </div>
683
685
 
@@ -685,12 +687,12 @@ ignored or just their value will be included.
685
687
  </div>
686
688
 
687
689
 
688
- <div id="method-M000270" class="method-detail">
689
- <a name="M000270"></a>
690
+ <div id="method-M000312" class="method-detail">
691
+ <a name="M000312"></a>
690
692
 
691
693
  <div class="method-heading">
692
694
 
693
- <a href="#M000270" class="method-signature">
695
+ <a href="#M000312" class="method-signature">
694
696
 
695
697
  <span class="method-name">to_tagged</span><span class="method-args">()</span>
696
698
 
@@ -708,104 +710,112 @@ to be valid HTML.
708
710
  </p>
709
711
 
710
712
  <p><a class="source-toggle" href="#"
711
- onclick="toggleCode('M000270-source');return false;">[Source]</a></p>
712
- <div class="method-source-code" id="M000270-source">
713
+ onclick="toggleCode('M000312-source');return false;">[Source]</a></p>
714
+ <div class="method-source-code" id="M000312-source">
713
715
  <pre>
714
- <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 179</span>
715
- 179: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tagged</span>
716
- 180: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">''</span>
717
- 181: <span class="ruby-identifier">post</span> = <span class="ruby-value str">''</span>
718
- 182: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@category</span>
719
- 183: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:richtext</span>
720
- 184: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;div&gt;'</span>
721
- 185: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/div&gt;'</span>
722
- 186: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title1</span>
723
- 187: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;h1&gt;#{@data[0]} &quot;</span>
724
- 188: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/h1&gt;\n\n&quot;</span>
725
- 189: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title2</span>
726
- 190: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;h2&gt;#{@data[0]}.#{@data[1]} &quot;</span>
727
- 191: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/h2&gt;\n\n&quot;</span>
728
- 192: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title3</span>
729
- 193: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;h3&gt;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
730
- 194: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/h3&gt;\n\n&quot;</span>
731
- 195: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:hline</span>
732
- 196: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;hr&gt;'</span>
733
- 197: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/hr&gt;\n&quot;</span>
734
- 198: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:paragraph</span>
735
- 199: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;p&gt;'</span>
736
- 200: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/p&gt;\n\n&quot;</span>
737
- 201: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:pre</span>
738
- 202: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;pre&gt;'</span>
739
- 203: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/pre&gt;\n\n&quot;</span>
740
- 204: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist1</span>
741
- 205: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ul&gt;'</span>
742
- 206: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ul&gt;'</span>
743
- 207: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem1</span>
744
- 208: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;li&gt;* '</span>
745
- 209: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
746
- 210: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist2</span>
747
- 211: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ul&gt;'</span>
748
- 212: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ul&gt;'</span>
749
- 213: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem2</span>
750
- 214: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;li&gt; * '</span>
751
- 215: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
752
- 216: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist3</span>
753
- 217: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ul&gt;'</span>
754
- 218: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ul&gt;'</span>
755
- 219: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem3</span>
756
- 220: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;li&gt; * '</span>
757
- 221: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
758
- 222: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist1</span>
759
- 223: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ol&gt;'</span>
760
- 224: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ol&gt;'</span>
761
- 225: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem1</span>
762
- 226: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;li&gt;#{@data[0]} &quot;</span>
763
- 227: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
764
- 228: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist2</span>
765
- 229: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ol&gt;'</span>
766
- 230: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ol&gt;'</span>
767
- 231: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem2</span>
768
- 232: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;li&gt;#{@data[0]}.#{@data[1]} &quot;</span>
769
- 233: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
770
- 234: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist3</span>
771
- 235: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ol&gt;'</span>
772
- 236: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ol&gt;'</span>
773
- 237: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem3</span>
774
- 238: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;li&gt;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
775
- 239: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
776
- 240: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:ref</span>
777
- 241: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;ref data=\&quot;#{@data}\&quot;&gt;&quot;</span>
778
- 242: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ref&gt;'</span>
779
- 243: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:href</span>
780
- 244: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;a href=\&quot;#{@data}\&quot; target=\&quot;_blank\&quot;&gt;&quot;</span>
781
- 245: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/a&gt;'</span>
782
- 246: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:italic</span>
783
- 247: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;i&gt;'</span>
784
- 248: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/i&gt;'</span>
785
- 249: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bold</span>
786
- 250: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;b&gt;'</span>
787
- 251: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/b&gt;'</span>
788
- 252: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:code</span>
789
- 253: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;code&gt;'</span>
790
- 254: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/code&gt;'</span>
791
- 255: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:text</span>
792
- 256: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'['</span>
793
- 257: <span class="ruby-identifier">post</span> = <span class="ruby-value str">']'</span>
794
- 258: <span class="ruby-keyword kw">else</span>
795
- 259: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Unknown RichTextElement category #{@category}&quot;</span>
796
- 260: <span class="ruby-keyword kw">end</span>
797
- 261:
798
- 262: <span class="ruby-identifier">out</span> = <span class="ruby-value str">''</span>
799
- 263: <span class="ruby-ivar">@children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">el</span><span class="ruby-operator">|</span>
800
- 264: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">el</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RichTextElement</span>)
801
- 265: <span class="ruby-identifier">out</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">el</span>.<span class="ruby-identifier">to_tagged</span> <span class="ruby-operator">+</span> (<span class="ruby-identifier">el</span>.<span class="ruby-identifier">appendSpace</span> <span class="ruby-value">? </span><span class="ruby-value str">' '</span> <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>)
802
- 266: <span class="ruby-keyword kw">else</span>
803
- 267: <span class="ruby-identifier">out</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">el</span>.<span class="ruby-identifier">to_s</span>
804
- 268: <span class="ruby-keyword kw">end</span>
716
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 180</span>
717
+ 180: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tagged</span>
718
+ 181: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">''</span>
719
+ 182: <span class="ruby-identifier">post</span> = <span class="ruby-value str">''</span>
720
+ 183: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@category</span>
721
+ 184: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:richtext</span>
722
+ 185: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;div&gt;'</span>
723
+ 186: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/div&gt;'</span>
724
+ 187: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title1</span>
725
+ 188: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;h1&gt;#{@data[0]} &quot;</span>
726
+ 189: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/h1&gt;\n\n&quot;</span>
727
+ 190: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title2</span>
728
+ 191: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;h2&gt;#{@data[0]}.#{@data[1]} &quot;</span>
729
+ 192: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/h2&gt;\n\n&quot;</span>
730
+ 193: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title3</span>
731
+ 194: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;h3&gt;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
732
+ 195: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/h3&gt;\n\n&quot;</span>
733
+ 196: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:hline</span>
734
+ 197: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;hr&gt;'</span>
735
+ 198: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/hr&gt;\n&quot;</span>
736
+ 199: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:paragraph</span>
737
+ 200: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;p&gt;'</span>
738
+ 201: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/p&gt;\n\n&quot;</span>
739
+ 202: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:pre</span>
740
+ 203: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;pre&gt;'</span>
741
+ 204: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/pre&gt;\n\n&quot;</span>
742
+ 205: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist1</span>
743
+ 206: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ul&gt;'</span>
744
+ 207: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ul&gt;'</span>
745
+ 208: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem1</span>
746
+ 209: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;li&gt;* '</span>
747
+ 210: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
748
+ 211: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist2</span>
749
+ 212: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ul&gt;'</span>
750
+ 213: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ul&gt;'</span>
751
+ 214: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem2</span>
752
+ 215: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;li&gt; * '</span>
753
+ 216: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
754
+ 217: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist3</span>
755
+ 218: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ul&gt;'</span>
756
+ 219: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ul&gt;'</span>
757
+ 220: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem3</span>
758
+ 221: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;li&gt; * '</span>
759
+ 222: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
760
+ 223: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist1</span>
761
+ 224: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ol&gt;'</span>
762
+ 225: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ol&gt;'</span>
763
+ 226: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem1</span>
764
+ 227: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;li&gt;#{@data[0]} &quot;</span>
765
+ 228: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
766
+ 229: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist2</span>
767
+ 230: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ol&gt;'</span>
768
+ 231: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ol&gt;'</span>
769
+ 232: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem2</span>
770
+ 233: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;li&gt;#{@data[0]}.#{@data[1]} &quot;</span>
771
+ 234: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
772
+ 235: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist3</span>
773
+ 236: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ol&gt;'</span>
774
+ 237: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ol&gt;'</span>
775
+ 238: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem3</span>
776
+ 239: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;li&gt;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
777
+ 240: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
778
+ 241: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:ref</span>
779
+ 242: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;ref data=\&quot;#{@data}\&quot;&gt;&quot;</span>
780
+ 243: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ref&gt;'</span>
781
+ 244: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:href</span>
782
+ 245: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;a href=\&quot;#{@data}\&quot; target=\&quot;_blank\&quot;&gt;&quot;</span>
783
+ 246: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/a&gt;'</span>
784
+ 247: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:blockfunc</span>
785
+ 248: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;blockfunc:#{@data[0]}&quot;</span>
786
+ 249: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">1</span>]
787
+ 250: <span class="ruby-ivar">@data</span>[<span class="ruby-value">1</span>].<span class="ruby-identifier">keys</span>.<span class="ruby-identifier">sort</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">key</span><span class="ruby-operator">|</span>
788
+ 251: <span class="ruby-identifier">pre</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot; #{key}=\&quot;#{@data[1][key]}\&quot;&quot;</span>
789
+ 252: <span class="ruby-keyword kw">end</span>
790
+ 253: <span class="ruby-keyword kw">end</span>
791
+ 254: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;/&gt;&quot;</span>
792
+ 255: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:italic</span>
793
+ 256: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;i&gt;'</span>
794
+ 257: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/i&gt;'</span>
795
+ 258: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bold</span>
796
+ 259: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;b&gt;'</span>
797
+ 260: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/b&gt;'</span>
798
+ 261: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:code</span>
799
+ 262: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;code&gt;'</span>
800
+ 263: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/code&gt;'</span>
801
+ 264: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:text</span>
802
+ 265: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'['</span>
803
+ 266: <span class="ruby-identifier">post</span> = <span class="ruby-value str">']'</span>
804
+ 267: <span class="ruby-keyword kw">else</span>
805
+ 268: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Unknown RichTextElement category #{@category}&quot;</span>
805
806
  269: <span class="ruby-keyword kw">end</span>
806
807
  270:
807
- 271: <span class="ruby-identifier">pre</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">out</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">post</span>
808
- 272: <span class="ruby-keyword kw">end</span>
808
+ 271: <span class="ruby-identifier">out</span> = <span class="ruby-value str">''</span>
809
+ 272: <span class="ruby-ivar">@children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">el</span><span class="ruby-operator">|</span>
810
+ 273: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">el</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RichTextElement</span>)
811
+ 274: <span class="ruby-identifier">out</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">el</span>.<span class="ruby-identifier">to_tagged</span> <span class="ruby-operator">+</span> (<span class="ruby-identifier">el</span>.<span class="ruby-identifier">appendSpace</span> <span class="ruby-value">? </span><span class="ruby-value str">' '</span> <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>)
812
+ 275: <span class="ruby-keyword kw">else</span>
813
+ 276: <span class="ruby-identifier">out</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">el</span>.<span class="ruby-identifier">to_s</span>
814
+ 277: <span class="ruby-keyword kw">end</span>
815
+ 278: <span class="ruby-keyword kw">end</span>
816
+ 279:
817
+ 280: <span class="ruby-identifier">pre</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">out</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">post</span>
818
+ 281: <span class="ruby-keyword kw">end</span>
809
819
  </pre>
810
820
  </div>
811
821