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
@@ -79,8 +79,6 @@
79
79
 
80
80
  <li><a href="#method-i-error">#error</a></li>
81
81
 
82
- <li><a href="#method-i-message">#message</a></li>
83
-
84
82
  <li><a href="#method-i-percentToSlots">#percentToSlots</a></li>
85
83
 
86
84
  <li><a href="#method-i-slotsToDays">#slotsToDays</a></li>
@@ -189,6 +187,10 @@
189
187
 
190
188
  <li><a href="../TaskJuggler/DurationAttribute.html">TaskJuggler::DurationAttribute</a></li>
191
189
 
190
+ <li><a href="../TaskJuggler/FileList.html">TaskJuggler::FileList</a></li>
191
+
192
+ <li><a href="../TaskJuggler/FileRecord.html">TaskJuggler::FileRecord</a></li>
193
+
192
194
  <li><a href="../TaskJuggler/FixnumAttribute.html">TaskJuggler::FixnumAttribute</a></li>
193
195
 
194
196
  <li><a href="../TaskJuggler/FlagListAttribute.html">TaskJuggler::FlagListAttribute</a></li>
@@ -261,8 +263,6 @@
261
263
 
262
264
  <li><a href="../TaskJuggler/Macro.html">TaskJuggler::Macro</a></li>
263
265
 
264
- <li><a href="../TaskJuggler/MacroParser.html">TaskJuggler::MacroParser</a></li>
265
-
266
266
  <li><a href="../TaskJuggler/MacroTable.html">TaskJuggler::MacroTable</a></li>
267
267
 
268
268
  <li><a href="../TaskJuggler/ManagerResponsibilities.html">TaskJuggler::ManagerResponsibilities</a></li>
@@ -327,6 +327,8 @@
327
327
 
328
328
  <li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
329
329
 
330
+ <li><a href="../TaskJuggler/RTFWithQuerySupport.html">TaskJuggler::RTFWithQuerySupport</a></li>
331
+
330
332
  <li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
331
333
 
332
334
  <li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
@@ -373,8 +375,6 @@
373
375
 
374
376
  <li><a href="../TaskJuggler/RichTextElement.html">TaskJuggler::RichTextElement</a></li>
375
377
 
376
- <li><a href="../TaskJuggler/RichTextException.html">TaskJuggler::RichTextException</a></li>
377
-
378
378
  <li><a href="../TaskJuggler/RichTextFunctionExample.html">TaskJuggler::RichTextFunctionExample</a></li>
379
379
 
380
380
  <li><a href="../TaskJuggler/RichTextFunctionHandler.html">TaskJuggler::RichTextFunctionHandler</a></li>
@@ -415,6 +415,8 @@
415
415
 
416
416
  <li><a href="../TaskJuggler/ShiftScenario.html">TaskJuggler::ShiftScenario</a></li>
417
417
 
418
+ <li><a href="../TaskJuggler/SimpleQueryExpander.html">TaskJuggler::SimpleQueryExpander</a></li>
419
+
418
420
  <li><a href="../TaskJuggler/SortListAttribute.html">TaskJuggler::SortListAttribute</a></li>
419
421
 
420
422
  <li><a href="../TaskJuggler/SourceFileInfo.html">TaskJuggler::SourceFileInfo</a></li>
@@ -525,6 +527,8 @@
525
527
 
526
528
  <li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
527
529
 
530
+ <li><a href="../TaskJuggler/VimSyntax.html">TaskJuggler::VimSyntax</a></li>
531
+
528
532
  <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
529
533
 
530
534
  <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
@@ -676,21 +680,21 @@ always bound to an existing <a href="Resource.html">Resource</a>.
676
680
  <div class="method-source-code"
677
681
  id="new-source">
678
682
  <pre>
