taskjuggler 0.0.3 → 0.0.4

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 (495) hide show
  1. data/benchmarks/UTF-8-Strings.rb +58 -0
  2. data/data/css/tjmanual.css +52 -0
  3. data/data/css/tjreport.css +195 -0
  4. data/data/icons/details.png +0 -0
  5. data/data/icons/flag-green.png +0 -0
  6. data/data/icons/flag-red.png +0 -0
  7. data/data/icons/flag-yellow.png +0 -0
  8. data/data/icons/resource.png +0 -0
  9. data/data/icons/resourcegroup.png +0 -0
  10. data/data/icons/task.png +0 -0
  11. data/data/icons/taskgroup.png +0 -0
  12. data/data/icons/trend-down.png +0 -0
  13. data/data/icons/trend-flat.png +0 -0
  14. data/data/icons/trend-up.png +0 -0
  15. data/data/scripts/wz_tooltip.js +1301 -0
  16. data/doc/classes/AppConfig.html +298 -230
  17. data/doc/classes/Arguments.html +8 -8
  18. data/doc/classes/Object.html +7 -7
  19. data/doc/classes/String.html +89 -89
  20. data/doc/classes/TaskJuggler.html +396 -264
  21. data/doc/classes/TaskJuggler/Account.html +18 -18
  22. data/doc/classes/TaskJuggler/AccountAttribute.html +26 -26
  23. data/doc/classes/TaskJuggler/AccountScenario.html +12 -12
  24. data/doc/classes/TaskJuggler/Allocation.html +30 -30
  25. data/doc/classes/TaskJuggler/AllocationAttribute.html +26 -26
  26. data/doc/classes/TaskJuggler/AttributeBase.html +227 -115
  27. data/doc/classes/TaskJuggler/AttributeDefinition.html +6 -6
  28. data/doc/classes/TaskJuggler/BatchProcessor.html +117 -83
  29. data/doc/classes/TaskJuggler/Booking.html +18 -18
  30. data/doc/classes/TaskJuggler/BookingListAttribute.html +26 -26
  31. data/doc/classes/TaskJuggler/BooleanAttribute.html +26 -26
  32. data/doc/classes/TaskJuggler/CSVFile.html +24 -24
  33. data/doc/classes/TaskJuggler/CellSettingPattern.html +201 -0
  34. data/doc/classes/TaskJuggler/CellSettingPatternList.html +253 -0
  35. data/doc/classes/TaskJuggler/Charge.html +18 -18
  36. data/doc/classes/TaskJuggler/ChargeListAttribute.html +20 -20
  37. data/doc/classes/TaskJuggler/ChargeSet.html +37 -37
  38. data/doc/classes/TaskJuggler/ChargeSetListAttribute.html +26 -26
  39. data/doc/classes/TaskJuggler/ColumnListAttribute.html +20 -20
  40. data/doc/classes/TaskJuggler/ColumnTable.html +40 -40
  41. data/doc/classes/TaskJuggler/DateAttribute.html +54 -15
  42. data/doc/classes/TaskJuggler/DefinitionListAttribute.html +10 -10
  43. data/doc/classes/TaskJuggler/DependencyListAttribute.html +47 -47
  44. data/doc/classes/TaskJuggler/DurationAttribute.html +30 -30
  45. data/doc/classes/TaskJuggler/FixnumAttribute.html +20 -20
  46. data/doc/classes/TaskJuggler/FlagListAttribute.html +43 -43
  47. data/doc/classes/TaskJuggler/FloatAttribute.html +30 -30
  48. data/doc/classes/TaskJuggler/FormatListAttribute.html +21 -21
  49. data/doc/classes/TaskJuggler/GanttChart.html +48 -48
  50. data/doc/classes/TaskJuggler/GanttContainer.html +42 -42
  51. data/doc/classes/TaskJuggler/GanttHeader.html +12 -12
  52. data/doc/classes/TaskJuggler/GanttHeaderScaleItem.html +12 -12
  53. data/doc/classes/TaskJuggler/GanttLine.html +24 -24
  54. data/doc/classes/TaskJuggler/GanttLoadStack.html +18 -18
  55. data/doc/classes/TaskJuggler/GanttMilestone.html +42 -42
  56. data/doc/classes/TaskJuggler/GanttRouter.html +24 -24
  57. data/doc/classes/TaskJuggler/GanttTaskBar.html +42 -42
  58. data/doc/classes/TaskJuggler/HTMLDocument.html +13 -13
  59. data/doc/classes/TaskJuggler/HTMLGraphics.html +12 -12
  60. data/doc/classes/TaskJuggler/Interval.html +57 -57
  61. data/doc/classes/TaskJuggler/IntervalListAttribute.html +47 -47
  62. data/doc/classes/TaskJuggler/JobInfo.html +68 -12
  63. data/doc/classes/TaskJuggler/Journal.html +266 -20
  64. data/doc/classes/TaskJuggler/JournalEntry.html +79 -23
  65. data/doc/classes/TaskJuggler/JournalEntryList.html +454 -0
  66. data/doc/classes/TaskJuggler/KeywordArray.html +10 -10
  67. data/doc/classes/TaskJuggler/KeywordDocumentation.html +171 -170
  68. data/doc/classes/TaskJuggler/Limits.html +36 -36
  69. data/doc/classes/TaskJuggler/Limits/Limit.html +30 -30
  70. data/doc/classes/TaskJuggler/LimitsAttribute.html +40 -40
  71. data/doc/classes/TaskJuggler/ListAttributeBase.html +20 -20
  72. data/doc/classes/TaskJuggler/Log.html +145 -107
  73. data/doc/classes/TaskJuggler/LogicalAttribute.html +65 -36
  74. data/doc/classes/TaskJuggler/LogicalExpression.html +61 -24
  75. data/doc/classes/TaskJuggler/LogicalExpressionAttribute.html +20 -20
  76. data/doc/classes/TaskJuggler/LogicalFlag.html +31 -51
  77. data/doc/classes/TaskJuggler/LogicalFunction.html +64 -53
  78. data/doc/classes/TaskJuggler/LogicalOperation.html +103 -55
  79. data/doc/classes/TaskJuggler/Macro.html +6 -6
  80. data/doc/classes/TaskJuggler/MacroParser.html +36 -36
  81. data/doc/classes/TaskJuggler/MacroTable.html +37 -37
  82. data/doc/classes/TaskJuggler/Message.html +12 -12
  83. data/doc/classes/TaskJuggler/MessageHandler.html +32 -20
  84. data/doc/classes/TaskJuggler/Navigator.html +110 -46
  85. data/doc/classes/TaskJuggler/NavigatorElement.html +449 -0
  86. data/doc/classes/TaskJuggler/OnShiftCache.html +24 -24
  87. data/doc/classes/TaskJuggler/Project.html +1158 -893
  88. data/doc/classes/TaskJuggler/ProjectFileParser.html +94 -91
  89. data/doc/classes/TaskJuggler/PropertyAttribute.html +20 -20
  90. data/doc/classes/TaskJuggler/PropertyList.html +225 -155
  91. data/doc/classes/TaskJuggler/PropertySet.html +375 -332
  92. data/doc/classes/TaskJuggler/PropertyTreeNode.html +750 -510
  93. data/doc/classes/TaskJuggler/Query.html +404 -139
  94. data/doc/classes/TaskJuggler/{RTPNavigator.html → RTFNavigator.html} +57 -56
  95. data/doc/classes/TaskJuggler/RTFQuery.html +343 -0
  96. data/doc/classes/TaskJuggler/{RTPReport.html → RTFReport.html} +70 -67
  97. data/doc/classes/TaskJuggler/RealFormat.html +18 -18
  98. data/doc/classes/TaskJuggler/RealFormatAttribute.html +10 -10
  99. data/doc/classes/TaskJuggler/ReferenceAttribute.html +107 -40
  100. data/doc/classes/TaskJuggler/RemoteServiceManager.html +335 -0
  101. data/doc/classes/TaskJuggler/Report.html +66 -64
  102. data/doc/classes/TaskJuggler/ReportBase.html +112 -123
  103. data/doc/classes/TaskJuggler/ReportContext.html +43 -38
  104. data/doc/classes/TaskJuggler/ReportServer.html +320 -0
  105. data/doc/classes/TaskJuggler/ReportTable.html +42 -42
  106. data/doc/classes/TaskJuggler/ReportTableCell.html +221 -129
  107. data/doc/classes/TaskJuggler/ReportTableColumn.html +27 -27
  108. data/doc/classes/TaskJuggler/ReportTableLegend.html +24 -24
  109. data/doc/classes/TaskJuggler/ReportTableLine.html +126 -80
  110. data/doc/classes/TaskJuggler/Resource.html +12 -12
  111. data/doc/classes/TaskJuggler/ResourceListAttribute.html +82 -47
  112. data/doc/classes/TaskJuggler/ResourceListRE.html +43 -39
  113. data/doc/classes/TaskJuggler/ResourceScenario.html +413 -321
  114. data/doc/classes/TaskJuggler/RichText.html +64 -248
  115. data/doc/classes/TaskJuggler/RichTextAttribute.html +94 -30
  116. data/doc/classes/TaskJuggler/RichTextDocument.html +87 -85
  117. data/doc/classes/TaskJuggler/RichTextElement.html +456 -363
  118. data/doc/classes/TaskJuggler/RichTextException.html +13 -13
  119. data/doc/classes/TaskJuggler/{RichTextProtocolExample.html → RichTextFunctionExample.html} +64 -63
  120. data/doc/classes/TaskJuggler/{RichTextProtocolHandler.html → RichTextFunctionHandler.html} +42 -36
  121. data/doc/classes/TaskJuggler/RichTextIntermediate.html +563 -0
  122. data/doc/classes/TaskJuggler/RichTextParser.html +54 -51
  123. data/doc/classes/TaskJuggler/RichTextScanner.html +94 -92
  124. data/doc/classes/TaskJuggler/RichTextSnip.html +96 -60
  125. data/doc/classes/TaskJuggler/RichTextSyntaxRules.html +369 -227
  126. data/doc/classes/TaskJuggler/Scenario.html +6 -6
  127. data/doc/classes/TaskJuggler/ScenarioData.html +37 -37
  128. data/doc/classes/TaskJuggler/ScenarioListAttribute.html +31 -31
  129. data/doc/classes/TaskJuggler/Scoreboard.html +66 -66
  130. data/doc/classes/TaskJuggler/Shift.html +18 -18
  131. data/doc/classes/TaskJuggler/ShiftAssignment.html +54 -54
  132. data/doc/classes/TaskJuggler/ShiftAssignments.html +78 -78
  133. data/doc/classes/TaskJuggler/ShiftAssignmentsAttribute.html +40 -40
  134. data/doc/classes/TaskJuggler/ShiftScenario.html +24 -24
  135. data/doc/classes/TaskJuggler/SortListAttribute.html +22 -22
  136. data/doc/classes/TaskJuggler/SourceFileInfo.html +12 -12
  137. data/doc/classes/TaskJuggler/StringAttribute.html +30 -30
  138. data/doc/classes/TaskJuggler/SymbolAttribute.html +20 -20
  139. data/doc/classes/TaskJuggler/SyntaxReference.html +42 -42
  140. data/doc/classes/TaskJuggler/TOCEntry.html +12 -12
  141. data/doc/classes/TaskJuggler/TSResourceRecord.html +197 -0
  142. data/doc/classes/TaskJuggler/TSTaskRecord.html +215 -0
  143. data/doc/classes/TaskJuggler/TableColumnDefinition.html +64 -43
  144. data/doc/classes/TaskJuggler/TableOfContents.html +18 -18
  145. data/doc/classes/TaskJuggler/TableReport.html +447 -468
  146. data/doc/classes/TaskJuggler/Task.html +12 -12
  147. data/doc/classes/TaskJuggler/TaskDependency.html +12 -12
  148. data/doc/classes/TaskJuggler/TaskListAttribute.html +47 -47
  149. data/doc/classes/TaskJuggler/TaskListRE.html +43 -39
  150. data/doc/classes/TaskJuggler/TaskScenario.html +529 -282
  151. data/doc/classes/TaskJuggler/TextParser.html +215 -194
  152. data/doc/classes/TaskJuggler/TextParser/Pattern.html +97 -97
  153. data/doc/classes/TaskJuggler/TextParser/Rule.html +84 -84
  154. data/doc/classes/TaskJuggler/TextParser/StackElement.html +16 -15
  155. data/doc/classes/TaskJuggler/TextParser/TextParserResultArray.html +12 -12
  156. data/doc/classes/TaskJuggler/TextParser/TokenDoc.html +6 -6
  157. data/doc/classes/TaskJuggler/TextReport.html +77 -74
  158. data/doc/classes/TaskJuggler/TextScanner.html +294 -281
  159. data/doc/classes/TaskJuggler/TextScanner/BufferStreamHandle.html +70 -70
  160. data/doc/classes/TaskJuggler/TextScanner/FileStreamHandle.html +59 -60
  161. data/doc/classes/TaskJuggler/TextScanner/StreamHandle.html +12 -12
  162. data/doc/classes/TaskJuggler/TimeSheetReport.html +406 -0
  163. data/doc/classes/TaskJuggler/TjException.html +6 -6
  164. data/doc/classes/TaskJuggler/TjTime.html +522 -513
  165. data/doc/classes/TaskJuggler/TjpExample.html +25 -25
  166. data/doc/classes/TaskJuggler/TjpExportRE.html +21 -24
  167. data/doc/classes/TaskJuggler/TjpSyntaxRules.html +6177 -4318
  168. data/doc/classes/TaskJuggler/UserManual.html +212 -213
  169. data/doc/classes/TaskJuggler/WorkingHours.html +49 -49
  170. data/doc/classes/TaskJuggler/WorkingHoursAttribute.html +53 -53
  171. data/doc/classes/TaskJuggler/XMLBlob.html +21 -21
  172. data/doc/classes/TaskJuggler/XMLComment.html +21 -21
  173. data/doc/classes/TaskJuggler/XMLDocument.html +27 -26
  174. data/doc/classes/TaskJuggler/XMLElement.html +86 -50
  175. data/doc/classes/TaskJuggler/XMLNamedText.html +11 -11
  176. data/doc/classes/TaskJuggler/XMLText.html +36 -36
  177. data/doc/files/COPYING.html +1 -1
  178. data/doc/files/README.html +1 -1
  179. data/doc/files/lib/AccountScenario_rb.html +3 -2
  180. data/doc/files/lib/Account_rb.html +3 -2
  181. data/doc/files/lib/Allocation_rb.html +3 -2
  182. data/doc/files/lib/AppConfig_rb.html +5 -2
  183. data/doc/files/lib/AttributeBase_rb.html +3 -2
  184. data/doc/files/lib/AttributeDefinition_rb.html +3 -2
  185. data/doc/files/lib/Attributes_rb.html +3 -2
  186. data/doc/files/lib/BatchProcessor_rb.html +4 -3
  187. data/doc/files/lib/Booking_rb.html +3 -2
  188. data/doc/files/lib/ChargeSet_rb.html +3 -2
  189. data/doc/files/lib/Charge_rb.html +3 -2
  190. data/doc/files/lib/HTMLDocument_rb.html +3 -2
  191. data/doc/files/lib/Interval_rb.html +3 -2
  192. data/doc/files/lib/Journal_rb.html +4 -3
  193. data/doc/files/lib/KeywordArray_rb.html +3 -2
  194. data/doc/files/lib/KeywordDocumentation_rb.html +3 -2
  195. data/doc/files/lib/Limits_rb.html +3 -2
  196. data/doc/files/lib/Log_rb.html +3 -2
  197. data/doc/files/lib/LogicalExpression_rb.html +3 -2
  198. data/doc/files/lib/LogicalFunction_rb.html +3 -2
  199. data/doc/files/lib/LogicalOperation_rb.html +3 -2
  200. data/doc/files/lib/MacroParser_rb.html +3 -2
  201. data/doc/files/lib/MacroTable_rb.html +3 -2
  202. data/doc/files/lib/MessageHandler_rb.html +3 -2
  203. data/doc/files/lib/Message_rb.html +3 -2
  204. data/doc/files/lib/ProjectFileParser_rb.html +7 -4
  205. data/doc/files/lib/Project_rb.html +3 -2
  206. data/doc/files/lib/PropertyList_rb.html +3 -2
  207. data/doc/files/lib/PropertySet_rb.html +3 -2
  208. data/doc/files/lib/PropertyTreeNode_rb.html +3 -2
  209. data/doc/files/lib/Query_rb.html +3 -2
  210. data/doc/files/lib/{RTPNavigator_rb.html → RTFNavigator_rb.html} +8 -7
  211. data/doc/files/lib/RTFQuery_rb.html +121 -0
  212. data/doc/files/lib/{RTPReport_rb.html → RTFReport_rb.html} +8 -7
  213. data/doc/files/lib/RealFormat_rb.html +3 -2
  214. data/doc/files/lib/RemoteServiceManager_rb.html +117 -0
  215. data/doc/files/lib/ReportServer_rb.html +107 -0
  216. data/doc/files/lib/ResourceScenario_rb.html +3 -2
  217. data/doc/files/lib/Resource_rb.html +3 -2
  218. data/doc/files/lib/RichTextDocument_rb.html +4 -3
  219. data/doc/files/lib/RichTextElement_rb.html +3 -2
  220. data/doc/files/lib/{RichTextProtocolExample_rb.html → RichTextFunctionExample_rb.html} +8 -7
  221. data/doc/files/lib/{RichTextProtocolHandler_rb.html → RichTextFunctionHandler_rb.html} +7 -6
  222. data/doc/files/lib/RichTextParser_rb.html +3 -2
  223. data/doc/files/lib/RichTextScanner_rb.html +3 -2
  224. data/doc/files/lib/RichTextSnip_rb.html +3 -2
  225. data/doc/files/lib/RichTextSyntaxRules_rb.html +3 -2
  226. data/doc/files/lib/RichText_rb.html +3 -2
  227. data/doc/files/lib/ScenarioData_rb.html +3 -2
  228. data/doc/files/lib/Scenario_rb.html +3 -2
  229. data/doc/files/lib/Scoreboard_rb.html +3 -2
  230. data/doc/files/lib/ShiftAssignments_rb.html +3 -2
  231. data/doc/files/lib/ShiftScenario_rb.html +3 -2
  232. data/doc/files/lib/Shift_rb.html +3 -2
  233. data/doc/files/lib/SourceFileInfo_rb.html +3 -2
  234. data/doc/files/lib/SyntaxReference_rb.html +3 -2
  235. data/doc/files/lib/TOCEntry_rb.html +3 -2
  236. data/doc/files/lib/TableColumnDefinition_rb.html +3 -2
  237. data/doc/files/lib/TableOfContents_rb.html +3 -2
  238. data/doc/files/lib/TaskDependency_rb.html +3 -2
  239. data/doc/files/lib/TaskJuggler_rb.html +7 -2
  240. data/doc/files/lib/TaskScenario_rb.html +3 -2
  241. data/doc/files/lib/Task_rb.html +3 -2
  242. data/doc/files/lib/TextParser/Pattern_rb.html +4 -3
  243. data/doc/files/lib/TextParser/Rule_rb.html +4 -3
  244. data/doc/files/lib/TextParser/StackElement_rb.html +4 -3
  245. data/doc/files/lib/TextParser/TokenDoc_rb.html +4 -3
  246. data/doc/files/lib/TextParser_rb.html +3 -2
  247. data/doc/files/lib/TextScanner_rb.html +3 -2
  248. data/doc/files/lib/Tj3Config_rb.html +3 -2
  249. data/doc/files/lib/TjException_rb.html +3 -2
  250. data/doc/files/lib/TjTime_rb.html +3 -2
  251. data/doc/files/lib/TjpExample_rb.html +3 -2
  252. data/doc/files/lib/TjpSyntaxRules_rb.html +3 -2
  253. data/doc/files/lib/UTF8String_rb.html +14 -6
  254. data/doc/files/lib/UserManual_rb.html +6 -3
  255. data/doc/files/lib/WorkingHours_rb.html +3 -2
  256. data/doc/files/lib/XMLDocument_rb.html +3 -2
  257. data/doc/files/lib/XMLElement_rb.html +3 -2
  258. data/doc/files/lib/deep_copy_rb.html +3 -2
  259. data/doc/files/lib/reports/CSVFile_rb.html +3 -2
  260. data/doc/files/lib/reports/ColumnTable_rb.html +3 -2
  261. data/doc/files/lib/reports/GanttChart_rb.html +3 -2
  262. data/doc/files/lib/reports/GanttContainer_rb.html +3 -2
  263. data/doc/files/lib/reports/GanttHeaderScaleItem_rb.html +3 -2
  264. data/doc/files/lib/reports/GanttHeader_rb.html +3 -2
  265. data/doc/files/lib/reports/GanttLine_rb.html +3 -2
  266. data/doc/files/lib/reports/GanttLoadStack_rb.html +3 -2
  267. data/doc/files/lib/reports/GanttMilestone_rb.html +3 -2
  268. data/doc/files/lib/reports/GanttRouter_rb.html +3 -2
  269. data/doc/files/lib/reports/GanttTaskBar_rb.html +3 -2
  270. data/doc/files/lib/reports/HTMLGraphics_rb.html +3 -2
  271. data/doc/files/lib/reports/Navigator_rb.html +3 -2
  272. data/doc/files/lib/reports/ReportBase_rb.html +3 -2
  273. data/doc/files/lib/reports/ReportContext_rb.html +3 -2
  274. data/doc/files/lib/reports/ReportTableCell_rb.html +3 -2
  275. data/doc/files/lib/reports/ReportTableColumn_rb.html +3 -2
  276. data/doc/files/lib/reports/ReportTableLegend_rb.html +3 -2
  277. data/doc/files/lib/reports/ReportTableLine_rb.html +3 -2
  278. data/doc/files/lib/reports/ReportTable_rb.html +3 -2
  279. data/doc/files/lib/reports/Report_rb.html +7 -2
  280. data/doc/files/lib/reports/ResourceListRE_rb.html +3 -2
  281. data/doc/files/lib/reports/TableReport_rb.html +3 -2
  282. data/doc/files/lib/reports/TaskListRE_rb.html +3 -2
  283. data/doc/files/lib/reports/TextReport_rb.html +4 -3
  284. data/doc/files/lib/reports/TimeSheetReport_rb.html +117 -0
  285. data/doc/files/lib/reports/TjpExportRE_rb.html +3 -2
  286. data/doc/files/lib/taskjuggler3_rb.html +94 -77
  287. data/doc/files/lib/tj3client_rb.html +280 -0
  288. data/doc/files/lib/tj3man_rb.html +10 -9
  289. data/doc/fr_class_index.html +27 -5
  290. data/doc/fr_file_index.html +15 -7
  291. data/doc/fr_method_index.html +1312 -1020
  292. data/examples/tutorial.tjp +113 -14
  293. data/gem_spec.rb +2 -1
  294. data/lib/Account.rb +1 -1
  295. data/lib/AccountScenario.rb +1 -1
  296. data/lib/Allocation.rb +1 -1
  297. data/lib/AppConfig.rb +23 -10
  298. data/lib/AttributeBase.rb +34 -6
  299. data/lib/AttributeDefinition.rb +1 -1
  300. data/lib/Attributes.rb +51 -16
  301. data/lib/BatchProcessor.rb +204 -77
  302. data/lib/Booking.rb +1 -1
  303. data/lib/Charge.rb +1 -1
  304. data/lib/ChargeSet.rb +1 -1
  305. data/lib/HTMLDocument.rb +2 -2
  306. data/lib/Interval.rb +1 -1
  307. data/lib/Journal.rb +231 -9
  308. data/lib/KeywordArray.rb +1 -1
  309. data/lib/KeywordDocumentation.rb +6 -4
  310. data/lib/Limits.rb +1 -1
  311. data/lib/Log.rb +8 -1
  312. data/lib/LogicalExpression.rb +14 -13
  313. data/lib/LogicalFunction.rb +88 -14
  314. data/lib/LogicalOperation.rb +124 -53
  315. data/lib/MacroParser.rb +1 -1
  316. data/lib/MacroTable.rb +2 -2
  317. data/lib/Message.rb +1 -1
  318. data/lib/MessageHandler.rb +7 -3
  319. data/lib/Project.rb +93 -14
  320. data/lib/ProjectFileParser.rb +30 -15
  321. data/lib/PropertyList.rb +103 -36
  322. data/lib/PropertySet.rb +22 -10
  323. data/lib/PropertyTreeNode.rb +120 -15
  324. data/lib/Query.rb +119 -48
  325. data/lib/{RTPNavigator.rb → RTFNavigator.rb} +11 -10
  326. data/lib/RTFQuery.rb +166 -0
  327. data/lib/{RTPReport.rb → RTFReport.rb} +11 -8
  328. data/lib/RealFormat.rb +1 -1
  329. data/lib/RemoteServiceManager.rb +80 -0
  330. data/lib/ReportServer.rb +66 -0
  331. data/lib/Resource.rb +1 -1
  332. data/lib/ResourceScenario.rb +48 -19
  333. data/lib/RichText.rb +98 -41
  334. data/lib/RichTextDocument.rb +10 -8
  335. data/lib/RichTextElement.rb +72 -28
  336. data/lib/{RichTextProtocolExample.rb → RichTextFunctionExample.rb} +8 -7
  337. data/lib/{RichTextProtocolHandler.rb → RichTextFunctionHandler.rb} +12 -14
  338. data/lib/RichTextParser.rb +6 -3
  339. data/lib/RichTextScanner.rb +91 -19
  340. data/lib/RichTextSnip.rb +8 -3
  341. data/lib/RichTextSyntaxRules.rb +103 -45
  342. data/lib/Scenario.rb +1 -1
  343. data/lib/ScenarioData.rb +2 -2
  344. data/lib/Scoreboard.rb +1 -1
  345. data/lib/Shift.rb +1 -1
  346. data/lib/ShiftAssignments.rb +1 -1
  347. data/lib/ShiftScenario.rb +1 -1
  348. data/lib/SourceFileInfo.rb +1 -1
  349. data/lib/SyntaxReference.rb +2 -2
  350. data/lib/TOCEntry.rb +1 -1
  351. data/lib/TableColumnDefinition.rb +59 -16
  352. data/lib/TableOfContents.rb +1 -1
  353. data/lib/Task.rb +1 -1
  354. data/lib/TaskDependency.rb +1 -1
  355. data/lib/TaskJuggler.rb +31 -8
  356. data/lib/TaskScenario.rb +165 -16
  357. data/lib/TextParser.rb +36 -22
  358. data/lib/TextParser/Pattern.rb +3 -3
  359. data/lib/TextParser/Rule.rb +2 -2
  360. data/lib/TextParser/StackElement.rb +4 -3
  361. data/lib/TextParser/TokenDoc.rb +2 -2
  362. data/lib/TextScanner.rb +52 -37
  363. data/lib/Tj3Config.rb +6 -5
  364. data/lib/TjException.rb +1 -1
  365. data/lib/TjTime.rb +12 -3
  366. data/lib/TjpExample.rb +1 -1
  367. data/lib/TjpSyntaxRules.rb +1044 -150
  368. data/lib/UTF8String.rb +2 -1
  369. data/lib/UserManual.rb +18 -70
  370. data/lib/WorkingHours.rb +3 -3
  371. data/lib/XMLDocument.rb +3 -2
  372. data/lib/XMLElement.rb +6 -1
  373. data/lib/deep_copy.rb +1 -1
  374. data/lib/reports/CSVFile.rb +1 -1
  375. data/lib/reports/ColumnTable.rb +9 -9
  376. data/lib/reports/GanttChart.rb +1 -1
  377. data/lib/reports/GanttContainer.rb +1 -1
  378. data/lib/reports/GanttHeader.rb +1 -1
  379. data/lib/reports/GanttHeaderScaleItem.rb +1 -1
  380. data/lib/reports/GanttLine.rb +40 -40
  381. data/lib/reports/GanttLoadStack.rb +1 -1
  382. data/lib/reports/GanttMilestone.rb +1 -1
  383. data/lib/reports/GanttRouter.rb +1 -1
  384. data/lib/reports/GanttTaskBar.rb +1 -1
  385. data/lib/reports/HTMLGraphics.rb +1 -1
  386. data/lib/reports/Navigator.rb +149 -22
  387. data/lib/reports/Report.rb +115 -172
  388. data/lib/reports/ReportBase.rb +22 -27
  389. data/lib/reports/ReportContext.rb +29 -15
  390. data/lib/reports/ReportTable.rb +1 -1
  391. data/lib/reports/ReportTableCell.rb +120 -27
  392. data/lib/reports/ReportTableColumn.rb +3 -3
  393. data/lib/reports/ReportTableLegend.rb +1 -1
  394. data/lib/reports/ReportTableLine.rb +10 -2
  395. data/lib/reports/ResourceListRE.rb +5 -1
  396. data/lib/reports/TableReport.rb +237 -287
  397. data/lib/reports/TaskListRE.rb +5 -1
  398. data/lib/reports/TextReport.rb +7 -4
  399. data/lib/reports/TimeSheetReport.rb +233 -0
  400. data/lib/reports/TjpExportRE.rb +2 -2
  401. data/lib/taskjuggler3.rb +27 -11
  402. data/lib/tj3client.rb +110 -0
  403. data/lib/tj3man.rb +4 -4
  404. data/manual/Getting_Started +0 -50
  405. data/manual/How_To_Contribute +6 -13
  406. data/manual/Installation +102 -28
  407. data/manual/Intro +11 -1
  408. data/manual/Reporting_Bugs +23 -7
  409. data/manual/Rich_Text_Attributes +59 -6
  410. data/manual/TaskJuggler_2x_Migration +27 -0
  411. data/manual/The_TaskJuggler_Syntax +104 -0
  412. data/manual/Tutorial +10 -9
  413. data/prj_cfg.rb +8 -2
  414. data/tasks/csts.rake +1 -1
  415. data/tasks/manual.rake +5 -3
  416. data/test/MessageChecker.rb +1 -1
  417. data/test/TestSuite/HTML-Reports/Alerts.html +172 -0
  418. data/test/TestSuite/HTML-Reports/Alerts.tjp +77 -0
  419. data/test/TestSuite/HTML-Reports/CellText.html +758 -0
  420. data/test/TestSuite/HTML-Reports/CellText.tjp +75 -0
  421. data/test/TestSuite/HTML-Reports/ColumnPeriods.html +156 -0
  422. data/test/TestSuite/HTML-Reports/ColumnPeriods.tjp +44 -0
  423. data/test/TestSuite/HTML-Reports/IsOngoing.html +172 -0
  424. data/test/TestSuite/HTML-Reports/IsOngoing.tjp +34 -0
  425. data/test/TestSuite/HTML-Reports/LogicalFunctions.html +80 -0
  426. data/test/TestSuite/HTML-Reports/LogicalFunctions.tjp +20 -0
  427. data/test/TestSuite/HTML-Reports/Query.html +31 -0
  428. data/test/TestSuite/HTML-Reports/Query.tjp +28 -0
  429. data/test/TestSuite/HTML-Reports/Sorting.tjp +68 -0
  430. data/test/TestSuite/HTML-Reports/TimeSheet.tjp +69 -0
  431. data/test/TestSuite/HTML-Reports/UDAQuery.tjp +27 -0
  432. data/test/TestSuite/HTML-Reports/css/tjmanual.css +52 -0
  433. data/test/TestSuite/HTML-Reports/css/tjreport.css +195 -0
  434. data/test/TestSuite/HTML-Reports/depArrows.html +842 -0
  435. data/test/TestSuite/HTML-Reports/icons/details.png +0 -0
  436. data/test/TestSuite/HTML-Reports/icons/flag-green.png +0 -0
  437. data/test/TestSuite/HTML-Reports/icons/flag-red.png +0 -0
  438. data/test/TestSuite/HTML-Reports/icons/flag-yellow.png +0 -0
  439. data/test/TestSuite/HTML-Reports/icons/resource.png +0 -0
  440. data/test/TestSuite/HTML-Reports/icons/resourcegroup.png +0 -0
  441. data/test/TestSuite/HTML-Reports/icons/task.png +0 -0
  442. data/test/TestSuite/HTML-Reports/icons/taskgroup.png +0 -0
  443. data/test/TestSuite/HTML-Reports/reference.tjp +7 -8
  444. data/test/TestSuite/HTML-Reports/scripts/scripts/wz_tooltip.js +1301 -0
  445. data/test/TestSuite/HTML-Reports/scripts/wz_tooltip.js +1301 -0
  446. data/test/TestSuite/Scheduler/Correct/Mandatory.tjp +34 -0
  447. data/test/TestSuite/Syntax/Correct/Celltext.tjp +2 -1
  448. data/test/TestSuite/Syntax/Correct/Journal.tjp +2 -2
  449. data/test/TestSuite/Syntax/Correct/LogicalExpression.tjp +2 -1
  450. data/test/TestSuite/Syntax/Correct/LogicalFunction.tjp +20 -0
  451. data/test/TestSuite/Syntax/Correct/Query.tjp +18 -0
  452. data/test/TestSuite/Syntax/Correct/StatusSheet.tjp +45 -0
  453. data/test/TestSuite/Syntax/Correct/TimeSheet.tjp +49 -0
  454. data/test/TestSuite/Syntax/Correct/icons/details.png +0 -0
  455. data/test/TestSuite/Syntax/Correct/icons/flag-green.png +0 -0
  456. data/test/TestSuite/Syntax/Correct/icons/flag-red.png +0 -0
  457. data/test/TestSuite/Syntax/Correct/icons/flag-yellow.png +0 -0
  458. data/test/TestSuite/Syntax/Correct/icons/resource.png +0 -0
  459. data/test/TestSuite/Syntax/Correct/icons/resourcegroup.png +0 -0
  460. data/test/TestSuite/Syntax/Correct/icons/task.png +0 -0
  461. data/test/TestSuite/Syntax/Correct/icons/taskgroup.png +0 -0
  462. data/test/TestSuite/Syntax/Correct/scripts/wz_tooltip.js +1301 -0
  463. data/test/TestSuite/Syntax/Correct/tutorial.tjp +113 -14
  464. data/test/TestSuite/Syntax/Errors/macro_stack_overflow.tjp +28 -0
  465. data/test/TestSuite/Syntax/Errors/unsupported_token.tjp +12 -0
  466. data/test/all.rb +2 -2
  467. data/test/test_BatchProcessor.rb +42 -13
  468. data/test/test_CSV-Reports.rb +1 -1
  469. data/test/test_Journal.rb +176 -0
  470. data/test/test_Limits.rb +1 -1
  471. data/test/test_LogicalExpression.rb +14 -5
  472. data/test/test_MacroTable.rb +1 -1
  473. data/test/test_Project.rb +1 -1
  474. data/test/test_PropertySet.rb +1 -1
  475. data/test/test_Query.rb +1 -1
  476. data/test/test_RealFormat.rb +1 -1
  477. data/test/test_RichText.rb +30 -20
  478. data/test/test_Scheduler.rb +1 -1
  479. data/test/test_ShiftAssignments.rb +2 -2
  480. data/test/test_Syntax.rb +1 -1
  481. data/test/test_TextScanner.rb +1 -1
  482. data/test/test_TjTime.rb +1 -1
  483. data/test/test_TjpExample.rb +1 -1
  484. data/test/test_UTF8String.rb +1 -1
  485. data/test/test_WorkingHours.rb +1 -1
  486. data/test/test_deep_copy.rb +2 -2
  487. metadata +610 -532
  488. data/doc/files/lib/ms_test_rb.html +0 -90
  489. data/examples/ContactList.html +0 -1467
  490. data/examples/Deliveries.html +0 -485
  491. data/examples/Development.html +0 -2525
  492. data/examples/Overview.html +0 -747
  493. data/examples/Resource Graph.html +0 -616
  494. data/lib/ms_test.rb +0 -27
  495. data/test/TestSuite/HTML-Reports/reference-export.html +0 -187
