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
@@ -146,7 +146,7 @@ Linebreaks are ignored if not followed by a blank line.
146
146
  [[item]] site internal internal reference (in HTML .html gets appended
147
147
  automatically)
148
148
  [[item An item]] another internal reference
149
- [[protocol:path arg1 arg2 ...]]
149
+ [[function:path arg1 arg2 ...]]
150
150
 
151
151
  <nowiki> ... </nowiki> Disable markup interpretation for the enclosed
152
152
  portion of text.
@@ -162,21 +162,11 @@ Linebreaks are ignored if not followed by a blank line.
162
162
 
163
163
  <div class="name-list">
164
164
 
165
- <a href="#M000390">internalReferences</a>&nbsp;&nbsp;
165
+ <a href="#M000948">functionHandler</a>&nbsp;&nbsp;
166
166
 
167
- <a href="#M000385">new</a>&nbsp;&nbsp;
167
+ <a href="#M000947">generateIntermediateFormat</a>&nbsp;&nbsp;
168
168
 
169
- <a href="#M000388">protocolHandler</a>&nbsp;&nbsp;
170
-
171
- <a href="#M000386">registerProtocol</a>&nbsp;&nbsp;
172
-
173
- <a href="#M000387">setProtocolHandlers</a>&nbsp;&nbsp;
174
-
175
- <a href="#M000389">tableOfContents</a>&nbsp;&nbsp;
176
-
177
- <a href="#M000392">to_html</a>&nbsp;&nbsp;
178
-
179
- <a href="#M000391">to_s</a>&nbsp;&nbsp;
169
+ <a href="#M000946">new</a>&nbsp;&nbsp;
180
170
 
181
171
  </div>
182
172
  </div>
@@ -196,17 +186,9 @@ Linebreaks are ignored if not followed by a blank line.
196
186
  <table>
197
187
 
198
188
  <tr class="top-aligned-row context-row">
199
- <td class="context-item-name">lineWidth</td>
200
-
201
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
202
-
203
- <td class="context-item-desc"></td>
204
- </tr>
205
-
206
- <tr class="top-aligned-row context-row">
207
- <td class="context-item-name">sectionNumbers</td>
189
+ <td class="context-item-name">inputText</td>
208
190
 
209
- <td class="context-item-value">&nbsp;[RW]&nbsp;</td>
191
+ <td class="context-item-value">&nbsp;[R]&nbsp;</td>
210
192
 
211
193
  <td class="context-item-desc"></td>
212
194
  </tr>
@@ -223,14 +205,14 @@ Linebreaks are ignored if not followed by a blank line.
223
205
  <h3 class="section-bar">Public Class methods</h3>
224
206
 
225
207
 
226
- <div id="method-M000385" class="method-detail">
227
- <a name="M000385"></a>
208
+ <div id="method-M000946" class="method-detail">
209
+ <a name="M000946"></a>
228
210
 
229
211
  <div class="method-heading">
230
212
 
231
- <a href="#M000385" class="method-signature">
213
+ <a href="#M000946" class="method-signature">
232
214
 
233
- <span class="method-name">new</span><span class="method-args">(text, sectionCounter = [ 0, 0, 0] )</span>
215
+ <span class="method-name">new</span><span class="method-args">(text, functionHandlers = [])</span>
234
216
 
235
217
  </a>
236
218
 
@@ -243,29 +225,21 @@ Create a rich text object by passing a <a href="../String.html">String</a>
243
225
  with markup elements to it. <em>text</em> must be plain text with MediaWiki
244
226
  compatible markup elements. In case an error occurs, an exception of type
245
227
  <a href="TjException.html">TjException</a> will be raised.
228
+ <em>functionHandlers</em> is a Hash that maps <a
229
+ href="RichTextFunctionHandler.html">RichTextFunctionHandler</a> objects by
230
+ their function name.
246
231
  </p>
247
232
 
248
233
  <p><a class="source-toggle" href="#"
249
- onclick="toggleCode('M000385-source');return false;">[Source]</a></p>
250
- <div class="method-source-code" id="M000385-source">
234
+ onclick="toggleCode('M000946-source');return false;">[Source]</a></p>
235
+ <div class="method-source-code" id="M000946-source">
251
236
  <pre>
