taskjuggler 0.0.6 → 0.0.7

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 (545) hide show
  1. data/CHANGELOG +160 -0
  2. data/benchmarks/UTF-8-Strings.rb +58 -0
  3. data/data/css/tjreport.css +7 -2
  4. data/doc/AppConfig.html +10 -4
  5. data/doc/Arguments.html +10 -4
  6. data/doc/CHANGELOG.html +171 -5
  7. data/doc/COPYING.html +10 -4
  8. data/doc/Object.html +11 -107
  9. data/doc/README.html +10 -4
  10. data/doc/RuntimeConfig.html +10 -4
  11. data/doc/String.html +16 -11
  12. data/doc/StringIO.html +10 -4
  13. data/doc/TaskJuggler.html +506 -435
  14. data/doc/TaskJuggler/Account.html +10 -4
  15. data/doc/TaskJuggler/AccountAttribute.html +10 -4
  16. data/doc/TaskJuggler/AccountScenario.html +10 -4
  17. data/doc/TaskJuggler/Allocation.html +69 -60
  18. data/doc/TaskJuggler/AllocationAttribute.html +10 -4
  19. data/doc/TaskJuggler/AttributeBase.html +10 -4
  20. data/doc/TaskJuggler/AttributeDefinition.html +10 -4
  21. data/doc/TaskJuggler/BatchProcessor.html +202 -192
  22. data/doc/TaskJuggler/Booking.html +10 -4
  23. data/doc/TaskJuggler/BookingListAttribute.html +10 -4
  24. data/doc/TaskJuggler/BooleanAttribute.html +10 -4
  25. data/doc/TaskJuggler/CSVFile.html +10 -4
  26. data/doc/TaskJuggler/CellSettingPattern.html +10 -4
  27. data/doc/TaskJuggler/CellSettingPatternList.html +10 -4
  28. data/doc/TaskJuggler/Charge.html +10 -4
  29. data/doc/TaskJuggler/ChargeListAttribute.html +10 -4
  30. data/doc/TaskJuggler/ChargeSet.html +10 -4
  31. data/doc/TaskJuggler/ChargeSetListAttribute.html +10 -4
  32. data/doc/TaskJuggler/ColumnListAttribute.html +10 -4
  33. data/doc/TaskJuggler/ColumnTable.html +10 -4
  34. data/doc/TaskJuggler/Daemon.html +71 -52
  35. data/doc/TaskJuggler/DateAttribute.html +10 -4
  36. data/doc/TaskJuggler/DefinitionListAttribute.html +10 -4
  37. data/doc/TaskJuggler/DependencyListAttribute.html +10 -4
  38. data/doc/TaskJuggler/DurationAttribute.html +10 -4
  39. data/doc/TaskJuggler/{MacroParser.html → FileList.html} +58 -173
  40. data/doc/TaskJuggler/{RichTextException.html → FileRecord.html} +59 -80
  41. data/doc/TaskJuggler/FixnumAttribute.html +10 -4
  42. data/doc/TaskJuggler/FlagListAttribute.html +10 -4
  43. data/doc/TaskJuggler/FloatAttribute.html +10 -4
  44. data/doc/TaskJuggler/FormatListAttribute.html +10 -4
  45. data/doc/TaskJuggler/GanttChart.html +10 -4
  46. data/doc/TaskJuggler/GanttContainer.html +14 -8
  47. data/doc/TaskJuggler/GanttHeader.html +10 -4
  48. data/doc/TaskJuggler/GanttHeaderScaleItem.html +10 -4
  49. data/doc/TaskJuggler/GanttLine.html +29 -24
  50. data/doc/TaskJuggler/GanttLoadStack.html +10 -4
  51. data/doc/TaskJuggler/GanttMilestone.html +10 -4
  52. data/doc/TaskJuggler/GanttRouter.html +10 -4
  53. data/doc/TaskJuggler/GanttTaskBar.html +20 -10
  54. data/doc/TaskJuggler/HTMLDocument.html +10 -4
  55. data/doc/TaskJuggler/HTMLGraphics.html +10 -4
  56. data/doc/TaskJuggler/Interval.html +10 -4
  57. data/doc/TaskJuggler/IntervalListAttribute.html +10 -4
  58. data/doc/TaskJuggler/JobInfo.html +10 -4
  59. data/doc/TaskJuggler/Journal.html +227 -160
  60. data/doc/TaskJuggler/JournalEntry.html +10 -4
  61. data/doc/TaskJuggler/JournalEntryList.html +158 -72
  62. data/doc/TaskJuggler/KeywordArray.html +21 -9
  63. data/doc/TaskJuggler/KeywordDocumentation.html +612 -475
  64. data/doc/TaskJuggler/Limits.html +13 -8
  65. data/doc/TaskJuggler/Limits/Limit.html +10 -4
  66. data/doc/TaskJuggler/LimitsAttribute.html +10 -4
  67. data/doc/TaskJuggler/ListAttributeBase.html +10 -4
  68. data/doc/TaskJuggler/Log.html +10 -4
  69. data/doc/TaskJuggler/LogFile.html +10 -4
  70. data/doc/TaskJuggler/LogicalAttribute.html +10 -4
  71. data/doc/TaskJuggler/LogicalExpression.html +11 -5
  72. data/doc/TaskJuggler/LogicalExpressionAttribute.html +10 -4
  73. data/doc/TaskJuggler/LogicalFlag.html +10 -4
  74. data/doc/TaskJuggler/LogicalFunction.html +132 -124
  75. data/doc/TaskJuggler/LogicalOperation.html +10 -4
  76. data/doc/TaskJuggler/Macro.html +16 -10
  77. data/doc/TaskJuggler/MacroTable.html +44 -38
  78. data/doc/TaskJuggler/ManagerResponsibilities.html +10 -4
  79. data/doc/TaskJuggler/ManagerStatusRecord.html +10 -4
  80. data/doc/TaskJuggler/Message.html +92 -68
  81. data/doc/TaskJuggler/MessageHandler.html +349 -28
  82. data/doc/TaskJuggler/Navigator.html +10 -4
  83. data/doc/TaskJuggler/NavigatorElement.html +10 -4
  84. data/doc/TaskJuggler/NikuProject.html +10 -4
  85. data/doc/TaskJuggler/NikuReport.html +10 -4
  86. data/doc/TaskJuggler/NikuResource.html +10 -4
  87. data/doc/TaskJuggler/NodeListAttribute.html +10 -4
  88. data/doc/TaskJuggler/OnShiftCache.html +10 -4
  89. data/doc/TaskJuggler/ProcessIntercom.html +118 -111
  90. data/doc/TaskJuggler/ProcessIntercomIface.html +75 -22
  91. data/doc/TaskJuggler/Project.html +886 -913
  92. data/doc/TaskJuggler/ProjectBroker.html +442 -331
  93. data/doc/TaskJuggler/ProjectBrokerIface.html +95 -38
  94. data/doc/TaskJuggler/ProjectFileParser.html +320 -317
  95. data/doc/TaskJuggler/ProjectFileScanner.html +336 -339
  96. data/doc/TaskJuggler/ProjectRecord.html +119 -56
  97. data/doc/TaskJuggler/ProjectServer.html +282 -237
  98. data/doc/TaskJuggler/ProjectServerIface.html +45 -39
  99. data/doc/TaskJuggler/PropertyAttribute.html +10 -4
  100. data/doc/TaskJuggler/PropertyList.html +177 -173
  101. data/doc/TaskJuggler/PropertySet.html +11 -5
  102. data/doc/TaskJuggler/PropertyTreeNode.html +194 -191
  103. data/doc/TaskJuggler/Query.html +280 -256
  104. data/doc/TaskJuggler/RTFHandlers.html +10 -4
  105. data/doc/TaskJuggler/RTFNavigator.html +33 -26
  106. data/doc/TaskJuggler/RTFQuery.html +135 -169
  107. data/doc/TaskJuggler/RTFReport.html +63 -56
  108. data/doc/TaskJuggler/RTFReportLink.html +58 -47
  109. data/doc/TaskJuggler/RTFWithQuerySupport.html +666 -0
  110. data/doc/TaskJuggler/RealFormat.html +10 -4
  111. data/doc/TaskJuggler/RealFormatAttribute.html +10 -4
  112. data/doc/TaskJuggler/ReferenceAttribute.html +10 -4
  113. data/doc/TaskJuggler/Report.html +333 -290
  114. data/doc/TaskJuggler/ReportBase.html +182 -174
  115. data/doc/TaskJuggler/ReportContext.html +10 -4
  116. data/doc/TaskJuggler/ReportServer.html +144 -126
  117. data/doc/TaskJuggler/ReportServerIface.html +50 -44
  118. data/doc/TaskJuggler/ReportServerRecord.html +38 -32
  119. data/doc/TaskJuggler/ReportServlet.html +144 -137
  120. data/doc/TaskJuggler/ReportTable.html +10 -4
  121. data/doc/TaskJuggler/ReportTableCell.html +169 -164
  122. data/doc/TaskJuggler/ReportTableColumn.html +10 -4
  123. data/doc/TaskJuggler/ReportTableLegend.html +10 -4
  124. data/doc/TaskJuggler/ReportTableLine.html +10 -4
  125. data/doc/TaskJuggler/Resource.html +121 -115
  126. data/doc/TaskJuggler/ResourceListAttribute.html +10 -4
  127. data/doc/TaskJuggler/ResourceListRE.html +10 -4
  128. data/doc/TaskJuggler/ResourceScenario.html +13 -7
  129. data/doc/TaskJuggler/RichText.html +61 -37
  130. data/doc/TaskJuggler/RichTextAttribute.html +10 -4
  131. data/doc/TaskJuggler/RichTextDocument.html +91 -81
  132. data/doc/TaskJuggler/RichTextElement.html +378 -317
  133. data/doc/TaskJuggler/RichTextFunctionExample.html +10 -4
  134. data/doc/TaskJuggler/RichTextFunctionHandler.html +16 -11
  135. data/doc/TaskJuggler/RichTextImage.html +10 -4
  136. data/doc/TaskJuggler/RichTextIntermediate.html +138 -70
  137. data/doc/TaskJuggler/RichTextParser.html +48 -40
  138. data/doc/TaskJuggler/RichTextScanner.html +328 -906
  139. data/doc/TaskJuggler/RichTextSnip.html +59 -57
  140. data/doc/TaskJuggler/RichTextSyntaxRules.html +458 -369
  141. data/doc/TaskJuggler/Scenario.html +10 -4
  142. data/doc/TaskJuggler/ScenarioData.html +33 -30
  143. data/doc/TaskJuggler/ScenarioListAttribute.html +10 -4
  144. data/doc/TaskJuggler/Scoreboard.html +10 -4
  145. data/doc/TaskJuggler/SheetHandlerBase.html +315 -191
  146. data/doc/TaskJuggler/SheetReceiver.html +334 -313
  147. data/doc/TaskJuggler/SheetSender.html +10 -4
  148. data/doc/TaskJuggler/Shift.html +10 -4
  149. data/doc/TaskJuggler/ShiftAssignment.html +10 -4
  150. data/doc/TaskJuggler/ShiftAssignments.html +10 -4
  151. data/doc/TaskJuggler/ShiftAssignmentsAttribute.html +10 -4
  152. data/doc/TaskJuggler/ShiftScenario.html +10 -4
  153. data/doc/TaskJuggler/SimpleQueryExpander.html +697 -0
  154. data/doc/TaskJuggler/SortListAttribute.html +10 -4
  155. data/doc/TaskJuggler/SourceFileInfo.html +10 -4
  156. data/doc/TaskJuggler/StatusSheetReceiver.html +10 -4
  157. data/doc/TaskJuggler/StatusSheetReport.html +10 -4
  158. data/doc/TaskJuggler/StatusSheetSender.html +10 -4
  159. data/doc/TaskJuggler/StringAttribute.html +10 -4
  160. data/doc/TaskJuggler/SymbolAttribute.html +10 -4
  161. data/doc/TaskJuggler/SyntaxReference.html +260 -230
  162. data/doc/TaskJuggler/TOCEntry.html +99 -42
  163. data/doc/TaskJuggler/TSResourceRecord.html +10 -4
  164. data/doc/TaskJuggler/TSTaskRecord.html +10 -4
  165. data/doc/TaskJuggler/TableColumnDefinition.html +10 -4
  166. data/doc/TaskJuggler/TableOfContents.html +54 -12
  167. data/doc/TaskJuggler/TableReport.html +877 -872
  168. data/doc/TaskJuggler/Task.html +117 -68
  169. data/doc/TaskJuggler/TaskDependency.html +10 -4
  170. data/doc/TaskJuggler/TaskListAttribute.html +10 -4
  171. data/doc/TaskJuggler/TaskListRE.html +10 -4
  172. data/doc/TaskJuggler/TaskScenario.html +1681 -1563
  173. data/doc/TaskJuggler/TextFormatter.html +10 -4
  174. data/doc/TaskJuggler/TextParser.html +567 -534
  175. data/doc/TaskJuggler/TextParser/Pattern.html +128 -118
  176. data/doc/TaskJuggler/TextParser/Rule.html +26 -15
  177. data/doc/TaskJuggler/TextParser/StackElement.html +10 -4
  178. data/doc/TaskJuggler/TextParser/TextParserResultArray.html +22 -16
  179. data/doc/TaskJuggler/TextParser/TokenDoc.html +10 -4
  180. data/doc/TaskJuggler/TextReport.html +15 -6
  181. data/doc/TaskJuggler/TextScanner.html +319 -287
  182. data/doc/TaskJuggler/TextScanner/BufferStreamHandle.html +16 -10
  183. data/doc/TaskJuggler/TextScanner/FileStreamHandle.html +23 -17
  184. data/doc/TaskJuggler/TextScanner/MacroStackEntry.html +17 -11
  185. data/doc/TaskJuggler/TextScanner/StreamHandle.html +102 -96
  186. data/doc/TaskJuggler/TimeSheet.html +138 -175
  187. data/doc/TaskJuggler/TimeSheetReceiver.html +10 -4
  188. data/doc/TaskJuggler/TimeSheetRecord.html +65 -58
  189. data/doc/TaskJuggler/TimeSheetReport.html +47 -42
  190. data/doc/TaskJuggler/TimeSheetSender.html +10 -4
  191. data/doc/TaskJuggler/TimeSheetSummary.html +91 -83
  192. data/doc/TaskJuggler/TimeSheets.html +22 -16
  193. data/doc/TaskJuggler/Tj3AppBase.html +10 -4
  194. data/doc/TaskJuggler/Tj3Client.html +399 -365
  195. data/doc/TaskJuggler/Tj3Daemon.html +107 -94
  196. data/doc/TaskJuggler/Tj3SheetAppBase.html +10 -4
  197. data/doc/TaskJuggler/Tj3SsReceiver.html +10 -4
  198. data/doc/TaskJuggler/Tj3SsSender.html +10 -4
  199. data/doc/TaskJuggler/Tj3TsReceiver.html +10 -4
  200. data/doc/TaskJuggler/Tj3TsSender.html +10 -4
  201. data/doc/TaskJuggler/Tj3TsSummary.html +10 -4
  202. data/doc/TaskJuggler/TjException.html +10 -4
  203. data/doc/TaskJuggler/TjTime.html +145 -140
  204. data/doc/TaskJuggler/TjpExample.html +10 -4
  205. data/doc/TaskJuggler/TjpExportRE.html +122 -118
  206. data/doc/TaskJuggler/TjpSyntaxRules.html +4065 -4052
  207. data/doc/TaskJuggler/URLParameter.html +10 -4
  208. data/doc/TaskJuggler/UserManual.html +162 -155
  209. data/doc/TaskJuggler/VimSyntax.html +1028 -0
  210. data/doc/TaskJuggler/WebServer.html +45 -27
  211. data/doc/TaskJuggler/WorkingHours.html +10 -4
  212. data/doc/TaskJuggler/WorkingHoursAttribute.html +10 -4
  213. data/doc/TaskJuggler/XMLBlob.html +10 -4
  214. data/doc/TaskJuggler/XMLComment.html +10 -4
  215. data/doc/TaskJuggler/XMLDocument.html +10 -4
  216. data/doc/TaskJuggler/XMLElement.html +10 -4
  217. data/doc/TaskJuggler/XMLNamedText.html +10 -4
  218. data/doc/TaskJuggler/XMLText.html +10 -4
  219. data/doc/index.html +735 -677
  220. data/doc/lib/AccountScenario_rb.html +1 -1
  221. data/doc/lib/Account_rb.html +1 -1
  222. data/doc/lib/Allocation_rb.html +1 -1
  223. data/doc/lib/AppConfig_rb.html +1 -1
  224. data/doc/lib/AttributeBase_rb.html +1 -1
  225. data/doc/lib/AttributeDefinition_rb.html +1 -1
  226. data/doc/lib/Attributes_rb.html +1 -1
  227. data/doc/lib/BatchProcessor_rb.html +1 -1
  228. data/doc/lib/Booking_rb.html +1 -1
  229. data/doc/lib/ChargeSet_rb.html +1 -1
  230. data/doc/lib/Charge_rb.html +1 -1
  231. data/doc/lib/{Message_rb.html → FileList_rb.html} +3 -5
  232. data/doc/lib/HTMLDocument_rb.html +1 -1
  233. data/doc/lib/Interval_rb.html +1 -1
  234. data/doc/lib/Journal_rb.html +1 -1
  235. data/doc/lib/KeywordArray_rb.html +1 -1
  236. data/doc/lib/KeywordDocumentation_rb.html +1 -1
  237. data/doc/lib/Limits_rb.html +1 -1
  238. data/doc/lib/LogFile_rb.html +1 -1
  239. data/doc/lib/Log_rb.html +1 -1
  240. data/doc/lib/LogicalExpression_rb.html +1 -1
  241. data/doc/lib/LogicalFunction_rb.html +1 -1
  242. data/doc/lib/LogicalOperation_rb.html +1 -1
  243. data/doc/lib/MacroTable_rb.html +1 -3
  244. data/doc/lib/MessageHandler_rb.html +1 -1
  245. data/doc/lib/ProjectFileParser_rb.html +1 -1
  246. data/doc/lib/ProjectFileScanner_rb.html +1 -1
  247. data/doc/lib/Project_rb.html +4 -2
  248. data/doc/lib/PropertyList_rb.html +1 -1
  249. data/doc/lib/PropertySet_rb.html +1 -1
  250. data/doc/lib/PropertyTreeNode_rb.html +1 -1
  251. data/doc/lib/Query_rb.html +1 -1
  252. data/doc/lib/RTFHandlers_rb.html +1 -1
  253. data/doc/lib/RTFNavigator_rb.html +1 -1
  254. data/doc/lib/RTFQuery_rb.html +2 -2
  255. data/doc/lib/RTFReportLink_rb.html +4 -2
  256. data/doc/lib/RTFReport_rb.html +1 -1
  257. data/doc/lib/{MacroParser_rb.html → RTFWithQuerySupport_rb.html} +4 -6
  258. data/doc/lib/RealFormat_rb.html +1 -1
  259. data/doc/lib/ResourceScenario_rb.html +1 -1
  260. data/doc/lib/Resource_rb.html +1 -1
  261. data/doc/lib/RichTextDocument_rb.html +1 -1
  262. data/doc/lib/RichTextElement_rb.html +1 -1
  263. data/doc/lib/RichTextFunctionExample_rb.html +1 -1
  264. data/doc/lib/RichTextFunctionHandler_rb.html +1 -1
  265. data/doc/lib/RichTextParser_rb.html +1 -1
  266. data/doc/lib/RichTextScanner_rb.html +3 -1
  267. data/doc/lib/RichTextSnip_rb.html +1 -1
  268. data/doc/lib/RichTextSyntaxRules_rb.html +1 -1
  269. data/doc/lib/RichText_rb.html +3 -1
  270. data/doc/lib/RuntimeConfig_rb.html +1 -1
  271. data/doc/lib/ScenarioData_rb.html +2 -2
  272. data/doc/lib/Scenario_rb.html +1 -1
  273. data/doc/lib/Scoreboard_rb.html +1 -1
  274. data/doc/lib/SheetHandlerBase_rb.html +5 -1
  275. data/doc/lib/SheetReceiver_rb.html +3 -1
  276. data/doc/lib/SheetSender_rb.html +1 -1
  277. data/doc/lib/ShiftAssignments_rb.html +1 -1
  278. data/doc/lib/ShiftScenario_rb.html +1 -1
  279. data/doc/lib/Shift_rb.html +1 -1
  280. data/doc/lib/SimpleQueryExpander_rb.html +67 -0
  281. data/doc/lib/SourceFileInfo_rb.html +1 -1
  282. data/doc/lib/StatusSheetReceiver_rb.html +1 -1
  283. data/doc/lib/StatusSheetSender_rb.html +1 -1
  284. data/doc/lib/SyntaxReference_rb.html +1 -1
  285. data/doc/lib/TOCEntry_rb.html +1 -1
  286. data/doc/lib/TableColumnDefinition_rb.html +1 -1
  287. data/doc/lib/TableOfContents_rb.html +1 -1
  288. data/doc/lib/TaskDependency_rb.html +1 -1
  289. data/doc/lib/TaskJuggler_rb.html +1 -1
  290. data/doc/lib/TaskScenario_rb.html +1 -1
  291. data/doc/lib/Task_rb.html +1 -1
  292. data/doc/lib/TextFormatter_rb.html +1 -1
  293. data/doc/lib/TextParser/Pattern_rb.html +1 -1
  294. data/doc/lib/TextParser/Rule_rb.html +1 -1
  295. data/doc/lib/TextParser/StackElement_rb.html +1 -1
  296. data/doc/lib/TextParser/TokenDoc_rb.html +1 -1
  297. data/doc/lib/TextParser_rb.html +3 -1
  298. data/doc/lib/TextScanner_rb.html +1 -3
  299. data/doc/lib/TimeSheetReceiver_rb.html +1 -1
  300. data/doc/lib/TimeSheetSender_rb.html +1 -1
  301. data/doc/lib/TimeSheetSummary_rb.html +1 -1
  302. data/doc/lib/TimeSheets_rb.html +1 -1
  303. data/doc/lib/Tj3AppBase_rb.html +1 -1
  304. data/doc/lib/Tj3Config_rb.html +1 -1
  305. data/doc/lib/Tj3SheetAppBase_rb.html +1 -1
  306. data/doc/lib/TjException_rb.html +1 -1
  307. data/doc/lib/TjTime_rb.html +1 -1
  308. data/doc/lib/TjpExample_rb.html +1 -1
  309. data/doc/lib/TjpSyntaxRules_rb.html +1 -1
  310. data/doc/lib/URLParameter_rb.html +1 -1
  311. data/doc/lib/UTF8String_rb.html +1 -1
  312. data/doc/lib/UserManual_rb.html +1 -1
  313. data/doc/lib/{ruby-signal-bug_rb.html → VimSyntax_rb.html} +17 -4
  314. data/doc/lib/WorkingHours_rb.html +1 -1
  315. data/doc/lib/XMLDocument_rb.html +1 -1
  316. data/doc/lib/XMLElement_rb.html +1 -1
  317. data/doc/lib/daemon/Daemon_rb.html +1 -1
  318. data/doc/lib/daemon/ProcessIntercom_rb.html +1 -1
  319. data/doc/lib/daemon/ProjectBroker_rb.html +1 -1
  320. data/doc/lib/daemon/ProjectServer_rb.html +1 -1
  321. data/doc/lib/daemon/ReportServer_rb.html +1 -3
  322. data/doc/lib/daemon/WebServer_rb.html +1 -1
  323. data/doc/lib/deep_copy_rb.html +1 -1
  324. data/doc/lib/reports/CSVFile_rb.html +1 -1
  325. data/doc/lib/reports/ColumnTable_rb.html +1 -1
  326. data/doc/lib/reports/GanttChart_rb.html +1 -1
  327. data/doc/lib/reports/GanttContainer_rb.html +1 -1
  328. data/doc/lib/reports/GanttHeaderScaleItem_rb.html +1 -1
  329. data/doc/lib/reports/GanttHeader_rb.html +1 -1
  330. data/doc/lib/reports/GanttLine_rb.html +1 -1
  331. data/doc/lib/reports/GanttLoadStack_rb.html +1 -1
  332. data/doc/lib/reports/GanttMilestone_rb.html +1 -1
  333. data/doc/lib/reports/GanttRouter_rb.html +1 -1
  334. data/doc/lib/reports/GanttTaskBar_rb.html +1 -1
  335. data/doc/lib/reports/HTMLGraphics_rb.html +1 -1
  336. data/doc/lib/reports/Navigator_rb.html +1 -1
  337. data/doc/lib/reports/NikuReport_rb.html +1 -1
  338. data/doc/lib/reports/ReportBase_rb.html +1 -1
  339. data/doc/lib/reports/ReportContext_rb.html +1 -1
  340. data/doc/lib/reports/ReportTableCell_rb.html +1 -1
  341. data/doc/lib/reports/ReportTableColumn_rb.html +1 -1
  342. data/doc/lib/reports/ReportTableLegend_rb.html +1 -1
  343. data/doc/lib/reports/ReportTableLine_rb.html +1 -1
  344. data/doc/lib/reports/ReportTable_rb.html +1 -1
  345. data/doc/lib/reports/Report_rb.html +1 -1
  346. data/doc/lib/reports/ResourceListRE_rb.html +1 -1
  347. data/doc/lib/reports/StatusSheetReport_rb.html +1 -1
  348. data/doc/lib/reports/TableReport_rb.html +1 -1
  349. data/doc/lib/reports/TaskListRE_rb.html +1 -1
  350. data/doc/lib/reports/TextReport_rb.html +1 -1
  351. data/doc/lib/reports/TimeSheetReport_rb.html +1 -1
  352. data/doc/lib/reports/TjpExportRE_rb.html +1 -1
  353. data/doc/lib/taskjuggler3_rb.html +1 -1
  354. data/doc/lib/tj3client_rb.html +1 -1
  355. data/doc/lib/tj3d_rb.html +1 -1
  356. data/doc/lib/tj3man_rb.html +1 -1
  357. data/doc/lib/tj3ss_receiver_rb.html +1 -1
  358. data/doc/lib/tj3ss_sender_rb.html +1 -1
  359. data/doc/lib/tj3ts_receiver_rb.html +1 -1
  360. data/doc/lib/tj3ts_sender_rb.html +1 -1
  361. data/doc/lib/tj3ts_summary_rb.html +1 -1
  362. data/lib/Allocation.rb +8 -5
  363. data/lib/BatchProcessor.rb +7 -3
  364. data/lib/FileList.rb +58 -0
  365. data/lib/Journal.rb +73 -33
  366. data/lib/KeywordArray.rb +4 -0
  367. data/lib/KeywordDocumentation.rb +45 -11
  368. data/lib/Limits.rb +0 -1
  369. data/lib/LogicalExpression.rb +1 -1
  370. data/lib/LogicalFunction.rb +14 -12
  371. data/lib/MacroTable.rb +3 -4
  372. data/lib/MessageHandler.rb +136 -7
  373. data/lib/Project.rb +72 -86
  374. data/lib/ProjectFileParser.rb +30 -33
  375. data/lib/ProjectFileScanner.rb +7 -16
  376. data/lib/PropertyList.rb +25 -27
  377. data/lib/PropertySet.rb +1 -1
  378. data/lib/PropertyTreeNode.rb +9 -12
  379. data/lib/Query.rb +5 -4
  380. data/lib/RTFNavigator.rb +2 -1
  381. data/lib/RTFQuery.rb +4 -11
  382. data/lib/RTFReport.rb +2 -1
  383. data/lib/RTFReportLink.rb +10 -4
  384. data/lib/RTFWithQuerySupport.rb +45 -0
  385. data/lib/Resource.rb +20 -20
  386. data/lib/ResourceScenario.rb +3 -3
  387. data/lib/RichText.rb +15 -7
  388. data/lib/RichTextDocument.rb +8 -4
  389. data/lib/RichTextElement.rb +35 -12
  390. data/lib/RichTextFunctionHandler.rb +11 -12
  391. data/lib/RichTextParser.rb +5 -3
  392. data/lib/RichTextScanner.rb +144 -565
  393. data/lib/RichTextSnip.rb +3 -7
  394. data/lib/RichTextSyntaxRules.rb +51 -32
  395. data/lib/ScenarioData.rb +16 -25
  396. data/lib/SheetHandlerBase.rb +59 -2
  397. data/lib/SheetReceiver.rb +36 -18
  398. data/lib/SimpleQueryExpander.rb +58 -0
  399. data/lib/SyntaxReference.rb +9 -5
  400. data/lib/TOCEntry.rb +2 -0
  401. data/lib/TableOfContents.rb +4 -0
  402. data/lib/Task.rb +23 -12
  403. data/lib/TaskJuggler.rb +72 -33
  404. data/lib/TaskScenario.rb +131 -53
  405. data/lib/TextParser.rb +43 -30
  406. data/lib/TextParser/Pattern.rb +17 -13
  407. data/lib/TextParser/Rule.rb +5 -0
  408. data/lib/TextScanner.rb +46 -25
  409. data/lib/TimeSheetSummary.rb +9 -7
  410. data/lib/TimeSheets.rb +14 -23
  411. data/lib/Tj3Config.rb +1 -1
  412. data/lib/TjTime.rb +1 -2
  413. data/lib/TjpSyntaxRules.rb +128 -104
  414. data/lib/UTF8String.rb +0 -1
  415. data/lib/UserManual.rb +5 -4
  416. data/lib/VimSyntax.rb +223 -0
  417. data/lib/daemon/Daemon.rb +9 -0
  418. data/lib/daemon/ProcessIntercom.rb +19 -4
  419. data/lib/daemon/ProjectBroker.rb +149 -68
  420. data/lib/daemon/ProjectServer.rb +119 -79
  421. data/lib/daemon/ReportServer.rb +42 -31
  422. data/lib/daemon/WebServer.rb +21 -2
  423. data/lib/deep_copy.rb +1 -1
  424. data/lib/reports/GanttContainer.rb +2 -2
  425. data/lib/reports/GanttLine.rb +2 -3
  426. data/lib/reports/GanttTaskBar.rb +7 -3
  427. data/lib/reports/Report.rb +62 -57
  428. data/lib/reports/ReportBase.rb +6 -4
  429. data/lib/reports/ReportTableCell.rb +13 -14
  430. data/lib/reports/TableReport.rb +2 -1
  431. data/lib/reports/TextReport.rb +3 -0
  432. data/lib/reports/TimeSheetReport.rb +2 -3
  433. data/lib/reports/TjpExportRE.rb +0 -2
  434. data/lib/tj3client.rb +31 -3
  435. data/lib/tj3d.rb +8 -1
  436. data/manual/Day_To_Day_Juggling +2 -95
  437. data/manual/How_To_Contribute +2 -1
  438. data/manual/Rich_Text_Attributes +37 -3
  439. data/manual/Software +203 -0
  440. data/test/MessageChecker.rb +4 -4
  441. data/test/TestSuite/HTML-Reports/Alerts.html +172 -0
  442. data/test/TestSuite/HTML-Reports/CellText.html +758 -0
  443. data/test/TestSuite/HTML-Reports/ColumnPeriods.html +156 -0
  444. data/test/TestSuite/HTML-Reports/IsOngoing.html +172 -0
  445. data/test/TestSuite/HTML-Reports/LogicalFunctions.html +245 -0
  446. data/test/TestSuite/HTML-Reports/Query.html +31 -0
  447. data/test/TestSuite/HTML-Reports/css/tjmanual.css +14 -0
  448. data/test/TestSuite/HTML-Reports/css/tjreport.css +233 -21
  449. data/test/TestSuite/HTML-Reports/depArrows.html +842 -0
  450. data/test/TestSuite/HTML-Reports/scripts/scripts/wz_tooltip.js +1301 -0
  451. data/test/TestSuite/HTML-Reports/scripts/wz_tooltip.js +20 -20
  452. data/test/TestSuite/ReportGenerator/Correct/Alerts.tjp +48 -0
  453. data/test/TestSuite/ReportGenerator/Correct/Macros.tjp +57 -0
  454. data/test/TestSuite/ReportGenerator/Correct/refs/Alerts-1.csv +386 -0
  455. data/test/TestSuite/ReportGenerator/Correct/refs/Macros-1.csv +6 -0
  456. data/test/TestSuite/ReportGenerator/{Correct → Errors}/css/tjmanual.css +0 -0
  457. data/test/TestSuite/ReportGenerator/{Correct → Errors}/css/tjreport.css +0 -0
  458. data/test/TestSuite/ReportGenerator/{Correct → Errors}/icons/details.png +0 -0
  459. data/test/TestSuite/ReportGenerator/{Correct → Errors}/icons/flag-green.png +0 -0
  460. data/test/TestSuite/ReportGenerator/{Correct → Errors}/icons/flag-red.png +0 -0
  461. data/test/TestSuite/ReportGenerator/{Correct → Errors}/icons/flag-yellow.png +0 -0
  462. data/test/TestSuite/ReportGenerator/{Correct → Errors}/icons/resource.png +0 -0
  463. data/test/TestSuite/ReportGenerator/{Correct → Errors}/icons/resourcegroup.png +0 -0
  464. data/test/TestSuite/ReportGenerator/{Correct → Errors}/icons/task.png +0 -0
  465. data/test/TestSuite/ReportGenerator/{Correct → Errors}/icons/taskgroup.png +0 -0
  466. data/test/TestSuite/ReportGenerator/{Correct → Errors}/icons/trend-down.png +0 -0
  467. data/test/TestSuite/ReportGenerator/{Correct → Errors}/icons/trend-flat.png +0 -0
  468. data/test/TestSuite/ReportGenerator/{Correct → Errors}/icons/trend-up.png +0 -0
  469. data/test/TestSuite/ReportGenerator/Errors/rtp_report_recursion.html +26 -0
  470. data/test/TestSuite/ReportGenerator/{Correct → Errors}/scripts/wz_tooltip.js +0 -0
  471. data/test/TestSuite/Scheduler/Correct/Allocate.html +3210 -0
  472. data/test/TestSuite/Scheduler/Correct/Allocate.tjp +19 -0
  473. data/test/TestSuite/Scheduler/Correct/Container.html +22 -22
  474. data/test/TestSuite/Scheduler/Correct/Limits.html +4964 -0
  475. data/test/TestSuite/Scheduler/Correct/Shift.html +1707 -417
  476. data/test/TestSuite/Scheduler/Correct/Shift2.html +9 -9
  477. data/test/TestSuite/Scheduler/Correct/css/tjreport.css +6 -2
  478. data/test/TestSuite/Scheduler/Errors/css/tjmanual.css +66 -0
  479. data/test/TestSuite/Scheduler/Errors/css/tjreport.css +407 -0
  480. data/test/TestSuite/Scheduler/Errors/icons/details.png +0 -0
  481. data/test/TestSuite/Scheduler/Errors/icons/flag-green.png +0 -0
  482. data/test/TestSuite/Scheduler/Errors/icons/flag-red.png +0 -0
  483. data/test/TestSuite/Scheduler/Errors/icons/flag-yellow.png +0 -0
  484. data/test/TestSuite/Scheduler/Errors/icons/resource.png +0 -0
  485. data/test/TestSuite/Scheduler/Errors/icons/resourcegroup.png +0 -0
  486. data/test/TestSuite/Scheduler/Errors/icons/task.png +0 -0
  487. data/test/TestSuite/Scheduler/Errors/icons/taskgroup.png +0 -0
  488. data/test/TestSuite/Scheduler/Errors/icons/trend-down.png +0 -0
  489. data/test/TestSuite/Scheduler/Errors/icons/trend-flat.png +0 -0
  490. data/test/TestSuite/Scheduler/Errors/icons/trend-up.png +0 -0
  491. data/test/TestSuite/Scheduler/Errors/loop_detected_1.tjp +1 -1
  492. data/test/TestSuite/Scheduler/Errors/loop_detected_10.tjp +1 -1
  493. data/test/TestSuite/Scheduler/Errors/loop_detected_11.tjp +1 -1
  494. data/test/TestSuite/Scheduler/Errors/loop_detected_12.tjp +1 -1
  495. data/test/TestSuite/Scheduler/Errors/loop_detected_13.tjp +1 -1
  496. data/test/TestSuite/Scheduler/Errors/loop_detected_14.tjp +1 -1
  497. data/test/TestSuite/Scheduler/Errors/loop_detected_2.tjp +1 -1
  498. data/test/TestSuite/Scheduler/Errors/loop_detected_3.tjp +1 -1
  499. data/test/TestSuite/Scheduler/Errors/loop_detected_4.tjp +1 -1
  500. data/test/TestSuite/Scheduler/Errors/loop_detected_5.tjp +1 -1
  501. data/test/TestSuite/Scheduler/Errors/loop_detected_6.tjp +1 -1
  502. data/test/TestSuite/Scheduler/Errors/loop_detected_7.tjp +1 -1
  503. data/test/TestSuite/Scheduler/Errors/loop_detected_8.tjp +1 -1
  504. data/test/TestSuite/Scheduler/Errors/loop_detected_9.tjp +1 -1
  505. data/test/TestSuite/Scheduler/Errors/scripts/wz_tooltip.js +1301 -0
  506. data/test/TestSuite/Scheduler/Errors/task_pred_before.tjp +11 -0
  507. data/test/TestSuite/Scheduler/Errors/task_pred_before_gd.tjp +11 -0
  508. data/test/TestSuite/Scheduler/Errors/task_pred_before_gl.tjp +11 -0
  509. data/test/TestSuite/Scheduler/Errors/task_succ_after.tjp +12 -0
  510. data/test/TestSuite/Scheduler/Errors/task_succ_after_gd.tjp +12 -0
  511. data/test/TestSuite/Scheduler/Errors/task_succ_after_gl.tjp +12 -0
  512. data/test/TestSuite/StatusSheets/dev2.tji +22 -0
  513. data/test/TestSuite/StatusSheets/resrep.tji +7 -0
  514. data/test/TestSuite/StatusSheets/run +6 -4
  515. data/test/TestSuite/StatusSheets/tj3d.log +312 -0
  516. data/test/TestSuite/Syntax/Correct/Managers.html +263 -0
  517. data/test/TestSuite/Syntax/Correct/tutorial.tjp +1 -2
  518. data/test/TestSuite/Syntax/Errors/empty.tjp +1 -1
  519. data/test/TestSuite/Syntax/Errors/macro_stack_overflow.tjp +1 -1
  520. data/test/TestSuite/TimeSheets/acceptable_intervals +1 -0
  521. data/test/TestSuite/TimeSheets/resrep.tji +7 -0
  522. data/test/TestSuite/TimeSheets/run +6 -5
  523. data/test/TestSuite/TimeSheets/statussheets.log +1 -0
  524. data/test/TestSuite/TimeSheets/ts.tji +351 -0
  525. data/test/TestSuite/TimeSheets/tsdef.tji +2 -0
  526. data/test/test_PropertySet.rb +2 -2
  527. data/test/test_RichText.rb +178 -387
  528. data/test/test_SimpleQueryExpander.rb +55 -0
  529. data/test/test_deep_copy.rb +2 -2
  530. metadata +854 -834
  531. data/lib/MacroParser.rb +0 -77
  532. data/lib/Message.rb +0 -56
  533. data/lib/ruby-signal-bug.rb +0 -43
  534. data/test/TestSuite/HTML-Reports/TimeSheet.html +0 -79
  535. data/test/TestSuite/HTML-Reports/reference.html +0 -51
  536. data/test/TestSuite/ReportGenerator/Correct/Journal.html +0 -63
  537. data/test/TestSuite/ReportGenerator/Correct/LogicalFunctions2.csv +0 -3
  538. data/test/TestSuite/ReportGenerator/Correct/opennodes.csv +0 -2
  539. data/test/TestSuite/ReportGenerator/Correct/opennodes.tjp +0 -26
  540. data/test/TestSuite/ReportGenerator/Correct/refs/opennodes-1.csv +0 -2
  541. data/test/TestSuite/Scheduler/Correct/Booking2.html +0 -603
  542. data/test/TestSuite/Scheduler/Correct/TimeSheet2.html +0 -108
  543. data/test/TestSuite/StatusSheetTemplates/project.tji +0 -35
  544. data/test/TestSuite/StatusSheetTemplates/project.tjp +0 -56
  545. data/test/TestSuite/Syntax/Correct/ResourcePrefix.html +0 -32