@@ -107,17 +107,17 @@ generateStyleSheet, generateHTMLHeader and generateHTMLFooter.
107
107
 
108
108
  <div class="name-list">
109
109
 
110
- <a href="#M000722">addSnip</a>&nbsp;&nbsp;
110
+ <a href="#M001040">addSnip</a>&nbsp;&nbsp;
111
111
 
112
- <a href="#M000724">checkInternalReferences</a>&nbsp;&nbsp;
112
+ <a href="#M001042">checkInternalReferences</a>&nbsp;&nbsp;
113
113
 
114
- <a href="#M000725">generateHTML</a>&nbsp;&nbsp;
114
+ <a href="#M001043">generateHTML</a>&nbsp;&nbsp;
115
115
 
116
- <a href="#M000720">new</a>&nbsp;&nbsp;
116
+ <a href="#M001038">new</a>&nbsp;&nbsp;
117
117
 
118
- <a href="#M000721">registerProtocolHandler</a>&nbsp;&nbsp;
118
+ <a href="#M001039">registerFunctionHandler</a>&nbsp;&nbsp;
119
119
 
120
- <a href="#M000723">tableOfContents</a>&nbsp;&nbsp;
120
+ <a href="#M001041">tableOfContents</a>&nbsp;&nbsp;
121
121
 