252
- <span class="ruby-comment cmt"># File lib/RichText.rb, line 78</span>
253
- 78: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">text</span>, <span class="ruby-identifier">sectionCounter</span> = [ <span class="ruby-value">0</span>, <span class="ruby-value">0</span>, <span class="ruby-value">0</span>] )
254
- 79: <span class="ruby-comment cmt"># Set this to false to disable automatically generated section numbers.</span>
255
- 80: <span class="ruby-ivar">@sectionNumbers</span> = <span class="ruby-keyword kw">true</span>
256
- 81: <span class="ruby-comment cmt"># Set this to the width of your text area. Needed for horizonal lines.</span>
257
- 82: <span class="ruby-ivar">@lineWidth</span> = <span class="ruby-value">80</span>
258
- 83: <span class="ruby-comment cmt"># These are the RichTextProtocolHandler objects to handle references with</span>
259
- 84: <span class="ruby-comment cmt"># a protocol specification.</span>
260
- 85: <span class="ruby-ivar">@protocolHandlers</span> = {}
261
- 86: <span class="ruby-identifier">parser</span> = <span class="ruby-constant">RichTextParser</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>, <span class="ruby-identifier">sectionCounter</span>)
262
- 87: <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">open</span>(<span class="ruby-identifier">text</span>)
263
- 88: <span class="ruby-comment cmt"># Parse the input text and convert it to the intermediate representation.</span>
264
- 89: <span class="ruby-ivar">@richText</span> = <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-value str">'richtext'</span>)
265
- 90: <span class="ruby-comment cmt"># In case the result is empty, use an empty RichTextElement as result</span>
266
- 91: <span class="ruby-ivar">@richText</span> = <span class="ruby-constant">RichTextElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@richText</span>, <span class="ruby-identifier">:richtext</span>, <span class="ruby-keyword kw">nil</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@richText</span>
267
- 92: <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">cleanUp</span>
268
- 93: <span class="ruby-keyword kw">end</span>
237
+ <span class="ruby-comment cmt"># File lib/RichText.rb, line 80</span>
238
+ 80: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">text</span>, <span class="ruby-identifier">functionHandlers</span> = [])
239
+ 81: <span class="ruby-comment cmt"># Keep a copy of the original text.</span>
240
+ 82: <span class="ruby-ivar">@inputText</span> = <span class="ruby-identifier">text</span>
241
+ 83: <span class="ruby-ivar">@functionHandlers</span> = <span class="ruby-identifier">functionHandlers</span>
242
+ 84: <span class="ruby-keyword kw">end</span>
269
243
  </pre>
270
244
  </div>
271
245
 
@@ -276,14 +250,14 @@ compatible markup elements. In case an error occurs, an exception of type
276
250
  <h3 class="section-bar">Public Instance methods</h3>
277
251
 
278
252
 
279
- <div id="method-M000390" class="method-detail">
280
- <a name="M000390"></a>
253
+ <div id="method-M000948" class="method-detail">
254
+ <a name="M000948"></a>
281
255
 
282
256
  <div class="method-heading">
283
257
 
284
- <a href="#M000390" class="method-signature">
258
+ <a href="#M000948" class="method-signature">
285
259
 
286
- <span class="method-name">internalReferences</span><span class="method-args">()</span>
260
+ <span class="method-name">functionHandler</span><span class="method-args">(name, block)</span>
287
261
 
288
262
  </a>
289
263
 
@@ -292,56 +266,24 @@ compatible markup elements. In case an error occurs, an exception of type
292
266
  <div class="method-description">
293
267
 
294
268
  <p>
295
- Return an Array with all other snippet names that are referenced by
296
- internal references in this <a href="RichText.html">RichText</a> object.
269
+ Return the <a
270
+ href="RichTextFunctionHandler.html">RichTextFunctionHandler</a> for the
271
+ function <em>name</em>. <em>block</em> specifies whether we are looking for
272
+ a block or inline function.
297
273
  </p>
298
274
 