@@ -169,6 +169,10 @@
169
169
 
170
170
  <li><a href="../TaskJuggler/DurationAttribute.html">TaskJuggler::DurationAttribute</a></li>
171
171
 
172
+ <li><a href="../TaskJuggler/FileList.html">TaskJuggler::FileList</a></li>
173
+
174
+ <li><a href="../TaskJuggler/FileRecord.html">TaskJuggler::FileRecord</a></li>
175
+
172
176
  <li><a href="../TaskJuggler/FixnumAttribute.html">TaskJuggler::FixnumAttribute</a></li>
173
177
 
174
178
  <li><a href="../TaskJuggler/FlagListAttribute.html">TaskJuggler::FlagListAttribute</a></li>
@@ -241,8 +245,6 @@
241
245
 
242
246
  <li><a href="../TaskJuggler/Macro.html">TaskJuggler::Macro</a></li>
243
247
 
244
- <li><a href="../TaskJuggler/MacroParser.html">TaskJuggler::MacroParser</a></li>
245
-
246
248
  <li><a href="../TaskJuggler/MacroTable.html">TaskJuggler::MacroTable</a></li>
247
249
 
248
250
  <li><a href="../TaskJuggler/ManagerResponsibilities.html">TaskJuggler::ManagerResponsibilities</a></li>