122
122
  </div>
123
123
  </div>
@@ -137,7 +137,7 @@ generateStyleSheet, generateHTMLHeader and generateHTMLFooter.
137
137
  <table>
138
138
 
139
139
  <tr class="top-aligned-row context-row">
140
- <td class="context-item-name">protocolHandlers</td>
140
+ <td class="context-item-name">functionHandlers</td>
141
141
 
142
142
  <td class="context-item-value">&nbsp;[R]&nbsp;</td>
143
143
 
@@ -156,12 +156,12 @@ generateStyleSheet, generateHTMLHeader and generateHTMLFooter.
156
156
  <h3 class="section-bar">Public Class methods</h3>
157
157
 
158
158
 
159
- <div id="method-M000720" class="method-detail">
160
- <a name="M000720"></a>
159
+ <div id="method-M001038" class="method-detail">
160
+ <a name="M001038"></a>
161
161
 
162
162
  <div class="method-heading">
163
163
 
164
- <a href="#M000720" class="method-signature">
164
+ <a href="#M001038" class="method-signature">
165
165
 
166
166
  <span class="method-name">new</span><span class="method-args">()</span>
167
167
 
@@ -177,17 +177,18 @@ object.
177
177
  </p>
178
178
 
179
179
  <p><a class="source-toggle" href="#"