299
275
  <p><a class="source-toggle" href="#"
300
- onclick="toggleCode('M000390-source');return false;">[Source]</a></p>
301
- <div class="method-source-code" id="M000390-source">
302
- <pre>
303
- <span class="ruby-comment cmt"># File lib/RichText.rb, line 123</span>
304
- 123: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">internalReferences</span>
305
- 124: <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">internalReferences</span>
306
- 125: <span class="ruby-keyword kw">end</span>
307
- </pre>
308
- </div>
309
-
310
- </div>
311
- </div>
312
-
313
-
314
- <div id="method-M000388" class="method-detail">
315
- <a name="M000388"></a>
316
-
317
- <div class="method-heading">
318
-
319
- <a href="#M000388" class="method-signature">
320
-
321
- <span class="method-name">protocolHandler</span><span class="method-args">(protocol)</span>
322
-
323
- </a>
324
-
325
- </div>
326
-
327
- <div class="method-description">
328
-
329
- <p>
330
- Return the handler for the given <em>protocol</em> or raise an exception if
331
- it does not exist.
332
- </p>
333
-
334
- <p><a class="source-toggle" href="#"
335
- onclick="toggleCode('M000388-source');return false;">[Source]</a></p>
336
- <div class="method-source-code" id="M000388-source">
276
+ onclick="toggleCode('M000948-source');return false;">[Source]</a></p>
277
+ <div class="method-source-code" id="M000948-source">
337
278
  <pre>
338
279
  <span class="ruby-comment cmt"># File lib/RichText.rb, line 109</span>
339
- 109: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">protocolHandler</span>(<span class="ruby-identifier">protocol</span>)
340
- 110: <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@protocolHandlers</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">protocol</span>)
341
- 111: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-node">&quot;Unsupported protocol #{protocol}&quot;</span>
342
- 112: <span class="ruby-keyword kw">end</span>
343
- 113: <span class="ruby-ivar">@protocolHandlers</span>[<span class="ruby-identifier">protocol</span>]
344
- 114: <span class="ruby-keyword kw">end</span>
280
+ 109: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">functionHandler</span>(<span class="ruby-identifier">name</span>, <span class="ruby-identifier">block</span>)
281
+ 110: <span class="ruby-ivar">@functionHandlers</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">handler</span><span class="ruby-operator">|</span>
282
+ 111: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">handler</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">handler</span>.<span class="ruby-identifier">function</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">name</span> <span class="ruby-operator">&amp;&amp;</span>
283
+ 112: <span class="ruby-identifier">handler</span>.<span class="ruby-identifier">blockFunction</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">block</span>
284
+ 113: <span class="ruby-keyword kw">end</span>
285
+ 114: <span class="ruby-keyword kw">nil</span>
286
+ 115: <span class="ruby-keyword kw">end</span>
345
287
  </pre>
346
288
  </div>
347
289
 
@@ -349,14 +291,14 @@ it does not exist.
349
291
  </div>
350
292
 
351
293
 
352
- <div id="method-M000386" class="method-detail">
353
- <a name="M000386"></a>
294
+ <div id="method-M000947" class="method-detail">
295
+ <a name="M000947"></a>
354
296
 
355
297
  <div class="method-heading">
356
298
 
357
- <a href="#M000386" class="method-signature">
299
+ <a href="#M000947" class="method-signature">
358
300
 
359
- <span class="method-name">registerProtocol</span><span class="method-args">(protocolHandler)</span>
301
+ <span class="method-name">generateIntermediateFormat</span><span class="method-args">(sectionCounter = [ 0, 0, 0], tokenSet = nil)</span>
360
302
 
361
303
  </a>
362
304
 
@@ -365,54 +307,32 @@ it does not exist.
365
307
  <div class="method-description">
366
308
 
367
309
  <p>
368
- Use this function to register new <a
369
- href="RichTextProtocolHandler.html">RichTextProtocolHandler</a> objects
370
- with this class.
310
+ Convert the @inputText into an abstract syntax tree that can then be
311
+ converted into the various output formats. <em>sectionCounter</em> is an
312
+ Array that holds the initial values for the section counters.
371
313
  </p>