@@ -307,6 +309,8 @@
307
309
 
308
310
  <li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
309
311
 
312
+ <li><a href="../TaskJuggler/RTFWithQuerySupport.html">TaskJuggler::RTFWithQuerySupport</a></li>
313
+
310
314
  <li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
311
315
 
312
316
  <li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
@@ -353,8 +357,6 @@
353
357
 
354
358
  <li><a href="../TaskJuggler/RichTextElement.html">TaskJuggler::RichTextElement</a></li>
355
359
 
356
- <li><a href="../TaskJuggler/RichTextException.html">TaskJuggler::RichTextException</a></li>
357
-
358
360
  <li><a href="../TaskJuggler/RichTextFunctionExample.html">TaskJuggler::RichTextFunctionExample</a></li>
359
361
 
360
362
  <li><a href="../TaskJuggler/RichTextFunctionHandler.html">TaskJuggler::RichTextFunctionHandler</a></li>
@@ -395,6 +397,8 @@
395
397
 
396
398
  <li><a href="../TaskJuggler/ShiftScenario.html">TaskJuggler::ShiftScenario</a></li>
397
399
 
400
+ <li><a href="../TaskJuggler/SimpleQueryExpander.html">TaskJuggler::SimpleQueryExpander</a></li>
401
+
398
402
  <li><a href="../TaskJuggler/SortListAttribute.html">TaskJuggler::SortListAttribute</a></li>