679
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 251</span>
680
- 251: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-identifier">interval</span>, <span class="ruby-identifier">scenarioIdx</span>)
681
- 252: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Illegal resource&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Resource</span>)
682
- 253: <span class="ruby-ivar">@resource</span> = <span class="ruby-identifier">resource</span>
683
- 254: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Interval undefined&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">interval</span>.<span class="ruby-identifier">nil?</span>
684
- 255: <span class="ruby-ivar">@interval</span> = <span class="ruby-identifier">interval</span>
685
- 256: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Sceneario index undefined&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">scenarioIdx</span>.<span class="ruby-identifier">nil?</span>
686
- 257: <span class="ruby-ivar">@scenarioIdx</span> = <span class="ruby-identifier">scenarioIdx</span>
687
- 258: <span class="ruby-ivar">@sourceFileInfo</span> = <span class="ruby-keyword kw">nil</span>
688
- 259: <span class="ruby-comment cmt"># This flag is set to true if at least one record was reported as</span>
689
- 260: <span class="ruby-comment cmt"># percentage.</span>
690
- 261: <span class="ruby-ivar">@percentageUsed</span> = <span class="ruby-keyword kw">false</span>
691
- 262: <span class="ruby-comment cmt"># The TimeSheetRecord list.</span>
692
- 263: <span class="ruby-ivar">@records</span> = []
693
- 264: <span class="ruby-keyword kw">end</span></pre>
683
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 252</span>
684
+ 252: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-identifier">interval</span>, <span class="ruby-identifier">scenarioIdx</span>)
685
+ 253: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Illegal resource&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Resource</span>)
686
+ 254: <span class="ruby-ivar">@resource</span> = <span class="ruby-identifier">resource</span>
687
+ 255: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Interval undefined&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">interval</span>.<span class="ruby-identifier">nil?</span>
688
+ 256: <span class="ruby-ivar">@interval</span> = <span class="ruby-identifier">interval</span>
689
+ 257: <span class="ruby-identifier">raise</span> <span class="ruby-value str">&quot;Sceneario index undefined&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">scenarioIdx</span>.<span class="ruby-identifier">nil?</span>
690
+ 258: <span class="ruby-ivar">@scenarioIdx</span> = <span class="ruby-identifier">scenarioIdx</span>
691
+ 259: <span class="ruby-ivar">@sourceFileInfo</span> = <span class="ruby-keyword kw">nil</span>
692
+ 260: <span class="ruby-comment cmt"># This flag is set to true if at least one record was reported as</span>
693
+ 261: <span class="ruby-comment cmt"># percentage.</span>
694
+ 262: <span class="ruby-ivar">@percentageUsed</span> = <span class="ruby-keyword kw">false</span>
695
+ 263: <span class="ruby-comment cmt"># The TimeSheetRecord list.</span>
696
+ 264: <span class="ruby-ivar">@records</span> = []
697
+ 265: <span class="ruby-keyword kw">end</span></pre>
694
698
  </div>
695
699
 
696
700
  </div>
@@ -729,16 +733,16 @@ Add a new <a href="TimeSheetRecord.html">TimeSheetRecord</a> to the list.
729
733
  <div class="method-source-code"
730
734
  id="--source">
731
735
  <pre>
