taskjuggler 0.0.3 → 0.0.4

Sign up to get free protection for your applications and to get access to all the features.
Files changed (495) hide show
  1. data/benchmarks/UTF-8-Strings.rb +58 -0
  2. data/data/css/tjmanual.css +52 -0
  3. data/data/css/tjreport.css +195 -0
  4. data/data/icons/details.png +0 -0
  5. data/data/icons/flag-green.png +0 -0
  6. data/data/icons/flag-red.png +0 -0
  7. data/data/icons/flag-yellow.png +0 -0
  8. data/data/icons/resource.png +0 -0
  9. data/data/icons/resourcegroup.png +0 -0
  10. data/data/icons/task.png +0 -0
  11. data/data/icons/taskgroup.png +0 -0
  12. data/data/icons/trend-down.png +0 -0
  13. data/data/icons/trend-flat.png +0 -0
  14. data/data/icons/trend-up.png +0 -0
  15. data/data/scripts/wz_tooltip.js +1301 -0
  16. data/doc/classes/AppConfig.html +298 -230
  17. data/doc/classes/Arguments.html +8 -8
  18. data/doc/classes/Object.html +7 -7
  19. data/doc/classes/String.html +89 -89
  20. data/doc/classes/TaskJuggler.html +396 -264
  21. data/doc/classes/TaskJuggler/Account.html +18 -18
  22. data/doc/classes/TaskJuggler/AccountAttribute.html +26 -26
  23. data/doc/classes/TaskJuggler/AccountScenario.html +12 -12
  24. data/doc/classes/TaskJuggler/Allocation.html +30 -30
  25. data/doc/classes/TaskJuggler/AllocationAttribute.html +26 -26
  26. data/doc/classes/TaskJuggler/AttributeBase.html +227 -115
  27. data/doc/classes/TaskJuggler/AttributeDefinition.html +6 -6
  28. data/doc/classes/TaskJuggler/BatchProcessor.html +117 -83
  29. data/doc/classes/TaskJuggler/Booking.html +18 -18
  30. data/doc/classes/TaskJuggler/BookingListAttribute.html +26 -26
  31. data/doc/classes/TaskJuggler/BooleanAttribute.html +26 -26
  32. data/doc/classes/TaskJuggler/CSVFile.html +24 -24
  33. data/doc/classes/TaskJuggler/CellSettingPattern.html +201 -0
  34. data/doc/classes/TaskJuggler/CellSettingPatternList.html +253 -0
  35. data/doc/classes/TaskJuggler/Charge.html +18 -18
  36. data/doc/classes/TaskJuggler/ChargeListAttribute.html +20 -20
  37. data/doc/classes/TaskJuggler/ChargeSet.html +37 -37
  38. data/doc/classes/TaskJuggler/ChargeSetListAttribute.html +26 -26
  39. data/doc/classes/TaskJuggler/ColumnListAttribute.html +20 -20
  40. data/doc/classes/TaskJuggler/ColumnTable.html +40 -40
  41. data/doc/classes/TaskJuggler/DateAttribute.html +54 -15
  42. data/doc/classes/TaskJuggler/DefinitionListAttribute.html +10 -10
  43. data/doc/classes/TaskJuggler/DependencyListAttribute.html +47 -47
  44. data/doc/classes/TaskJuggler/DurationAttribute.html +30 -30
  45. data/doc/classes/TaskJuggler/FixnumAttribute.html +20 -20
  46. data/doc/classes/TaskJuggler/FlagListAttribute.html +43 -43
  47. data/doc/classes/TaskJuggler/FloatAttribute.html +30 -30
  48. data/doc/classes/TaskJuggler/FormatListAttribute.html +21 -21
  49. data/doc/classes/TaskJuggler/GanttChart.html +48 -48
  50. data/doc/classes/TaskJuggler/GanttContainer.html +42 -42
  51. data/doc/classes/TaskJuggler/GanttHeader.html +12 -12
  52. data/doc/classes/TaskJuggler/GanttHeaderScaleItem.html +12 -12
  53. data/doc/classes/TaskJuggler/GanttLine.html +24 -24
  54. data/doc/classes/TaskJuggler/GanttLoadStack.html +18 -18
  55. data/doc/classes/TaskJuggler/GanttMilestone.html +42 -42
  56. data/doc/classes/TaskJuggler/GanttRouter.html +24 -24
  57. data/doc/classes/TaskJuggler/GanttTaskBar.html +42 -42
  58. data/doc/classes/TaskJuggler/HTMLDocument.html +13 -13
  59. data/doc/classes/TaskJuggler/HTMLGraphics.html +12 -12
  60. data/doc/classes/TaskJuggler/Interval.html +57 -57
  61. data/doc/classes/TaskJuggler/IntervalListAttribute.html +47 -47
  62. data/doc/classes/TaskJuggler/JobInfo.html +68 -12
  63. data/doc/classes/TaskJuggler/Journal.html +266 -20
  64. data/doc/classes/TaskJuggler/JournalEntry.html +79 -23
  65. data/doc/classes/TaskJuggler/JournalEntryList.html +454 -0
  66. data/doc/classes/TaskJuggler/KeywordArray.html +10 -10
  67. data/doc/classes/TaskJuggler/KeywordDocumentation.html +171 -170
  68. data/doc/classes/TaskJuggler/Limits.html +36 -36
  69. data/doc/classes/TaskJuggler/Limits/Limit.html +30 -30
  70. data/doc/classes/TaskJuggler/LimitsAttribute.html +40 -40
  71. data/doc/classes/TaskJuggler/ListAttributeBase.html +20 -20
  72. data/doc/classes/TaskJuggler/Log.html +145 -107
  73. data/doc/classes/TaskJuggler/LogicalAttribute.html +65 -36
  74. data/doc/classes/TaskJuggler/LogicalExpression.html +61 -24
  75. data/doc/classes/TaskJuggler/LogicalExpressionAttribute.html +20 -20
  76. data/doc/classes/TaskJuggler/LogicalFlag.html +31 -51
  77. data/doc/classes/TaskJuggler/LogicalFunction.html +64 -53
  78. data/doc/classes/TaskJuggler/LogicalOperation.html +103 -55
  79. data/doc/classes/TaskJuggler/Macro.html +6 -6
  80. data/doc/classes/TaskJuggler/MacroParser.html +36 -36
  81. data/doc/classes/TaskJuggler/MacroTable.html +37 -37
  82. data/doc/classes/TaskJuggler/Message.html +12 -12
  83. data/doc/classes/TaskJuggler/MessageHandler.html +32 -20
  84. data/doc/classes/TaskJuggler/Navigator.html +110 -46
  85. data/doc/classes/TaskJuggler/NavigatorElement.html +449 -0
  86. data/doc/classes/TaskJuggler/OnShiftCache.html +24 -24
  87. data/doc/classes/TaskJuggler/Project.html +1158 -893
  88. data/doc/classes/TaskJuggler/ProjectFileParser.html +94 -91
  89. data/doc/classes/TaskJuggler/PropertyAttribute.html +20 -20
  90. data/doc/classes/TaskJuggler/PropertyList.html +225 -155
  91. data/doc/classes/TaskJuggler/PropertySet.html +375 -332
  92. data/doc/classes/TaskJuggler/PropertyTreeNode.html +750 -510
  93. data/doc/classes/TaskJuggler/Query.html +404 -139
  94. data/doc/classes/TaskJuggler/{RTPNavigator.html → RTFNavigator.html} +57 -56
  95. data/doc/classes/TaskJuggler/RTFQuery.html +343 -0
  96. data/doc/classes/TaskJuggler/{RTPReport.html → RTFReport.html} +70 -67
  97. data/doc/classes/TaskJuggler/RealFormat.html +18 -18
  98. data/doc/classes/TaskJuggler/RealFormatAttribute.html +10 -10
  99. data/doc/classes/TaskJuggler/ReferenceAttribute.html +107 -40
  100. data/doc/classes/TaskJuggler/RemoteServiceManager.html +335 -0
  101. data/doc/classes/TaskJuggler/Report.html +66 -64
  102. data/doc/classes/TaskJuggler/ReportBase.html +112 -123
  103. data/doc/classes/TaskJuggler/ReportContext.html +43 -38
  104. data/doc/classes/TaskJuggler/ReportServer.html +320 -0
  105. data/doc/classes/TaskJuggler/ReportTable.html +42 -42
  106. data/doc/classes/TaskJuggler/ReportTableCell.html +221 -129
  107. data/doc/classes/TaskJuggler/ReportTableColumn.html +27 -27
  108. data/doc/classes/TaskJuggler/ReportTableLegend.html +24 -24
  109. data/doc/classes/TaskJuggler/ReportTableLine.html +126 -80
  110. data/doc/classes/TaskJuggler/Resource.html +12 -12
  111. data/doc/classes/TaskJuggler/ResourceListAttribute.html +82 -47
  112. data/doc/classes/TaskJuggler/ResourceListRE.html +43 -39
  113. data/doc/classes/TaskJuggler/ResourceScenario.html +413 -321
  114. data/doc/classes/TaskJuggler/RichText.html +64 -248
  115. data/doc/classes/TaskJuggler/RichTextAttribute.html +94 -30
  116. data/doc/classes/TaskJuggler/RichTextDocument.html +87 -85
  117. data/doc/classes/TaskJuggler/RichTextElement.html +456 -363
  118. data/doc/classes/TaskJuggler/RichTextException.html +13 -13
  119. data/doc/classes/TaskJuggler/{RichTextProtocolExample.html → RichTextFunctionExample.html} +64 -63
  120. data/doc/classes/TaskJuggler/{RichTextProtocolHandler.html → RichTextFunctionHandler.html} +42 -36
  121. data/doc/classes/TaskJuggler/RichTextIntermediate.html +563 -0
  122. data/doc/classes/TaskJuggler/RichTextParser.html +54 -51
  123. data/doc/classes/TaskJuggler/RichTextScanner.html +94 -92
  124. data/doc/classes/TaskJuggler/RichTextSnip.html +96 -60
  125. data/doc/classes/TaskJuggler/RichTextSyntaxRules.html +369 -227
  126. data/doc/classes/TaskJuggler/Scenario.html +6 -6
  127. data/doc/classes/TaskJuggler/ScenarioData.html +37 -37
  128. data/doc/classes/TaskJuggler/ScenarioListAttribute.html +31 -31
  129. data/doc/classes/TaskJuggler/Scoreboard.html +66 -66
  130. data/doc/classes/TaskJuggler/Shift.html +18 -18
  131. data/doc/classes/TaskJuggler/ShiftAssignment.html +54 -54
  132. data/doc/classes/TaskJuggler/ShiftAssignments.html +78 -78
  133. data/doc/classes/TaskJuggler/ShiftAssignmentsAttribute.html +40 -40
  134. data/doc/classes/TaskJuggler/ShiftScenario.html +24 -24
  135. data/doc/classes/TaskJuggler/SortListAttribute.html +22 -22
  136. data/doc/classes/TaskJuggler/SourceFileInfo.html +12 -12
  137. data/doc/classes/TaskJuggler/StringAttribute.html +30 -30
  138. data/doc/classes/TaskJuggler/SymbolAttribute.html +20 -20
  139. data/doc/classes/TaskJuggler/SyntaxReference.html +42 -42
  140. data/doc/classes/TaskJuggler/TOCEntry.html +12 -12
  141. data/doc/classes/TaskJuggler/TSResourceRecord.html +197 -0
  142. data/doc/classes/TaskJuggler/TSTaskRecord.html +215 -0
  143. data/doc/classes/TaskJuggler/TableColumnDefinition.html +64 -43
  144. data/doc/classes/TaskJuggler/TableOfContents.html +18 -18
  145. data/doc/classes/TaskJuggler/TableReport.html +447 -468
  146. data/doc/classes/TaskJuggler/Task.html +12 -12
  147. data/doc/classes/TaskJuggler/TaskDependency.html +12 -12
  148. data/doc/classes/TaskJuggler/TaskListAttribute.html +47 -47
  149. data/doc/classes/TaskJuggler/TaskListRE.html +43 -39
  150. data/doc/classes/TaskJuggler/TaskScenario.html +529 -282
  151. data/doc/classes/TaskJuggler/TextParser.html +215 -194
  152. data/doc/classes/TaskJuggler/TextParser/Pattern.html +97 -97
  153. data/doc/classes/TaskJuggler/TextParser/Rule.html +84 -84
  154. data/doc/classes/TaskJuggler/TextParser/StackElement.html +16 -15
  155. data/doc/classes/TaskJuggler/TextParser/TextParserResultArray.html +12 -12
  156. data/doc/classes/TaskJuggler/TextParser/TokenDoc.html +6 -6
  157. data/doc/classes/TaskJuggler/TextReport.html +77 -74
  158. data/doc/classes/TaskJuggler/TextScanner.html +294 -281
  159. data/doc/classes/TaskJuggler/TextScanner/BufferStreamHandle.html +70 -70
  160. data/doc/classes/TaskJuggler/TextScanner/FileStreamHandle.html +59 -60
  161. data/doc/classes/TaskJuggler/TextScanner/StreamHandle.html +12 -12
  162. data/doc/classes/TaskJuggler/TimeSheetReport.html +406 -0
  163. data/doc/classes/TaskJuggler/TjException.html +6 -6
  164. data/doc/classes/TaskJuggler/TjTime.html +522 -513
  165. data/doc/classes/TaskJuggler/TjpExample.html +25 -25
  166. data/doc/classes/TaskJuggler/TjpExportRE.html +21 -24
  167. data/doc/classes/TaskJuggler/TjpSyntaxRules.html +6177 -4318
  168. data/doc/classes/TaskJuggler/UserManual.html +212 -213
  169. data/doc/classes/TaskJuggler/WorkingHours.html +49 -49
  170. data/doc/classes/TaskJuggler/WorkingHoursAttribute.html +53 -53
  171. data/doc/classes/TaskJuggler/XMLBlob.html +21 -21
  172. data/doc/classes/TaskJuggler/XMLComment.html +21 -21
  173. data/doc/classes/TaskJuggler/XMLDocument.html +27 -26
  174. data/doc/classes/TaskJuggler/XMLElement.html +86 -50
  175. data/doc/classes/TaskJuggler/XMLNamedText.html +11 -11
  176. data/doc/classes/TaskJuggler/XMLText.html +36 -36
  177. data/doc/files/COPYING.html +1 -1
  178. data/doc/files/README.html +1 -1
  179. data/doc/files/lib/AccountScenario_rb.html +3 -2
  180. data/doc/files/lib/Account_rb.html +3 -2
  181. data/doc/files/lib/Allocation_rb.html +3 -2
  182. data/doc/files/lib/AppConfig_rb.html +5 -2
  183. data/doc/files/lib/AttributeBase_rb.html +3 -2
  184. data/doc/files/lib/AttributeDefinition_rb.html +3 -2
  185. data/doc/files/lib/Attributes_rb.html +3 -2
  186. data/doc/files/lib/BatchProcessor_rb.html +4 -3
  187. data/doc/files/lib/Booking_rb.html +3 -2
  188. data/doc/files/lib/ChargeSet_rb.html +3 -2
  189. data/doc/files/lib/Charge_rb.html +3 -2
  190. data/doc/files/lib/HTMLDocument_rb.html +3 -2
  191. data/doc/files/lib/Interval_rb.html +3 -2
  192. data/doc/files/lib/Journal_rb.html +4 -3
  193. data/doc/files/lib/KeywordArray_rb.html +3 -2
  194. data/doc/files/lib/KeywordDocumentation_rb.html +3 -2
  195. data/doc/files/lib/Limits_rb.html +3 -2
  196. data/doc/files/lib/Log_rb.html +3 -2
  197. data/doc/files/lib/LogicalExpression_rb.html +3 -2
  198. data/doc/files/lib/LogicalFunction_rb.html +3 -2
  199. data/doc/files/lib/LogicalOperation_rb.html +3 -2
  200. data/doc/files/lib/MacroParser_rb.html +3 -2
  201. data/doc/files/lib/MacroTable_rb.html +3 -2
  202. data/doc/files/lib/MessageHandler_rb.html +3 -2
  203. data/doc/files/lib/Message_rb.html +3 -2
  204. data/doc/files/lib/ProjectFileParser_rb.html +7 -4
  205. data/doc/files/lib/Project_rb.html +3 -2
  206. data/doc/files/lib/PropertyList_rb.html +3 -2
  207. data/doc/files/lib/PropertySet_rb.html +3 -2
  208. data/doc/files/lib/PropertyTreeNode_rb.html +3 -2
  209. data/doc/files/lib/Query_rb.html +3 -2
  210. data/doc/files/lib/{RTPNavigator_rb.html → RTFNavigator_rb.html} +8 -7
  211. data/doc/files/lib/RTFQuery_rb.html +121 -0
  212. data/doc/files/lib/{RTPReport_rb.html → RTFReport_rb.html} +8 -7
  213. data/doc/files/lib/RealFormat_rb.html +3 -2
  214. data/doc/files/lib/RemoteServiceManager_rb.html +117 -0
  215. data/doc/files/lib/ReportServer_rb.html +107 -0
  216. data/doc/files/lib/ResourceScenario_rb.html +3 -2
  217. data/doc/files/lib/Resource_rb.html +3 -2
  218. data/doc/files/lib/RichTextDocument_rb.html +4 -3
  219. data/doc/files/lib/RichTextElement_rb.html +3 -2
  220. data/doc/files/lib/{RichTextProtocolExample_rb.html → RichTextFunctionExample_rb.html} +8 -7
  221. data/doc/files/lib/{RichTextProtocolHandler_rb.html → RichTextFunctionHandler_rb.html} +7 -6
  222. data/doc/files/lib/RichTextParser_rb.html +3 -2
  223. data/doc/files/lib/RichTextScanner_rb.html +3 -2
  224. data/doc/files/lib/RichTextSnip_rb.html +3 -2
  225. data/doc/files/lib/RichTextSyntaxRules_rb.html +3 -2
  226. data/doc/files/lib/RichText_rb.html +3 -2
  227. data/doc/files/lib/ScenarioData_rb.html +3 -2
  228. data/doc/files/lib/Scenario_rb.html +3 -2
  229. data/doc/files/lib/Scoreboard_rb.html +3 -2
  230. data/doc/files/lib/ShiftAssignments_rb.html +3 -2
  231. data/doc/files/lib/ShiftScenario_rb.html +3 -2
  232. data/doc/files/lib/Shift_rb.html +3 -2
  233. data/doc/files/lib/SourceFileInfo_rb.html +3 -2
  234. data/doc/files/lib/SyntaxReference_rb.html +3 -2
  235. data/doc/files/lib/TOCEntry_rb.html +3 -2
  236. data/doc/files/lib/TableColumnDefinition_rb.html +3 -2
  237. data/doc/files/lib/TableOfContents_rb.html +3 -2
  238. data/doc/files/lib/TaskDependency_rb.html +3 -2
  239. data/doc/files/lib/TaskJuggler_rb.html +7 -2
  240. data/doc/files/lib/TaskScenario_rb.html +3 -2
  241. data/doc/files/lib/Task_rb.html +3 -2
  242. data/doc/files/lib/TextParser/Pattern_rb.html +4 -3
  243. data/doc/files/lib/TextParser/Rule_rb.html +4 -3
  244. data/doc/files/lib/TextParser/StackElement_rb.html +4 -3
  245. data/doc/files/lib/TextParser/TokenDoc_rb.html +4 -3
  246. data/doc/files/lib/TextParser_rb.html +3 -2
  247. data/doc/files/lib/TextScanner_rb.html +3 -2
  248. data/doc/files/lib/Tj3Config_rb.html +3 -2
  249. data/doc/files/lib/TjException_rb.html +3 -2
  250. data/doc/files/lib/TjTime_rb.html +3 -2
  251. data/doc/files/lib/TjpExample_rb.html +3 -2
  252. data/doc/files/lib/TjpSyntaxRules_rb.html +3 -2
  253. data/doc/files/lib/UTF8String_rb.html +14 -6
  254. data/doc/files/lib/UserManual_rb.html +6 -3
  255. data/doc/files/lib/WorkingHours_rb.html +3 -2
  256. data/doc/files/lib/XMLDocument_rb.html +3 -2
  257. data/doc/files/lib/XMLElement_rb.html +3 -2
  258. data/doc/files/lib/deep_copy_rb.html +3 -2
  259. data/doc/files/lib/reports/CSVFile_rb.html +3 -2
  260. data/doc/files/lib/reports/ColumnTable_rb.html +3 -2
  261. data/doc/files/lib/reports/GanttChart_rb.html +3 -2
  262. data/doc/files/lib/reports/GanttContainer_rb.html +3 -2
  263. data/doc/files/lib/reports/GanttHeaderScaleItem_rb.html +3 -2
  264. data/doc/files/lib/reports/GanttHeader_rb.html +3 -2
  265. data/doc/files/lib/reports/GanttLine_rb.html +3 -2
  266. data/doc/files/lib/reports/GanttLoadStack_rb.html +3 -2
  267. data/doc/files/lib/reports/GanttMilestone_rb.html +3 -2
  268. data/doc/files/lib/reports/GanttRouter_rb.html +3 -2
  269. data/doc/files/lib/reports/GanttTaskBar_rb.html +3 -2
  270. data/doc/files/lib/reports/HTMLGraphics_rb.html +3 -2
  271. data/doc/files/lib/reports/Navigator_rb.html +3 -2
  272. data/doc/files/lib/reports/ReportBase_rb.html +3 -2
  273. data/doc/files/lib/reports/ReportContext_rb.html +3 -2
  274. data/doc/files/lib/reports/ReportTableCell_rb.html +3 -2
  275. data/doc/files/lib/reports/ReportTableColumn_rb.html +3 -2
  276. data/doc/files/lib/reports/ReportTableLegend_rb.html +3 -2
  277. data/doc/files/lib/reports/ReportTableLine_rb.html +3 -2
  278. data/doc/files/lib/reports/ReportTable_rb.html +3 -2
  279. data/doc/files/lib/reports/Report_rb.html +7 -2
  280. data/doc/files/lib/reports/ResourceListRE_rb.html +3 -2
  281. data/doc/files/lib/reports/TableReport_rb.html +3 -2
  282. data/doc/files/lib/reports/TaskListRE_rb.html +3 -2
  283. data/doc/files/lib/reports/TextReport_rb.html +4 -3
  284. data/doc/files/lib/reports/TimeSheetReport_rb.html +117 -0
  285. data/doc/files/lib/reports/TjpExportRE_rb.html +3 -2
  286. data/doc/files/lib/taskjuggler3_rb.html +94 -77
  287. data/doc/files/lib/tj3client_rb.html +280 -0
  288. data/doc/files/lib/tj3man_rb.html +10 -9
  289. data/doc/fr_class_index.html +27 -5
  290. data/doc/fr_file_index.html +15 -7
  291. data/doc/fr_method_index.html +1312 -1020
  292. data/examples/tutorial.tjp +113 -14
  293. data/gem_spec.rb +2 -1
  294. data/lib/Account.rb +1 -1
  295. data/lib/AccountScenario.rb +1 -1
  296. data/lib/Allocation.rb +1 -1
  297. data/lib/AppConfig.rb +23 -10
  298. data/lib/AttributeBase.rb +34 -6
  299. data/lib/AttributeDefinition.rb +1 -1
  300. data/lib/Attributes.rb +51 -16
  301. data/lib/BatchProcessor.rb +204 -77
  302. data/lib/Booking.rb +1 -1
  303. data/lib/Charge.rb +1 -1
  304. data/lib/ChargeSet.rb +1 -1
  305. data/lib/HTMLDocument.rb +2 -2
  306. data/lib/Interval.rb +1 -1
  307. data/lib/Journal.rb +231 -9
  308. data/lib/KeywordArray.rb +1 -1
  309. data/lib/KeywordDocumentation.rb +6 -4
  310. data/lib/Limits.rb +1 -1
  311. data/lib/Log.rb +8 -1
  312. data/lib/LogicalExpression.rb +14 -13
  313. data/lib/LogicalFunction.rb +88 -14
  314. data/lib/LogicalOperation.rb +124 -53
  315. data/lib/MacroParser.rb +1 -1
  316. data/lib/MacroTable.rb +2 -2
  317. data/lib/Message.rb +1 -1
  318. data/lib/MessageHandler.rb +7 -3
  319. data/lib/Project.rb +93 -14
  320. data/lib/ProjectFileParser.rb +30 -15
  321. data/lib/PropertyList.rb +103 -36
  322. data/lib/PropertySet.rb +22 -10
  323. data/lib/PropertyTreeNode.rb +120 -15
  324. data/lib/Query.rb +119 -48
  325. data/lib/{RTPNavigator.rb → RTFNavigator.rb} +11 -10
  326. data/lib/RTFQuery.rb +166 -0
  327. data/lib/{RTPReport.rb → RTFReport.rb} +11 -8
  328. data/lib/RealFormat.rb +1 -1
  329. data/lib/RemoteServiceManager.rb +80 -0
  330. data/lib/ReportServer.rb +66 -0
  331. data/lib/Resource.rb +1 -1
  332. data/lib/ResourceScenario.rb +48 -19
  333. data/lib/RichText.rb +98 -41
  334. data/lib/RichTextDocument.rb +10 -8
  335. data/lib/RichTextElement.rb +72 -28
  336. data/lib/{RichTextProtocolExample.rb → RichTextFunctionExample.rb} +8 -7
  337. data/lib/{RichTextProtocolHandler.rb → RichTextFunctionHandler.rb} +12 -14
  338. data/lib/RichTextParser.rb +6 -3
  339. data/lib/RichTextScanner.rb +91 -19
  340. data/lib/RichTextSnip.rb +8 -3
  341. data/lib/RichTextSyntaxRules.rb +103 -45
  342. data/lib/Scenario.rb +1 -1
  343. data/lib/ScenarioData.rb +2 -2
  344. data/lib/Scoreboard.rb +1 -1
  345. data/lib/Shift.rb +1 -1
  346. data/lib/ShiftAssignments.rb +1 -1
  347. data/lib/ShiftScenario.rb +1 -1
  348. data/lib/SourceFileInfo.rb +1 -1
  349. data/lib/SyntaxReference.rb +2 -2
  350. data/lib/TOCEntry.rb +1 -1
  351. data/lib/TableColumnDefinition.rb +59 -16
  352. data/lib/TableOfContents.rb +1 -1
  353. data/lib/Task.rb +1 -1
  354. data/lib/TaskDependency.rb +1 -1
  355. data/lib/TaskJuggler.rb +31 -8
  356. data/lib/TaskScenario.rb +165 -16
  357. data/lib/TextParser.rb +36 -22
  358. data/lib/TextParser/Pattern.rb +3 -3
  359. data/lib/TextParser/Rule.rb +2 -2
  360. data/lib/TextParser/StackElement.rb +4 -3
  361. data/lib/TextParser/TokenDoc.rb +2 -2
  362. data/lib/TextScanner.rb +52 -37
  363. data/lib/Tj3Config.rb +6 -5
  364. data/lib/TjException.rb +1 -1
  365. data/lib/TjTime.rb +12 -3
  366. data/lib/TjpExample.rb +1 -1
  367. data/lib/TjpSyntaxRules.rb +1044 -150
  368. data/lib/UTF8String.rb +2 -1
  369. data/lib/UserManual.rb +18 -70
  370. data/lib/WorkingHours.rb +3 -3
  371. data/lib/XMLDocument.rb +3 -2
  372. data/lib/XMLElement.rb +6 -1
  373. data/lib/deep_copy.rb +1 -1
  374. data/lib/reports/CSVFile.rb +1 -1
  375. data/lib/reports/ColumnTable.rb +9 -9
  376. data/lib/reports/GanttChart.rb +1 -1
  377. data/lib/reports/GanttContainer.rb +1 -1
  378. data/lib/reports/GanttHeader.rb +1 -1
  379. data/lib/reports/GanttHeaderScaleItem.rb +1 -1
  380. data/lib/reports/GanttLine.rb +40 -40
  381. data/lib/reports/GanttLoadStack.rb +1 -1
  382. data/lib/reports/GanttMilestone.rb +1 -1
  383. data/lib/reports/GanttRouter.rb +1 -1
  384. data/lib/reports/GanttTaskBar.rb +1 -1
  385. data/lib/reports/HTMLGraphics.rb +1 -1
  386. data/lib/reports/Navigator.rb +149 -22
  387. data/lib/reports/Report.rb +115 -172
  388. data/lib/reports/ReportBase.rb +22 -27
  389. data/lib/reports/ReportContext.rb +29 -15
  390. data/lib/reports/ReportTable.rb +1 -1
  391. data/lib/reports/ReportTableCell.rb +120 -27
  392. data/lib/reports/ReportTableColumn.rb +3 -3
  393. data/lib/reports/ReportTableLegend.rb +1 -1
  394. data/lib/reports/ReportTableLine.rb +10 -2
  395. data/lib/reports/ResourceListRE.rb +5 -1
  396. data/lib/reports/TableReport.rb +237 -287
  397. data/lib/reports/TaskListRE.rb +5 -1
  398. data/lib/reports/TextReport.rb +7 -4
  399. data/lib/reports/TimeSheetReport.rb +233 -0
  400. data/lib/reports/TjpExportRE.rb +2 -2
  401. data/lib/taskjuggler3.rb +27 -11
  402. data/lib/tj3client.rb +110 -0
  403. data/lib/tj3man.rb +4 -4
  404. data/manual/Getting_Started +0 -50
  405. data/manual/How_To_Contribute +6 -13
  406. data/manual/Installation +102 -28
  407. data/manual/Intro +11 -1
  408. data/manual/Reporting_Bugs +23 -7
  409. data/manual/Rich_Text_Attributes +59 -6
  410. data/manual/TaskJuggler_2x_Migration +27 -0
  411. data/manual/The_TaskJuggler_Syntax +104 -0
  412. data/manual/Tutorial +10 -9
  413. data/prj_cfg.rb +8 -2
  414. data/tasks/csts.rake +1 -1
  415. data/tasks/manual.rake +5 -3
  416. data/test/MessageChecker.rb +1 -1
  417. data/test/TestSuite/HTML-Reports/Alerts.html +172 -0
  418. data/test/TestSuite/HTML-Reports/Alerts.tjp +77 -0
  419. data/test/TestSuite/HTML-Reports/CellText.html +758 -0
  420. data/test/TestSuite/HTML-Reports/CellText.tjp +75 -0
  421. data/test/TestSuite/HTML-Reports/ColumnPeriods.html +156 -0
  422. data/test/TestSuite/HTML-Reports/ColumnPeriods.tjp +44 -0
  423. data/test/TestSuite/HTML-Reports/IsOngoing.html +172 -0
  424. data/test/TestSuite/HTML-Reports/IsOngoing.tjp +34 -0
  425. data/test/TestSuite/HTML-Reports/LogicalFunctions.html +80 -0
  426. data/test/TestSuite/HTML-Reports/LogicalFunctions.tjp +20 -0
  427. data/test/TestSuite/HTML-Reports/Query.html +31 -0
  428. data/test/TestSuite/HTML-Reports/Query.tjp +28 -0
  429. data/test/TestSuite/HTML-Reports/Sorting.tjp +68 -0
  430. data/test/TestSuite/HTML-Reports/TimeSheet.tjp +69 -0
  431. data/test/TestSuite/HTML-Reports/UDAQuery.tjp +27 -0
  432. data/test/TestSuite/HTML-Reports/css/tjmanual.css +52 -0
  433. data/test/TestSuite/HTML-Reports/css/tjreport.css +195 -0
  434. data/test/TestSuite/HTML-Reports/depArrows.html +842 -0
  435. data/test/TestSuite/HTML-Reports/icons/details.png +0 -0
  436. data/test/TestSuite/HTML-Reports/icons/flag-green.png +0 -0
  437. data/test/TestSuite/HTML-Reports/icons/flag-red.png +0 -0
  438. data/test/TestSuite/HTML-Reports/icons/flag-yellow.png +0 -0
  439. data/test/TestSuite/HTML-Reports/icons/resource.png +0 -0
  440. data/test/TestSuite/HTML-Reports/icons/resourcegroup.png +0 -0
  441. data/test/TestSuite/HTML-Reports/icons/task.png +0 -0
  442. data/test/TestSuite/HTML-Reports/icons/taskgroup.png +0 -0
  443. data/test/TestSuite/HTML-Reports/reference.tjp +7 -8
  444. data/test/TestSuite/HTML-Reports/scripts/scripts/wz_tooltip.js +1301 -0
  445. data/test/TestSuite/HTML-Reports/scripts/wz_tooltip.js +1301 -0
  446. data/test/TestSuite/Scheduler/Correct/Mandatory.tjp +34 -0
  447. data/test/TestSuite/Syntax/Correct/Celltext.tjp +2 -1
  448. data/test/TestSuite/Syntax/Correct/Journal.tjp +2 -2
  449. data/test/TestSuite/Syntax/Correct/LogicalExpression.tjp +2 -1
  450. data/test/TestSuite/Syntax/Correct/LogicalFunction.tjp +20 -0
  451. data/test/TestSuite/Syntax/Correct/Query.tjp +18 -0
  452. data/test/TestSuite/Syntax/Correct/StatusSheet.tjp +45 -0
  453. data/test/TestSuite/Syntax/Correct/TimeSheet.tjp +49 -0
  454. data/test/TestSuite/Syntax/Correct/icons/details.png +0 -0
  455. data/test/TestSuite/Syntax/Correct/icons/flag-green.png +0 -0
  456. data/test/TestSuite/Syntax/Correct/icons/flag-red.png +0 -0
  457. data/test/TestSuite/Syntax/Correct/icons/flag-yellow.png +0 -0
  458. data/test/TestSuite/Syntax/Correct/icons/resource.png +0 -0
  459. data/test/TestSuite/Syntax/Correct/icons/resourcegroup.png +0 -0
  460. data/test/TestSuite/Syntax/Correct/icons/task.png +0 -0
  461. data/test/TestSuite/Syntax/Correct/icons/taskgroup.png +0 -0
  462. data/test/TestSuite/Syntax/Correct/scripts/wz_tooltip.js +1301 -0
  463. data/test/TestSuite/Syntax/Correct/tutorial.tjp +113 -14
  464. data/test/TestSuite/Syntax/Errors/macro_stack_overflow.tjp +28 -0
  465. data/test/TestSuite/Syntax/Errors/unsupported_token.tjp +12 -0
  466. data/test/all.rb +2 -2
  467. data/test/test_BatchProcessor.rb +42 -13
  468. data/test/test_CSV-Reports.rb +1 -1
  469. data/test/test_Journal.rb +176 -0
  470. data/test/test_Limits.rb +1 -1
  471. data/test/test_LogicalExpression.rb +14 -5
  472. data/test/test_MacroTable.rb +1 -1
  473. data/test/test_Project.rb +1 -1
  474. data/test/test_PropertySet.rb +1 -1
  475. data/test/test_Query.rb +1 -1
  476. data/test/test_RealFormat.rb +1 -1
  477. data/test/test_RichText.rb +30 -20
  478. data/test/test_Scheduler.rb +1 -1
  479. data/test/test_ShiftAssignments.rb +2 -2
  480. data/test/test_Syntax.rb +1 -1
  481. data/test/test_TextScanner.rb +1 -1
  482. data/test/test_TjTime.rb +1 -1
  483. data/test/test_TjpExample.rb +1 -1
  484. data/test/test_UTF8String.rb +1 -1
  485. data/test/test_WorkingHours.rb +1 -1
  486. data/test/test_deep_copy.rb +2 -2
  487. metadata +610 -532
  488. data/doc/files/lib/ms_test_rb.html +0 -90
  489. data/examples/ContactList.html +0 -1467
  490. data/examples/Deliveries.html +0 -485
  491. data/examples/Development.html +0 -2525
  492. data/examples/Overview.html +0 -747
  493. data/examples/Resource Graph.html +0 -616
  494. data/lib/ms_test.rb +0 -27
  495. data/test/TestSuite/HTML-Reports/reference-export.html +0 -187