399
403
 
400
404
  <li><a href="../TaskJuggler/SourceFileInfo.html">TaskJuggler::SourceFileInfo</a></li>
@@ -505,6 +509,8 @@
505
509
 
506
510
  <li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
507
511
 
512
+ <li><a href="../TaskJuggler/VimSyntax.html">TaskJuggler::VimSyntax</a></li>
513
+
508
514
  <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
509
515
 
510
516
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
@@ -177,6 +177,10 @@
177
177
 
178
178
  <li><a href="../TaskJuggler/DurationAttribute.html">TaskJuggler::DurationAttribute</a></li>
179
179
 
180
+ <li><a href="../TaskJuggler/FileList.html">TaskJuggler::FileList</a></li>
181
+
182
+ <li><a href="../TaskJuggler/FileRecord.html">TaskJuggler::FileRecord</a></li>
183
+
180
184
  <li><a href="../TaskJuggler/FixnumAttribute.html">TaskJuggler::FixnumAttribute</a></li>
181
185
 
182
186
  <li><a href="../TaskJuggler/FlagListAttribute.html">TaskJuggler::FlagListAttribute</a></li>
@@ -249,8 +253,6 @@
249
253
 
250
254
  <li><a href="../TaskJuggler/Macro.html">TaskJuggler::Macro</a></li>