180
- onclick="toggleCode('M000720-source');return false;">[Source]</a></p>
181
- <div class="method-source-code" id="M000720-source">
180
+ onclick="toggleCode('M001038-source');return false;">[Source]</a></p>
181
+ <div class="method-source-code" id="M001038-source">
182
182
  <pre>
183
183
  <span class="ruby-comment cmt"># File lib/RichTextDocument.rb, line 30</span>
184
184
  30: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>
185
- 31: <span class="ruby-ivar">@protocolHandlers</span> = {}
185
+ 31: <span class="ruby-ivar">@functionHandlers</span> = []
186
186
  32: <span class="ruby-ivar">@snippets</span> = []
187
187
  33: <span class="ruby-ivar">@dirty</span> = <span class="ruby-keyword kw">false</span>
188
188
  34: <span class="ruby-ivar">@sectionCounter</span> = [ <span class="ruby-value">0</span>, <span class="ruby-value">0</span>, <span class="ruby-value">0</span> ]
189
- 35: <span class="ruby-ivar">@toc</span> = <span class="ruby-keyword kw">nil</span>
190
- 36: <span class="ruby-keyword kw">end</span>
189
+ 35: <span class="ruby-ivar">@linkTarget</span> = <span class="ruby-keyword kw">nil</span>
190
+ 36: <span class="ruby-ivar">@toc</span> = <span class="ruby-keyword kw">nil</span>
191
+ 37: <span class="ruby-keyword kw">end</span>
191
192
  </pre>
192
193
  </div>
193
194
 
@@ -198,12 +199,12 @@ object.
198
199
  <h3 class="section-bar">Public Instance methods</h3>
199
200
 
200
201
 
201
- <div id="method-M000722" class="method-detail">
202
- <a name="M000722"></a>
202
+ <div id="method-M001040" class="method-detail">
203
+ <a name="M001040"></a>
203
204
 
204
205
  <div class="method-heading">
205
206
 
206
- <a href="#M000722" class="method-signature">
207
+ <a href="#M001040" class="method-signature">
207
208
 
208
209
  <span class="method-name">addSnip</span><span class="method-args">(file)</span>
209
210
 
@@ -220,14 +221,15 @@ elements.
220
221
  </p>
221
222
 
222
223
  <p><a class="source-toggle" href="#"
223
- onclick="toggleCode('M000722-source');return false;">[Source]</a></p>
224
- <div class="method-source-code" id="M000722-source">
224
+ onclick="toggleCode('M001040-source');return false;">[Source]</a></p>
225
+ <div class="method-source-code" id="M001040-source">
225
226
  <pre>
226
- <span class="ruby-comment cmt"># File lib/RichTextDocument.rb, line 45</span>
227
- 45: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">addSnip</span>(<span class="ruby-identifier">file</span>)
228
- 46: <span class="ruby-ivar">@snippets</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">RichTextSnip</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>, <span class="ruby-identifier">file</span>, <span class="ruby-ivar">@sectionCounter</span>)
229
- 47: <span class="ruby-ivar">@dirty</span> = <span class="ruby-keyword kw">true</span>
230
- 48: <span class="ruby-keyword kw">end</span>
227
+ <span class="ruby-comment cmt"># File lib/RichTextDocument.rb, line 46</span>
228
+ 46: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">addSnip</span>(<span class="ruby-identifier">file</span>)
229
+ 47: <span class="ruby-ivar">@snippets</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">snippet</span> = <span class="ruby-constant">RichTextSnip</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>, <span class="ruby-identifier">file</span>, <span class="ruby-ivar">@sectionCounter</span>))
230
+ 48: <span class="ruby-identifier">snippet</span>.<span class="ruby-identifier">linkTarget</span> = <span class="ruby-ivar">@linkTarget</span>
231
+ 49: <span class="ruby-ivar">@dirty</span> = <span class="ruby-keyword kw">true</span>
232
+ 50: <span class="ruby-keyword kw">end</span>
231
233
  </pre>
232
234
  </div>
233
235
 
@@ -235,12 +237,12 @@ elements.
235
237
  </div>
236
238
 
237
239
 
238
- <div id="method-M000724" class="method-detail">
239
- <a name="M000724"></a>
240
+ <div id="method-M001042" class="method-detail">
241
+ <a name="M001042"></a>
240
242
 
241
243
  <div class="method-heading">
242
244
 
243
- <a href="#M000724" class="method-signature">
245
+ <a href="#M001042" class="method-signature">
244
246
 
245
247
  <span class="method-name">checkInternalReferences</span><span class="method-args">()</span>
246
248
 
@@ -255,21 +257,21 @@ Make sure that all internal references only point to known snippets.
255
257
  </p>
256
258
 
257
259
  <p><a class="source-toggle" href="#"
258
- onclick="toggleCode('M000724-source');return false;">[Source]</a></p>
259
- <div class="method-source-code" id="M000724-source">
260
+ onclick="toggleCode('M001042-source');return false;">[Source]</a></p>
261
+ <div class="method-source-code" id="M001042-source">
260
262
  <pre>
261
- <span class="ruby-comment cmt"># File lib/RichTextDocument.rb, line 70</span>
262
- 70: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">checkInternalReferences</span>
263
- 71: <span class="ruby-ivar">@references</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">snip</span>, <span class="ruby-identifier">refs</span><span class="ruby-operator">|</span>
264
- 72: <span class="ruby-identifier">refs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">reference</span><span class="ruby-operator">|</span>
265
- 73: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@snipNames</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">reference</span>)
266
- 74: <span class="ruby-comment cmt"># TODO: Probably an Exception is cleaner here.</span>
267
- 75: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Warning: Rich text file #{snip} references unknown &quot;</span> <span class="ruby-operator">+</span>
268
- 76: <span class="ruby-node">&quot;object #{reference}&quot;</span>
269
- 77: <span class="ruby-keyword kw">end</span>
270
- 78: <span class="ruby-keyword kw">end</span>
271
- 79: <span class="ruby-keyword kw">end</span>
272
- 80: <span class="ruby-keyword kw">end</span>
263
+ <span class="ruby-comment cmt"># File lib/RichTextDocument.rb, line 72</span>
264
+ 72: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">checkInternalReferences</span>
265
+ 73: <span class="ruby-ivar">@references</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">snip</span>, <span class="ruby-identifier">refs</span><span class="ruby-operator">|</span>
266
+ 74: <span class="ruby-identifier">refs</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">reference</span><span class="ruby-operator">|</span>
267
+ 75: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@snipNames</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">reference</span>)
268
+ 76: <span class="ruby-comment cmt"># TODO: Probably an Exception is cleaner here.</span>
269
+ 77: <span class="ruby-identifier">puts</span> <span class="ruby-node">&quot;Warning: Rich text file #{snip} references unknown &quot;</span> <span class="ruby-operator">+</span>
270
+ 78: <span class="ruby-node">&quot;object #{reference}&quot;</span>
271
+ 79: <span class="ruby-keyword kw">end</span>
272
+ 80: <span class="ruby-keyword kw">end</span>
273
+ 81: <span class="ruby-keyword kw">end</span>
274
+ 82: <span class="ruby-keyword kw">end</span>
273
275
  </pre>
274
276
  </div>
275
277
 
@@ -277,12 +279,12 @@ Make sure that all internal references only point to known snippets.
277
279
  </div>
278
280
 
279
281
 
280
- <div id="method-M000725" class="method-detail">
281
- <a name="M000725"></a>
282
+ <div id="method-M001043" class="method-detail">
283
+ <a name="M001043"></a>
282
284
 
283
285
  <div class="method-heading">
284
286
 
285
- <a href="#M000725" class="method-signature">
287
+ <a href="#M001043" class="method-signature">
286
288
 
287
289
  <span class="method-name">generateHTML</span><span class="method-args">(directory = '')</span>
288
290
 