data/lib/tj3man.rb CHANGED
@@ -3,7 +3,7 @@
3
3
  #
4
4
  # = tj3man.rb -- The TaskJuggler III Project Management Software
5
5
  #
6
- # Copyright (c) 2006, 2007, 2008, 2009 by Chris Schlaeger <cs@kde.org>
6
+ # Copyright (c) 2006, 2007, 2008, 2009, 2010 by Chris Schlaeger <cs@kde.org>
7
7
  #
8
8
  # This program is free software; you can redistribute it and/or modify
9
9
  # it under the terms of version 2 of the GNU General Public License as
@@ -27,12 +27,12 @@ class Arguments
27
27
  @manual = false
28
28
 
29
29
  opts = OptionParser.new
30
- opts.banner = "#{AppConfig.packageName} v#{AppConfig.version} - " +
30
+ opts.banner = "#{AppConfig.softwareName} v#{AppConfig.version} - " +
31
31
  "#{AppConfig.packageInfo}\n\n" +
32
32
  "Copyright (c) #{AppConfig.copyright.join(', ')}" +
33
33
  " by #{AppConfig.authors.join(', ')}\n\n" +
34
34
  "#{AppConfig.license}\n" +
35
- "For more info about #{AppConfig.packageName} see " +
35
+ "For more info about #{AppConfig.softwareName} see " +
36
36
  "#{AppConfig.contact}\n"