251
255
 
252
- <li><a href="../TaskJuggler/MacroParser.html">TaskJuggler::MacroParser</a></li>
253
-
254
256
  <li><a href="../TaskJuggler/MacroTable.html">TaskJuggler::MacroTable</a></li>
255
257
 
256
258
  <li><a href="../TaskJuggler/ManagerResponsibilities.html">TaskJuggler::ManagerResponsibilities</a></li>
@@ -315,6 +317,8 @@
315
317
 
316
318
  <li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
317
319
 
320
+ <li><a href="../TaskJuggler/RTFWithQuerySupport.html">TaskJuggler::RTFWithQuerySupport</a></li>
321
+
318
322
  <li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
319
323
 
320
324
  <li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
@@ -361,8 +365,6 @@
361
365
 
362
366
  <li><a href="../TaskJuggler/RichTextElement.html">TaskJuggler::RichTextElement</a></li>
363
367
 
364
- <li><a href="../TaskJuggler/RichTextException.html">TaskJuggler::RichTextException</a></li>
365
-
366
368
  <li><a href="../TaskJuggler/RichTextFunctionExample.html">TaskJuggler::RichTextFunctionExample</a></li>
367
369
 
368
370
  <li><a href="../TaskJuggler/RichTextFunctionHandler.html">TaskJuggler::RichTextFunctionHandler</a></li>
@@ -403,6 +405,8 @@
403
405
 
404
406
  <li><a href="../TaskJuggler/ShiftScenario.html">TaskJuggler::ShiftScenario</a></li>
405
407
 
408
+ <li><a href="../TaskJuggler/SimpleQueryExpander.html">TaskJuggler::SimpleQueryExpander</a></li>
409
+
406
410
  <li><a href="../TaskJuggler/SortListAttribute.html">TaskJuggler::SortListAttribute</a></li>
407
411
 
408
412
  <li><a href="../TaskJuggler/SourceFileInfo.html">TaskJuggler::SourceFileInfo</a></li>
@@ -513,6 +517,8 @@
513
517
 
514
518
  <li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
515
519
 
520
+ <li><a href="../TaskJuggler/VimSyntax.html">TaskJuggler::VimSyntax</a></li>
521
+
516
522
  <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
517
523
 
518
524
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
@@ -173,6 +173,10 @@
173
173
 
174
174
  <li><a href="../TaskJuggler/DurationAttribute.html">TaskJuggler::DurationAttribute</a></li>
175
175
 
176
+ <li><a href="../TaskJuggler/FileList.html">TaskJuggler::FileList</a></li>
177
+
178
+ <li><a href="../TaskJuggler/FileRecord.html">TaskJuggler::FileRecord</a></li>
179
+
176
180
  <li><a href="../TaskJuggler/FixnumAttribute.html">TaskJuggler::FixnumAttribute</a></li>
177
181
 
178
182
  <li><a href="../TaskJuggler/FlagListAttribute.html">TaskJuggler::FlagListAttribute</a></li>
@@ -245,8 +249,6 @@
245
249
 
246
250
  <li><a href="../TaskJuggler/Macro.html">TaskJuggler::Macro</a></li>
247
251
 
248
- <li><a href="../TaskJuggler/MacroParser.html">TaskJuggler::MacroParser</a></li>
249
-
250
252
  <li><a href="../TaskJuggler/MacroTable.html">TaskJuggler::MacroTable</a></li>
251
253
 
252
254
  <li><a href="../TaskJuggler/ManagerResponsibilities.html">TaskJuggler::ManagerResponsibilities</a></li>
@@ -311,6 +313,8 @@
311
313
 
312
314
  <li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
313
315
 
316
+ <li><a href="../TaskJuggler/RTFWithQuerySupport.html">TaskJuggler::RTFWithQuerySupport</a></li>
317
+
314
318
  <li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
315
319
 
316
320
  <li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
@@ -357,8 +361,6 @@
357
361
 
358
362
  <li><a href="../TaskJuggler/RichTextElement.html">TaskJuggler::RichTextElement</a></li>
359
363
 
360
- <li><a href="../TaskJuggler/RichTextException.html">TaskJuggler::RichTextException</a></li>
361
-
362
364
  <li><a href="../TaskJuggler/RichTextFunctionExample.html">TaskJuggler::RichTextFunctionExample</a></li>
363
365
 
364
366
  <li><a href="../TaskJuggler/RichTextFunctionHandler.html">TaskJuggler::RichTextFunctionHandler</a></li>