372
314
 
373
315
  <p><a class="source-toggle" href="#"
374
- onclick="toggleCode('M000386-source');return false;">[Source]</a></p>
375
- <div class="method-source-code" id="M000386-source">
316
+ onclick="toggleCode('M000947-source');return false;">[Source]</a></p>
317
+ <div class="method-source-code" id="M000947-source">
376
318
  <pre>
377
- <span class="ruby-comment cmt"># File lib/RichText.rb, line 97</span>
378
- 97: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">registerProtocol</span>(<span class="ruby-identifier">protocolHandler</span>)
379
- 98: <span class="ruby-ivar">@protocolHandlers</span>[<span class="ruby-identifier">protocolHandler</span>.<span class="ruby-identifier">protocol</span>] = <span class="ruby-identifier">protocolHandler</span>
380
- 99: <span class="ruby-keyword kw">end</span>
381
- </pre>
382
- </div>
383
-
384
- </div>
385
- </div>
386
-
387
-
388
- <div id="method-M000387" class="method-detail">
389
- <a name="M000387"></a>
390
-
391
- <div class="method-heading">
392
-
393
- <a href="#M000387" class="method-signature">
394
-
395
- <span class="method-name">setProtocolHandlers</span><span class="method-args">(protocolHandlers)</span>
396
-
397
- </a>
398
-
399
- </div>
400
-
401
- <div class="method-description">
402
-
403
- <p>
404
- Use this function to register a set of <a
405
- href="RichTextProtocolHandler.html">RichTextProtocolHandler</a> objects
406
- with this class. This will replace any previously registered handlers.
407
- </p>
408
-
409
- <p><a class="source-toggle" href="#"
410
- onclick="toggleCode('M000387-source');return false;">[Source]</a></p>
411
- <div class="method-source-code" id="M000387-source">
412
- <pre>
413
- <span class="ruby-comment cmt"># File lib/RichText.rb, line 103</span>
414
- 103: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">setProtocolHandlers</span>(<span class="ruby-identifier">protocolHandlers</span>)
415
- 104: <span class="ruby-ivar">@protocolHandlers</span> = <span class="ruby-identifier">protocolHandlers</span>
319
+ <span class="ruby-comment cmt"># File lib/RichText.rb, line 89</span>
320
+ 89: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateIntermediateFormat</span>(<span class="ruby-identifier">sectionCounter</span> = [ <span class="ruby-value">0</span>, <span class="ruby-value">0</span>, <span class="ruby-value">0</span>], <span class="ruby-identifier">tokenSet</span> = <span class="ruby-keyword kw">nil</span>)
321
+ 90: <span class="ruby-identifier">rti</span> = <span class="ruby-constant">RichTextIntermediate</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">self</span>)
322
+ 91: <span class="ruby-comment cmt"># Copy the function handlers.</span>
323
+ 92: <span class="ruby-ivar">@functionHandlers</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">h</span><span class="ruby-operator">|</span>
324
+ 93: <span class="ruby-identifier">rti</span>.<span class="ruby-identifier">registerFunctionHandler</span>(<span class="ruby-identifier">h</span>)
325
+ 94: <span class="ruby-keyword kw">end</span>
326
+ 95: <span class="ruby-comment cmt"># Parse the input text into an abstract syntax tree.</span>
327
+ 96: <span class="ruby-identifier">parser</span> = <span class="ruby-constant">RichTextParser</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">rti</span>, <span class="ruby-identifier">sectionCounter</span>, <span class="ruby-identifier">tokenSet</span>)
328
+ 97: <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">open</span>(<span class="ruby-ivar">@inputText</span>)
329
+ 98: <span class="ruby-comment cmt"># Parse the input text and convert it to the intermediate representation.</span>
330
+ 99: <span class="ruby-identifier">tree</span> = <span class="ruby-identifier">parser</span>.<span class="ruby-identifier">parse</span>(<span class="ruby-value str">'richtext'</span>)
331
+ 100: <span class="ruby-comment cmt"># In case the result is empty, use an empty RichTextElement as result</span>
332
+ 101: <span class="ruby-identifier">tree</span> = <span class="ruby-constant">RichTextElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">rti</span>, <span class="ruby-identifier">:richtext</span>, <span class="ruby-keyword kw">nil</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">tree</span>
333
+ 102: <span class="ruby-identifier">tree</span>.<span class="ruby-identifier">cleanUp</span>
334
+ 103: <span class="ruby-identifier">rti</span>.<span class="ruby-identifier">tree</span> = <span class="ruby-identifier">tree</span>
335
+ 104: <span class="ruby-identifier">rti</span>
416
336
  105: <span class="ruby-keyword kw">end</span>