732
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 267</span>
733
- 267: <span class="ruby-keyword kw">def</span><span class="ruby-operator">&lt;&lt;</span>(<span class="ruby-identifier">record</span>)
734
- 268: <span class="ruby-ivar">@records</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span>
735
- 269: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">task</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">record</span>.<span class="ruby-identifier">task</span>
736
- 270: <span class="ruby-identifier">error</span>(<span class="ruby-value str">'ts_duplicate_task'</span>,
737
- 271: <span class="ruby-node">&quot;Duplicate records for task #{r.taskId}&quot;</span>)
738
- 272: <span class="ruby-keyword kw">end</span>
739
- 273: <span class="ruby-keyword kw">end</span>
740
- 274: <span class="ruby-ivar">@records</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">record</span>
741
- 275: <span class="ruby-keyword kw">end</span></pre>
736
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 268</span>
737
+ 268: <span class="ruby-keyword kw">def</span><span class="ruby-operator">&lt;&lt;</span>(<span class="ruby-identifier">record</span>)
738
+ 269: <span class="ruby-ivar">@records</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">r</span><span class="ruby-operator">|</span>
739
+ 270: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">r</span>.<span class="ruby-identifier">task</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">record</span>.<span class="ruby-identifier">task</span>
740
+ 271: <span class="ruby-identifier">error</span>(<span class="ruby-value str">'ts_duplicate_task'</span>,
741
+ 272: <span class="ruby-node">&quot;Duplicate records for task #{r.taskId}&quot;</span>)
742
+ 273: <span class="ruby-keyword kw">end</span>
743
+ 274: <span class="ruby-keyword kw">end</span>
744
+ 275: <span class="ruby-ivar">@records</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">record</span>
745
+ 276: <span class="ruby-keyword kw">end</span></pre>
742
746
  </div>
743
747
 
744
748
  </div>
@@ -771,31 +775,31 @@ Perform all kinds of consitency checks.
771
775
  <div class="method-source-code"
772
776
  id="check-source">
773
777
  <pre>
774
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 278</span>
775
- 278: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">check</span>
776
- 279: <span class="ruby-identifier">totalSlots</span> = <span class="ruby-value">0</span>
777
- 280: <span class="ruby-ivar">@records</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">record</span><span class="ruby-operator">|</span>
778
- 281: <span class="ruby-identifier">record</span>.<span class="ruby-identifier">check</span>
779
- 282: <span class="ruby-identifier">totalSlots</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">record</span>.<span class="ruby-identifier">work</span>
780
- 283: <span class="ruby-keyword kw">end</span>
781
- 284:
782
- 285: <span class="ruby-identifier">targetSlots</span> = <span class="ruby-identifier">totalNetWorkingSlots</span>
783
- 286: <span class="ruby-comment cmt"># This is acceptable rounding error when checking the total reported</span>
784
- 287: <span class="ruby-comment cmt"># work.</span>
785
- 288: <span class="ruby-identifier">delta</span> = <span class="ruby-value">1</span>
786
- 289: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">totalSlots</span> <span class="ruby-operator">&lt;</span> (<span class="ruby-identifier">targetSlots</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">delta</span>)
787
- 290: <span class="ruby-identifier">error</span>(<span class="ruby-value str">'ts_work_too_low'</span>,
788
- 291: <span class="ruby-value str">&quot;The total work to be reported for this time sheet &quot;</span> <span class="ruby-operator">+</span>
789
- 292: <span class="ruby-node">&quot;is #{workWithUnit(targetSlots)} but only &quot;</span> <span class="ruby-operator">+</span>
790
- 293: <span class="ruby-node">&quot;#{workWithUnit(totalSlots)} were reported.&quot;</span>)
791
- 294: <span class="ruby-keyword kw">end</span>
792
- 295: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">totalSlots</span> <span class="ruby-operator">&gt;</span> (<span class="ruby-identifier">targetSlots</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">delta</span>)
793
- 296: <span class="ruby-identifier">error</span>(<span class="ruby-value str">'ts_work_too_high'</span>,
794
- 297: <span class="ruby-value str">&quot;The total work to be reported for this time sheet &quot;</span> <span class="ruby-operator">+</span>
795
- 298: <span class="ruby-node">&quot;is #{workWithUnit(targetSlots)} but &quot;</span> <span class="ruby-operator">+</span>
796
- 299: <span class="ruby-node">&quot;#{workWithUnit(totalSlots)} were reported.&quot;</span>)
797
- 300: <span class="ruby-keyword kw">end</span>
798
- 301: <span class="ruby-keyword kw">end</span></pre>
778
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 279</span>
779
+ 279: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">check</span>
780
+ 280: <span class="ruby-identifier">totalSlots</span> = <span class="ruby-value">0</span>
781
+ 281: <span class="ruby-ivar">@records</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">record</span><span class="ruby-operator">|</span>
782
+ 282: <span class="ruby-identifier">record</span>.<span class="ruby-identifier">check</span>
783
+ 283: <span class="ruby-identifier">totalSlots</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">record</span>.<span class="ruby-identifier">work</span>
784
+ 284: <span class="ruby-keyword kw">end</span>
785
+ 285:
786
+ 286: <span class="ruby-identifier">targetSlots</span> = <span class="ruby-identifier">totalNetWorkingSlots</span>
787
+ 287: <span class="ruby-comment cmt"># This is acceptable rounding error when checking the total reported</span>
788
+ 288: <span class="ruby-comment cmt"># work.</span>
789
+ 289: <span class="ruby-identifier">delta</span> = <span class="ruby-value">1</span>
790
+ 290: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">totalSlots</span> <span class="ruby-operator">&lt;</span> (<span class="ruby-identifier">targetSlots</span> <span class="ruby-operator">-</span> <span class="ruby-identifier">delta</span>)
791
+ 291: <span class="ruby-identifier">error</span>(<span class="ruby-value str">'ts_work_too_low'</span>,
792
+ 292: <span class="ruby-value str">&quot;The total work to be reported for this time sheet &quot;</span> <span class="ruby-operator">+</span>
793
+ 293: <span class="ruby-node">&quot;is #{workWithUnit(targetSlots)} but only &quot;</span> <span class="ruby-operator">+</span>
794
+ 294: <span class="ruby-node">&quot;#{workWithUnit(totalSlots)} were reported.&quot;</span>)
795
+ 295: <span class="ruby-keyword kw">end</span>
796
+ 296: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">totalSlots</span> <span class="ruby-operator">&gt;</span> (<span class="ruby-identifier">targetSlots</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">delta</span>)
797
+ 297: <span class="ruby-identifier">error</span>(<span class="ruby-value str">'ts_work_too_high'</span>,
798
+ 298: <span class="ruby-value str">&quot;The total work to be reported for this time sheet &quot;</span> <span class="ruby-operator">+</span>
799
+ 299: <span class="ruby-node">&quot;is #{workWithUnit(targetSlots)} but &quot;</span> <span class="ruby-operator">+</span>
800
+ 300: <span class="ruby-node">&quot;#{workWithUnit(totalSlots)} were reported.&quot;</span>)
801
+ 301: <span class="ruby-keyword kw">end</span>
802
+ 302: <span class="ruby-keyword kw">end</span></pre>
799
803
  </div>
800
804
 
801
805
  </div>
@@ -826,11 +830,11 @@ Perform all kinds of consitency checks.
826
830
  <div class="method-source-code"
827
831
  id="days-o-lots-source">
828
832
  <pre>
829
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 364</span>
830
- 364: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">daysToSlots</span>(<span class="ruby-identifier">days</span>)
831
- 365: ((<span class="ruby-identifier">days</span> * <span class="ruby-value">60</span> * <span class="ruby-value">60</span> * <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>.<span class="ruby-identifier">dailyWorkingHours</span>) <span class="ruby-operator">/</span>
832
- 366: <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>[<span class="ruby-value str">'scheduleGranularity'</span>]).<span class="ruby-identifier">to_i</span>
833
- 367: <span class="ruby-keyword kw">end</span></pre>
833
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 353</span>
834
+ 353: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">daysToSlots</span>(<span class="ruby-identifier">days</span>)
835
+ 354: ((<span class="ruby-identifier">days</span> * <span class="ruby-value">60</span> * <span class="ruby-value">60</span> * <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>.<span class="ruby-identifier">dailyWorkingHours</span>) <span class="ruby-operator">/</span>
836
+ 355: <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>[<span class="ruby-value str">'scheduleGranularity'</span>]).<span class="ruby-identifier">to_i</span>
837
+ 356: <span class="ruby-keyword kw">end</span></pre>
834
838
  </div>
835
839
 
836
840
  </div>
@@ -841,39 +845,31 @@ Perform all kinds of consitency checks.
841
845
  </div>
842
846
 
843
847
 
844
- <div id="message-method" class="method-detail ">
845
- <a name="method-i-message"></a>
848
+ <div id="error-method" class="method-detail ">
849
+ <a name="method-i-error"></a>
846
850
 
847
851
  <div class="method-heading">
848
852
 
849
- <span class="method-name">message</span><span
850
- class="method-args">(type, id, text, sourceFileInfo)</span>
853
+ <span class="method-name">error</span><span
854
+ class="method-args">(id, text, sourceFileInfo = nil)</span>
851
855
  <span class="method-click-advice">click to toggle source</span>
852
856
 
853
857
  </div>
854
858
 
855
859
  <div class="method-description">
856
860
 
857
- <p>
858
- <a href="Report.html">Report</a> an error or warning to the
859
- TjMessageHandler. In case of an error an exception is raised.
860
- </p>
861
+
861
862
 
862
863
 
863
864
 
864
865
  <div class="method-source-code"
865
- id="message-source">
866
+ id="error-source">
866
867
  <pre>
867
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 337</span>
868
- 337: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">message</span>(<span class="ruby-identifier">type</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">sourceFileInfo</span>)
869
- 338: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">empty?</span>
870
- 339: <span class="ruby-identifier">message</span> = <span class="ruby-constant">Message</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">text</span>, <span class="ruby-ivar">@resource</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">sourceFileInfo</span>)
871
- 340: <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">project</span>.<span class="ruby-identifier">messageHandler</span>.<span class="ruby-identifier">send</span>(<span class="ruby-identifier">message</span>)
872
- 341: <span class="ruby-keyword kw">end</span>
873
- 342:
874
- 343: <span class="ruby-comment cmt"># An empty strings signals an already reported error</span>
875
- 344: <span class="ruby-identifier">raise</span> <span class="ruby-constant">TjException</span>.<span class="ruby-identifier">new</span>, <span class="ruby-value str">''</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">type</span> <span class="ruby-operator">==</span> <span class="ruby-value str">'error'</span>
876
- 345: <span class="ruby-keyword kw">end</span></pre>
868
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 358</span>
869
+ 358: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">error</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">sourceFileInfo</span> = <span class="ruby-keyword kw">nil</span>)
870
+ 359: <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>.<span class="ruby-identifier">messageHandler</span>.<span class="ruby-identifier">error</span>(
871
+ 360: <span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">sourceFileInfo</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@sourceFileInfo</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-ivar">@resource</span>)
872
+ 361: <span class="ruby-keyword kw">end</span></pre>
877
873
  </div>