@@ -399,6 +401,8 @@
399
401
 
400
402
  <li><a href="../TaskJuggler/ShiftScenario.html">TaskJuggler::ShiftScenario</a></li>
401
403
 
404
+ <li><a href="../TaskJuggler/SimpleQueryExpander.html">TaskJuggler::SimpleQueryExpander</a></li>
405
+
402
406
  <li><a href="../TaskJuggler/SortListAttribute.html">TaskJuggler::SortListAttribute</a></li>
403
407
 
404
408
  <li><a href="../TaskJuggler/SourceFileInfo.html">TaskJuggler::SourceFileInfo</a></li>
@@ -509,6 +513,8 @@
509
513
 
510
514
  <li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
511
515
 
516
+ <li><a href="../TaskJuggler/VimSyntax.html">TaskJuggler::VimSyntax</a></li>
517
+
512
518
  <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
513
519
 
514
520
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
@@ -173,6 +173,10 @@
173
173
 
174
174
  <li><a href="../TaskJuggler/DurationAttribute.html">TaskJuggler::DurationAttribute</a></li>
175
175
 
176
+ <li><a href="../TaskJuggler/FileList.html">TaskJuggler::FileList</a></li>
177
+
178
+ <li><a href="../TaskJuggler/FileRecord.html">TaskJuggler::FileRecord</a></li>
179
+
176
180
  <li><a href="../TaskJuggler/FixnumAttribute.html">TaskJuggler::FixnumAttribute</a></li>
177
181
 
178
182
  <li><a href="../TaskJuggler/FlagListAttribute.html">TaskJuggler::FlagListAttribute</a></li>
@@ -245,8 +249,6 @@
245
249
 
246
250
  <li><a href="../TaskJuggler/Macro.html">TaskJuggler::Macro</a></li>
247
251
 
248
- <li><a href="../TaskJuggler/MacroParser.html">TaskJuggler::MacroParser</a></li>
249
-
250
252
  <li><a href="../TaskJuggler/MacroTable.html">TaskJuggler::MacroTable</a></li>
251
253
 
252
254
  <li><a href="../TaskJuggler/ManagerResponsibilities.html">TaskJuggler::ManagerResponsibilities</a></li>
@@ -311,6 +313,8 @@
311
313
 
312
314
  <li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
313
315
 
316
+ <li><a href="../TaskJuggler/RTFWithQuerySupport.html">TaskJuggler::RTFWithQuerySupport</a></li>
317
+
314
318
  <li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
315
319
 
316
320
  <li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
@@ -357,8 +361,6 @@
357
361
 
358
362
  <li><a href="../TaskJuggler/RichTextElement.html">TaskJuggler::RichTextElement</a></li>
359
363
 
360
- <li><a href="../TaskJuggler/RichTextException.html">TaskJuggler::RichTextException</a></li>
361
-
362
364
  <li><a href="../TaskJuggler/RichTextFunctionExample.html">TaskJuggler::RichTextFunctionExample</a></li>
363
365
 
364
366
  <li><a href="../TaskJuggler/RichTextFunctionHandler.html">TaskJuggler::RichTextFunctionHandler</a></li>
@@ -399,6 +401,8 @@
399
401
 
400
402
  <li><a href="../TaskJuggler/ShiftScenario.html">TaskJuggler::ShiftScenario</a></li>
401
403
 
404
+ <li><a href="../TaskJuggler/SimpleQueryExpander.html">TaskJuggler::SimpleQueryExpander</a></li>
405
+
402
406
  <li><a href="../TaskJuggler/SortListAttribute.html">TaskJuggler::SortListAttribute</a></li>
403
407
 
404
408
  <li><a href="../TaskJuggler/SourceFileInfo.html">TaskJuggler::SourceFileInfo</a></li>
@@ -509,6 +513,8 @@
509
513
 
510
514
  <li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
511
515
 
516
+ <li><a href="../TaskJuggler/VimSyntax.html">TaskJuggler::VimSyntax</a></li>
517
+
512
518
  <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
513
519
 
514
520
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
@@ -748,43 +754,41 @@ Create a dashboard-like list of all task that have a current alert status.
748
754
  <div class="method-source-code"
749
755
  id="dashboard-source">
750
756
  <pre>