@@ -301,19 +303,19 @@ contense is generated into a file called &#8216;toc.html&#8217;.
301
303
  </p>
302
304
 
303
305
  <p><a class="source-toggle" href="#"
304
- onclick="toggleCode('M000725-source');return false;">[Source]</a></p>
305
- <div class="method-source-code" id="M000725-source">
306
+ onclick="toggleCode('M001043-source');return false;">[Source]</a></p>
307
+ <div class="method-source-code" id="M001043-source">
306
308
  <pre>
307
- <span class="ruby-comment cmt"># File lib/RichTextDocument.rb, line 87</span>
308
- 87: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateHTML</span>(<span class="ruby-identifier">directory</span> = <span class="ruby-value str">''</span>)
309
- 88: <span class="ruby-identifier">crossReference</span>
310
- 89:
311
- 90: <span class="ruby-identifier">generateHTMLTableOfContents</span>(<span class="ruby-identifier">directory</span>)
309
+ <span class="ruby-comment cmt"># File lib/RichTextDocument.rb, line 89</span>
310
+ 89: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateHTML</span>(<span class="ruby-identifier">directory</span> = <span class="ruby-value str">''</span>)
311
+ 90: <span class="ruby-identifier">crossReference</span>
312
312
  91:
313
- 92: <span class="ruby-ivar">@snippets</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">snip</span><span class="ruby-operator">|</span>
314
- 93: <span class="ruby-identifier">snip</span>.<span class="ruby-identifier">generateHTML</span>(<span class="ruby-identifier">directory</span>)
315
- 94: <span class="ruby-keyword kw">end</span>
316
- 95: <span class="ruby-keyword kw">end</span>
313
+ 92: <span class="ruby-identifier">generateHTMLTableOfContents</span>(<span class="ruby-identifier">directory</span>)
314
+ 93:
315
+ 94: <span class="ruby-ivar">@snippets</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">snip</span><span class="ruby-operator">|</span>
316
+ 95: <span class="ruby-identifier">snip</span>.<span class="ruby-identifier">generateHTML</span>(<span class="ruby-identifier">directory</span>)
317
+ 96: <span class="ruby-keyword kw">end</span>
318
+ 97: <span class="ruby-keyword kw">end</span>
317
319
  </pre>
318
320
  </div>
319
321
 
@@ -321,14 +323,14 @@ contense is generated into a file called &#8216;toc.html&#8217;.
321
323
  </div>
322
324
 
323
325
 
324
- <div id="method-M000721" class="method-detail">
325
- <a name="M000721"></a>
326
+ <div id="method-M001039" class="method-detail">
327
+ <a name="M001039"></a>
326
328
 
327
329
  <div class="method-heading">
328
330
 
329
- <a href="#M000721" class="method-signature">
331
+ <a href="#M001039" class="method-signature">
330
332
 
331
- <span class="method-name">registerProtocolHandler</span><span class="method-args">(handler)</span>
333
+ <span class="method-name">registerFunctionHandler</span><span class="method-args">(handler)</span>
332
334
 
333
335
  </a>
334
336
 
@@ -338,18 +340,18 @@ contense is generated into a file called &#8216;toc.html&#8217;.
338
340
 
339
341
  <p>
340
342
  Register a new <a
341
- href="RichTextProtocolHandler.html">RichTextProtocolHandler</a> for this
343
+ href="RichTextFunctionHandler.html">RichTextFunctionHandler</a> for this
342
344
  document.
343
345
  </p>
344
346
 
345
347
  <p><a class="source-toggle" href="#"
346
- onclick="toggleCode('M000721-source');return false;">[Source]</a></p>
347
- <div class="method-source-code" id="M000721-source">
348
+ onclick="toggleCode('M001039-source');return false;">[Source]</a></p>
349
+ <div class="method-source-code" id="M001039-source">
348
350
  <pre>
349
- <span class="ruby-comment cmt"># File lib/RichTextDocument.rb, line 39</span>
350
- 39: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">registerProtocolHandler</span>(<span class="ruby-identifier">handler</span>)
351
- 40: <span class="ruby-ivar">@protocolHandlers</span>[<span class="ruby-identifier">handler</span>.<span class="ruby-identifier">protocol</span>] = <span class="ruby-identifier">handler</span>
352
- 41: <span class="ruby-keyword kw">end</span>
351
+ <span class="ruby-comment cmt"># File lib/RichTextDocument.rb, line 40</span>
352
+ 40: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">registerFunctionHandler</span>(<span class="ruby-identifier">handler</span>)
353
+ 41: <span class="ruby-ivar">@functionHandlers</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">handler</span>
354
+ 42: <span class="ruby-keyword kw">end</span>
353
355
  </pre>
354
356
  </div>
355
357
 
@@ -357,12 +359,12 @@ document.
357
359
  </div>
358
360
 
359
361
 
360
- <div id="method-M000723" class="method-detail">
361
- <a name="M000723"></a>
362
+ <div id="method-M001041" class="method-detail">
363
+ <a name="M001041"></a>
362
364
 
363
365
  <div class="method-heading">
364
366
 
365
- <a href="#M000723" class="method-signature">
367
+ <a href="#M001041" class="method-signature">
366
368
 
367
369
  <span class="method-name">tableOfContents</span><span class="method-args">()</span>
368
370
 
@@ -379,26 +381,26 @@ used when the document is produced in a new format. This function also
379
381
  collects a list of all snip names to @snipNames and gathers a list of all
380
382
  references to other snippets in @references. As these two lists will be
381
383
  used by <a
382
- href="RichTextDocument.html#M000724">RichTextDocument#checkInternalReferences</a>
384
+ href="RichTextDocument.html#M001042">RichTextDocument#checkInternalReferences</a>
383
385
  this function must be called first.
384
386
  </p>
385
387
 
386
388
  <p><a class="source-toggle" href="#"
387
- onclick="toggleCode('M000723-source');return false;">[Source]</a></p>
388
- <div class="method-source-code" id="M000723-source">
389
+ onclick="toggleCode('M001041-source');return false;">[Source]</a></p>
390
+ <div class="method-source-code" id="M001041-source">
389
391
  <pre>
390
- <span class="ruby-comment cmt"># File lib/RichTextDocument.rb, line 57</span>
391
- 57: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">tableOfContents</span>
392
- 58: <span class="ruby-ivar">@toc</span> = <span class="ruby-constant">TableOfContents</span>.<span class="ruby-identifier">new</span>
393
- 59: <span class="ruby-ivar">@references</span> = {}
394
- 60: <span class="ruby-ivar">@snipNames</span> = []
395
- 61: <span class="ruby-ivar">@snippets</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">snip</span><span class="ruby-operator">|</span>
396
- 62: <span class="ruby-identifier">snip</span>.<span class="ruby-identifier">tableOfContents</span>(<span class="ruby-ivar">@toc</span>, <span class="ruby-identifier">snip</span>.<span class="ruby-identifier">name</span>)
397
- 63: <span class="ruby-ivar">@snipNames</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">snip</span>.<span class="ruby-identifier">name</span>
398
- 64: (<span class="ruby-identifier">refs</span> = <span class="ruby-identifier">snip</span>.<span class="ruby-identifier">internalReferences</span>).<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span>
399
- 65: <span class="ruby-ivar">@references</span>[<span class="ruby-identifier">snip</span>.<span class="ruby-identifier">name</span>] = <span class="ruby-identifier">refs</span>
400
- 66: <span class="ruby-keyword kw">end</span>
401
- 67: <span class="ruby-keyword kw">end</span>
392
+ <span class="ruby-comment cmt"># File lib/RichTextDocument.rb, line 59</span>
393
+ 59: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">tableOfContents</span>
394
+ 60: <span class="ruby-ivar">@toc</span> = <span class="ruby-constant">TableOfContents</span>.<span class="ruby-identifier">new</span>
395
+ 61: <span class="ruby-ivar">@references</span> = {}
396
+ 62: <span class="ruby-ivar">@snipNames</span> = []
397
+ 63: <span class="ruby-ivar">@snippets</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">snip</span><span class="ruby-operator">|</span>
398
+ 64: <span class="ruby-identifier">snip</span>.<span class="ruby-identifier">tableOfContents</span>(<span class="ruby-ivar">@toc</span>, <span class="ruby-identifier">snip</span>.<span class="ruby-identifier">name</span>)
399
+ 65: <span class="ruby-ivar">@snipNames</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">snip</span>.<span class="ruby-identifier">name</span>
400
+ 66: (<span class="ruby-identifier">refs</span> = <span class="ruby-identifier">snip</span>.<span class="ruby-identifier">internalReferences</span>).<span class="ruby-identifier">empty?</span> <span class="ruby-operator">||</span>
401
+ 67: <span class="ruby-ivar">@references</span>[<span class="ruby-identifier">snip</span>.<span class="ruby-identifier">name</span>] = <span class="ruby-identifier">refs</span>
402
+ 68: <span class="ruby-keyword kw">end</span>
403
+ 69: <span class="ruby-keyword kw">end</span>
402
404
  </pre>
403
405
  </div>
404
406
 
@@ -109,23 +109,27 @@ identifies the content of the node.
109
109
 
110
110
  <div class="name-list">
111
111
 
112
- <a href="#M000314">children_to_s</a>&nbsp;&nbsp;
112
+ <a href="#M000324">checkHandler</a>&nbsp;&nbsp;
113
113
 
114
- <a href="#M000308">cleanUp</a>&nbsp;&nbsp;
114
+ <a href="#M000323">children_to_s</a>&nbsp;&nbsp;
115
115
 
116
- <a href="#M000315">convertToID</a>&nbsp;&nbsp;
116
+ <a href="#M000316">cleanUp</a>&nbsp;&nbsp;
117
117
 
118
- <a href="#M000310">internalReferences</a>&nbsp;&nbsp;
118
+ <a href="#M000325">convertToID</a>&nbsp;&nbsp;
119
119
 
120
- <a href="#M000307">new</a>&nbsp;&nbsp;
120
+ <a href="#M000317">empty?</a>&nbsp;&nbsp;
121
121
 
122
- <a href="#M000309">tableOfContents</a>&nbsp;&nbsp;
122
+ <a href="#M000319">internalReferences</a>&nbsp;&nbsp;
123
123
 
124
- <a href="#M000313">to_html</a>&nbsp;&nbsp;
124
+ <a href="#M000315">new</a>&nbsp;&nbsp;
125
125
 
126
- <a href="#M000311">to_s</a>&nbsp;&nbsp;
126
+ <a href="#M000318">tableOfContents</a>&nbsp;&nbsp;
127
127
 
128
- <a href="#M000312">to_tagged</a>&nbsp;&nbsp;
128
+ <a href="#M000322">to_html</a>&nbsp;&nbsp;
129
+
130
+ <a href="#M000320">to_s</a>&nbsp;&nbsp;
131
+
132
+ <a href="#M000321">to_tagged</a>&nbsp;&nbsp;
129
133
 
130
134
  </div>
131
135
  </div>
@@ -176,6 +180,14 @@ identifies the content of the node.
176
180
  <td class="context-item-desc"></td>
177
181
  </tr>
178
182
 
183
+ <tr class="top-aligned-row context-row">
184
+ <td class="context-item-name">richText</td>
185
+
186
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
187
+
188
+ <td class="context-item-desc"></td>
189
+ </tr>
190
+
179
191
  </table>
180
192
  </div>
181
193
  </div>
@@ -188,12 +200,12 @@ identifies the content of the node.
188
200
  <h3 class="section-bar">Public Class methods</h3>
189
201
 
190
202
 
191
- <div id="method-M000307" class="method-detail">
192
- <a name="M000307"></a>
203
+ <div id="method-M000315" class="method-detail">
204
+ <a name="M000315"></a>
193
205
 