878
874
 
879
875
  </div>
@@ -906,11 +902,11 @@ Converts allocation percentage into time slots.
906
902
  <div class="method-source-code"
907
903
  id="percent-o-lots-source">
908
904
  <pre>
909
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 348</span>
910
- 348: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">percentToSlots</span>(<span class="ruby-identifier">value</span>)
911
- 349: <span class="ruby-ivar">@percentageUsed</span> = <span class="ruby-keyword kw">true</span>
912
- 350: (<span class="ruby-identifier">totalGrossWorkingSlots</span> * <span class="ruby-identifier">value</span>).<span class="ruby-identifier">to_i</span>
913
- 351: <span class="ruby-keyword kw">end</span></pre>
905
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 337</span>
906
+ 337: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">percentToSlots</span>(<span class="ruby-identifier">value</span>)
907
+ 338: <span class="ruby-ivar">@percentageUsed</span> = <span class="ruby-keyword kw">true</span>
908
+ 339: (<span class="ruby-identifier">totalGrossWorkingSlots</span> * <span class="ruby-identifier">value</span>).<span class="ruby-identifier">to_i</span>
909
+ 340: <span class="ruby-keyword kw">end</span></pre>
914
910
  </div>
915
911
 
916
912
  </div>
@@ -941,11 +937,11 @@ Converts allocation percentage into time slots.
941
937
  <div class="method-source-code"