37
37
  opts.separator ''
38
38
  opts.separator "Usage: #{AppConfig.appName} [options] [<keyword> ...]"
@@ -77,7 +77,7 @@ def main
77
77
  end
78
78
  end
79
79
 
80
- #$stderr.puts "#{AppConfig.packageName} v#{AppConfig.version} - " +
80
+ #$stderr.puts "#{AppConfig.softwareName} v#{AppConfig.version} - " +
81
81
  # "#{AppConfig.packageInfo}\n\n"
82
82
  #puts man.to_s(args.keyword)
83
83
 
@@ -60,53 +60,3 @@ define them in the following sequence.
60
60
  * [[report reports]]
61
61
  * [[export exports]]
62
62
 
63
- === Types of variable Syntax Elements ===
64
-
65
- ==== ABSOLUTE_ID ====
66
-
67
- An absolute identifier is composed of identifiers that are
68
- concatenated by dots, e. g. ''''foo.bar''''. It is used to reference
69
- a TaskJuggler property that lives in a hierarchical name space.
70
- Accounts, Tasks, Reports are examples for such hierarchical name
71
- spaces. To reference the sub-task ''''bar'''' of task ''''foo'''' the
72
- absolute ID ''''foo.bar'''' is used.
73
-
74
- ==== ID ====
75
-
76
- An identifier is composed of the letters ''''a'''' to ''''z'''',
77
- ''''A'''' to ''''Z'''', the underscore and the digits ''''0'''' to
78
- ''''9''''. There are no limits for the number of characters, but it
79
- may not begin with a digit.
80
-
81
- ==== INTEGER ====
82
-
83
- An integer is any natural number, e. g. ''''0'''', ''''1'''',
84
- ''''2'''' and so on.
85
-
86
- ==== STRING ====
87
-
88
- Strings are character sequences that are enclosed by special
89
- character marks. There are three different marks supported. For
90
- short strings that fit on one lines, you can either use single or
91
- double quotes.
92
-
93
- 'This is a single quoted string.'
94
- "This is a double quoted string."
95
-
96
- Single quoted strings may contain double quotes and vice versa.
97
-
98
- For multi-line strings cut mark strings are recommended. A
99
- cut-mark-string starts with ''''-8<-'''' (scissor on a dotted line) and
100
- ends with ''''->8-''''. The start mark must be immediately followed
101
- by a line break. The indentation of the first line must be repeated
102
- for all following lines of the string and is not included in the
103
- resulting strings. The terminating cut mark must only be preceeded by
104
- white spaces by may not be indented more than the first line indentation.
105
-
106
- -8<-
107
- This is a
108
- multi-line
109
- string.
110
- ->8-
111
-
112
-
@@ -31,13 +31,8 @@ for your TaskJuggler contributions, you should consider using a Linux
31
31
  Live (or bootable) CD/DVD or use a VmWare Player image of a Linux