194
206
  <div class="method-heading">
195
207
 
196
- <a href="#M000307" class="method-signature">
208
+ <a href="#M000315" class="method-signature">
197
209
 
198
210
  <span class="method-name">new</span><span class="method-args">(rt, category, arg = nil)</span>
199
211
 
@@ -213,8 +225,8 @@ href="RichTextElement.html">RichTextElement</a> nodes.
213
225
  </p>
214
226
 
215
227
  <p><a class="source-toggle" href="#"
216
- onclick="toggleCode('M000307-source');return false;">[Source]</a></p>
217
- <div class="method-source-code" id="M000307-source">
228
+ onclick="toggleCode('M000315-source');return false;">[Source]</a></p>
229
+ <div class="method-source-code" id="M000315-source">
218
230
  <pre>
219
231
  <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 34</span>
220
232
  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>)
@@ -250,12 +262,47 @@ href="RichTextElement.html">RichTextElement</a> nodes.
250
262
  <h3 class="section-bar">Public Instance methods</h3>
251
263
 
252
264
 
253
- <div id="method-M000314" class="method-detail">
254
- <a name="M000314"></a>
265
+ <div id="method-M000324" class="method-detail">
266
+ <a name="M000324"></a>
267
+
268
+ <div class="method-heading">
269
+
270
+ <a href="#M000324" class="method-signature">
271
+
272
+ <span class="method-name">checkHandler</span><span class="method-args">()</span>
273
+
274
+ </a>
275
+
276
+ </div>
277
+
278
+ <div class="method-description">
279
+
280
+ <p><a class="source-toggle" href="#"
281
+ onclick="toggleCode('M000324-source');return false;">[Source]</a></p>
282
+ <div class="method-source-code" id="M000324-source">
283
+ <pre>
284
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 398</span>
285
+ 398: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">checkHandler</span>
286
+ 399: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">0</span>] <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">String</span>)
287
+ 400: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;Bad RichText function '#{@data[0]}' requested&quot;</span>
288
+ 401: <span class="ruby-keyword kw">end</span>
289
+ 402: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">functionHandler</span>(<span class="ruby-ivar">@data</span>[<span class="ruby-value">0</span>]).<span class="ruby-identifier">nil?</span>
290
+ 403: <span class="ruby-identifier">raise</span> <span class="ruby-node">&quot;No handler for #{@data[0]} registered&quot;</span>
291
+ 404: <span class="ruby-keyword kw">end</span>
292
+ 405: <span class="ruby-keyword kw">end</span>
293
+ </pre>
294
+ </div>
295
+
296
+ </div>
297
+ </div>
298
+
299
+
300
+ <div id="method-M000323" class="method-detail">
301
+ <a name="M000323"></a>
255
302
 
256
303
  <div class="method-heading">
257
304
 
258
- <a href="#M000314" class="method-signature">
305
+ <a href="#M000323" class="method-signature">
259
306
 
260
307
  <span class="method-name">children_to_s</span><span class="method-args">()</span>
261
308
 
@@ -271,17 +318,17 @@ href="../String.html">String</a>.
271
318
  </p>
272
319
 
273
320
  <p><a class="source-toggle" href="#"
274
- onclick="toggleCode('M000314-source');return false;">[Source]</a></p>
275
- <div class="method-source-code" id="M000314-source">
321
+ onclick="toggleCode('M000323-source');return false;">[Source]</a></p>
322
+ <div class="method-source-code" id="M000323-source">
276
323
  <pre>
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>
324
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 390</span>
325
+ 390: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">children_to_s</span>
326
+ 391: <span class="ruby-identifier">text</span> = <span class="ruby-value str">''</span>
327
+ 392: <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>
328
+ 393: <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>)
329
+ 394: <span class="ruby-keyword kw">end</span>
330
+ 395: <span class="ruby-identifier">text</span>
331
+ 396: <span class="ruby-keyword kw">end</span>
285
332
  </pre>
286
333
  </div>
287
334
 
@@ -289,12 +336,12 @@ href="../String.html">String</a>.
289
336
  </div>
290
337
 
291
338
 
292
- <div id="method-M000308" class="method-detail">
293
- <a name="M000308"></a>
339
+ <div id="method-M000316" class="method-detail">
340
+ <a name="M000316"></a>
294
341
 
295
342
  <div class="method-heading">
296
343
 
297
- <a href="#M000308" class="method-signature">
344
+ <a href="#M000316" class="method-signature">
298
345
 
299
346
  <span class="method-name">cleanUp</span><span class="method-args">()</span>
300
347
 
@@ -310,8 +357,8 @@ richtext. The paragraph children will become richtext children.
310
357
  </p>
311
358
 
312
359
  <p><a class="source-toggle" href="#"
313
- onclick="toggleCode('M000308-source');return false;">[Source]</a></p>
314
- <div class="method-source-code" id="M000308-source">
360
+ onclick="toggleCode('M000316-source');return false;">[Source]</a></p>
361
+ <div class="method-source-code" id="M000316-source">
315
362
  <pre>
316
363
  <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 60</span>
317
364
  60: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cleanUp</span>
@@ -328,12 +375,12 @@ richtext. The paragraph children will become richtext children.
328
375
  </div>
329
376
 
330
377
 
331
- <div id="method-M000315" class="method-detail">
332
- <a name="M000315"></a>
378
+ <div id="method-M000325" class="method-detail">
379
+ <a name="M000325"></a>
333
380
 
334
381
  <div class="method-heading">
335
382
 
336
- <a href="#M000315" class="method-signature">
383
+ <a href="#M000325" class="method-signature">
337
384
 
338
385
  <span class="method-name">convertToID</span><span class="method-args">(text)</span>
339
386
 
@@ -350,20 +397,55 @@ acceptable for HTML tag IDs.
350
397
  </p>
351
398
 
352
399
  <p><a class="source-toggle" href="#"
353
- onclick="toggleCode('M000315-source');return false;">[Source]</a></p>
354
- <div class="method-source-code" id="M000315-source">
400
+ onclick="toggleCode('M000325-source');return false;">[Source]</a></p>
401
+ <div class="method-source-code" id="M000325-source">
402
+ <pre>
403
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 409</span>
404
+ 409: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">convertToID</span>(<span class="ruby-identifier">text</span>)
405
+ 410: <span class="ruby-identifier">out</span> = <span class="ruby-value str">''</span>
406
+ 411: <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>
407
+ 412: <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>
408
+ 413: (<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>
409
+ 414: (<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>)
410
+ 415: <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>
411
+ 416: <span class="ruby-keyword kw">end</span>
412
+ 417: <span class="ruby-identifier">out</span>.<span class="ruby-identifier">chomp</span>(<span class="ruby-value str">'_'</span>)
413
+ 418: <span class="ruby-keyword kw">end</span>
414
+ </pre>
415
+ </div>
416
+
417
+ </div>
418
+ </div>
419
+
420
+
421
+ <div id="method-M000317" class="method-detail">
422
+ <a name="M000317"></a>
423
+
424
+ <div class="method-heading">
425
+
426
+ <a href="#M000317" class="method-signature">
427
+
428
+ <span class="method-name">empty?</span><span class="method-args">()</span>
429
+
430
+ </a>
431
+
432
+ </div>
433
+
434
+ <div class="method-description">
435
+
436
+ <p>
437
+ Return true of the node contains an empty <a
438
+ href="RichText.html">RichText</a> tree.
439
+ </p>
440
+
441
+ <p><a class="source-toggle" href="#"
442
+ onclick="toggleCode('M000317-source');return false;">[Source]</a></p>
443
+ <div class="method-source-code" id="M000317-source">
355
444
  <pre>
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>
445
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 69</span>
446
+ 69: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">empty?</span>
447
+ 70: <span class="ruby-ivar">@category</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:richtext</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@children</span>.<span class="ruby-identifier">empty?</span>
448
+ 71: <span class="ruby-keyword kw">end</span>
367
449
  </pre>
368
450
  </div>
369
451
 
@@ -371,12 +453,12 @@ acceptable for HTML tag IDs.
371
453
  </div>
372
454
 
373
455
 
374
- <div id="method-M000310" class="method-detail">
375
- <a name="M000310"></a>
456
+ <div id="method-M000319" class="method-detail">
457
+ <a name="M000319"></a>
376
458
 
377
459
  <div class="method-heading">
378
460
 
379
- <a href="#M000310" class="method-signature">
461
+ <a href="#M000319" class="method-signature">
380
462
 
381
463
  <span class="method-name">internalReferences</span><span class="method-args">()</span>
382
464
 
@@ -393,25 +475,25 @@ href="RichTextElement.html">RichTextElement</a>.
393
475
  </p>
394
476
 
395
477
  <p><a class="source-toggle" href="#"
396
- onclick="toggleCode('M000310-source');return false;">[Source]</a></p>
397
- <div class="method-source-code" id="M000310-source">
478
+ onclick="toggleCode('M000319-source');return false;">[Source]</a></p>
479
+ <div class="method-source-code" id="M000319-source">
398
480
  <pre>
399
- <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 100</span>
400
- 100: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">internalReferences</span>
401
- 101: <span class="ruby-identifier">references</span> = []
402
- 102: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@category</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:ref</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@data</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-value str">':'</span>)
403
- 103: <span class="ruby-identifier">references</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-ivar">@data</span>
404
- 104: <span class="ruby-keyword kw">else</span>
405
- 105: <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>
406
- 106: <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>)
407
- 107: <span class="ruby-identifier">references</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">el</span>.<span class="ruby-identifier">internalReferences</span>
408
- 108: <span class="ruby-keyword kw">end</span>
409
- 109: <span class="ruby-keyword kw">end</span>
410
- 110: <span class="ruby-keyword kw">end</span>
411
- 111:
412
- 112: <span class="ruby-comment cmt"># We only need each reference once.</span>
413
- 113: <span class="ruby-identifier">references</span>.<span class="ruby-identifier">uniq</span>
414
- 114: <span class="ruby-keyword kw">end</span>
481
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 106</span>
482
+ 106: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">internalReferences</span>
483
+ 107: <span class="ruby-identifier">references</span> = []
484
+ 108: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@category</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:ref</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@data</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-value str">':'</span>)
485
+ 109: <span class="ruby-identifier">references</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-ivar">@data</span>
486
+ 110: <span class="ruby-keyword kw">else</span>
487
+ 111: <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>
488
+ 112: <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>)
489
+ 113: <span class="ruby-identifier">references</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">el</span>.<span class="ruby-identifier">internalReferences</span>
490
+ 114: <span class="ruby-keyword kw">end</span>
491
+ 115: <span class="ruby-keyword kw">end</span>
492
+ 116: <span class="ruby-keyword kw">end</span>
493
+ 117:
494
+ 118: <span class="ruby-comment cmt"># We only need each reference once.</span>
495
+ 119: <span class="ruby-identifier">references</span>.<span class="ruby-identifier">uniq</span>
496
+ 120: <span class="ruby-keyword kw">end</span>
415
497
  </pre>
416
498
  </div>
417
499
 
@@ -419,12 +501,12 @@ href="RichTextElement.html">RichTextElement</a>.
419
501
  </div>
420
502
 
421
503
 
422
- <div id="method-M000309" class="method-detail">
423
- <a name="M000309"></a>
504
+ <div id="method-M000318" class="method-detail">
505
+ <a name="M000318"></a>
424
506
 
425
507
  <div class="method-heading">
426
508
 
427
- <a href="#M000309" class="method-signature">
509
+ <a href="#M000318" class="method-signature">
428
510
 
429
511
  <span class="method-name">tableOfContents</span><span class="method-args">(toc, fileName)</span>
430
512
 
@@ -436,42 +518,42 @@ href="RichTextElement.html">RichTextElement</a>.
436
518
 