942
938
  id="slots-o-ays-source">
943
939
  <pre>
944
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 359</span>
945
- 359: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">slotsToDays</span>(<span class="ruby-identifier">slots</span>)
946
- 360: <span class="ruby-identifier">slots</span> * <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>[<span class="ruby-value str">'scheduleGranularity'</span>] <span class="ruby-operator">/</span>
947
- 361: (<span class="ruby-value">60</span> * <span class="ruby-value">60</span> * <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>.<span class="ruby-identifier">dailyWorkingHours</span>)
948
- 362: <span class="ruby-keyword kw">end</span></pre>
940
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 348</span>
941
+ 348: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">slotsToDays</span>(<span class="ruby-identifier">slots</span>)
942
+ 349: <span class="ruby-identifier">slots</span> * <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>[<span class="ruby-value str">'scheduleGranularity'</span>] <span class="ruby-operator">/</span>
943
+ 350: (<span class="ruby-value">60</span> * <span class="ruby-value">60</span> * <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>.<span class="ruby-identifier">dailyWorkingHours</span>)
944
+ 351: <span class="ruby-keyword kw">end</span></pre>
949
945
  </div>
950
946
 
951
947
  </div>
@@ -979,10 +975,10 @@ in the report time frame.
979
975
  <div class="method-source-code"
980
976
  id="slots-o-ercent-source">
981
977
  <pre>