417
337
  </pre>
418
338
  </div>
@@ -421,110 +341,6 @@ with this class. This will replace any previously registered handlers.
421
341
  </div>
422
342
 
423
343
 
424
- <div id="method-M000389" class="method-detail">
425
- <a name="M000389"></a>
426
-
427
- <div class="method-heading">
428
-
429
- <a href="#M000389" class="method-signature">
430
-
431
- <span class="method-name">tableOfContents</span><span class="method-args">(toc, fileName)</span>
432
-
433
- </a>
434
-
435
- </div>
436
-
437
- <div class="method-description">
438
-
439
- <p>
440
- Return a <a href="TableOfContents.html">TableOfContents</a> for the section
441
- headings.
442
- </p>
443
-
444
- <p><a class="source-toggle" href="#"
445
- onclick="toggleCode('M000389-source');return false;">[Source]</a></p>
446
- <div class="method-source-code" id="M000389-source">
447
- <pre>
448
- <span class="ruby-comment cmt"># File lib/RichText.rb, line 117</span>
449
- 117: <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>)
450
- 118: <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">tableOfContents</span>(<span class="ruby-identifier">toc</span>, <span class="ruby-identifier">fileName</span>)
451
- 119: <span class="ruby-keyword kw">end</span>
452
- </pre>
453
- </div>
454
-
455
- </div>
456
- </div>
457
-
458
-
459
- <div id="method-M000392" class="method-detail">
460
- <a name="M000392"></a>
461
-
462
- <div class="method-heading">
463
-
464
- <a href="#M000392" class="method-signature">
465
-
466
- <span class="method-name">to_html</span><span class="method-args">()</span>
467
-
468
- </a>
469
-
470
- </div>
471
-
472
- <div class="method-description">
473
-
474
- <p>
475
- Convert the rich text to HTML elements.
476
- </p>
477
-
478
- <p><a class="source-toggle" href="#"
479
- onclick="toggleCode('M000392-source');return false;">[Source]</a></p>
480
- <div class="method-source-code" id="M000392-source">
481
- <pre>
482
- <span class="ruby-comment cmt"># File lib/RichText.rb, line 134</span>
483
- 134: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_html</span>
484
- 135: <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">to_html</span>
485
- 136: <span class="ruby-keyword kw">end</span>
486
- </pre>
487
- </div>
488
-
489
- </div>
490
- </div>
491
-
492
-
493
- <div id="method-M000391" class="method-detail">
494
- <a name="M000391"></a>
495
-
496
- <div class="method-heading">
497
-
498
- <a href="#M000391" class="method-signature">
499
-
500
- <span class="method-name">to_s</span><span class="method-args">()</span>
501
-
502
- </a>
503
-
504
- </div>
505
-
506
- <div class="method-description">
507
-
508
- <p>
509
- Convert the rich text to plain ASCII text. All elements that can&#8217;t be
510
- represented easily in ASCII Strings are ommitted.
511
- </p>
512
-
513
- <p><a class="source-toggle" href="#"
514
- onclick="toggleCode('M000391-source');return false;">[Source]</a></p>
515
- <div class="method-source-code" id="M000391-source">
516
- <pre>
517
- <span class="ruby-comment cmt"># File lib/RichText.rb, line 129</span>
518
- 129: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>
519
- 130: <span class="ruby-ivar">@richText</span>.<span class="ruby-identifier">to_s</span>
520
- 131: <span class="ruby-keyword kw">end</span>
521
- </pre>
522
- </div>
523
-
524
- </div>
525
- </div>
526
-
527
-
528
344
 