751
- <span class="ruby-comment cmt"># File lib/Resource.rb, line 143</span>
752
- 143: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dashboard</span>(<span class="ruby-identifier">query</span>)
753
- 144: <span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-ivar">@project</span>[<span class="ruby-value str">'trackingScenarioIdx'</span>]
754
- 145: <span class="ruby-identifier">taskList</span> = []
755
- 146: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
756
- 147: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>[<span class="ruby-value str">'responsible'</span>, <span class="ruby-identifier">scenarioIdx</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-keyword kw">self</span>) <span class="ruby-operator">&amp;&amp;</span>
757
- 148: <span class="ruby-operator">!</span><span class="ruby-ivar">@project</span>[<span class="ruby-value str">'journal'</span>].<span class="ruby-identifier">currentEntries</span>(<span class="ruby-identifier">query</span>.<span class="ruby-identifier">end</span>, <span class="ruby-identifier">task</span>,
758
- 149: <span class="ruby-value">0</span>, <span class="ruby-identifier">query</span>.<span class="ruby-identifier">start</span>).<span class="ruby-identifier">empty?</span>
759
- 150: <span class="ruby-identifier">taskList</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">task</span>
760
- 151: <span class="ruby-keyword kw">end</span>
761
- 152: <span class="ruby-keyword kw">end</span>
762
- 153:
763
- 154: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">empty?</span>
764
- 155: <span class="ruby-identifier">rText</span> = <span class="ruby-node">&quot;We have no current status for any task that #{name} &quot;</span> <span class="ruby-operator">+</span>
765
- 156: <span class="ruby-value str">&quot;is responsible for.&quot;</span>
766
- 157: <span class="ruby-keyword kw">else</span>
767
- 158: <span class="ruby-comment cmt"># The components of the message are either UTF-8 text or RichText. For</span>
768
- 159: <span class="ruby-comment cmt"># the RichText components, we use the originally provided markup since</span>
769
- 160: <span class="ruby-comment cmt"># we compose the result as RichText markup first.</span>
770
- 161: <span class="ruby-identifier">rText</span> = <span class="ruby-value str">''</span>
771
- 162:
772
- 163: <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
773
- 164: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;== &lt;nowiki&gt;[#{task.query_alert(query)}] Task: &quot;</span> <span class="ruby-operator">+</span>
774
- 165: <span class="ruby-node">&quot;#{task.name}&lt;/nowiki&gt; (#{task.fullId}) ==\n\n&quot;</span>
775
- 166: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">query_journalmessages</span>(<span class="ruby-identifier">query</span>).<span class="ruby-identifier">richText</span>.<span class="ruby-identifier">inputText</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;\n\n&quot;</span>
776
- 167: <span class="ruby-keyword kw">end</span>
777
- 168: <span class="ruby-keyword kw">end</span>
778
- 169:
779
- 170: <span class="ruby-comment cmt"># Now convert the RichText markup String into RichTextIntermediate</span>
780
- 171: <span class="ruby-comment cmt"># format.</span>
781
- 172: <span class="ruby-keyword kw">begin</span>
782
- 173: <span class="ruby-identifier">rti</span> = <span class="ruby-constant">RichText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">rText</span>, <span class="ruby-constant">RTFHandlers</span>.<span class="ruby-identifier">create</span>(<span class="ruby-ivar">@project</span>)).
783
- 174: <span class="ruby-identifier">generateIntermediateFormat</span>
784
- 175: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">RichTextException</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">msg</span>
785
- 176: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-value str">&quot;Error while processing Rich Text\n&quot;</span> <span class="ruby-operator">+</span>
786
- 177: <span class="ruby-node">&quot;Line #{msg.lineNo}: #{msg.text}\n&quot;</span> <span class="ruby-operator">+</span>
787
- 178: <span class="ruby-node">&quot;#{msg.line}&quot;</span>
757
+ <span class="ruby-comment cmt"># File lib/Resource.rb, line 145</span>
758
+ 145: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">dashboard</span>(<span class="ruby-identifier">query</span>)
759
+ 146: <span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-ivar">@project</span>[<span class="ruby-value str">'trackingScenarioIdx'</span>]
760
+ 147: <span class="ruby-identifier">taskList</span> = []
761
+ 148: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
762
+ 149: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>[<span class="ruby-value str">'responsible'</span>, <span class="ruby-identifier">scenarioIdx</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-keyword kw">self</span>) <span class="ruby-operator">&amp;&amp;</span>
763
+ 150: <span class="ruby-operator">!</span><span class="ruby-ivar">@project</span>[<span class="ruby-value str">'journal'</span>].<span class="ruby-identifier">currentEntries</span>(<span class="ruby-identifier">query</span>.<span class="ruby-identifier">end</span>, <span class="ruby-identifier">task</span>,
764
+ 151: <span class="ruby-value">0</span>, <span class="ruby-identifier">query</span>.<span class="ruby-identifier">start</span>).<span class="ruby-identifier">empty?</span>
765
+ 152: <span class="ruby-identifier">taskList</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">task</span>
766
+ 153: <span class="ruby-keyword kw">end</span>
767
+ 154: <span class="ruby-keyword kw">end</span>
768
+ 155:
769
+ 156: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">empty?</span>
770
+ 157: <span class="ruby-identifier">rText</span> = <span class="ruby-node">&quot;We have no current status for any task that #{name} &quot;</span> <span class="ruby-operator">+</span>
771
+ 158: <span class="ruby-value str">&quot;is responsible for.&quot;</span>
772
+ 159: <span class="ruby-keyword kw">else</span>
773
+ 160: <span class="ruby-comment cmt"># The components of the message are either UTF-8 text or RichText. For</span>
774
+ 161: <span class="ruby-comment cmt"># the RichText components, we use the originally provided markup since</span>
775
+ 162: <span class="ruby-comment cmt"># we compose the result as RichText markup first.</span>
776
+ 163: <span class="ruby-identifier">rText</span> = <span class="ruby-value str">''</span>
777
+ 164:
778
+ 165: <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
779
+ 166: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;=== &lt;nowiki&gt;[#{task.query_alert(query)}] Task: &quot;</span> <span class="ruby-operator">+</span>
780
+ 167: <span class="ruby-node">&quot;#{task.name}&lt;/nowiki&gt; (#{task.fullId}) ===\n\n&quot;</span>
781
+ 168: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">query_journalmessages</span>(<span class="ruby-identifier">query</span>).<span class="ruby-identifier">richText</span>.<span class="ruby-identifier">inputText</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;\n\n&quot;</span>
782
+ 169: <span class="ruby-keyword kw">end</span>
783
+ 170: <span class="ruby-keyword kw">end</span>
784
+ 171:
785
+ 172: <span class="ruby-comment cmt"># Now convert the RichText markup String into RichTextIntermediate</span>
786
+ 173: <span class="ruby-comment cmt"># format.</span>
787
+ 174: <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">rti</span> = <span class="ruby-constant">RichText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">rText</span>, <span class="ruby-constant">RTFHandlers</span>.<span class="ruby-identifier">create</span>(<span class="ruby-ivar">@project</span>),
788
+ 175: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">messageHandler</span>).
789
+ 176: <span class="ruby-identifier">generateIntermediateFormat</span>)
790
+ 177: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">messageHandler</span>.<span class="ruby-identifier">warning</span>(
791
+ 178: <span class="ruby-value str">'res_dashboard'</span>, <span class="ruby-value str">'Syntax error in dashboard text'</span>)
788
792
  179: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span>
789
793
  180: <span class="ruby-keyword kw">end</span>
790
794
  181: <span class="ruby-comment cmt"># No section numbers, please!</span>
@@ -843,80 +847,82 @@ href="Query.html">Query</a>.
843
847
  63: (<span class="ruby-identifier">numberOfLevels</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>).<span class="ruby-identifier">downto</span>(<span class="ruby-value">0</span>) <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">level</span><span class="ruby-operator">|</span>
844
848
  64: <span class="ruby-identifier">levelList</span> = <span class="ruby-identifier">listByLevel</span>[<span class="ruby-identifier">level</span>]
845
849
  65: <span class="ruby-identifier">levelRecord</span> = <span class="ruby-ivar">@project</span>[<span class="ruby-value str">'alertLevels'</span>][<span class="ruby-identifier">level</span>]
846
- 66: <span class="ruby-identifier">alertName</span> = <span class="ruby-node">&quot;[[File:icons/flag-#{levelRecord[0]}.png|&quot;</span> <span class="ruby-operator">+</span>
847
- 67: <span class="ruby-node">&quot;alt=[#{levelRecord[1]}]|text-bottom]]&quot;</span>
848
- 68: <span class="ruby-identifier">levelList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
849
- 69: <span class="ruby-identifier">tsRecord</span> = <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">timeSheetRecord</span>
850
- 70:
851
- 71: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">property</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Task</span>)
852
- 72: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;== #{alertName} &lt;nowiki&gt;#{entry.property.name}&lt;/nowiki&gt; &quot;</span><span class="ruby-operator">+</span>
853
- 73: <span class="ruby-node">&quot;(ID: #{entry.property.fullId}) ==\n\n&quot;</span>
854
- 74: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>
855
- 75: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;'''Work:''' #{tsRecord.actualWorkPercent.to_i}% &quot;</span>
856
- 76: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">actualWorkPercent</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">planWorkPercent</span>
857
- 77: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;(#{tsRecord.planWorkPercent.to_i}%) &quot;</span>
858
- 78: <span class="ruby-keyword kw">end</span>
859
- 79: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">remaining</span>
860
- 80: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;'''Remaining:''' #{tsRecord.actualRemaining}d &quot;</span>
861
- 81: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">actualRemaining</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">planRemaining</span>
862
- 82: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;(#{tsRecord.planRemaining}d) &quot;</span>
863
- 83: <span class="ruby-keyword kw">end</span>
864
- 84: <span class="ruby-keyword kw">else</span>
865
- 85: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">&quot;'''End:''' &quot;</span> <span class="ruby-operator">+</span>
866
- 86: <span class="ruby-node">&quot;#{tsRecord.actualEnd.to_s(query.timeFormat)} &quot;</span>
867
- 87: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">actualEnd</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">planEnd</span>
868
- 88: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;(#{tsRecord.planEnd.to_s(query.timeFormat)}) &quot;</span>
869
- 89: <span class="ruby-keyword kw">end</span>
870
- 90: <span class="ruby-keyword kw">end</span>
871
- 91: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">&quot;\n\n&quot;</span>
872
- 92: <span class="ruby-keyword kw">end</span>
873
- 93: <span class="ruby-keyword kw">elsif</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">tsRecord</span> = <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">timeSheetRecord</span>).<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span>
874
- 94: <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">timeSheetRecord</span>.<span class="ruby-identifier">task</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">String</span>)
875
- 95: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;== #{alertName} &lt;nowiki&gt;[New Task] #{tsRecord.name} &quot;</span> <span class="ruby-operator">+</span>
876
- 96: <span class="ruby-value str">&quot;&lt;/nowiki&gt; &quot;</span><span class="ruby-operator">+</span>
877
- 97: <span class="ruby-node">&quot;(ID: #{tsRecord.task}) ==\n\n&quot;</span>
878
- 98: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>
879
- 99: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;'''Work:''' #{tsRecord.actualWorkPercent}% &quot;</span>
880
- 100: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">remaining</span>
881
- 101: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;'''Remaining:''' #{tsRecord.actualRemaining}d &quot;</span>
882
- 102: <span class="ruby-keyword kw">else</span>
883
- 103: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">&quot;'''End:''' &quot;</span> <span class="ruby-operator">+</span>
884
- 104: <span class="ruby-node">&quot;#{tsRecord.actualEnd.to_s(query.timeFormat)} &quot;</span>
885
- 105: <span class="ruby-keyword kw">end</span>
886
- 106: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">&quot;\n\n&quot;</span>
887
- 107: <span class="ruby-keyword kw">end</span>
888
- 108: <span class="ruby-keyword kw">else</span>
889
- 109: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;== #{alertName} Personal Notes ==\n\n&quot;</span>
890
- 110: <span class="ruby-keyword kw">end</span>
891
- 111: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">headline</span>.<span class="ruby-identifier">empty?</span>
892
- 112: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;'''&lt;nowiki&gt;#{entry.headline}&lt;/nowiki&gt;'''\n\n&quot;</span>
893
- 113: <span class="ruby-keyword kw">end</span>
894
- 114: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">summary</span>
895
- 115: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">summary</span>.<span class="ruby-identifier">richText</span>.<span class="ruby-identifier">inputText</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;\n\n&quot;</span>
896
- 116: <span class="ruby-keyword kw">end</span>
897
- 117: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">longVersion</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">details</span>
898
- 118: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">details</span>.<span class="ruby-identifier">richText</span>.<span class="ruby-identifier">inputText</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;\n\n&quot;</span>
899
- 119: <span class="ruby-keyword kw">end</span>
900
- 120: <span class="ruby-keyword kw">end</span>
901
- 121: <span class="ruby-keyword kw">end</span>
902
- 122:
903
- 123: <span class="ruby-comment cmt"># Now convert the RichText markup String into RichTextIntermediate</span>
904
- 124: <span class="ruby-comment cmt"># format.</span>
905
- 125: <span class="ruby-keyword kw">begin</span>
906
- 126: <span class="ruby-identifier">rti</span> = <span class="ruby-constant">RichText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">rText</span>, <span class="ruby-constant">RTFHandlers</span>.<span class="ruby-identifier">create</span>(<span class="ruby-ivar">@project</span>)).
907
- 127: <span class="ruby-identifier">generateIntermediateFormat</span>
908
- 128: <span class="ruby-keyword kw">rescue</span> <span class="ruby-constant">RichTextException</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">msg</span>
909
- 129: <span class="ruby-identifier">$stderr</span>.<span class="ruby-identifier">puts</span> <span class="ruby-value str">&quot;Error while processing Rich Text\n&quot;</span> <span class="ruby-operator">+</span>
910
- 130: <span class="ruby-node">&quot;Line #{msg.lineNo}: #{msg.text}\n&quot;</span> <span class="ruby-operator">+</span>
911
- 131: <span class="ruby-node">&quot;#{msg.line}&quot;</span>
912
- 132: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span>
913
- 133: <span class="ruby-keyword kw">end</span>
914
- 134: <span class="ruby-comment cmt"># No section numbers, please!</span>
915
- 135: <span class="ruby-identifier">rti</span>.<span class="ruby-identifier">sectionNumbers</span> = <span class="ruby-keyword kw">false</span>
916
- 136: <span class="ruby-comment cmt"># We use a special class to allow CSS formating.</span>
917
- 137: <span class="ruby-identifier">rti</span>.<span class="ruby-identifier">cssClass</span> = <span class="ruby-value str">'tj_journal'</span>
918
- 138: <span class="ruby-identifier">query</span>.<span class="ruby-identifier">rti</span> = <span class="ruby-identifier">rti</span>
919
- 139: <span class="ruby-keyword kw">end</span></pre>
850
+ 66: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">query</span>.<span class="ruby-identifier">selfContained</span>
851
+ 67: <span class="ruby-identifier">alertName</span> = <span class="ruby-node">&quot;&lt;nowiki&gt;[#{levelRecord[1]}]&lt;/nowiki&gt;&quot;</span>
852
+ 68: <span class="ruby-keyword kw">else</span>
853
+ 69: <span class="ruby-identifier">alertName</span> = <span class="ruby-node">&quot;[[File:icons/flag-#{levelRecord[0]}.png|&quot;</span> <span class="ruby-operator">+</span>
854
+ 70: <span class="ruby-node">&quot;alt=[#{levelRecord[1]}]|text-bottom]]&quot;</span>
855
+ 71: <span class="ruby-keyword kw">end</span>
856
+ 72: <span class="ruby-identifier">levelList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">entry</span><span class="ruby-operator">|</span>
857
+ 73: <span class="ruby-identifier">tsRecord</span> = <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">timeSheetRecord</span>
858
+ 74:
859
+ 75: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">property</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Task</span>)
860
+ 76: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;=== #{alertName} &lt;nowiki&gt;#{entry.property.name}&quot;</span> <span class="ruby-operator">+</span>
861
+ 77: <span class="ruby-node">&quot;&lt;/nowiki&gt; (ID: #{entry.property.fullId}) ===\n\n&quot;</span>
862
+ 78: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>
863
+ 79: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;'''Work:''' #{tsRecord.actualWorkPercent.to_i}% &quot;</span>
864
+ 80: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">actualWorkPercent</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">planWorkPercent</span>
865
+ 81: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;(#{tsRecord.planWorkPercent.to_i}%) &quot;</span>
866
+ 82: <span class="ruby-keyword kw">end</span>
867
+ 83: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">remaining</span>
868
+ 84: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;'''Remaining:''' #{tsRecord.actualRemaining}d &quot;</span>
869
+ 85: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">actualRemaining</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">planRemaining</span>
870
+ 86: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;(#{tsRecord.planRemaining}d) &quot;</span>
871
+ 87: <span class="ruby-keyword kw">end</span>
872
+ 88: <span class="ruby-keyword kw">else</span>
873
+ 89: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">&quot;'''End:''' &quot;</span> <span class="ruby-operator">+</span>
874
+ 90: <span class="ruby-node">&quot;#{tsRecord.actualEnd.to_s(query.timeFormat)} &quot;</span>
875
+ 91: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">actualEnd</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">planEnd</span>
876
+ 92: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;(#{tsRecord.planEnd.to_s(query.timeFormat)}) &quot;</span>
877
+ 93: <span class="ruby-keyword kw">end</span>
878
+ 94: <span class="ruby-keyword kw">end</span>
879
+ 95: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">&quot;\n\n&quot;</span>
880
+ 96: <span class="ruby-keyword kw">end</span>
881
+ 97: <span class="ruby-keyword kw">elsif</span> <span class="ruby-operator">!</span>(<span class="ruby-identifier">tsRecord</span> = <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">timeSheetRecord</span>).<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span>
882
+ 98: <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">timeSheetRecord</span>.<span class="ruby-identifier">task</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">String</span>)
883
+ 99: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;== #{alertName} &lt;nowiki&gt;[New Task] #{tsRecord.name} &quot;</span> <span class="ruby-operator">+</span>
884
+ 100: <span class="ruby-value str">&quot;&lt;/nowiki&gt; &quot;</span><span class="ruby-operator">+</span>
885
+ 101: <span class="ruby-node">&quot;(ID: #{tsRecord.task}) ==\n\n&quot;</span>
886
+ 102: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>
887
+ 103: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;'''Work:''' #{tsRecord.actualWorkPercent}% &quot;</span>
888
+ 104: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tsRecord</span>.<span class="ruby-identifier">remaining</span>
889
+ 105: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;'''Remaining:''' #{tsRecord.actualRemaining}d &quot;</span>
890
+ 106: <span class="ruby-keyword kw">else</span>
891
+ 107: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">&quot;'''End:''' &quot;</span> <span class="ruby-operator">+</span>
892
+ 108: <span class="ruby-node">&quot;#{tsRecord.actualEnd.to_s(query.timeFormat)} &quot;</span>
893
+ 109: <span class="ruby-keyword kw">end</span>
894
+ 110: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">&quot;\n\n&quot;</span>
895
+ 111: <span class="ruby-keyword kw">end</span>
896
+ 112: <span class="ruby-keyword kw">else</span>
897
+ 113: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;== #{alertName} Personal Notes ==\n\n&quot;</span>
898
+ 114: <span class="ruby-keyword kw">end</span>
899
+ 115: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">headline</span>.<span class="ruby-identifier">empty?</span>
900
+ 116: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;'''&lt;nowiki&gt;#{entry.headline}&lt;/nowiki&gt;'''\n\n&quot;</span>
901
+ 117: <span class="ruby-keyword kw">end</span>
902
+ 118: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">summary</span>
903
+ 119: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">summary</span>.<span class="ruby-identifier">richText</span>.<span class="ruby-identifier">inputText</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;\n\n&quot;</span>
904
+ 120: <span class="ruby-keyword kw">end</span>
905
+ 121: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">longVersion</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">details</span>
906
+ 122: <span class="ruby-identifier">rText</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">entry</span>.<span class="ruby-identifier">details</span>.<span class="ruby-identifier">richText</span>.<span class="ruby-identifier">inputText</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;\n\n&quot;</span>
907
+ 123: <span class="ruby-keyword kw">end</span>
908
+ 124: <span class="ruby-keyword kw">end</span>
909
+ 125: <span class="ruby-keyword kw">end</span>
910
+ 126:
911
+ 127: <span class="ruby-comment cmt"># Now convert the RichText markup String into RichTextIntermediate</span>
912
+ 128: <span class="ruby-comment cmt"># format.</span>
913
+ 129: <span class="ruby-keyword kw">unless</span> (<span class="ruby-identifier">rti</span> = <span class="ruby-constant">RichText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">rText</span>, <span class="ruby-constant">RTFHandlers</span>.<span class="ruby-identifier">create</span>(<span class="ruby-ivar">@project</span>),
914
+ 130: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">messageHandler</span>).
915
+ 131: <span class="ruby-identifier">generateIntermediateFormat</span>)
916
+ 132: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">messageHandler</span>.<span class="ruby-identifier">warning</span>(
917
+ 133: <span class="ruby-value str">'res_journal_text'</span>, <span class="ruby-value str">'Syntax error in journal text'</span>)
918
+ 134: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span>
919
+ 135: <span class="ruby-keyword kw">end</span>
920
+ 136: <span class="ruby-comment cmt"># No section numbers, please!</span>
921
+ 137: <span class="ruby-identifier">rti</span>.<span class="ruby-identifier">sectionNumbers</span> = <span class="ruby-keyword kw">false</span>
922
+ 138: <span class="ruby-comment cmt"># We use a special class to allow CSS formating.</span>
923
+ 139: <span class="ruby-identifier">rti</span>.<span class="ruby-identifier">cssClass</span> = <span class="ruby-value str">'tj_journal'</span>
924
+ 140: <span class="ruby-identifier">query</span>.<span class="ruby-identifier">rti</span> = <span class="ruby-identifier">rti</span>
925
+ 141: <span class="ruby-keyword kw">end</span></pre>
920
926
  </div>
921
927
 
922
928
  </div>
@@ -171,6 +171,10 @@
171
171
 
172
172
  <li><a href="../TaskJuggler/DurationAttribute.html">TaskJuggler::DurationAttribute</a></li>
173
173
 
174
+ <li><a href="../TaskJuggler/FileList.html">TaskJuggler::FileList</a></li>
175
+
176
+ <li><a href="../TaskJuggler/FileRecord.html">TaskJuggler::FileRecord</a></li>
177
+
174
178
  <li><a href="../TaskJuggler/FixnumAttribute.html">TaskJuggler::FixnumAttribute</a></li>
175
179
 
176
180
  <li><a href="../TaskJuggler/FlagListAttribute.html">TaskJuggler::FlagListAttribute</a></li>
@@ -243,8 +247,6 @@
243
247
 
244
248
  <li><a href="../TaskJuggler/Macro.html">TaskJuggler::Macro</a></li>
245
249
 
246
- <li><a href="../TaskJuggler/MacroParser.html">TaskJuggler::MacroParser</a></li>
247
-
248
250
  <li><a href="../TaskJuggler/MacroTable.html">TaskJuggler::MacroTable</a></li>
249
251
 
250
252
  <li><a href="../TaskJuggler/ManagerResponsibilities.html">TaskJuggler::ManagerResponsibilities</a></li>
@@ -309,6 +311,8 @@
309
311
 
310
312
  <li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
311
313
 
314
+ <li><a href="../TaskJuggler/RTFWithQuerySupport.html">TaskJuggler::RTFWithQuerySupport</a></li>
315
+
312
316
  <li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
313
317
 
314
318
  <li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
@@ -355,8 +359,6 @@
355
359
 
356
360
  <li><a href="../TaskJuggler/RichTextElement.html">TaskJuggler::RichTextElement</a></li>
357
361
 
358
- <li><a href="../TaskJuggler/RichTextException.html">TaskJuggler::RichTextException</a></li>
359
-
360
362
  <li><a href="../TaskJuggler/RichTextFunctionExample.html">TaskJuggler::RichTextFunctionExample</a></li>
361
363
 
362
364
  <li><a href="../TaskJuggler/RichTextFunctionHandler.html">TaskJuggler::RichTextFunctionHandler</a></li>
@@ -397,6 +399,8 @@
397
399
 
398
400
  <li><a href="../TaskJuggler/ShiftScenario.html">TaskJuggler::ShiftScenario</a></li>
399
401
 
402
+ <li><a href="../TaskJuggler/SimpleQueryExpander.html">TaskJuggler::SimpleQueryExpander</a></li>
403
+
400
404
  <li><a href="../TaskJuggler/SortListAttribute.html">TaskJuggler::SortListAttribute</a></li>
401
405
 
402
406
  <li><a href="../TaskJuggler/SourceFileInfo.html">TaskJuggler::SourceFileInfo</a></li>
@@ -507,6 +511,8 @@
507
511
 
508
512
  <li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
509
513
 
514
+ <li><a href="../TaskJuggler/VimSyntax.html">TaskJuggler::VimSyntax</a></li>
515
+
510
516
  <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
511
517
 
512
518
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>