982
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 355</span>
983
- 355: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">slotsToPercent</span>(<span class="ruby-identifier">slots</span>)
984
- 356: <span class="ruby-identifier">slots</span>.<span class="ruby-identifier">to_f</span> <span class="ruby-operator">/</span> <span class="ruby-identifier">totalGrossWorkingSlots</span>
985
- 357: <span class="ruby-keyword kw">end</span></pre>
978
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 344</span>
979
+ 344: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">slotsToPercent</span>(<span class="ruby-identifier">slots</span>)
980
+ 345: <span class="ruby-identifier">slots</span>.<span class="ruby-identifier">to_f</span> <span class="ruby-operator">/</span> <span class="ruby-identifier">totalGrossWorkingSlots</span>
981
+ 346: <span class="ruby-keyword kw">end</span></pre>
986
982
  </div>
987
983
 
988
984
  </div>
@@ -1016,16 +1012,16 @@ period. This value is not resource specific.
1016
1012
  <div class="method-source-code"
1017
1013
  id="total-ross-orking-lots-source">
1018
1014
  <pre>
1019
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 315</span>
1020
- 315: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">totalGrossWorkingSlots</span>
1021
- 316: <span class="ruby-identifier">project</span> = <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>
1022
- 317: <span class="ruby-comment cmt"># Calculate the average working days per week (usually 5)</span>
1023
- 318: <span class="ruby-identifier">weeklyWorkingDays</span> = <span class="ruby-identifier">project</span>[<span class="ruby-value str">'yearlyworkingdays'</span>] <span class="ruby-operator">/</span> <span class="ruby-value">52.1428</span>
1024
- 319: <span class="ruby-comment cmt"># Calculate the number of weeks in the report</span>
1025
- 320: <span class="ruby-identifier">weeksToReport</span> = (<span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">end</span> <span class="ruby-operator">-</span> <span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">start</span>) <span class="ruby-operator">/</span> (<span class="ruby-value">60</span> * <span class="ruby-value">60</span> * <span class="ruby-value">24</span> * <span class="ruby-value">7</span>)
1026
- 321:
1027
- 322: <span class="ruby-identifier">daysToSlots</span>(<span class="ruby-identifier">weeklyWorkingDays</span> * <span class="ruby-identifier">weeksToReport</span>)
1028
- 323: <span class="ruby-keyword kw">end</span></pre>
1015
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 316</span>
1016
+ 316: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">totalGrossWorkingSlots</span>
1017
+ 317: <span class="ruby-identifier">project</span> = <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>
1018
+ 318: <span class="ruby-comment cmt"># Calculate the average working days per week (usually 5)</span>
1019
+ 319: <span class="ruby-identifier">weeklyWorkingDays</span> = <span class="ruby-identifier">project</span>[<span class="ruby-value str">'yearlyworkingdays'</span>] <span class="ruby-operator">/</span> <span class="ruby-value">52.1428</span>
1020
+ 320: <span class="ruby-comment cmt"># Calculate the number of weeks in the report</span>
1021
+ 321: <span class="ruby-identifier">weeksToReport</span> = (<span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">end</span> <span class="ruby-operator">-</span> <span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">start</span>) <span class="ruby-operator">/</span> (<span class="ruby-value">60</span> * <span class="ruby-value">60</span> * <span class="ruby-value">24</span> * <span class="ruby-value">7</span>)
1022
+ 322:
1023
+ 323: <span class="ruby-identifier">daysToSlots</span>(<span class="ruby-identifier">weeklyWorkingDays</span> * <span class="ruby-identifier">weeksToReport</span>)
1024
+ 324: <span class="ruby-keyword kw">end</span></pre>
1029
1025
  </div>
1030
1026
 
1031
1027
  </div>
@@ -1060,14 +1056,14 @@ slots.
1060
1056
  <div class="method-source-code"
1061
1057
  id="total-et-orking-lots-source">
1062
1058
  <pre>