529
345
  </div>
530
346
 
@@ -95,11 +95,15 @@
95
95
 
96
96
  <div class="name-list">
97
97
 
98
- <a href="#M000503">new</a>&nbsp;&nbsp;
98
+ <a href="#M000914">inputText</a>&nbsp;&nbsp;
99
99
 
100
- <a href="#M000504">tjpId</a>&nbsp;&nbsp;
100
+ <a href="#M000913">new</a>&nbsp;&nbsp;
101
101
 
102
- <a href="#M000505">to_tjp</a>&nbsp;&nbsp;
102
+ <a href="#M000915">tjpId</a>&nbsp;&nbsp;
103
+
104
+ <a href="#M000916">to_s</a>&nbsp;&nbsp;
105
+
106
+ <a href="#M000917">to_tjp</a>&nbsp;&nbsp;
103
107
 
104
108
  </div>
105
109
  </div>
@@ -120,12 +124,12 @@
120
124
  <h3 class="section-bar">Public Class methods</h3>
121
125
 
122
126
 
123
- <div id="method-M000503" class="method-detail">
124
- <a name="M000503"></a>
127
+ <div id="method-M000913" class="method-detail">
128
+ <a name="M000913"></a>
125
129
 
126
130
  <div class="method-heading">
127
131
 
128
- <a href="#M000503" class="method-signature">
132
+ <a href="#M000913" class="method-signature">
129
133
 
130
134
  <span class="method-name">new</span><span class="method-args">(property, type)</span>
131
135
 
@@ -136,13 +140,13 @@
136
140
  <div class="method-description">
137
141
 
138
142
  <p><a class="source-toggle" href="#"
139
- onclick="toggleCode('M000503-source');return false;">[Source]</a></p>
140
- <div class="method-source-code" id="M000503-source">
143
+ onclick="toggleCode('M000913-source');return false;">[Source]</a></p>
144
+ <div class="method-source-code" id="M000913-source">
141
145
  <pre>
142
- <span class="ruby-comment cmt"># File lib/Attributes.rb, line 425</span>
143
- 425: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">type</span>)
144
- 426: <span class="ruby-keyword kw">super</span>
145
- 427: <span class="ruby-keyword kw">end</span>
146
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 452</span>
147
+ 452: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">type</span>)
148
+ 453: <span class="ruby-keyword kw">super</span>
149
+ 454: <span class="ruby-keyword kw">end</span>
146
150
  </pre>
147
151
  </div>
148
152
 
@@ -150,12 +154,12 @@
150
154
  </div>
151
155
 
152
156
 
153
- <div id="method-M000504" class="method-detail">
154
- <a name="M000504"></a>
157
+ <div id="method-M000915" class="method-detail">
158
+ <a name="M000915"></a>
155
159
 
156
160
  <div class="method-heading">
157
161
 
158
- <a href="#M000504" class="method-signature">
162
+ <a href="#M000915" class="method-signature">
159
163
 
160
164
  <span class="method-name">tjpId</span><span class="method-args">()</span>
161
165
 
@@ -166,13 +170,13 @@
166
170
  <div class="method-description">
167
171
 
168
172
  <p><a class="source-toggle" href="#"
169
- onclick="toggleCode('M000504-source');return false;">[Source]</a></p>
170
- <div class="method-source-code" id="M000504-source">
173
+ onclick="toggleCode('M000915-source');return false;">[Source]</a></p>
174
+ <div class="method-source-code" id="M000915-source">
171
175
  <pre>
172
- <span class="ruby-comment cmt"># File lib/Attributes.rb, line 429</span>
173
- 429: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">RichTextAttribute</span><span class="ruby-operator">::</span><span class="ruby-identifier">tjpId</span>
174
- 430: <span class="ruby-value str">'richtext'</span>
175
- 431: <span class="ruby-keyword kw">end</span>
176
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 460</span>
177
+ 460: <span class="ruby-keyword kw">def</span> <span class="ruby-constant">RichTextAttribute</span><span class="ruby-operator">::</span><span class="ruby-identifier">tjpId</span>
178
+ 461: <span class="ruby-value str">'richtext'</span>
179
+ 462: <span class="ruby-keyword kw">end</span>
176
180
  </pre>