437
519
  <p>
438
520
  Recursively extract the section headings from the <a
439
- href="RichTextElement.html">RichTextElement</a> and build fill the <a
521
+ href="RichTextElement.html">RichTextElement</a> and build the <a
440
522
  href="TableOfContents.html">TableOfContents</a> <em>toc</em> with the
441
523
  gathered sections. <em>fileName</em> is the base name (without .html or
442
524
  other suffix) of the file the TOCEntries should point to.
443
525
  </p>
444
526
 
445
527
  <p><a class="source-toggle" href="#"
446
- onclick="toggleCode('M000309-source');return false;">[Source]</a></p>
447
- <div class="method-source-code" id="M000309-source">
528
+ onclick="toggleCode('M000318-source');return false;">[Source]</a></p>
529
+ <div class="method-source-code" id="M000318-source">
448
530
  <pre>
449
- <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 72</span>
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>)
451
- 73: <span class="ruby-identifier">number</span> = <span class="ruby-keyword kw">nil</span>
452
- 74: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@category</span>
453
- 75: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title1</span>
454
- 76: <span class="ruby-identifier">number</span> = <span class="ruby-node">&quot;#{@data[0]} &quot;</span>
455
- 77: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title2</span>
456
- 78: <span class="ruby-identifier">number</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]} &quot;</span>
457
- 79: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title3</span>
458
- 80: <span class="ruby-identifier">number</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
459
- 81: <span class="ruby-keyword kw">end</span>
460
- 82: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">number</span>
461
- 83: <span class="ruby-comment cmt"># We've found a section heading. The String value of the Element is the</span>
462
- 84: <span class="ruby-comment cmt"># title.</span>
463
- 85: <span class="ruby-identifier">title</span> = <span class="ruby-identifier">children_to_s</span>
464
- 86: <span class="ruby-identifier">tag</span> = <span class="ruby-identifier">convertToID</span>(<span class="ruby-identifier">title</span>)
465
- 87: <span class="ruby-identifier">toc</span>.<span class="ruby-identifier">addEntry</span>(<span class="ruby-constant">TOCEntry</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">number</span>, <span class="ruby-identifier">title</span>, <span class="ruby-identifier">fileName</span>, <span class="ruby-identifier">tag</span>))
466
- 88: <span class="ruby-keyword kw">else</span>
467
- 89: <span class="ruby-comment cmt"># Recursively extract the TOC from the child objects.</span>
468
- 90: <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>
469
- 91: <span class="ruby-identifier">el</span>.<span class="ruby-identifier">tableOfContents</span>(<span class="ruby-identifier">toc</span>, <span class="ruby-identifier">fileName</span>) <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>)
470
- 92: <span class="ruby-keyword kw">end</span>
471
- 93: <span class="ruby-keyword kw">end</span>
472
- 94:
473
- 95: <span class="ruby-identifier">toc</span>
474
- 96: <span class="ruby-keyword kw">end</span>
531
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 78</span>
532
+ 78: <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>)
533
+ 79: <span class="ruby-identifier">number</span> = <span class="ruby-keyword kw">nil</span>
534
+ 80: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@category</span>
535
+ 81: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title1</span>
536
+ 82: <span class="ruby-identifier">number</span> = <span class="ruby-node">&quot;#{@data[0]} &quot;</span>
537
+ 83: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title2</span>
538
+ 84: <span class="ruby-identifier">number</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]} &quot;</span>
539
+ 85: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title3</span>
540
+ 86: <span class="ruby-identifier">number</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
541
+ 87: <span class="ruby-keyword kw">end</span>
542
+ 88: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">number</span>
543
+ 89: <span class="ruby-comment cmt"># We've found a section heading. The String value of the Element is the</span>
544
+ 90: <span class="ruby-comment cmt"># title.</span>
545
+ 91: <span class="ruby-identifier">title</span> = <span class="ruby-identifier">children_to_s</span>
546
+ 92: <span class="ruby-identifier">tag</span> = <span class="ruby-identifier">convertToID</span>(<span class="ruby-identifier">title</span>)
547
+ 93: <span class="ruby-identifier">toc</span>.<span class="ruby-identifier">addEntry</span>(<span class="ruby-constant">TOCEntry</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">number</span>, <span class="ruby-identifier">title</span>, <span class="ruby-identifier">fileName</span>, <span class="ruby-identifier">tag</span>))
548
+ 94: <span class="ruby-keyword kw">else</span>
549
+ 95: <span class="ruby-comment cmt"># Recursively extract the TOC from the child objects.</span>
550
+ 96: <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>
551
+ 97: <span class="ruby-identifier">el</span>.<span class="ruby-identifier">tableOfContents</span>(<span class="ruby-identifier">toc</span>, <span class="ruby-identifier">fileName</span>) <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>)
552
+ 98: <span class="ruby-keyword kw">end</span>
553
+ 99: <span class="ruby-keyword kw">end</span>
554
+ 100:
555
+ 101: <span class="ruby-identifier">toc</span>
556
+ 102: <span class="ruby-keyword kw">end</span>
475
557
  </pre>
476
558
  </div>
477
559
 
@@ -479,12 +561,12 @@ other suffix) of the file the TOCEntries should point to.
479
561
  </div>
480
562
 
481
563
 
482
- <div id="method-M000313" class="method-detail">
483
- <a name="M000313"></a>
564
+ <div id="method-M000322" class="method-detail">
565
+ <a name="M000322"></a>
484
566
 
485
567
  <div class="method-heading">
486
568
 
487
- <a href="#M000313" class="method-signature">
569
+ <a href="#M000322" class="method-signature">
488
570
 
489
571
  <span class="method-name">to_html</span><span class="method-args">()</span>
490
572
 
@@ -499,97 +581,94 @@ Convert the intermediate representation into HTML elements.
499
581
  </p>
500
582
 
501
583
  <p><a class="source-toggle" href="#"
502
- onclick="toggleCode('M000313-source');return false;">[Source]</a></p>
503
- <div class="method-source-code" id="M000313-source">
584
+ onclick="toggleCode('M000322-source');return false;">[Source]</a></p>
585
+ <div class="method-source-code" id="M000322-source">
504
586
  <pre>
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>
542
- 320: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</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>
546
- 324: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</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>
550
- 328: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</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>
587
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 304</span>
588
+ 304: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_html</span>
589
+ 305: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">false</span>
590
+ 306: <span class="ruby-identifier">attrs</span> = {}
591
+ 307: <span class="ruby-identifier">attrs</span>[<span class="ruby-value str">'class'</span>] = <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">cssClass</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">cssClass</span>
592
+ 308: <span class="ruby-identifier">html</span> =
593
+ 309: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@category</span>
594
+ 310: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:richtext</span>
595
+ 311: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">blockMode</span> <span class="ruby-value">? </span><span class="ruby-value str">'div'</span> <span class="ruby-operator">:</span> <span class="ruby-value str">'span'</span>, <span class="ruby-identifier">attrs</span>)
596
+ 312: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title1</span>
597
+ 313: <span class="ruby-identifier">htmlTitle</span>(<span class="ruby-value">1</span>)
598
+ 314: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title2</span>
599
+ 315: <span class="ruby-identifier">htmlTitle</span>(<span class="ruby-value">2</span>)
600
+ 316: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title3</span>
601
+ 317: <span class="ruby-identifier">htmlTitle</span>(<span class="ruby-value">3</span>)
602
+ 318: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:hline</span>
603
+ 319: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">true</span>
604
+ 320: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'hr'</span>, <span class="ruby-identifier">attrs</span>)
605
+ 321: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:paragraph</span>
606
+ 322: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'p'</span>, <span class="ruby-identifier">attrs</span>)
607
+ 323: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:pre</span>
608
+ 324: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">true</span>
609
+ 325: <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>)
610
+ 326: <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>])
611
+ 327: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist1</span>
612
+ 328: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ul'</span>)
613
+ 329: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem1</span>
614
+ 330: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
615
+ 331: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist2</span>
616
+ 332: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ul'</span>)
617
+ 333: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem2</span>
618
+ 334: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
619
+ 335: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist3</span>
620
+ 336: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ul'</span>)
621
+ 337: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem3</span>
622
+ 338: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
623
+ 339: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist1</span>
624
+ 340: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ol'</span>)
625
+ 341: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem1</span>
626
+ 342: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
627
+ 343: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist2</span>
628
+ 344: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ol'</span>)
629
+ 345: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem2</span>
630
+ 346: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
631
+ 347: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist3</span>
632
+ 348: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'ol'</span>)
633
+ 349: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem3</span>
634
+ 350: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'li'</span>)
635
+ 351: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:ref</span>
636
+ 352: <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>)
637
+ 353: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:href</span>
638
+ 354: <span class="ruby-identifier">a</span> = <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-identifier">to_s</span>)
639
+ 355: <span class="ruby-identifier">a</span>[<span class="ruby-value str">'target'</span>] = <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">linkTarget</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">linkTarget</span>
640
+ 356: <span class="ruby-identifier">a</span>
641
+ 357: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:blockfunc</span>
642
+ 358: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">true</span>
643
+ 359: <span class="ruby-identifier">checkHandler</span>
644
+ 360: <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">functionHandler</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>])
645
+ 361: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:inlinefunc</span>
646
+ 362: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">true</span>
647
+ 363: <span class="ruby-identifier">checkHandler</span>
648
+ 364: <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">functionHandler</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>])
649
+ 365: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:italic</span>
650
+ 366: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'i'</span>)
651
+ 367: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bold</span>
652
+ 368: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'b'</span>)
653
+ 369: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:code</span>
654
+ 370: <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'code'</span>, <span class="ruby-identifier">attrs</span>)
655
+ 371: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:text</span>
656
+ 372: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">true</span>
657
+ 373: <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@children</span>[<span class="ruby-value">0</span>])
658
+ 374: <span class="ruby-keyword kw">else</span>
659
+ 375: <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>
660
+ 376: <span class="ruby-keyword kw">end</span>
661
+ 377:
662
+ 378: <span class="ruby-comment cmt"># Some elements never have leaves.</span>
663
+ 379: <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>
664
+ 380:
665
+ 381: <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>
666
+ 382: <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>
667
+ 383: <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>
668
+ 384: <span class="ruby-keyword kw">end</span>
669
+ 385:
670
+ 386: <span class="ruby-identifier">html</span>
671
+ 387: <span class="ruby-keyword kw">end</span>
593
672
  </pre>
594
673
  </div>
595
674
 
@@ -597,12 +676,12 @@ Convert the intermediate representation into HTML elements.
597
676
  </div>
598
677
 
599
678
 
600
- <div id="method-M000311" class="method-detail">
601
- <a name="M000311"></a>
679
+ <div id="method-M000320" class="method-detail">
680
+ <a name="M000320"></a>
602
681
 
603
682
  <div class="method-heading">
604
683
 
605
- <a href="#M000311" class="method-signature">
684
+ <a href="#M000320" class="method-signature">
606
685
 
607
686
  <span class="method-name">to_s</span><span class="method-args">()</span>
608
687
 
@@ -619,67 +698,71 @@ ignored or just their value will be included.
619
698
  </p>
620
699
 
621
700
  <p><a class="source-toggle" href="#"
622
- onclick="toggleCode('M000311-source');return false;">[Source]</a></p>
623
- <div class="method-source-code" id="M000311-source">
701
+ onclick="toggleCode('M000320-source');return false;">[Source]</a></p>
702
+ <div class="method-source-code" id="M000320-source">
624
703
  <pre>