32
32
  distribution.
33
33
 
34
- As a first step, you need to checkout the latest version of
35
- the TaskJuggler. This will create a directory called taskjuggler in
36
- your current directory. It not only contains the latest sources, but
37
- also the full revision history of the code. It is your local copy of
38
- the TaskJuggler source repository.
39
-
40
- git clone http://www.taskjuggler.org/git-repos/taskjuggler.git
34
+ Make sure you have followed the steps described in the
35
+ [Installation#Installation_Steps_for_Developers] chapter.
41
36
 
42
37
  If you have never used Git before, you need to configure it first. You
43
38
  need to set your name and email address. This information will be
@@ -46,12 +41,10 @@ present in all patches that you submit.
46
41
  git config --global user.name "Your Name"
47
42
  git config --global user.email "firstname.lastname@domain.org"
48
43
 
49
- See the [[Installation]] section for how to build and install
50
- TaskJuggler.
51
-
52
- Do not use the development snapshots and send your patches as plain
53
- diff files. After having switched to Git, we no longer accept such
54
- patches.
44
+ Do not use the development snapshots or send your patches as plain
45
+ diff files. We'd like to ensure that we know who contributed to
46
+ TaskJuggler. Therefor we are only accepting signed-off git patches
47
+ with full user names and valid email addresses.
55
48
 
56
49
  Next you need to find the files where you want to make your
57
50
  modifications. Sometimes files will be generated from other files. Do
data/manual/Installation CHANGED
@@ -2,11 +2,13 @@
2
2
 
3
3
  TaskJuggler III is written in [http://www.ruby-lang.org Ruby]. It
4
4
  should run on any platform that Ruby is available on. It uses the
5
- standard Ruby mechanism for distribution. The package format is called
6
- [http://docs.rubygems.org Ruby Gems]. Alternatively, you can install
7
- from a the source code using ''''setup.rb''''.
5
+ standard Ruby mechanism for distribution, a package format called
6
+ [http://docs.rubygems.org RubyGems].
8
7
 
9
- This is a prototype. Consider it being alpha quality at best!
8
+ TaskJuggler III is still under development. There is no stable
9
+ version yet. You are welcome to try it. Some users are already using
10
+ it successfully for their purposes, but it might not yet be right for
11
+ you.
10
12
 
11
13
  === Requirements ===
12
14
 
@@ -15,54 +17,126 @@ compile anything. But TaskJuggler has a very small set of
15
17
  dependencies that you have to take care of first. Please make sure you
16
18
  have the minimum required version installed.
17
19
 
18
- * ''Ruby'' TaskJuggler III is written in Ruby. You need a Ruby
20
+ * '''Ruby:''' TaskJuggler III is written in Ruby. You need a Ruby
19
21
  runtime environment to run it. This can be downloaded from
20
22
  [http://www.ruby-lang.org/en/downloads/ here]. Most Linux
21
23
  distributions usually have Ruby already included. So does MacOS X
22
24
  Leopard. For Windows, there is a one-click installer available.
23
- TaskJuggler currently needs at least Ruby version 1.8.5.
25
+ TaskJuggler currently needs at least Ruby version 1.8.6.
24
26
 
25
- * ''RubyGems'' If it did not come with your OS or Ruby package, see
26
- [http://docs.rubygems.org here] how to get and install it.
27
+ * '''RubyGems:''' If it did not come with your OS or the Ruby
28
+ installation, see [http://docs.rubygems.org here] how to get and
29
+ install it.
27
30
 
28
- * ''TaskJuggler'' Get TaskJuggler III from the
29
- [http://www.taskjuggler.org/download.php Download Page].
31
+ === Installation Steps for Users ===
30
32
 
31
- === Installation Process ===
33
+ ==== The easy way ====
32
34
 
33
- If you have downloaded the gem package, you can skip to the next
34
- paragraph. If you have checked-out the git repository, you need to
35
- build the Gem package first. Make sure, you have removed all other
36
- instances of TaskJuggler from you system before doing so. It is a
37
- common mistake to have an old version of the TaskJuggler installed and
38
- then use parts of the old and new version together.
35
+ TaskJuggler is a commandline tool. It does not (yet) have a graphical
36
+ user interface. To use it, you need to know how to open a command
37
+ or terminal window. In this manual, we refer to it as your shell. The
38
+ following paragraphs describe the commands you need to type into your
39
+ [http://en.wikipedia.org/wiki/Shell_(computing) shell].
39
40
 
40
- In addition to the above listed dependencies, you need to have the
41
- following packages installed:
41
+ On systems that already have Ruby and the gem package manager
42
+ installed you can simply type the following command into your shell
43
+ or command window:
42
44
 
43
- * [http://rake.rubyforge.org Rake] The Ruby build tool.
45
+ gem install taskjuggler
44
46
 
45
- * [http://eigenclass.org/hiki.rb?rcov rcov] The rcov code
46
- coverage analysis tool.
47
+ This will download and install the latest version from the
48
+ [http://gemcutter.org/ Gemcutter] site.
47
49
 
48
- The following command will create an archive file called a gem
49
- package.
50
+ ==== The manual way ====
51
+
52
+ If the easy way doesn't work for you, you need to download and install
53
+ the packages manually. Get TaskJuggler III from the
54
+ [http://www.taskjuggler.org/download.php Download Page].
50
55
 
51
- cd taskjuggler3; rake gem
52
-
53
56
  A gem package is an operating system and architecture independent
54
57
  archive file for Ruby programs. You can install it on any system that
55
- has Ruby and ruby-gems installed. Normally, you should be logged-in
58
+ has Ruby and RubyGems installed. Normally, you should be logged-in
56
59
  as root or administrator to run the following installation command.
60
+ Replace the X.X.X with the actual version that you have downloaded.
57
61
 
58
62
  gem install pkg/taskjuggler-X.X.X.gem
59
63
 
60
64
  It will install all components of the Gem in the appropriate place.
61
65
 
62
- === Update from previous versions ===
66
+ On user friendly Linux distributions, the start scripts will be
67
+ installed in a standard directory like ''''/usr/bin''''. On Debian
68
+ based distributions, the start scripts end up in a place like
69
+ ''''/var/lib/gems/1.8/bin/'''' that is not listed in the ''''PATH''''
70
+ variable. You either have to create a symbolic link for each start
71
+ script or add the directory to your PATH variable. If you use the
72
+ standard [http://en.wikipedia.org/wiki/Bash bash shell], put the
73
+ following line in your ''''${HOME}/.profile'''' file.
74
+
75
+ PATH=${PATH}:/var/lib/gems/1.8/bin/
76
+
77
+ Windows and MacOS platforms may require similar steps.
78
+
79
+ === Update from older TaskJuggler III versions ===
63
80
 
64
81
  Updates work just like the installation.
65
82
 
83
+ gem update taskjuggler
84
+
85
+ For downloaded or self-built packages use the following command:
86
+
66
87
  gem update pkg/taskjuggler-X.X.X.gem
67
88
 
68
89
 
90
+ === Installation Steps for Developers ===
91
+
92
+ The following description is for users that want to learn more about
93
+ TaskJuggler or want to make improvements. TaskJuggler is
94
+ [http://en.wikipedia.org/wiki/Open_source Open Source] software and
95
+ you are encouraged to read and modify the source code.
96
+
97
+ To get the source code, the recommended way it to check out the
98
+ latest code from the developer repository. To do this, you need to
99
+ have [http://www.kernel.org/pub/software/scm/git/docs/ git] installed.
100
+
101
+ Then checkout the source code with the following command
102
+
103
+ git clone http://www.taskjuggler.org/git-repos/taskjuggler3.git
104
+
105
+ Make sure, you
106
+ have removed all previously installed instances of TaskJuggler from
107
+ your system before doing so. It is a common mistake to have an old
108
+ version of the TaskJuggler installed and then use parts of the old and
109
+ new version together.
110
+
111
+ If your Ruby installation does not come with the
112
+ [http://rake.rubyforge.org Rake] build tool, you need to install it
113
+ now.
114
+
115
+ If you are interested in a code coverage analysis, you need to also
116
+ install the [http://eigenclass.org/hiki.rb?rcov rcov] code coverage
117
+ analysis tool. This tool is not needed for most developers. You can
118
+ safely ignore the warning during rake builds if you don't have it
119
+ installed.
120
+
121
+ The following command will create a gem package from the source code.
122
+
123
+ cd taskjuggler3; rake gem
124
+
125
+ If you plan to modify the TaskJuggler files, creating and installing
126
+ the gem file for every test run is not very comfortable. To run tj3
127
+ from source put the following code in ''''${HOME}/bin/tj3''''.
128
+
129
+ #! /usr/bin/ruby
130
+
131
+ # Set this to your source code directory
132
+ ENV['TASKJUGGLER_DATA_PATH'] = "#{ENV['HOME']}/src/taskjuggler3"
133
+
134
+ $:.unshift "#{ENV['TASKJUGGLER_DATA_PATH']}/lib/"
135
+
136
+ require "taskjuggler3"
137
+
138
+ Don't forget to mark it as executable.
139
+
140
+ chmod 750 ${HOME}/bin/tj3
141
+
142
+
data/manual/Intro CHANGED
@@ -63,7 +63,7 @@ the GNU General Public License] as published by the Free Software
63
63
  Foundation. You accept the terms of this license by distributing or
64
64
  using this software.
65
65
 
66
- This manual is Copyright (C) 2006, 2007, 2008, 2009 Chris Schlaeger.
66
+ This manual is Copyright (c) 2006, 2007, 2008, 2009, 2010 Chris Schlaeger.
67
67
 
68
68
  Permission is granted to copy, distribute and/or modify this document
69
69
  under the terms of the GNU Free Documentation License, Version 1.3
@@ -72,6 +72,16 @@ no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts.
72
72
  A copy of the license is included in the section entitled "GNU
73
73
  Free Documentation License".
74
74
 
75
+ The HTML reports use icons from the
76
+ [http://www.kde.org/people/credits/ KDE Icon Team]. The icons are
77
+ licensed under the [http://www.fsf.org/licenses/lgpl.html GNU Lesser
78
+ General Public License].
79
+
80
+ The HTML reports use Java Script code from [http://www.walterzorn.com
81
+ Walter Zorn]. The code is licensed under the
82
+ [http://www.fsf.org/licenses/lgpl.html GNU Lesser General Public
83
+ License].
84
+
75
85
  === Features and Highlights ===
76
86
 
77
87
  * Manages tasks, resources and costs in one package
@@ -15,19 +15,35 @@ particular, you should check the
15
15
  [http://groups.google.com/group/taskjuggler-bugs/topics existing bug
16
16
  reports].
17
17
 
18
- * Possibly the bug was already found
19
- and a patch or workaround exists.
18
+ * Possibly the bug was already found and a patch or workaround exists.
20
19
 
21
20
  * Try to create a test project that is as small as possible but still
22
21
  reproduces the bug.
23
22
 
24
23
  * If TaskJuggler has crashed you will usually get some debug output. This
25
24
  may not make any sense to you but it is vital information to analyze
26
- the bug. Please include it completely in your bug report.
25
+ the bug. Please include it completely in your bug report. Use the
26
+ following command to store the messages into a file.
27
+
28
+ tj3 yourproject.tjp 2> error_message
27
29
 
28
30
  * Send the test project and a detailed description of the problem to
29
- the [http://www.taskjuggler.org/forum.php TaskJuggler Developer
30
- Forum]. Not sending a test project is the most common mistake when
31
- reporting bugs. This usually triggers requests or leads to bug reports
32
- being ignored.
31
+ the TaskJuggler developers. If you are pretty confident, that you've
32
+ found a new bug, please post it to the
33
+ [http://groups.google.com/group/taskjuggler-bugs TaskJuggler Bug
34
+ Group]. If you aren't sure or want to provide patches or feedback,
35
+ please use the [http://groups.google.com/group/taskjuggler-dev
36
+ TaskJuggler Developer Group].
37
+
38
+ * When posting complete files, make sure you attach them. Don't paste
39
+ them into the body of the email. Some email servers and clients have
40
+ a habit of converting the body into HTML which will corrupt the file
41
+ contents. Unfortunately, the Google Groups web interface does not
42
+ support attachments. Please use a regular email program instead. The
43
+ posting addresses can be found on the above mentioned pages.
44
+
45
+ * Not attaching a test case will severely limit our abilities to help
46
+ you. Please make sure you provide meaningful descriptions and a small
47
+ but complete test project. Not providing this information usually
48
+ triggers requests or leads to bug reports being ignored.
33
49
 
@@ -112,20 +112,73 @@ by double or single quotes, make sure you don't use the same quoting
112
112
  marks for the parameter value. Alternatively you can put a backslash
113
113
  in front of the quote mark to escape it.
114
114
 
115
+ ----
115
116
  '''Block Generator''' ''''navigator''''
116
117
 
117
118
  Parameters:
118
119
 
119
- * id : ID of a defined [[navigator]]
120
-
121
- ''The navigator generator inserts the referenced navigator.''
120
+ * ''''id'''' : ID of a defined [[navigator]]
122
121
 
122
+ The navigator generator inserts the referenced navigator.
123
+ ----
123
124
  '''Block Generator''' ''''report''''
124
125
 
125
126
  Paramters:
126
127
 
127
- * id : ID of a defined [[report]]
128
+ * ''''id'''' : ID of a defined [[report]]
128
129
 
129
- ''The report generator inserts the referenced report as a new block
130
+ The report generator inserts the referenced report as a new block
130
131
  of this text. The referenced report inherits some context such as the
131
- report period and the property set from the referencing report.''
132
+ report period and the property set from the referencing report.
133
+ ----
134
+ '''Inline Generator''' ''''query''''
135
+
136
+ * ''''family'''' : Specifies whether a ''''task'''' or a ''''resource''''
137
+ should be queried.
138
+
139
+ * ''''property'''' : The ID of the task or resource to be queried. If no
140
+ property is specified, the query will return a global project
141
+ attribute.
142
+
143
+ * ''''scopeproperty'''' : The ID of the scope property. If the property is a
144
+ task this must be a resource ID and vice versa.
145
+
146
+ * ''''attribute'''' : The ID of the attribute which value should be returned
147
+ by the query. If a property ID is provided, this must be one of the
148
+ names that can be used as [[columnid]] values. Without a property,
149
+ global attributes of the project can be requested. The following
150
+ attributes are supported: ''''copyright'''', ''''currency'''',
151
+ ''''end'''', ''''name'''', ''''now'''', ''''projectid'''',
152
+ ''''start'''' and ''''version''''.
153
+
154
+ * ''''scenario'''' : The ID of a scenario. This must be provided whenever the
155
+ requested attribute is scenario specific.
156
+
157
+ * ''''start'''' : The start date of the report period of the current report.
158
+
159
+ * ''''end'''' : The end date of the report period of the current report.
160
+
161
+ * ''''loadunit'''' : The [[loadunit]] that should be used in case the
162
+ requested attribute is an effort or duration value.
163
+
164
+ * ''''timeformat'''' : The [[timeformat]] used to format date attributes.
165
+
166
+ * ''''numberformat'''' : The [[numberformat]] used to format arithmetic
167
+ attributes.
168
+
169
+ * ''''currencyformat'''' : The [[currencyformat]] used to format currency
170
+ values.
171
+
172
+ The query generator inserts any requested value from the project, a
173
+ task or a resource.
174
+
175
+ Queries are context aware. Depending on the context where the query
176
+ is used, certain or all of the above parameters have already
177
+ predefined values. When used in the header section of a report, the
178
+ context does not provide a property or scope property. Start and end
179
+ dates as well the formatting options are taken from the report
180
+ context. But when used e. g. in [[celltext.column]] the cell
181
+ provides, that property and the attribute and possibly even the scope
182
+ property.
183
+
184
+
@@ -38,3 +38,30 @@ What used to be ''''startup'''' is now ''''plan.start.up''''. See
38
38
  longer supported. The naming was inconsistent with TaskJuggler lingo
39
39
  and did not handle tasks and resources separately. It has been
40
40
  replaced with [[taskattributes]] and [[resourceattributes]].
41
+
42
+ * Shifts and limits for allocations have been deprecated. The concept
43
+ was bogus and not compatible with bookings. The functionality is
44
+ now provided by [[shifts.task shifts]] and [[limits.task limits]] on the
45
+ task level. Limits for a task can be [[limit.resources selectively
46
+ applied]] to certain resources.
47
+
48
+ * Support for reading and writing XML files is no longer available.
49
+ The content was redundant with the TJP file format and it was not
50
+ widely used. Keeping it in sync was too much of an effort to be worth
51
+ it. There is nothing in the TJ3 design that would prevent this
52
+ feature from being added again, but there are no plans for this right
53
+ now.
54
+
55
+ * The format for [[report reports]] has been changed considerably.
56
+ The old format was not very flexible and had some design flaws.
57
+ TaskJuggler III now supports report nesting and composition. A report
58
+ definition can be used to generated multiple output [[formats]]. The
59
+ name of a report must now be specified without the file name
60
+ extension. It will be automatically added depending on the output
61
+ format.
62
+
63
+ * IDs for properties such as tasks, resources and reports are now
64
+ optional. If you don't need to reference a property, you can omit the
65
+ ID. TaskJuggler will automatically assign an ID then.
66
+
67
+