177
181
  </div>
178
182
 
@@ -183,12 +187,72 @@
183
187
  <h3 class="section-bar">Public Instance methods</h3>
184
188
 
185
189
 
186
- <div id="method-M000505" class="method-detail">
187
- <a name="M000505"></a>
190
+ <div id="method-M000914" class="method-detail">
191
+ <a name="M000914"></a>
192
+
193
+ <div class="method-heading">
194
+
195
+ <a href="#M000914" class="method-signature">
196
+
197
+ <span class="method-name">inputText</span><span class="method-args">()</span>
198
+
199
+ </a>
200
+
201
+ </div>
202
+
203
+ <div class="method-description">
204
+
205
+ <p><a class="source-toggle" href="#"
206
+ onclick="toggleCode('M000914-source');return false;">[Source]</a></p>
207
+ <div class="method-source-code" id="M000914-source">
208
+ <pre>
209
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 456</span>
210
+ 456: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">inputText</span>
211
+ 457: <span class="ruby-ivar">@value</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@value</span>.<span class="ruby-identifier">richText</span>.<span class="ruby-identifier">inputText</span> <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>
212
+ 458: <span class="ruby-keyword kw">end</span>
213
+ </pre>
214
+ </div>
215
+
216
+ </div>
217
+ </div>
218
+
219
+
220
+ <div id="method-M000916" class="method-detail">
221
+ <a name="M000916"></a>
222
+
223
+ <div class="method-heading">
224
+
225
+ <a href="#M000916" class="method-signature">
226
+
227
+ <span class="method-name">to_s</span><span class="method-args">(query = nil)</span>
228
+
229
+ </a>
230
+
231
+ </div>
232
+
233
+ <div class="method-description">
234
+
235
+ <p><a class="source-toggle" href="#"
236
+ onclick="toggleCode('M000916-source');return false;">[Source]</a></p>
237
+ <div class="method-source-code" id="M000916-source">
238
+ <pre>
239
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 464</span>
240
+ 464: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_s</span>(<span class="ruby-identifier">query</span> = <span class="ruby-keyword kw">nil</span>)
241
+ 465: <span class="ruby-ivar">@value</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@value</span>.<span class="ruby-identifier">to_s</span> <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>
242
+ 466: <span class="ruby-keyword kw">end</span>
243
+ </pre>
244
+ </div>
245
+
246
+ </div>
247
+ </div>
248
+
249
+
250
+ <div id="method-M000917" class="method-detail">
251
+ <a name="M000917"></a>
188
252
 
189
253
  <div class="method-heading">
190
254
 
191
- <a href="#M000505" class="method-signature">
255
+ <a href="#M000917" class="method-signature">
192
256
 
193
257
  <span class="method-name">to_tjp</span><span class="method-args">()</span>
194
258
 
@@ -199,13 +263,13 @@
199
263
  <div class="method-description">
200
264
 
201
265
  <p><a class="source-toggle" href="#"
202
- onclick="toggleCode('M000505-source');return false;">[Source]</a></p>
203
- <div class="method-source-code" id="M000505-source">
266
+ onclick="toggleCode('M000917-source');return false;">[Source]</a></p>
267
+ <div class="method-source-code" id="M000917-source">
204
268
  <pre>
205
- <span class="ruby-comment cmt"># File lib/Attributes.rb, line 433</span>
206
- 433: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tjp</span>
207
- 434: <span class="ruby-node">&quot;#{@type.id} \&quot;#{@value.to_s}\&quot;&quot;</span>
208
- 435: <span class="ruby-keyword kw">end</span>
269
+ <span class="ruby-comment cmt"># File lib/Attributes.rb, line 468</span>
270
+ 468: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tjp</span>
271
+ 469: <span class="ruby-node">&quot;#{@type.id} \&quot;#{@value.to_s}\&quot;&quot;</span>
272
+ 470: <span class="ruby-keyword kw">end</span>
209
273
  </pre>
210
274
  </div>
211
275