1063
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 327</span>
1064
- 327: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">totalNetWorkingSlots</span>
1065
- 328: <span class="ruby-identifier">project</span> = <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>
1066
- 329: <span class="ruby-identifier">startIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">dateToIdx</span>(<span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">start</span>)
1067
- 330: <span class="ruby-identifier">endIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">dateToIdx</span>(<span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">end</span>)
1068
- 331: <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">getAllocatedSlots</span>(<span class="ruby-ivar">@scenarioIdx</span>, <span class="ruby-identifier">startIdx</span>, <span class="ruby-identifier">endIdx</span>, <span class="ruby-keyword kw">nil</span>) <span class="ruby-operator">+</span>
1069
- 332: <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">getFreeSlots</span>(<span class="ruby-ivar">@scenarioIdx</span>, <span class="ruby-identifier">startIdx</span>, <span class="ruby-identifier">endIdx</span>)
1070
- 333: <span class="ruby-keyword kw">end</span></pre>
1059
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 328</span>
1060
+ 328: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">totalNetWorkingSlots</span>
1061
+ 329: <span class="ruby-identifier">project</span> = <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>
1062
+ 330: <span class="ruby-identifier">startIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">dateToIdx</span>(<span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">start</span>)
1063
+ 331: <span class="ruby-identifier">endIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">dateToIdx</span>(<span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">end</span>)
1064
+ 332: <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">getAllocatedSlots</span>(<span class="ruby-ivar">@scenarioIdx</span>, <span class="ruby-identifier">startIdx</span>, <span class="ruby-identifier">endIdx</span>, <span class="ruby-keyword kw">nil</span>) <span class="ruby-operator">+</span>
1065
+ 333: <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">getFreeSlots</span>(<span class="ruby-ivar">@scenarioIdx</span>, <span class="ruby-identifier">startIdx</span>, <span class="ruby-identifier">endIdx</span>)
1066
+ 334: <span class="ruby-keyword kw">end</span></pre>
1071
1067
  </div>
1072
1068
 
1073
1069
  </div>
@@ -1098,56 +1094,16 @@ slots.
1098
1094
  <div class="method-source-code"
1099
1095
  id="warn-n-elta-source">
1100
1096
  <pre>
1101
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 303</span>
1102
- 303: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">warnOnDelta</span>
1103
- 304: <span class="ruby-identifier">project</span> = <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>
1104
- 305: <span class="ruby-identifier">startIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">dateToIdx</span>(<span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">start</span>)
1105
- 306: <span class="ruby-identifier">endIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">dateToIdx</span>(<span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">end</span>)
1106
- 307:
1107
- 308: <span class="ruby-ivar">@records</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">record</span><span class="ruby-operator">|</span>
1108
- 309: <span class="ruby-identifier">record</span>.<span class="ruby-identifier">warnOnDelta</span>(<span class="ruby-identifier">startIdx</span>, <span class="ruby-identifier">endIdx</span>)
1109
- 310: <span class="ruby-keyword kw">end</span>
1110
- 311: <span class="ruby-keyword kw">end</span></pre>
1111
- </div>
1112
-
1113
- </div>
1114
-
1115
-
1116
-
1117
-
1118
- </div>
1119
-
1120
-
1121
- </div>
1122
-
1123
- <div id="private-instance-method-details" class="method-section section">
1124
- <h3 class="section-header">Private Instance Methods</h3>
1125
-
1126
-
1127
- <div id="error-method" class="method-detail ">
1128
- <a name="method-i-error"></a>
1129
-
1130
- <div class="method-heading">
1131
-
1132
- <span class="method-name">error</span><span
1133
- class="method-args">(id, text)</span>
1134
- <span class="method-click-advice">click to toggle source</span>
1135
-
1136
- </div>
1137
-
1138
- <div class="method-description">
1139
-
1140
-
1141
-
1142
-
1143
-
1144
- <div class="method-source-code"
1145
- id="error-source">
1146
- <pre>
1147
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 371</span>
1148
- 371: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">error</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>)
1149
- 372: <span class="ruby-identifier">message</span>(<span class="ruby-value str">'error'</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-ivar">@sourceFileInfo</span>)
1150
- 373: <span class="ruby-keyword kw">end</span></pre>
1097
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 304</span>
1098
+ 304: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">warnOnDelta</span>
1099
+ 305: <span class="ruby-identifier">project</span> = <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>
1100
+ 306: <span class="ruby-identifier">startIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">dateToIdx</span>(<span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">start</span>)
1101
+ 307: <span class="ruby-identifier">endIdx</span> = <span class="ruby-identifier">project</span>.<span class="ruby-identifier">dateToIdx</span>(<span class="ruby-ivar">@interval</span>.<span class="ruby-identifier">end</span>)
1102
+ 308:
1103
+ 309: <span class="ruby-ivar">@records</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">record</span><span class="ruby-operator">|</span>
1104
+ 310: <span class="ruby-identifier">record</span>.<span class="ruby-identifier">warnOnDelta</span>(<span class="ruby-identifier">startIdx</span>, <span class="ruby-identifier">endIdx</span>)
1105
+ 311: <span class="ruby-keyword kw">end</span>
1106
+ 312: <span class="ruby-keyword kw">end</span></pre>
1151
1107
  </div>