625
- <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 119</span>
626
- 119: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
627
- 120: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">''</span>
628
- 121: <span class="ruby-identifier">post</span> = <span class="ruby-value str">''</span>
629
- 122: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@category</span>
630
- 123: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:richtext</span>
631
- 124: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title1</span>
632
- 125: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]} &quot;</span>
633
- 126: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
634
- 127: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title2</span>
635
- 128: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]} &quot;</span>
636
- 129: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
637
- 130: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title3</span>
638
- 131: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
704
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 125</span>
705
+ 125: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
706
+ 126: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">''</span>
707
+ 127: <span class="ruby-identifier">post</span> = <span class="ruby-value str">''</span>
708
+ 128: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@category</span>
709
+ 129: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:richtext</span>
710
+ 130: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title1</span>
711
+ 131: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]} &quot;</span>
639
712
  132: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
640
- 133: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:hline</span>
641
- 134: <span class="ruby-keyword kw">return</span> <span class="ruby-node">&quot;#{'-' * (@richText.lineWidth - 4)}\n&quot;</span>
642
- 135: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:paragraph</span>
643
- 136: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
644
- 137: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:pre</span>
645
- 138: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n&quot;</span>
646
- 139: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist1</span>
647
- 140: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem1</span>
648
- 141: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'* '</span>
713
+ 133: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title2</span>
714
+ 134: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]} &quot;</span>
715
+ 135: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
716
+ 136: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title3</span>
717
+ 137: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
718
+ 138: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
719
+ 139: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:hline</span>
720
+ 140: <span class="ruby-keyword kw">return</span> <span class="ruby-node">&quot;#{'-' * (@richText.lineWidth - 4)}\n&quot;</span>
721
+ 141: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:paragraph</span>
649
722
  142: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
650
- 143: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist2</span>
651
- 144: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem2</span>
652
- 145: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">' * '</span>
653
- 146: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
654
- 147: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist3</span>
655
- 148: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem3</span>
656
- 149: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">' * '</span>
657
- 150: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
658
- 151: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist1</span>
659
- 152: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem1</span>
660
- 153: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]} &quot;</span>
661
- 154: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
662
- 155: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist2</span>
663
- 156: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem2</span>
664
- 157: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]} &quot;</span>
665
- 158: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
666
- 159: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist3</span>
667
- 160: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem3</span>
668
- 161: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
669
- 162: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
670
- 163: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:ref</span>
671
- 164: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:href</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>
723
+ 143: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:pre</span>
724
+ 144: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n&quot;</span>
725
+ 145: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist1</span>
726
+ 146: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem1</span>
727
+ 147: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'* '</span>
728
+ 148: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
729
+ 149: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist2</span>
730
+ 150: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem2</span>
731
+ 151: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">' * '</span>
732
+ 152: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
733
+ 153: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist3</span>
734
+ 154: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem3</span>
735
+ 155: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">' * '</span>
736
+ 156: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
737
+ 157: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist1</span>
738
+ 158: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem1</span>
739
+ 159: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]}. &quot;</span>
740
+ 160: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
741
+ 161: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist2</span>
742
+ 162: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem2</span>
743
+ 163: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]} &quot;</span>
744
+ 164: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
745
+ 165: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist3</span>
746
+ 166: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem3</span>
747
+ 167: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
748
+ 168: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;\n\n&quot;</span>
749
+ 169: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:ref</span>
750
+ 170: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:href</span>
751
+ 171: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:blockfunc</span>
752
+ 172: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:inlinefunc</span>
753
+ 173: <span class="ruby-identifier">noChilds</span> = <span class="ruby-keyword kw">true</span>
754
+ 174: <span class="ruby-identifier">checkHandler</span>
755
+ 175: <span class="ruby-identifier">pre</span> = <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">functionHandler</span>(<span class="ruby-ivar">@data</span>[<span class="ruby-value">0</span>]).<span class="ruby-identifier">to_s</span>(<span class="ruby-ivar">@data</span>[<span class="ruby-value">1</span>])
756
+ 176: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:italic</span>
757
+ 177: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bold</span>
758
+ 178: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:code</span>
759
+ 179: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:text</span>
760
+ 180: <span class="ruby-keyword kw">else</span>
761
+ 181: <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>
762
+ 182: <span class="ruby-keyword kw">end</span>
763
+ 183:
764
+ 184: <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>
765
+ 185: <span class="ruby-keyword kw">end</span>
683
766
  </pre>
684
767
  </div>
685
768
 
@@ -687,12 +770,12 @@ ignored or just their value will be included.
687
770
  </div>
688
771
 
689
772
 
690
- <div id="method-M000312" class="method-detail">
691
- <a name="M000312"></a>
773
+ <div id="method-M000321" class="method-detail">
774
+ <a name="M000321"></a>
692
775
 
693
776
  <div class="method-heading">
694
777
 
695
- <a href="#M000312" class="method-signature">
778
+ <a href="#M000321" class="method-signature">
696
779
 
697
780
  <span class="method-name">to_tagged</span><span class="method-args">()</span>
698
781
 
@@ -710,112 +793,122 @@ to be valid HTML.
710
793
  </p>
711
794
 
712
795
  <p><a class="source-toggle" href="#"
713
- onclick="toggleCode('M000312-source');return false;">[Source]</a></p>
714
- <div class="method-source-code" id="M000312-source">
796
+ onclick="toggleCode('M000321-source');return false;">[Source]</a></p>
797
+ <div class="method-source-code" id="M000321-source">
715
798
  <pre>
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>
806
- 269: <span class="ruby-keyword kw">end</span>
807
- 270:
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>
799
+ <span class="ruby-comment cmt"># File lib/RichTextElement.rb, line 190</span>
800
+ 190: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tagged</span>
801
+ 191: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">''</span>
802
+ 192: <span class="ruby-identifier">post</span> = <span class="ruby-value str">''</span>
803
+ 193: <span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@category</span>
804
+ 194: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:richtext</span>
805
+ 195: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;div&gt;'</span>
806
+ 196: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/div&gt;'</span>
807
+ 197: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title1</span>
808
+ 198: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;h1&gt;#{@data[0]} &quot;</span>
809
+ 199: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/h1&gt;\n\n&quot;</span>
810
+ 200: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title2</span>
811
+ 201: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;h2&gt;#{@data[0]}.#{@data[1]} &quot;</span>
812
+ 202: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/h2&gt;\n\n&quot;</span>
813
+ 203: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:title3</span>
814
+ 204: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;h3&gt;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
815
+ 205: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/h3&gt;\n\n&quot;</span>
816
+ 206: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:hline</span>
817
+ 207: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;hr&gt;'</span>
818
+ 208: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/hr&gt;\n&quot;</span>
819
+ 209: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:paragraph</span>
820
+ 210: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;p&gt;'</span>
821
+ 211: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/p&gt;\n\n&quot;</span>
822
+ 212: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:pre</span>
823
+ 213: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;pre&gt;'</span>
824
+ 214: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/pre&gt;\n\n&quot;</span>
825
+ 215: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist1</span>
826
+ 216: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ul&gt;'</span>
827
+ 217: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ul&gt;'</span>
828
+ 218: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem1</span>
829
+ 219: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;li&gt;* '</span>
830
+ 220: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
831
+ 221: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist2</span>
832
+ 222: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ul&gt;'</span>
833
+ 223: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ul&gt;'</span>
834
+ 224: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem2</span>
835
+ 225: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;li&gt; * '</span>
836
+ 226: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
837
+ 227: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletlist3</span>
838
+ 228: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ul&gt;'</span>
839
+ 229: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ul&gt;'</span>
840
+ 230: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bulletitem3</span>
841
+ 231: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;li&gt; * '</span>
842
+ 232: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
843
+ 233: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist1</span>
844
+ 234: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ol&gt;'</span>
845
+ 235: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ol&gt;'</span>
846
+ 236: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem1</span>
847
+ 237: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;li&gt;#{@data[0]} &quot;</span>
848
+ 238: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
849
+ 239: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist2</span>
850
+ 240: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ol&gt;'</span>
851
+ 241: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ol&gt;'</span>
852
+ 242: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem2</span>
853
+ 243: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;li&gt;#{@data[0]}.#{@data[1]} &quot;</span>
854
+ 244: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
855
+ 245: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberlist3</span>
856
+ 246: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;ol&gt;'</span>
857
+ 247: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ol&gt;'</span>
858
+ 248: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:numberitem3</span>
859
+ 249: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;li&gt;#{@data[0]}.#{@data[1]}.#{@data[2]} &quot;</span>
860
+ 250: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;&lt;/li&gt;\n&quot;</span>
861
+ 251: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:ref</span>
862
+ 252: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;ref data=\&quot;#{@data}\&quot;&gt;&quot;</span>
863
+ 253: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/ref&gt;'</span>
864
+ 254: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:href</span>
865
+ 255: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;a href=\&quot;#{@data}\&quot; #{@richText.linkTarget ?
866
+ 256: &quot;target=\&quot;#{@richText.linkTarget}\&quot;&quot; :
867
+ 257: &quot;&quot;}&gt;&quot;</span>
868
+ 258: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/a&gt;'</span>
869
+ 259: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:blockfunc</span>
870
+ 260: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;blockfunc:#{@data[0]}&quot;</span>
871
+ 261: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">1</span>]
872
+ 262: <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>
873
+ 263: <span class="ruby-identifier">pre</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot; #{key}=\&quot;#{@data[1][key]}\&quot;&quot;</span>
874
+ 264: <span class="ruby-keyword kw">end</span>
875
+ 265: <span class="ruby-keyword kw">end</span>
876
+ 266: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;/&gt;&quot;</span>
877
+ 267: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:inlinefunc</span>
878
+ 268: <span class="ruby-identifier">pre</span> = <span class="ruby-node">&quot;&lt;inlinefunc:#{@data[0]}&quot;</span>
879
+ 269: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@data</span>[<span class="ruby-value">1</span>]
880
+ 270: <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>
881
+ 271: <span class="ruby-identifier">pre</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot; #{key}=\&quot;#{@data[1][key]}\&quot;&quot;</span>
882
+ 272: <span class="ruby-keyword kw">end</span>
883
+ 273: <span class="ruby-keyword kw">end</span>
884
+ 274: <span class="ruby-identifier">post</span> = <span class="ruby-value str">&quot;/&gt;&quot;</span>
885
+ 275: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:italic</span>
886
+ 276: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;i&gt;'</span>
887
+ 277: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/i&gt;'</span>
888
+ 278: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:bold</span>
889
+ 279: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;b&gt;'</span>
890
+ 280: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/b&gt;'</span>
891
+ 281: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:code</span>
892
+ 282: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'&lt;code&gt;'</span>
893
+ 283: <span class="ruby-identifier">post</span> = <span class="ruby-value str">'&lt;/code&gt;'</span>
894
+ 284: <span class="ruby-keyword kw">when</span> <span class="ruby-identifier">:text</span>
895
+ 285: <span class="ruby-identifier">pre</span> = <span class="ruby-value str">'['</span>
896
+ 286: <span class="ruby-identifier">post</span> = <span class="ruby-value str">']'</span>
897
+ 287: <span class="ruby-keyword kw">else</span>
898
+ 288: <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>
899
+ 289: <span class="ruby-keyword kw">end</span>
900
+ 290:
901
+ 291: <span class="ruby-identifier">out</span> = <span class="ruby-value str">''</span>
902
+ 292: <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>
903
+ 293: <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>)
904
+ 294: <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>)
905
+ 295: <span class="ruby-keyword kw">else</span>
906
+ 296: <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>
907
+ 297: <span class="ruby-keyword kw">end</span>
908
+ 298: <span class="ruby-keyword kw">end</span>
909
+ 299:
910
+ 300: <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>
911
+ 301: <span class="ruby-keyword kw">end</span>
819
912
  </pre>
820
913
  </div>
821
914