1152
1108
 
1153
1109
  </div>
@@ -1164,7 +1120,7 @@ slots.
1164
1120
  <div class="method-heading">
1165
1121
 
1166
1122
  <span class="method-name">warning</span><span
1167
- class="method-args">(id, text)</span>
1123
+ class="method-args">(id, text, sourceFileInfo = nil)</span>
1168
1124
  <span class="method-click-advice">click to toggle source</span>
1169
1125
 
1170
1126
  </div>
@@ -1178,10 +1134,11 @@ slots.
1178
1134
  <div class="method-source-code"
1179
1135
  id="warning-source">
1180
1136
  <pre>
1181
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 375</span>
1182
- 375: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">warning</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>)
1183
- 376: <span class="ruby-identifier">message</span>(<span class="ruby-value str">'warning'</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-ivar">@sourceFileInfo</span>)
1184
- 377: <span class="ruby-keyword kw">end</span></pre>
1137
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 363</span>
1138
+ 363: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">warning</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">sourceFileInfo</span> = <span class="ruby-keyword kw">nil</span>)
1139
+ 364: <span class="ruby-ivar">@resource</span>.<span class="ruby-identifier">project</span>.<span class="ruby-identifier">messageHandler</span>.<span class="ruby-identifier">warning</span>(<span class="ruby-identifier">id</span>, <span class="ruby-identifier">text</span>, <span class="ruby-identifier">sourceFileInfo</span>, <span class="ruby-keyword kw">nil</span>,
1140
+ 365: <span class="ruby-ivar">@resource</span>)
1141
+ 366: <span class="ruby-keyword kw">end</span></pre>
1185
1142
  </div>
1186
1143
 
1187
1144
  </div>
@@ -1192,6 +1149,12 @@ slots.
1192
1149
  </div>
1193
1150
 
1194
1151
 
1152
+ </div>
1153
+
1154
+ <div id="private-instance-method-details" class="method-section section">
1155
+ <h3 class="section-header">Private Instance Methods</h3>
1156
+
1157
+
1195
1158
  <div id="work-ith-nit-method" class="method-detail ">
1196
1159
  <a name="method-i-workWithUnit"></a>
1197
1160
 
@@ -1212,14 +1175,14 @@ slots.
1212
1175
  <div class="method-source-code"
1213
1176
  id="work-ith-nit-source">
1214
1177
  <pre>
1215
- <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 379</span>
1216
- 379: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">workWithUnit</span>(<span class="ruby-identifier">slots</span>)
1217
- 380: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@percentageUsed</span>
1218
- 381: <span class="ruby-node">&quot;#{(slotsToPercent(slots) * 100.0).to_i}%&quot;</span>
1219
- 382: <span class="ruby-keyword kw">else</span>
1220
- 383: <span class="ruby-node">&quot;#{slotsToDays(slots)} days&quot;</span>
1221
- 384: <span class="ruby-keyword kw">end</span>
1222
- 385: <span class="ruby-keyword kw">end</span></pre>
1178
+ <span class="ruby-comment cmt"># File lib/TimeSheets.rb, line 370</span>
1179
+ 370: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">workWithUnit</span>(<span class="ruby-identifier">slots</span>)
1180
+ 371: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@percentageUsed</span>
1181
+ 372: <span class="ruby-node">&quot;#{(slotsToPercent(slots) * 100.0).to_i}%&quot;</span>
1182
+ 373: <span class="ruby-keyword kw">else</span>
1183
+ 374: <span class="ruby-node">&quot;#{slotsToDays(slots)} days&quot;</span>
1184
+ 375: <span class="ruby-keyword kw">end</span>
1185
+ 376: <span class="ruby-keyword kw">end</span></pre>
1223
1186
  </div>
1224
1187
 
1225
1188
  </div>