taskjuggler 0.2.0 → 0.2.1

Sign up to get free protection for your applications and to get access to all the features.
Files changed (492) hide show
  1. data/CHANGELOG +7 -0
  2. data/data/tjp.vim +1 -1
  3. data/lib/exchangebug.rb +42 -0
  4. data/lib/ruby-signal-bug.rb +55 -0
  5. data/lib/taskjuggler/DataCache.rb +30 -41
  6. data/lib/taskjuggler/ResourceScenario.rb +19 -20
  7. data/lib/taskjuggler/TaskScenario.rb +11 -8
  8. data/lib/taskjuggler/Tj3Config.rb +1 -1
  9. data/prj_cfg.rb +3 -3
  10. data/test/TestSuite/Export-Reports/refs/DST.tjp +60 -0
  11. data/test/TestSuite/Export-Reports/refs/ReleasePlan.tjp +80 -0
  12. data/test/TestSuite/Export-Reports/tp.tjp +49 -0
  13. data/test/TestSuite/HTML-Reports/Alerts.html +412 -160
  14. data/test/TestSuite/HTML-Reports/TimeSheet.html +79 -0
  15. data/test/TestSuite/HTML-Reports/css/tjmanual.css +20 -0
  16. data/test/TestSuite/HTML-Reports/css/tjreport.css +7 -6
  17. data/test/TestSuite/HTML-Reports/reference.html +51 -0
  18. data/test/TestSuite/ReportGenerator/Correct/css/tjmanual.css +86 -0
  19. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/css/tjreport.css +0 -0
  20. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/icons/details.png +0 -0
  21. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/icons/flag-green.png +0 -0
  22. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/icons/flag-red.png +0 -0
  23. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/icons/flag-yellow.png +0 -0
  24. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/icons/resource.png +0 -0
  25. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/icons/resourcegroup.png +0 -0
  26. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/icons/task.png +0 -0
  27. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/icons/taskgroup.png +0 -0
  28. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/icons/trend-down.png +0 -0
  29. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/icons/trend-flat.png +0 -0
  30. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/icons/trend-up.png +0 -0
  31. data/test/TestSuite/ReportGenerator/Correct/opennodes.tjp +26 -0
  32. data/test/TestSuite/ReportGenerator/Correct/refs/opennodes-1.csv +2 -0
  33. data/test/TestSuite/{Scheduler/Errors → ReportGenerator/Correct}/scripts/wz_tooltip.js +0 -0
  34. data/test/TestSuite/Scheduler/Correct/Allocate.html +1075 -0
  35. data/test/TestSuite/Scheduler/Correct/Duration.html +610 -0
  36. data/test/TestSuite/Scheduler/{Errors → Correct}/css/tjmanual.css +0 -0
  37. data/test/TestSuite/Scheduler/Correct/css/tjreport.css +413 -0
  38. data/test/TestSuite/Scheduler/Correct/icons/details.png +0 -0
  39. data/test/TestSuite/Scheduler/Correct/icons/flag-green.png +0 -0
  40. data/test/TestSuite/Scheduler/Correct/icons/flag-red.png +0 -0
  41. data/test/TestSuite/Scheduler/Correct/icons/flag-yellow.png +0 -0
  42. data/test/TestSuite/Scheduler/Correct/icons/resource.png +0 -0
  43. data/test/TestSuite/Scheduler/Correct/icons/resourcegroup.png +0 -0
  44. data/test/TestSuite/Scheduler/Correct/icons/task.png +0 -0
  45. data/test/TestSuite/Scheduler/Correct/icons/taskgroup.png +0 -0
  46. data/test/TestSuite/Scheduler/Correct/icons/trend-down.png +0 -0
  47. data/test/TestSuite/Scheduler/Correct/icons/trend-flat.png +0 -0
  48. data/test/TestSuite/Scheduler/Correct/icons/trend-up.png +0 -0
  49. data/test/TestSuite/{HTML-Reports/scripts → Scheduler/Correct}/scripts/wz_tooltip.js +20 -20
  50. data/test/TestSuite/StatusSheetTemplates/project.tji +35 -0
  51. data/test/TestSuite/StatusSheetTemplates/project.tjp +56 -0
  52. data/test/TestSuite/StatusSheets/TimeSheets/2002-03-01/resource1_2002-03-01.tji +0 -0
  53. data/test/TestSuite/Syntax/Correct/DST.tjp +11 -0
  54. data/test/TestSuite/Syntax/Correct/ReleasePlan.tjp +32 -0
  55. data/test/TestSuite/TimeSheets/receiver.log.mod +1056 -0
  56. data/test/TestSuite/TimeSheets/uu.txt +29 -0
  57. metadata +672 -1076
  58. data/benchmarks/UTF-8-Strings.rb +0 -58
  59. data/benchmarks/htmltaskreport-1.html +0 -47702
  60. data/benchmarks/htmltaskreport-2.html +0 -23345
  61. data/benchmarks/htmltaskreport-3.html +0 -23265
  62. data/benchmarks/htmltaskreport-4.html +0 -22135
  63. data/benchmarks/profile.clt +0 -36082
  64. data/benchmarks/tj3.profile +0 -0
  65. data/benchmarks/tj3.profile.grind +0 -6185
  66. data/benchmarks/tj3.profile.symbols +0 -432
  67. data/benchmarks/tj3.profile.txt +0 -448
  68. data/doc/AppConfig.html +0 -1515
  69. data/doc/CHANGELOG.html +0 -2441
  70. data/doc/COPYING.html +0 -923
  71. data/doc/Diff.html +0 -1217
  72. data/doc/Diff/Hunk.html +0 -1050
  73. data/doc/Diffable.html +0 -708
  74. data/doc/DiffableString.html +0 -708
  75. data/doc/Object.html +0 -744
  76. data/doc/README_rdoc.html +0 -774
  77. data/doc/RuntimeConfig.html +0 -880
  78. data/doc/String.html +0 -1029
  79. data/doc/TaskJuggler.html +0 -2698
  80. data/doc/TaskJuggler/Account.html +0 -777
  81. data/doc/TaskJuggler/AccountAttribute.html +0 -793
  82. data/doc/TaskJuggler/AccountScenario.html +0 -736
  83. data/doc/TaskJuggler/Allocation.html +0 -987
  84. data/doc/TaskJuggler/AllocationAttribute.html +0 -823
  85. data/doc/TaskJuggler/AttributeBase.html +0 -1379
  86. data/doc/TaskJuggler/AttributeDefinition.html +0 -839
  87. data/doc/TaskJuggler/AttributeOverwrite.html +0 -630
  88. data/doc/TaskJuggler/BatchProcessor.html +0 -1202
  89. data/doc/TaskJuggler/Booking.html +0 -883
  90. data/doc/TaskJuggler/BookingListAttribute.html +0 -793
  91. data/doc/TaskJuggler/BooleanAttribute.html +0 -793
  92. data/doc/TaskJuggler/CSVFile.html +0 -1152
  93. data/doc/TaskJuggler/CellSettingPattern.html +0 -724
  94. data/doc/TaskJuggler/CellSettingPatternList.html +0 -773
  95. data/doc/TaskJuggler/Charge.html +0 -801
  96. data/doc/TaskJuggler/ChargeListAttribute.html +0 -757
  97. data/doc/TaskJuggler/ChargeSet.html +0 -973
  98. data/doc/TaskJuggler/ChargeSetListAttribute.html +0 -802
  99. data/doc/TaskJuggler/CollisionDetector.html +0 -1113
  100. data/doc/TaskJuggler/ColumnListAttribute.html +0 -757
  101. data/doc/TaskJuggler/ColumnTable.html +0 -787
  102. data/doc/TaskJuggler/Daemon.html +0 -843
  103. data/doc/TaskJuggler/DataCache.html +0 -1049
  104. data/doc/TaskJuggler/DataCacheEntry.html +0 -761
  105. data/doc/TaskJuggler/DateAttribute.html +0 -761
  106. data/doc/TaskJuggler/DefinitionListAttribute.html +0 -679
  107. data/doc/TaskJuggler/DependencyListAttribute.html +0 -797
  108. data/doc/TaskJuggler/DurationAttribute.html +0 -794
  109. data/doc/TaskJuggler/FileList.html +0 -817
  110. data/doc/TaskJuggler/FileRecord.html +0 -726
  111. data/doc/TaskJuggler/FixnumAttribute.html +0 -715
  112. data/doc/TaskJuggler/FlagListAttribute.html +0 -793
  113. data/doc/TaskJuggler/FloatAttribute.html +0 -757
  114. data/doc/TaskJuggler/FormatListAttribute.html +0 -721
  115. data/doc/TaskJuggler/GanttChart.html +0 -1511
  116. data/doc/TaskJuggler/GanttContainer.html +0 -969
  117. data/doc/TaskJuggler/GanttHeader.html +0 -972
  118. data/doc/TaskJuggler/GanttHeaderScaleItem.html +0 -786
  119. data/doc/TaskJuggler/GanttLine.html +0 -1349
  120. data/doc/TaskJuggler/GanttLoadStack.html +0 -852
  121. data/doc/TaskJuggler/GanttMilestone.html +0 -950
  122. data/doc/TaskJuggler/GanttRouter.html +0 -1160
  123. data/doc/TaskJuggler/GanttTaskBar.html +0 -972
  124. data/doc/TaskJuggler/HTMLDocument.html +0 -800
  125. data/doc/TaskJuggler/HTMLElements.html +0 -623
  126. data/doc/TaskJuggler/HTMLGraphics.html +0 -861
  127. data/doc/TaskJuggler/ICalReport.html +0 -864
  128. data/doc/TaskJuggler/ICalendar.html +0 -1035
  129. data/doc/TaskJuggler/ICalendar/Component.html +0 -969
  130. data/doc/TaskJuggler/ICalendar/Event.html +0 -742
  131. data/doc/TaskJuggler/ICalendar/Journal.html +0 -722
  132. data/doc/TaskJuggler/ICalendar/Person.html +0 -633
  133. data/doc/TaskJuggler/ICalendar/Todo.html +0 -789
  134. data/doc/TaskJuggler/Interval.html +0 -1003
  135. data/doc/TaskJuggler/IntervalList.html +0 -821
  136. data/doc/TaskJuggler/JobInfo.html +0 -967
  137. data/doc/TaskJuggler/Journal.html +0 -1272
  138. data/doc/TaskJuggler/JournalEntry.html +0 -884
  139. data/doc/TaskJuggler/JournalEntryList.html +0 -1253
  140. data/doc/TaskJuggler/KeywordArray.html +0 -720
  141. data/doc/TaskJuggler/KeywordDocumentation.html +0 -2274
  142. data/doc/TaskJuggler/Limits.html +0 -1019
  143. data/doc/TaskJuggler/Limits/Limit.html +0 -1022
  144. data/doc/TaskJuggler/LimitsAttribute.html +0 -759
  145. data/doc/TaskJuggler/ListAttributeBase.html +0 -727
  146. data/doc/TaskJuggler/Log.html +0 -1187
  147. data/doc/TaskJuggler/LogFile.html +0 -1004
  148. data/doc/TaskJuggler/LogicalAttribute.html +0 -784
  149. data/doc/TaskJuggler/LogicalExpression.html +0 -825
  150. data/doc/TaskJuggler/LogicalExpressionAttribute.html +0 -715
  151. data/doc/TaskJuggler/LogicalExpressionListAttribute.html +0 -715
  152. data/doc/TaskJuggler/LogicalFlag.html +0 -777
  153. data/doc/TaskJuggler/LogicalFunction.html +0 -1433
  154. data/doc/TaskJuggler/LogicalOperation.html +0 -1168
  155. data/doc/TaskJuggler/ManagerResponsibilities.html +0 -760
  156. data/doc/TaskJuggler/ManagerStatusRecord.html +0 -764
  157. data/doc/TaskJuggler/Message.html +0 -861
  158. data/doc/TaskJuggler/MessageHandler.html +0 -1102
  159. data/doc/TaskJuggler/Navigator.html +0 -967
  160. data/doc/TaskJuggler/NavigatorElement.html +0 -1018
  161. data/doc/TaskJuggler/NikuProject.html +0 -748
  162. data/doc/TaskJuggler/NikuReport.html +0 -1494
  163. data/doc/TaskJuggler/NikuResource.html +0 -718
  164. data/doc/TaskJuggler/NodeListAttribute.html +0 -679
  165. data/doc/TaskJuggler/PlaceHolderCell.html +0 -772
  166. data/doc/TaskJuggler/ProcessIntercom.html +0 -1041
  167. data/doc/TaskJuggler/ProcessIntercomIface.html +0 -797
  168. data/doc/TaskJuggler/Project.html +0 -3741
  169. data/doc/TaskJuggler/ProjectBroker.html +0 -1700
  170. data/doc/TaskJuggler/ProjectBrokerIface.html +0 -875
  171. data/doc/TaskJuggler/ProjectFileParser.html +0 -2127
  172. data/doc/TaskJuggler/ProjectFileScanner.html +0 -1921
  173. data/doc/TaskJuggler/ProjectRecord.html +0 -1002
  174. data/doc/TaskJuggler/ProjectServer.html +0 -1273
  175. data/doc/TaskJuggler/ProjectServerIface.html +0 -892
  176. data/doc/TaskJuggler/PropertyAttribute.html +0 -715
  177. data/doc/TaskJuggler/PropertyList.html +0 -1423
  178. data/doc/TaskJuggler/PropertySet.html +0 -1816
  179. data/doc/TaskJuggler/PropertyTreeNode.html +0 -2895
  180. data/doc/TaskJuggler/Query.html +0 -1783
  181. data/doc/TaskJuggler/RTFHandlers.html +0 -688
  182. data/doc/TaskJuggler/RTFNavigator.html +0 -816
  183. data/doc/TaskJuggler/RTFQuery.html +0 -1107
  184. data/doc/TaskJuggler/RTFReport.html +0 -844
  185. data/doc/TaskJuggler/RTFReportLink.html +0 -836
  186. data/doc/TaskJuggler/RTFWithQuerySupport.html +0 -726
  187. data/doc/TaskJuggler/RealFormat.html +0 -829
  188. data/doc/TaskJuggler/RealFormatAttribute.html +0 -679
  189. data/doc/TaskJuggler/ReferenceAttribute.html +0 -904
  190. data/doc/TaskJuggler/Report.html +0 -1645
  191. data/doc/TaskJuggler/ReportBase.html +0 -1192
  192. data/doc/TaskJuggler/ReportContext.html +0 -861
  193. data/doc/TaskJuggler/ReportScenario.html +0 -633
  194. data/doc/TaskJuggler/ReportServer.html +0 -1092
  195. data/doc/TaskJuggler/ReportServerIface.html +0 -926
  196. data/doc/TaskJuggler/ReportServerRecord.html +0 -805
  197. data/doc/TaskJuggler/ReportServlet.html +0 -1053
  198. data/doc/TaskJuggler/ReportTable.html +0 -1203
  199. data/doc/TaskJuggler/ReportTableCell.html +0 -1690
  200. data/doc/TaskJuggler/ReportTableColumn.html +0 -914
  201. data/doc/TaskJuggler/ReportTableLegend.html +0 -1084
  202. data/doc/TaskJuggler/ReportTableLine.html +0 -1091
  203. data/doc/TaskJuggler/Resource.html +0 -1066
  204. data/doc/TaskJuggler/ResourceListAttribute.html +0 -853
  205. data/doc/TaskJuggler/ResourceListRE.html +0 -761
  206. data/doc/TaskJuggler/ResourceScenario.html +0 -2591
  207. data/doc/TaskJuggler/RichText.html +0 -903
  208. data/doc/TaskJuggler/RichTextAttribute.html +0 -835
  209. data/doc/TaskJuggler/RichTextDocument.html +0 -1062
  210. data/doc/TaskJuggler/RichTextElement.html +0 -1804
  211. data/doc/TaskJuggler/RichTextFunctionExample.html +0 -823
  212. data/doc/TaskJuggler/RichTextFunctionHandler.html +0 -774
  213. data/doc/TaskJuggler/RichTextImage.html +0 -736
  214. data/doc/TaskJuggler/RichTextIntermediate.html +0 -1309
  215. data/doc/TaskJuggler/RichTextParser.html +0 -892
  216. data/doc/TaskJuggler/RichTextScanner.html +0 -1589
  217. data/doc/TaskJuggler/RichTextSnip.html +0 -1024
  218. data/doc/TaskJuggler/RichTextSyntaxRules.html +0 -2076
  219. data/doc/TaskJuggler/Scenario.html +0 -680
  220. data/doc/TaskJuggler/ScenarioData.html +0 -905
  221. data/doc/TaskJuggler/ScenarioListAttribute.html +0 -757
  222. data/doc/TaskJuggler/Scoreboard.html +0 -1265
  223. data/doc/TaskJuggler/ScoreboardInterval.html +0 -1116
  224. data/doc/TaskJuggler/SheetHandlerBase.html +0 -1321
  225. data/doc/TaskJuggler/SheetReceiver.html +0 -1422
  226. data/doc/TaskJuggler/SheetSender.html +0 -1192
  227. data/doc/TaskJuggler/Shift.html +0 -775
  228. data/doc/TaskJuggler/ShiftAssignment.html +0 -1032
  229. data/doc/TaskJuggler/ShiftAssignments.html +0 -1438
  230. data/doc/TaskJuggler/ShiftAssignmentsAttribute.html +0 -759
  231. data/doc/TaskJuggler/ShiftScenario.html +0 -806
  232. data/doc/TaskJuggler/SimpleQueryExpander.html +0 -756
  233. data/doc/TaskJuggler/SortListAttribute.html +0 -715
  234. data/doc/TaskJuggler/StatusSheetReceiver.html +0 -702
  235. data/doc/TaskJuggler/StatusSheetReport.html +0 -959
  236. data/doc/TaskJuggler/StatusSheetSender.html +0 -832
  237. data/doc/TaskJuggler/StdIoWrapper.html +0 -720
  238. data/doc/TaskJuggler/StringAttribute.html +0 -757
  239. data/doc/TaskJuggler/SymbolAttribute.html +0 -715
  240. data/doc/TaskJuggler/SyntaxReference.html +0 -1264
  241. data/doc/TaskJuggler/TOCEntry.html +0 -860
  242. data/doc/TaskJuggler/TSResourceRecord.html +0 -756
  243. data/doc/TaskJuggler/TSTaskRecord.html +0 -768
  244. data/doc/TaskJuggler/TableColumnDefinition.html +0 -973
  245. data/doc/TaskJuggler/TableOfContents.html +0 -814
  246. data/doc/TaskJuggler/TableReport.html +0 -2580
  247. data/doc/TaskJuggler/TagFile.html +0 -817
  248. data/doc/TaskJuggler/TagFile/TagFileEntry.html +0 -841
  249. data/doc/TaskJuggler/Task.html +0 -914
  250. data/doc/TaskJuggler/TaskDepListAttribute.html +0 -797
  251. data/doc/TaskJuggler/TaskDependency.html +0 -856
  252. data/doc/TaskJuggler/TaskListAttribute.html +0 -797
  253. data/doc/TaskJuggler/TaskListRE.html +0 -760
  254. data/doc/TaskJuggler/TaskScenario.html +0 -5237
  255. data/doc/TaskJuggler/TernarySearchTree.html +0 -1365
  256. data/doc/TaskJuggler/TextFormatter.html +0 -997
  257. data/doc/TaskJuggler/TextParser.html +0 -1886
  258. data/doc/TaskJuggler/TextParser/Macro.html +0 -732
  259. data/doc/TaskJuggler/TextParser/MacroTable.html +0 -856
  260. data/doc/TaskJuggler/TextParser/Pattern.html +0 -1767
  261. data/doc/TaskJuggler/TextParser/Rule.html +0 -1443
  262. data/doc/TaskJuggler/TextParser/Scanner.html +0 -1542
  263. data/doc/TaskJuggler/TextParser/Scanner/BufferStreamHandle.html +0 -685
  264. data/doc/TaskJuggler/TextParser/Scanner/FileStreamHandle.html +0 -751
  265. data/doc/TaskJuggler/TextParser/Scanner/MacroStackEntry.html +0 -748
  266. data/doc/TaskJuggler/TextParser/Scanner/StreamHandle.html +0 -1128
  267. data/doc/TaskJuggler/TextParser/SourceFileInfo.html +0 -784
  268. data/doc/TaskJuggler/TextParser/StackElement.html +0 -964
  269. data/doc/TaskJuggler/TextParser/State.html +0 -1039
  270. data/doc/TaskJuggler/TextParser/StateTransition.html +0 -832
  271. data/doc/TaskJuggler/TextParser/TextParserResultArray.html +0 -735
  272. data/doc/TaskJuggler/TextParser/TokenDoc.html +0 -766
  273. data/doc/TaskJuggler/TextReport.html +0 -945
  274. data/doc/TaskJuggler/TimeInterval.html +0 -841
  275. data/doc/TaskJuggler/TimeIntervalListAttribute.html +0 -797
  276. data/doc/TaskJuggler/TimeSheet.html +0 -1288
  277. data/doc/TaskJuggler/TimeSheetReceiver.html +0 -699
  278. data/doc/TaskJuggler/TimeSheetRecord.html +0 -1439
  279. data/doc/TaskJuggler/TimeSheetReport.html +0 -1037
  280. data/doc/TaskJuggler/TimeSheetSender.html +0 -724
  281. data/doc/TaskJuggler/TimeSheetSummary.html +0 -983
  282. data/doc/TaskJuggler/TimeSheets.html +0 -760
  283. data/doc/TaskJuggler/Tj3.html +0 -896
  284. data/doc/TaskJuggler/Tj3AppBase.html +0 -966
  285. data/doc/TaskJuggler/Tj3Client.html +0 -1534
  286. data/doc/TaskJuggler/Tj3Daemon.html +0 -894
  287. data/doc/TaskJuggler/Tj3Man.html +0 -792
  288. data/doc/TaskJuggler/Tj3SheetAppBase.html +0 -782
  289. data/doc/TaskJuggler/Tj3SsReceiver.html +0 -771
  290. data/doc/TaskJuggler/Tj3SsSender.html +0 -804
  291. data/doc/TaskJuggler/Tj3TsReceiver.html +0 -771
  292. data/doc/TaskJuggler/Tj3TsSender.html +0 -791
  293. data/doc/TaskJuggler/Tj3TsSummary.html +0 -799
  294. data/doc/TaskJuggler/TjException.html +0 -716
  295. data/doc/TaskJuggler/TjRuntimeError.html +0 -630
  296. data/doc/TaskJuggler/TjTime.html +0 -3179
  297. data/doc/TaskJuggler/TjpExample.html +0 -921
  298. data/doc/TaskJuggler/TjpExportRE.html +0 -1851
  299. data/doc/TaskJuggler/TjpSyntaxRules.html +0 -14721
  300. data/doc/TaskJuggler/URLParameter.html +0 -715
  301. data/doc/TaskJuggler/UserManual.html +0 -1248
  302. data/doc/TaskJuggler/VimSyntax.html +0 -1088
  303. data/doc/TaskJuggler/WebServer.html +0 -781
  304. data/doc/TaskJuggler/WelcomePage.html +0 -813
  305. data/doc/TaskJuggler/WorkingHours.html +0 -1293
  306. data/doc/TaskJuggler/WorkingHoursAttribute.html +0 -780
  307. data/doc/TaskJuggler/XMLBlob.html +0 -731
  308. data/doc/TaskJuggler/XMLComment.html +0 -726
  309. data/doc/TaskJuggler/XMLDocument.html +0 -827
  310. data/doc/TaskJuggler/XMLElement.html +0 -1014
  311. data/doc/TaskJuggler/XMLNamedText.html +0 -687
  312. data/doc/TaskJuggler/XMLText.html +0 -741
  313. data/doc/index.html +0 -4664
  314. data/doc/lib/taskjuggler/AccountScenario_rb.html +0 -69
  315. data/doc/lib/taskjuggler/Account_rb.html +0 -71
  316. data/doc/lib/taskjuggler/AlgorithmDiff_rb.html +0 -67
  317. data/doc/lib/taskjuggler/Allocation_rb.html +0 -71
  318. data/doc/lib/taskjuggler/AppConfig_rb.html +0 -69
  319. data/doc/lib/taskjuggler/AttributeBase_rb.html +0 -69
  320. data/doc/lib/taskjuggler/AttributeDefinition_rb.html +0 -67
  321. data/doc/lib/taskjuggler/Attributes_rb.html +0 -83
  322. data/doc/lib/taskjuggler/BatchProcessor_rb.html +0 -71
  323. data/doc/lib/taskjuggler/Booking_rb.html +0 -67
  324. data/doc/lib/taskjuggler/ChargeSet_rb.html +0 -69
  325. data/doc/lib/taskjuggler/Charge_rb.html +0 -69
  326. data/doc/lib/taskjuggler/DataCache_rb.html +0 -71
  327. data/doc/lib/taskjuggler/FileList_rb.html +0 -67
  328. data/doc/lib/taskjuggler/HTMLDocument_rb.html +0 -71
  329. data/doc/lib/taskjuggler/HTMLElements_rb.html +0 -69
  330. data/doc/lib/taskjuggler/ICalendar_rb.html +0 -69
  331. data/doc/lib/taskjuggler/IntervalList_rb.html +0 -69
  332. data/doc/lib/taskjuggler/Interval_rb.html +0 -69
  333. data/doc/lib/taskjuggler/Journal_rb.html +0 -67
  334. data/doc/lib/taskjuggler/KeywordArray_rb.html +0 -67
  335. data/doc/lib/taskjuggler/KeywordDocumentation_rb.html +0 -77
  336. data/doc/lib/taskjuggler/Limits_rb.html +0 -69
  337. data/doc/lib/taskjuggler/LogFile_rb.html +0 -69
  338. data/doc/lib/taskjuggler/Log_rb.html +0 -71
  339. data/doc/lib/taskjuggler/LogicalExpression_rb.html +0 -73
  340. data/doc/lib/taskjuggler/LogicalFunction_rb.html +0 -69
  341. data/doc/lib/taskjuggler/LogicalOperation_rb.html +0 -69
  342. data/doc/lib/taskjuggler/MessageHandler_rb.html +0 -69
  343. data/doc/lib/taskjuggler/ProjectFileParser_rb.html +0 -77
  344. data/doc/lib/taskjuggler/ProjectFileScanner_rb.html +0 -69
  345. data/doc/lib/taskjuggler/Project_rb.html +0 -113
  346. data/doc/lib/taskjuggler/PropertyList_rb.html +0 -67
  347. data/doc/lib/taskjuggler/PropertySet_rb.html +0 -71
  348. data/doc/lib/taskjuggler/PropertyTreeNode_rb.html +0 -67
  349. data/doc/lib/taskjuggler/Query_rb.html +0 -69
  350. data/doc/lib/taskjuggler/RealFormat_rb.html +0 -67
  351. data/doc/lib/taskjuggler/ResourceScenario_rb.html +0 -69
  352. data/doc/lib/taskjuggler/Resource_rb.html +0 -71
  353. data/doc/lib/taskjuggler/RichText/Document_rb.html +0 -73
  354. data/doc/lib/taskjuggler/RichText/Element_rb.html +0 -75
  355. data/doc/lib/taskjuggler/RichText/FunctionExample_rb.html +0 -73
  356. data/doc/lib/taskjuggler/RichText/FunctionHandler_rb.html +0 -67
  357. data/doc/lib/taskjuggler/RichText/Parser_rb.html +0 -75
  358. data/doc/lib/taskjuggler/RichText/RTFHandlers_rb.html +0 -75
  359. data/doc/lib/taskjuggler/RichText/RTFNavigator_rb.html +0 -73
  360. data/doc/lib/taskjuggler/RichText/RTFQuery_rb.html +0 -73
  361. data/doc/lib/taskjuggler/RichText/RTFReportLink_rb.html +0 -75
  362. data/doc/lib/taskjuggler/RichText/RTFReport_rb.html +0 -71
  363. data/doc/lib/taskjuggler/RichText/RTFWithQuerySupport_rb.html +0 -69
  364. data/doc/lib/taskjuggler/RichText/Scanner_rb.html +0 -71
  365. data/doc/lib/taskjuggler/RichText/Snip_rb.html +0 -71
  366. data/doc/lib/taskjuggler/RichText/SyntaxRules_rb.html +0 -67
  367. data/doc/lib/taskjuggler/RichText/TOCEntry_rb.html +0 -71
  368. data/doc/lib/taskjuggler/RichText/TableOfContents_rb.html +0 -71
  369. data/doc/lib/taskjuggler/RichText_rb.html +0 -73
  370. data/doc/lib/taskjuggler/RuntimeConfig_rb.html +0 -69
  371. data/doc/lib/taskjuggler/ScenarioData_rb.html +0 -71
  372. data/doc/lib/taskjuggler/Scenario_rb.html +0 -69
  373. data/doc/lib/taskjuggler/Scoreboard_rb.html +0 -69
  374. data/doc/lib/taskjuggler/SheetHandlerBase_rb.html +0 -75
  375. data/doc/lib/taskjuggler/SheetReceiver_rb.html +0 -81
  376. data/doc/lib/taskjuggler/SheetSender_rb.html +0 -79
  377. data/doc/lib/taskjuggler/ShiftAssignments_rb.html +0 -71
  378. data/doc/lib/taskjuggler/ShiftScenario_rb.html +0 -69
  379. data/doc/lib/taskjuggler/Shift_rb.html +0 -71
  380. data/doc/lib/taskjuggler/SimpleQueryExpander_rb.html +0 -69
  381. data/doc/lib/taskjuggler/StatusSheetReceiver_rb.html +0 -69
  382. data/doc/lib/taskjuggler/StatusSheetSender_rb.html +0 -69
  383. data/doc/lib/taskjuggler/StdIoWrapper_rb.html +0 -67
  384. data/doc/lib/taskjuggler/SyntaxReference_rb.html +0 -75
  385. data/doc/lib/taskjuggler/TableColumnDefinition_rb.html +0 -67
  386. data/doc/lib/taskjuggler/TaskDependency_rb.html +0 -67
  387. data/doc/lib/taskjuggler/TaskJuggler_rb.html +0 -75
  388. data/doc/lib/taskjuggler/TaskScenario_rb.html +0 -71
  389. data/doc/lib/taskjuggler/Task_rb.html +0 -71
  390. data/doc/lib/taskjuggler/TernarySearchTree_rb.html +0 -69
  391. data/doc/lib/taskjuggler/TextFormatter_rb.html +0 -69
  392. data/doc/lib/taskjuggler/TextParser/MacroTable_rb.html +0 -67
  393. data/doc/lib/taskjuggler/TextParser/Pattern_rb.html +0 -71
  394. data/doc/lib/taskjuggler/TextParser/Rule_rb.html +0 -69
  395. data/doc/lib/taskjuggler/TextParser/Scanner_rb.html +0 -77
  396. data/doc/lib/taskjuggler/TextParser/SourceFileInfo_rb.html +0 -67
  397. data/doc/lib/taskjuggler/TextParser/StackElement_rb.html +0 -67
  398. data/doc/lib/taskjuggler/TextParser/State_rb.html +0 -67
  399. data/doc/lib/taskjuggler/TextParser/TokenDoc_rb.html +0 -67
  400. data/doc/lib/taskjuggler/TextParser_rb.html +0 -79
  401. data/doc/lib/taskjuggler/TimeSheetReceiver_rb.html +0 -69
  402. data/doc/lib/taskjuggler/TimeSheetSender_rb.html +0 -69
  403. data/doc/lib/taskjuggler/TimeSheetSummary_rb.html +0 -69
  404. data/doc/lib/taskjuggler/TimeSheets_rb.html +0 -67
  405. data/doc/lib/taskjuggler/Tj3AppBase_rb.html +0 -79
  406. data/doc/lib/taskjuggler/Tj3Config_rb.html +0 -71
  407. data/doc/lib/taskjuggler/Tj3SheetAppBase_rb.html +0 -69
  408. data/doc/lib/taskjuggler/TjException_rb.html +0 -67
  409. data/doc/lib/taskjuggler/TjTime_rb.html +0 -71
  410. data/doc/lib/taskjuggler/TjpExample_rb.html +0 -69
  411. data/doc/lib/taskjuggler/TjpSyntaxRules_rb.html +0 -67
  412. data/doc/lib/taskjuggler/URLParameter_rb.html +0 -69
  413. data/doc/lib/taskjuggler/UTF8String_rb.html +0 -69
  414. data/doc/lib/taskjuggler/UserManual_rb.html +0 -81
  415. data/doc/lib/taskjuggler/VimSyntax_rb.html +0 -69
  416. data/doc/lib/taskjuggler/WorkingHours_rb.html +0 -71
  417. data/doc/lib/taskjuggler/XMLDocument_rb.html +0 -69
  418. data/doc/lib/taskjuggler/XMLElement_rb.html +0 -69
  419. data/doc/lib/taskjuggler/apps/Tj3Client_rb.html +0 -75
  420. data/doc/lib/taskjuggler/apps/Tj3Daemon_rb.html +0 -75
  421. data/doc/lib/taskjuggler/apps/Tj3Man_rb.html +0 -75
  422. data/doc/lib/taskjuggler/apps/Tj3SsReceiver_rb.html +0 -71
  423. data/doc/lib/taskjuggler/apps/Tj3SsSender_rb.html +0 -71
  424. data/doc/lib/taskjuggler/apps/Tj3TsReceiver_rb.html +0 -71
  425. data/doc/lib/taskjuggler/apps/Tj3TsSender_rb.html +0 -71
  426. data/doc/lib/taskjuggler/apps/Tj3TsSummary_rb.html +0 -71
  427. data/doc/lib/taskjuggler/apps/Tj3_rb.html +0 -71
  428. data/doc/lib/taskjuggler/daemon/Daemon_rb.html +0 -69
  429. data/doc/lib/taskjuggler/daemon/ProcessIntercom_rb.html +0 -71
  430. data/doc/lib/taskjuggler/daemon/ProjectBroker_rb.html +0 -83
  431. data/doc/lib/taskjuggler/daemon/ProjectServer_rb.html +0 -85
  432. data/doc/lib/taskjuggler/daemon/ReportServer_rb.html +0 -73
  433. data/doc/lib/taskjuggler/daemon/ReportServlet_rb.html +0 -69
  434. data/doc/lib/taskjuggler/daemon/WebServer_rb.html +0 -81
  435. data/doc/lib/taskjuggler/daemon/WelcomePage_rb.html +0 -71
  436. data/doc/lib/taskjuggler/deep_copy_rb.html +0 -67
  437. data/doc/lib/taskjuggler/reports/CSVFile_rb.html +0 -69
  438. data/doc/lib/taskjuggler/reports/CollisionDetector_rb.html +0 -69
  439. data/doc/lib/taskjuggler/reports/ColumnTable_rb.html +0 -69
  440. data/doc/lib/taskjuggler/reports/GanttChart_rb.html +0 -75
  441. data/doc/lib/taskjuggler/reports/GanttContainer_rb.html +0 -69
  442. data/doc/lib/taskjuggler/reports/GanttHeaderScaleItem_rb.html +0 -67
  443. data/doc/lib/taskjuggler/reports/GanttHeader_rb.html +0 -69
  444. data/doc/lib/taskjuggler/reports/GanttLine_rb.html +0 -79
  445. data/doc/lib/taskjuggler/reports/GanttLoadStack_rb.html +0 -69
  446. data/doc/lib/taskjuggler/reports/GanttMilestone_rb.html +0 -69
  447. data/doc/lib/taskjuggler/reports/GanttRouter_rb.html +0 -69
  448. data/doc/lib/taskjuggler/reports/GanttTaskBar_rb.html +0 -69
  449. data/doc/lib/taskjuggler/reports/HTMLGraphics_rb.html +0 -67
  450. data/doc/lib/taskjuggler/reports/ICalReport_rb.html +0 -71
  451. data/doc/lib/taskjuggler/reports/Navigator_rb.html +0 -69
  452. data/doc/lib/taskjuggler/reports/NikuReport_rb.html +0 -71
  453. data/doc/lib/taskjuggler/reports/ReportBase_rb.html +0 -67
  454. data/doc/lib/taskjuggler/reports/ReportContext_rb.html +0 -67
  455. data/doc/lib/taskjuggler/reports/ReportTableCell_rb.html +0 -67
  456. data/doc/lib/taskjuggler/reports/ReportTableColumn_rb.html +0 -67
  457. data/doc/lib/taskjuggler/reports/ReportTableLegend_rb.html +0 -67
  458. data/doc/lib/taskjuggler/reports/ReportTableLine_rb.html +0 -69
  459. data/doc/lib/taskjuggler/reports/ReportTable_rb.html +0 -71
  460. data/doc/lib/taskjuggler/reports/Report_rb.html +0 -97
  461. data/doc/lib/taskjuggler/reports/ResourceListRE_rb.html +0 -75
  462. data/doc/lib/taskjuggler/reports/StatusSheetReport_rb.html +0 -69
  463. data/doc/lib/taskjuggler/reports/TableReport_rb.html +0 -77
  464. data/doc/lib/taskjuggler/reports/TagFile_rb.html +0 -71
  465. data/doc/lib/taskjuggler/reports/TaskListRE_rb.html +0 -75
  466. data/doc/lib/taskjuggler/reports/TextReport_rb.html +0 -69
  467. data/doc/lib/taskjuggler/reports/TimeSheetReport_rb.html +0 -69
  468. data/doc/lib/taskjuggler/reports/TjpExportRE_rb.html +0 -69
  469. data/doc/lib/tj3_rb.html +0 -69
  470. data/doc/lib/tj3client_rb.html +0 -69
  471. data/doc/lib/tj3d_rb.html +0 -69
  472. data/doc/lib/tj3man_rb.html +0 -69
  473. data/doc/lib/tj3ss_receiver_rb.html +0 -69
  474. data/doc/lib/tj3ss_sender_rb.html +0 -69
  475. data/doc/lib/tj3ts_receiver_rb.html +0 -69
  476. data/doc/lib/tj3ts_sender_rb.html +0 -69
  477. data/doc/lib/tj3ts_summary_rb.html +0 -69
  478. data/doc/rdoc.css +0 -706
  479. data/test/TestSuite/Export-Reports/refs/CompletedWork.tji.tjp +0 -40
  480. data/test/TestSuite/HTML-Reports/CellText.html +0 -758
  481. data/test/TestSuite/HTML-Reports/ColumnPeriods.html +0 -156
  482. data/test/TestSuite/HTML-Reports/IsOngoing.html +0 -172
  483. data/test/TestSuite/HTML-Reports/LogicalFunctions.html +0 -245
  484. data/test/TestSuite/HTML-Reports/Query.html +0 -31
  485. data/test/TestSuite/HTML-Reports/depArrows.html +0 -851
  486. data/test/TestSuite/HTML-Reports/profile.html +0 -37581
  487. data/test/TestSuite/Scheduler/Errors/R.html +0 -113
  488. data/test/TestSuite/StatusSheets/dev2.tji +0 -22
  489. data/test/TestSuite/Syntax/Correct/CompletedWork.tji.tjp +0 -38
  490. data/test/TestSuite/TimeSheets/resrep.tji +0 -7
  491. data/test/TestSuite/TimeSheets/ts.tji +0 -351
  492. data/test/TestSuite/TimeSheets/tsdef.tji +0 -2
@@ -1,1851 +0,0 @@
1
- <?xml version="1.0" encoding="utf-8"?>
2
- <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
3
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
4
- <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
5
- <head>
6
- <meta content="text/html; charset=utf-8" http-equiv="Content-Type" />
7
-
8
- <title>Class: TaskJuggler::TjpExportRE</title>
9
-
10
- <link rel="stylesheet" href="../rdoc.css" type="text/css" media="screen" />
11
-
12
- <script src="../js/jquery.js" type="text/javascript"
13
- charset="utf-8"></script>
14
- <script src="../js/thickbox-compressed.js" type="text/javascript"
15
- charset="utf-8"></script>
16
- <script src="../js/quicksearch.js" type="text/javascript"
17
- charset="utf-8"></script>
18
- <script src="../js/darkfish.js" type="text/javascript"
19
- charset="utf-8"></script>
20
-
21
- </head>
22
- <body class="class">
23
-
24
- <div id="metadata">
25
- <div id="home-metadata">
26
- <div id="home-section" class="section">
27
- <h3 class="section-header">
28
- <a href="../index.html">Home</a>
29
- <a href="../index.html#classes">Classes</a>
30
- <a href="../index.html#methods">Methods</a>
31
- </h3>
32
- </div>
33
- </div>
34
-
35
- <div id="file-metadata">
36
- <div id="file-list-section" class="section">
37
- <h3 class="section-header">In Files</h3>
38
- <div class="section-body">
39
- <ul>
40
-
41
- <li><a href="../lib/taskjuggler/reports/TjpExportRE_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
42
- class="thickbox" title="lib/taskjuggler/reports/TjpExportRE.rb">lib/taskjuggler/reports/TjpExportRE.rb</a></li>
43
-
44
- </ul>
45
- </div>
46
- </div>
47
-
48
-
49
- </div>
50
-
51
- <div id="class-metadata">
52
-
53
- <!-- Parent Class -->
54
-
55
- <div id="parent-class-section" class="section">
56
- <h3 class="section-header">Parent</h3>
57
-
58
- <p class="link"><a href="ReportBase.html">TaskJuggler::ReportBase</a></p>
59
-
60
- </div>
61
-
62
-
63
- <!-- Namespace Contents -->
64
-
65
-
66
- <!-- Method Quickref -->
67
-
68
- <div id="method-list-section" class="section">
69
- <h3 class="section-header">Methods</h3>
70
- <ul class="link-list">
71
-
72
- <li><a href="#method-c-new">::new</a></li>
73
-
74
- <li><a href="#method-i-generateAttribute">#generateAttribute</a></li>
75
-
76
- <li><a href="#method-i-generateAttributeText">#generateAttributeText</a></li>
77
-
78
- <li><a href="#method-i-generateBookingsByResource">#generateBookingsByResource</a></li>
79
-
80
- <li><a href="#method-i-generateBookingsByTask">#generateBookingsByTask</a></li>
81
-
82
- <li><a href="#method-i-generateCustomAttributeDeclarations">#generateCustomAttributeDeclarations</a></li>
83
-
84
- <li><a href="#method-i-generateFlagDeclaration">#generateFlagDeclaration</a></li>
85
-
86
- <li><a href="#method-i-generateIntermediateFormat">#generateIntermediateFormat</a></li>
87
-
88
- <li><a href="#method-i-generateProjectIDs">#generateProjectIDs</a></li>
89
-
90
- <li><a href="#method-i-generateProjectProperty">#generateProjectProperty</a></li>
91
-
92
- <li><a href="#method-i-generateResource">#generateResource</a></li>
93
-
94
- <li><a href="#method-i-generateResourceAttributes">#generateResourceAttributes</a></li>
95
-
96
- <li><a href="#method-i-generateResourceList">#generateResourceList</a></li>
97
-
98
- <li><a href="#method-i-generateScenarioDefinition">#generateScenarioDefinition</a></li>
99
-
100
- <li><a href="#method-i-generateTask">#generateTask</a></li>
101
-
102
- <li><a href="#method-i-generateTaskAttributes">#generateTaskAttributes</a></li>
103
-
104
- <li><a href="#method-i-generateTaskDependency">#generateTaskDependency</a></li>
105
-
106
- <li><a href="#method-i-generateTaskList">#generateTaskList</a></li>
107
-
108
- <li><a href="#method-i-getBookings">#getBookings</a></li>
109
-
110
- <li><a href="#method-i-indentBlock">#indentBlock</a></li>
111
-
112
- <li><a href="#method-i-inheritable%3F">#inheritable?</a></li>
113
-
114
- <li><a href="#method-i-quotedString">#quotedString</a></li>
115
-
116
- <li><a href="#method-i-to_tjp">#to_tjp</a></li>
117
-
118
- </ul>
119
- </div>
120
-
121
-
122
- <!-- Included Modules -->
123
-
124
- </div>
125
-
126
- <div id="project-metadata">
127
-
128
-
129
- <div id="fileindex-section" class="section project-section">
130
- <h3 class="section-header">Files</h3>
131
- <ul>
132
-
133
- <li class="file"><a href="../CHANGELOG.html">CHANGELOG</a></li>
134
-
135
- <li class="file"><a href="../COPYING.html">COPYING</a></li>
136
-
137
- <li class="file"><a href="../README_rdoc.html">README.rdoc</a></li>
138
-
139
- </ul>
140
- </div>
141
-
142
-
143
- <div id="classindex-section" class="section project-section">
144
- <h3 class="section-header">Class Index
145
- <span class="search-toggle"><img src="../images/find.png"
146
- height="16" width="16" alt="[+]"
147
- title="show/hide quicksearch" /></span></h3>
148
- <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
149
- <fieldset>
150
- <legend>Quicksearch</legend>
151
- <input type="text" name="quicksearch" value=""
152
- class="quicksearch-field" />
153
- </fieldset>
154
- </form>
155
-
156
- <ul class="link-list">
157
-
158
- <li><a href="../TaskJuggler.html">TaskJuggler</a></li>
159
-
160
- <li><a href="../TaskJuggler/Account.html">TaskJuggler::Account</a></li>
161
-
162
- <li><a href="../TaskJuggler/AccountAttribute.html">TaskJuggler::AccountAttribute</a></li>
163
-
164
- <li><a href="../TaskJuggler/AccountScenario.html">TaskJuggler::AccountScenario</a></li>
165
-
166
- <li><a href="../TaskJuggler/Allocation.html">TaskJuggler::Allocation</a></li>
167
-
168
- <li><a href="../TaskJuggler/AllocationAttribute.html">TaskJuggler::AllocationAttribute</a></li>
169
-
170
- <li><a href="../TaskJuggler/AttributeBase.html">TaskJuggler::AttributeBase</a></li>
171
-
172
- <li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
173
-
174
- <li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
175
-
176
- <li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
177
-
178
- <li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
179
-
180
- <li><a href="../TaskJuggler/BookingListAttribute.html">TaskJuggler::BookingListAttribute</a></li>
181
-
182
- <li><a href="../TaskJuggler/BooleanAttribute.html">TaskJuggler::BooleanAttribute</a></li>
183
-
184
- <li><a href="../TaskJuggler/CSVFile.html">TaskJuggler::CSVFile</a></li>
185
-
186
- <li><a href="../TaskJuggler/CellSettingPattern.html">TaskJuggler::CellSettingPattern</a></li>
187
-
188
- <li><a href="../TaskJuggler/CellSettingPatternList.html">TaskJuggler::CellSettingPatternList</a></li>
189
-
190
- <li><a href="../TaskJuggler/Charge.html">TaskJuggler::Charge</a></li>
191
-
192
- <li><a href="../TaskJuggler/ChargeListAttribute.html">TaskJuggler::ChargeListAttribute</a></li>
193
-
194
- <li><a href="../TaskJuggler/ChargeSet.html">TaskJuggler::ChargeSet</a></li>
195
-
196
- <li><a href="../TaskJuggler/ChargeSetListAttribute.html">TaskJuggler::ChargeSetListAttribute</a></li>
197
-
198
- <li><a href="../TaskJuggler/CollisionDetector.html">TaskJuggler::CollisionDetector</a></li>
199
-
200
- <li><a href="../TaskJuggler/ColumnListAttribute.html">TaskJuggler::ColumnListAttribute</a></li>
201
-
202
- <li><a href="../TaskJuggler/ColumnTable.html">TaskJuggler::ColumnTable</a></li>
203
-
204
- <li><a href="../TaskJuggler/Daemon.html">TaskJuggler::Daemon</a></li>
205
-
206
- <li><a href="../TaskJuggler/DataCache.html">TaskJuggler::DataCache</a></li>
207
-
208
- <li><a href="../TaskJuggler/DataCacheEntry.html">TaskJuggler::DataCacheEntry</a></li>
209
-
210
- <li><a href="../TaskJuggler/DateAttribute.html">TaskJuggler::DateAttribute</a></li>
211
-
212
- <li><a href="../TaskJuggler/DefinitionListAttribute.html">TaskJuggler::DefinitionListAttribute</a></li>
213
-
214
- <li><a href="../TaskJuggler/DependencyListAttribute.html">TaskJuggler::DependencyListAttribute</a></li>
215
-
216
- <li><a href="../TaskJuggler/DurationAttribute.html">TaskJuggler::DurationAttribute</a></li>
217
-
218
- <li><a href="../TaskJuggler/FileList.html">TaskJuggler::FileList</a></li>
219
-
220
- <li><a href="../TaskJuggler/FileRecord.html">TaskJuggler::FileRecord</a></li>
221
-
222
- <li><a href="../TaskJuggler/FixnumAttribute.html">TaskJuggler::FixnumAttribute</a></li>
223
-
224
- <li><a href="../TaskJuggler/FlagListAttribute.html">TaskJuggler::FlagListAttribute</a></li>
225
-
226
- <li><a href="../TaskJuggler/FloatAttribute.html">TaskJuggler::FloatAttribute</a></li>
227
-
228
- <li><a href="../TaskJuggler/FormatListAttribute.html">TaskJuggler::FormatListAttribute</a></li>
229
-
230
- <li><a href="../TaskJuggler/GanttChart.html">TaskJuggler::GanttChart</a></li>
231
-
232
- <li><a href="../TaskJuggler/GanttContainer.html">TaskJuggler::GanttContainer</a></li>
233
-
234
- <li><a href="../TaskJuggler/GanttHeader.html">TaskJuggler::GanttHeader</a></li>
235
-
236
- <li><a href="../TaskJuggler/GanttHeaderScaleItem.html">TaskJuggler::GanttHeaderScaleItem</a></li>
237
-
238
- <li><a href="../TaskJuggler/GanttLine.html">TaskJuggler::GanttLine</a></li>
239
-
240
- <li><a href="../TaskJuggler/GanttLoadStack.html">TaskJuggler::GanttLoadStack</a></li>
241
-
242
- <li><a href="../TaskJuggler/GanttMilestone.html">TaskJuggler::GanttMilestone</a></li>
243
-
244
- <li><a href="../TaskJuggler/GanttRouter.html">TaskJuggler::GanttRouter</a></li>
245
-
246
- <li><a href="../TaskJuggler/GanttTaskBar.html">TaskJuggler::GanttTaskBar</a></li>
247
-
248
- <li><a href="../TaskJuggler/HTMLDocument.html">TaskJuggler::HTMLDocument</a></li>
249
-
250
- <li><a href="../TaskJuggler/HTMLElements.html">TaskJuggler::HTMLElements</a></li>
251
-
252
- <li><a href="../TaskJuggler/HTMLGraphics.html">TaskJuggler::HTMLGraphics</a></li>
253
-
254
- <li><a href="../TaskJuggler/ICalReport.html">TaskJuggler::ICalReport</a></li>
255
-
256
- <li><a href="../TaskJuggler/ICalendar.html">TaskJuggler::ICalendar</a></li>
257
-
258
- <li><a href="../TaskJuggler/ICalendar/Component.html">TaskJuggler::ICalendar::Component</a></li>
259
-
260
- <li><a href="../TaskJuggler/ICalendar/Event.html">TaskJuggler::ICalendar::Event</a></li>
261
-
262
- <li><a href="../TaskJuggler/ICalendar/Journal.html">TaskJuggler::ICalendar::Journal</a></li>
263
-
264
- <li><a href="../TaskJuggler/ICalendar/Person.html">TaskJuggler::ICalendar::Person</a></li>
265
-
266
- <li><a href="../TaskJuggler/ICalendar/Todo.html">TaskJuggler::ICalendar::Todo</a></li>
267
-
268
- <li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
269
-
270
- <li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
271
-
272
- <li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
273
-
274
- <li><a href="../TaskJuggler/Journal.html">TaskJuggler::Journal</a></li>
275
-
276
- <li><a href="../TaskJuggler/JournalEntry.html">TaskJuggler::JournalEntry</a></li>
277
-
278
- <li><a href="../TaskJuggler/JournalEntryList.html">TaskJuggler::JournalEntryList</a></li>
279
-
280
- <li><a href="../TaskJuggler/KeywordArray.html">TaskJuggler::KeywordArray</a></li>
281
-
282
- <li><a href="../TaskJuggler/KeywordDocumentation.html">TaskJuggler::KeywordDocumentation</a></li>
283
-
284
- <li><a href="../TaskJuggler/Limits.html">TaskJuggler::Limits</a></li>
285
-
286
- <li><a href="../TaskJuggler/Limits/Limit.html">TaskJuggler::Limits::Limit</a></li>
287
-
288
- <li><a href="../TaskJuggler/LimitsAttribute.html">TaskJuggler::LimitsAttribute</a></li>
289
-
290
- <li><a href="../TaskJuggler/ListAttributeBase.html">TaskJuggler::ListAttributeBase</a></li>
291
-
292
- <li><a href="../TaskJuggler/Log.html">TaskJuggler::Log</a></li>
293
-
294
- <li><a href="../TaskJuggler/LogFile.html">TaskJuggler::LogFile</a></li>
295
-
296
- <li><a href="../TaskJuggler/LogicalAttribute.html">TaskJuggler::LogicalAttribute</a></li>
297
-
298
- <li><a href="../TaskJuggler/LogicalExpression.html">TaskJuggler::LogicalExpression</a></li>
299
-
300
- <li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
301
-
302
- <li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
303
-
304
- <li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
305
-
306
- <li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
307
-
308
- <li><a href="../TaskJuggler/LogicalOperation.html">TaskJuggler::LogicalOperation</a></li>
309
-
310
- <li><a href="../TaskJuggler/ManagerResponsibilities.html">TaskJuggler::ManagerResponsibilities</a></li>
311
-
312
- <li><a href="../TaskJuggler/ManagerStatusRecord.html">TaskJuggler::ManagerStatusRecord</a></li>
313
-
314
- <li><a href="../TaskJuggler/Message.html">TaskJuggler::Message</a></li>
315
-
316
- <li><a href="../TaskJuggler/MessageHandler.html">TaskJuggler::MessageHandler</a></li>
317
-
318
- <li><a href="../TaskJuggler/Navigator.html">TaskJuggler::Navigator</a></li>
319
-
320
- <li><a href="../TaskJuggler/NavigatorElement.html">TaskJuggler::NavigatorElement</a></li>
321
-
322
- <li><a href="../TaskJuggler/NikuProject.html">TaskJuggler::NikuProject</a></li>
323
-
324
- <li><a href="../TaskJuggler/NikuReport.html">TaskJuggler::NikuReport</a></li>
325
-
326
- <li><a href="../TaskJuggler/NikuResource.html">TaskJuggler::NikuResource</a></li>
327
-
328
- <li><a href="../TaskJuggler/NodeListAttribute.html">TaskJuggler::NodeListAttribute</a></li>
329
-
330
- <li><a href="../TaskJuggler/PlaceHolderCell.html">TaskJuggler::PlaceHolderCell</a></li>
331
-
332
- <li><a href="../TaskJuggler/ProcessIntercom.html">TaskJuggler::ProcessIntercom</a></li>
333
-
334
- <li><a href="../TaskJuggler/ProcessIntercomIface.html">TaskJuggler::ProcessIntercomIface</a></li>
335
-
336
- <li><a href="../TaskJuggler/Project.html">TaskJuggler::Project</a></li>
337
-
338
- <li><a href="../TaskJuggler/ProjectBroker.html">TaskJuggler::ProjectBroker</a></li>
339
-
340
- <li><a href="../TaskJuggler/ProjectBrokerIface.html">TaskJuggler::ProjectBrokerIface</a></li>
341
-
342
- <li><a href="../TaskJuggler/ProjectFileParser.html">TaskJuggler::ProjectFileParser</a></li>
343
-
344
- <li><a href="../TaskJuggler/ProjectFileScanner.html">TaskJuggler::ProjectFileScanner</a></li>
345
-
346
- <li><a href="../TaskJuggler/ProjectRecord.html">TaskJuggler::ProjectRecord</a></li>
347
-
348
- <li><a href="../TaskJuggler/ProjectServer.html">TaskJuggler::ProjectServer</a></li>
349
-
350
- <li><a href="../TaskJuggler/ProjectServerIface.html">TaskJuggler::ProjectServerIface</a></li>
351
-
352
- <li><a href="../TaskJuggler/PropertyAttribute.html">TaskJuggler::PropertyAttribute</a></li>
353
-
354
- <li><a href="../TaskJuggler/PropertyList.html">TaskJuggler::PropertyList</a></li>
355
-
356
- <li><a href="../TaskJuggler/PropertySet.html">TaskJuggler::PropertySet</a></li>
357
-
358
- <li><a href="../TaskJuggler/PropertyTreeNode.html">TaskJuggler::PropertyTreeNode</a></li>
359
-
360
- <li><a href="../TaskJuggler/Query.html">TaskJuggler::Query</a></li>
361
-
362
- <li><a href="../TaskJuggler/RTFHandlers.html">TaskJuggler::RTFHandlers</a></li>
363
-
364
- <li><a href="../TaskJuggler/RTFNavigator.html">TaskJuggler::RTFNavigator</a></li>
365
-
366
- <li><a href="../TaskJuggler/RTFQuery.html">TaskJuggler::RTFQuery</a></li>
367
-
368
- <li><a href="../TaskJuggler/RTFReport.html">TaskJuggler::RTFReport</a></li>
369
-
370
- <li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
371
-
372
- <li><a href="../TaskJuggler/RTFWithQuerySupport.html">TaskJuggler::RTFWithQuerySupport</a></li>
373
-
374
- <li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
375
-
376
- <li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
377
-
378
- <li><a href="../TaskJuggler/ReferenceAttribute.html">TaskJuggler::ReferenceAttribute</a></li>
379
-
380
- <li><a href="../TaskJuggler/Report.html">TaskJuggler::Report</a></li>
381
-
382
- <li><a href="../TaskJuggler/ReportBase.html">TaskJuggler::ReportBase</a></li>
383
-
384
- <li><a href="../TaskJuggler/ReportContext.html">TaskJuggler::ReportContext</a></li>
385
-
386
- <li><a href="../TaskJuggler/ReportScenario.html">TaskJuggler::ReportScenario</a></li>
387
-
388
- <li><a href="../TaskJuggler/ReportServer.html">TaskJuggler::ReportServer</a></li>
389
-
390
- <li><a href="../TaskJuggler/ReportServerIface.html">TaskJuggler::ReportServerIface</a></li>
391
-
392
- <li><a href="../TaskJuggler/ReportServerRecord.html">TaskJuggler::ReportServerRecord</a></li>
393
-
394
- <li><a href="../TaskJuggler/ReportServlet.html">TaskJuggler::ReportServlet</a></li>
395
-
396
- <li><a href="../TaskJuggler/ReportTable.html">TaskJuggler::ReportTable</a></li>
397
-
398
- <li><a href="../TaskJuggler/ReportTableCell.html">TaskJuggler::ReportTableCell</a></li>
399
-
400
- <li><a href="../TaskJuggler/ReportTableColumn.html">TaskJuggler::ReportTableColumn</a></li>
401
-
402
- <li><a href="../TaskJuggler/ReportTableLegend.html">TaskJuggler::ReportTableLegend</a></li>
403
-
404
- <li><a href="../TaskJuggler/ReportTableLine.html">TaskJuggler::ReportTableLine</a></li>
405
-
406
- <li><a href="../TaskJuggler/Resource.html">TaskJuggler::Resource</a></li>
407
-
408
- <li><a href="../TaskJuggler/ResourceListAttribute.html">TaskJuggler::ResourceListAttribute</a></li>
409
-
410
- <li><a href="../TaskJuggler/ResourceListRE.html">TaskJuggler::ResourceListRE</a></li>
411
-
412
- <li><a href="../TaskJuggler/ResourceScenario.html">TaskJuggler::ResourceScenario</a></li>
413
-
414
- <li><a href="../TaskJuggler/RichText.html">TaskJuggler::RichText</a></li>
415
-
416
- <li><a href="../TaskJuggler/RichTextAttribute.html">TaskJuggler::RichTextAttribute</a></li>
417
-
418
- <li><a href="../TaskJuggler/RichTextDocument.html">TaskJuggler::RichTextDocument</a></li>
419
-
420
- <li><a href="../TaskJuggler/RichTextElement.html">TaskJuggler::RichTextElement</a></li>
421
-
422
- <li><a href="../TaskJuggler/RichTextFunctionExample.html">TaskJuggler::RichTextFunctionExample</a></li>
423
-
424
- <li><a href="../TaskJuggler/RichTextFunctionHandler.html">TaskJuggler::RichTextFunctionHandler</a></li>
425
-
426
- <li><a href="../TaskJuggler/RichTextImage.html">TaskJuggler::RichTextImage</a></li>
427
-
428
- <li><a href="../TaskJuggler/RichTextIntermediate.html">TaskJuggler::RichTextIntermediate</a></li>
429
-
430
- <li><a href="../TaskJuggler/RichTextParser.html">TaskJuggler::RichTextParser</a></li>
431
-
432
- <li><a href="../TaskJuggler/RichTextScanner.html">TaskJuggler::RichTextScanner</a></li>
433
-
434
- <li><a href="../TaskJuggler/RichTextSnip.html">TaskJuggler::RichTextSnip</a></li>
435
-
436
- <li><a href="../TaskJuggler/RichTextSyntaxRules.html">TaskJuggler::RichTextSyntaxRules</a></li>
437
-
438
- <li><a href="../TaskJuggler/Scenario.html">TaskJuggler::Scenario</a></li>
439
-
440
- <li><a href="../TaskJuggler/ScenarioData.html">TaskJuggler::ScenarioData</a></li>
441
-
442
- <li><a href="../TaskJuggler/ScenarioListAttribute.html">TaskJuggler::ScenarioListAttribute</a></li>
443
-
444
- <li><a href="../TaskJuggler/Scoreboard.html">TaskJuggler::Scoreboard</a></li>
445
-
446
- <li><a href="../TaskJuggler/ScoreboardInterval.html">TaskJuggler::ScoreboardInterval</a></li>
447
-
448
- <li><a href="../TaskJuggler/SheetHandlerBase.html">TaskJuggler::SheetHandlerBase</a></li>
449
-
450
- <li><a href="../TaskJuggler/SheetReceiver.html">TaskJuggler::SheetReceiver</a></li>
451
-
452
- <li><a href="../TaskJuggler/SheetSender.html">TaskJuggler::SheetSender</a></li>
453
-
454
- <li><a href="../TaskJuggler/Shift.html">TaskJuggler::Shift</a></li>
455
-
456
- <li><a href="../TaskJuggler/ShiftAssignment.html">TaskJuggler::ShiftAssignment</a></li>
457
-
458
- <li><a href="../TaskJuggler/ShiftAssignments.html">TaskJuggler::ShiftAssignments</a></li>
459
-
460
- <li><a href="../TaskJuggler/ShiftAssignmentsAttribute.html">TaskJuggler::ShiftAssignmentsAttribute</a></li>
461
-
462
- <li><a href="../TaskJuggler/ShiftScenario.html">TaskJuggler::ShiftScenario</a></li>
463
-
464
- <li><a href="../TaskJuggler/SimpleQueryExpander.html">TaskJuggler::SimpleQueryExpander</a></li>
465
-
466
- <li><a href="../TaskJuggler/SortListAttribute.html">TaskJuggler::SortListAttribute</a></li>
467
-
468
- <li><a href="../TaskJuggler/StatusSheetReceiver.html">TaskJuggler::StatusSheetReceiver</a></li>
469
-
470
- <li><a href="../TaskJuggler/StatusSheetReport.html">TaskJuggler::StatusSheetReport</a></li>
471
-
472
- <li><a href="../TaskJuggler/StatusSheetSender.html">TaskJuggler::StatusSheetSender</a></li>
473
-
474
- <li><a href="../TaskJuggler/StdIoWrapper.html">TaskJuggler::StdIoWrapper</a></li>
475
-
476
- <li><a href="../TaskJuggler/StringAttribute.html">TaskJuggler::StringAttribute</a></li>
477
-
478
- <li><a href="../TaskJuggler/SymbolAttribute.html">TaskJuggler::SymbolAttribute</a></li>
479
-
480
- <li><a href="../TaskJuggler/SyntaxReference.html">TaskJuggler::SyntaxReference</a></li>
481
-
482
- <li><a href="../TaskJuggler/TOCEntry.html">TaskJuggler::TOCEntry</a></li>
483
-
484
- <li><a href="../TaskJuggler/TSResourceRecord.html">TaskJuggler::TSResourceRecord</a></li>
485
-
486
- <li><a href="../TaskJuggler/TSTaskRecord.html">TaskJuggler::TSTaskRecord</a></li>
487
-
488
- <li><a href="../TaskJuggler/TableColumnDefinition.html">TaskJuggler::TableColumnDefinition</a></li>
489
-
490
- <li><a href="../TaskJuggler/TableOfContents.html">TaskJuggler::TableOfContents</a></li>
491
-
492
- <li><a href="../TaskJuggler/TableReport.html">TaskJuggler::TableReport</a></li>
493
-
494
- <li><a href="../TaskJuggler/TagFile.html">TaskJuggler::TagFile</a></li>
495
-
496
- <li><a href="../TaskJuggler/TagFile/TagFileEntry.html">TaskJuggler::TagFile::TagFileEntry</a></li>
497
-
498
- <li><a href="../TaskJuggler/Task.html">TaskJuggler::Task</a></li>
499
-
500
- <li><a href="../TaskJuggler/TaskDepListAttribute.html">TaskJuggler::TaskDepListAttribute</a></li>
501
-
502
- <li><a href="../TaskJuggler/TaskDependency.html">TaskJuggler::TaskDependency</a></li>
503
-
504
- <li><a href="../TaskJuggler/TaskListAttribute.html">TaskJuggler::TaskListAttribute</a></li>
505
-
506
- <li><a href="../TaskJuggler/TaskListRE.html">TaskJuggler::TaskListRE</a></li>
507
-
508
- <li><a href="../TaskJuggler/TaskScenario.html">TaskJuggler::TaskScenario</a></li>
509
-
510
- <li><a href="../TaskJuggler/TernarySearchTree.html">TaskJuggler::TernarySearchTree</a></li>
511
-
512
- <li><a href="../TaskJuggler/TextFormatter.html">TaskJuggler::TextFormatter</a></li>
513
-
514
- <li><a href="../TaskJuggler/TextParser.html">TaskJuggler::TextParser</a></li>
515
-
516
- <li><a href="../TaskJuggler/TextParser/Macro.html">TaskJuggler::TextParser::Macro</a></li>
517
-
518
- <li><a href="../TaskJuggler/TextParser/MacroTable.html">TaskJuggler::TextParser::MacroTable</a></li>
519
-
520
- <li><a href="../TaskJuggler/TextParser/Pattern.html">TaskJuggler::TextParser::Pattern</a></li>
521
-
522
- <li><a href="../TaskJuggler/TextParser/Rule.html">TaskJuggler::TextParser::Rule</a></li>
523
-
524
- <li><a href="../TaskJuggler/TextParser/Scanner.html">TaskJuggler::TextParser::Scanner</a></li>
525
-
526
- <li><a href="../TaskJuggler/TextParser/Scanner/BufferStreamHandle.html">TaskJuggler::TextParser::Scanner::BufferStreamHandle</a></li>
527
-
528
- <li><a href="../TaskJuggler/TextParser/Scanner/FileStreamHandle.html">TaskJuggler::TextParser::Scanner::FileStreamHandle</a></li>
529
-
530
- <li><a href="../TaskJuggler/TextParser/Scanner/MacroStackEntry.html">TaskJuggler::TextParser::Scanner::MacroStackEntry</a></li>
531
-
532
- <li><a href="../TaskJuggler/TextParser/Scanner/StreamHandle.html">TaskJuggler::TextParser::Scanner::StreamHandle</a></li>
533
-
534
- <li><a href="../TaskJuggler/TextParser/SourceFileInfo.html">TaskJuggler::TextParser::SourceFileInfo</a></li>
535
-
536
- <li><a href="../TaskJuggler/TextParser/StackElement.html">TaskJuggler::TextParser::StackElement</a></li>
537
-
538
- <li><a href="../TaskJuggler/TextParser/State.html">TaskJuggler::TextParser::State</a></li>
539
-
540
- <li><a href="../TaskJuggler/TextParser/StateTransition.html">TaskJuggler::TextParser::StateTransition</a></li>
541
-
542
- <li><a href="../TaskJuggler/TextParser/TextParserResultArray.html">TaskJuggler::TextParser::TextParserResultArray</a></li>
543
-
544
- <li><a href="../TaskJuggler/TextParser/TokenDoc.html">TaskJuggler::TextParser::TokenDoc</a></li>
545
-
546
- <li><a href="../TaskJuggler/TextReport.html">TaskJuggler::TextReport</a></li>
547
-
548
- <li><a href="../TaskJuggler/TimeInterval.html">TaskJuggler::TimeInterval</a></li>
549
-
550
- <li><a href="../TaskJuggler/TimeIntervalListAttribute.html">TaskJuggler::TimeIntervalListAttribute</a></li>
551
-
552
- <li><a href="../TaskJuggler/TimeSheet.html">TaskJuggler::TimeSheet</a></li>
553
-
554
- <li><a href="../TaskJuggler/TimeSheetReceiver.html">TaskJuggler::TimeSheetReceiver</a></li>
555
-
556
- <li><a href="../TaskJuggler/TimeSheetRecord.html">TaskJuggler::TimeSheetRecord</a></li>
557
-
558
- <li><a href="../TaskJuggler/TimeSheetReport.html">TaskJuggler::TimeSheetReport</a></li>
559
-
560
- <li><a href="../TaskJuggler/TimeSheetSender.html">TaskJuggler::TimeSheetSender</a></li>
561
-
562
- <li><a href="../TaskJuggler/TimeSheetSummary.html">TaskJuggler::TimeSheetSummary</a></li>
563
-
564
- <li><a href="../TaskJuggler/TimeSheets.html">TaskJuggler::TimeSheets</a></li>
565
-
566
- <li><a href="../TaskJuggler/Tj3.html">TaskJuggler::Tj3</a></li>
567
-
568
- <li><a href="../TaskJuggler/Tj3AppBase.html">TaskJuggler::Tj3AppBase</a></li>
569
-
570
- <li><a href="../TaskJuggler/Tj3Client.html">TaskJuggler::Tj3Client</a></li>
571
-
572
- <li><a href="../TaskJuggler/Tj3Daemon.html">TaskJuggler::Tj3Daemon</a></li>
573
-
574
- <li><a href="../TaskJuggler/Tj3Man.html">TaskJuggler::Tj3Man</a></li>
575
-
576
- <li><a href="../TaskJuggler/Tj3SheetAppBase.html">TaskJuggler::Tj3SheetAppBase</a></li>
577
-
578
- <li><a href="../TaskJuggler/Tj3SsReceiver.html">TaskJuggler::Tj3SsReceiver</a></li>
579
-
580
- <li><a href="../TaskJuggler/Tj3SsSender.html">TaskJuggler::Tj3SsSender</a></li>
581
-
582
- <li><a href="../TaskJuggler/Tj3TsReceiver.html">TaskJuggler::Tj3TsReceiver</a></li>
583
-
584
- <li><a href="../TaskJuggler/Tj3TsSender.html">TaskJuggler::Tj3TsSender</a></li>
585
-
586
- <li><a href="../TaskJuggler/Tj3TsSummary.html">TaskJuggler::Tj3TsSummary</a></li>
587
-
588
- <li><a href="../TaskJuggler/TjException.html">TaskJuggler::TjException</a></li>
589
-
590
- <li><a href="../TaskJuggler/TjRuntimeError.html">TaskJuggler::TjRuntimeError</a></li>
591
-
592
- <li><a href="../TaskJuggler/TjTime.html">TaskJuggler::TjTime</a></li>
593
-
594
- <li><a href="../TaskJuggler/TjpExample.html">TaskJuggler::TjpExample</a></li>
595
-
596
- <li><a href="../TaskJuggler/TjpExportRE.html">TaskJuggler::TjpExportRE</a></li>
597
-
598
- <li><a href="../TaskJuggler/TjpSyntaxRules.html">TaskJuggler::TjpSyntaxRules</a></li>
599
-
600
- <li><a href="../TaskJuggler/URLParameter.html">TaskJuggler::URLParameter</a></li>
601
-
602
- <li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
603
-
604
- <li><a href="../TaskJuggler/VimSyntax.html">TaskJuggler::VimSyntax</a></li>
605
-
606
- <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
607
-
608
- <li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
609
-
610
- <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
611
-
612
- <li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
613
-
614
- <li><a href="../TaskJuggler/XMLBlob.html">TaskJuggler::XMLBlob</a></li>
615
-
616
- <li><a href="../TaskJuggler/XMLComment.html">TaskJuggler::XMLComment</a></li>
617
-
618
- <li><a href="../TaskJuggler/XMLDocument.html">TaskJuggler::XMLDocument</a></li>
619
-
620
- <li><a href="../TaskJuggler/XMLElement.html">TaskJuggler::XMLElement</a></li>
621
-
622
- <li><a href="../TaskJuggler/XMLNamedText.html">TaskJuggler::XMLNamedText</a></li>
623
-
624
- <li><a href="../TaskJuggler/XMLText.html">TaskJuggler::XMLText</a></li>
625
-
626
- <li><a href="../Diff.html">Diff</a></li>
627
-
628
- <li><a href="../Diff/Hunk.html">Diff::Hunk</a></li>
629
-
630
- <li><a href="../AppConfig.html">AppConfig</a></li>
631
-
632
- <li><a href="../Diffable.html">Diffable</a></li>
633
-
634
- <li><a href="../DiffableString.html">DiffableString</a></li>
635
-
636
- <li><a href="../Object.html">Object</a></li>
637
-
638
- <li><a href="../RuntimeConfig.html">RuntimeConfig</a></li>
639
-
640
- <li><a href="../String.html">String</a></li>
641
-
642
- </ul>
643
- <div id="no-class-search-results" style="display: none;">No matching classes.</div>
644
- </div>
645
-
646
-
647
- </div>
648
- </div>
649
-
650
- <div id="documentation">
651
- <h1 class="class">TaskJuggler::TjpExportRE</h1>
652
-
653
- <div id="description">
654
- <p>
655
- This specialization of <a href="ReportBase.html">ReportBase</a> implements
656
- an export of the project data in the TJP syntax format.
657
- </p>
658
-
659
- </div>
660
-
661
- <!-- Constants -->
662
-
663
-
664
- <!-- Attributes -->
665
-
666
-
667
- <!-- Methods -->
668
-
669
- <div id="public-class-method-details" class="method-section section">
670
- <h3 class="section-header">Public Class Methods</h3>
671
-
672
-
673
- <div id="new-method" class="method-detail ">
674
- <a name="method-c-new"></a>
675
-
676
- <div class="method-heading">
677
-
678
- <span class="method-name">new</span><span
679
- class="method-args">(report)</span>
680
- <span class="method-click-advice">click to toggle source</span>
681
-
682
- </div>
683
-
684
- <div class="method-description">
685
-
686
- <p>
687
- Create a new object and set some default values.
688
- </p>
689
-
690
-
691
-
692
- <div class="method-source-code"
693
- id="new-source">
694
- <pre>
695
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 23</span>
696
- 23: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">report</span>)
697
- 24: <span class="ruby-keyword kw">super</span>(<span class="ruby-identifier">report</span>)
698
- 25:
699
- 26: <span class="ruby-ivar">@supportedTaskAttrs</span> = <span class="ruby-node">%( booking complete depends flags maxend
700
- 27: maxstart minend minstart note priority
701
- 28: projectid responsible )</span>
702
- 29: <span class="ruby-ivar">@supportedResourceAttrs</span> = <span class="ruby-node">%( booking flags vacation workinghours )</span>
703
- 30: <span class="ruby-keyword kw">end</span></pre>
704
- </div>
705
-
706
- </div>
707
-
708
-
709
-
710
-
711
- </div>
712
-
713
-
714
- </div>
715
-
716
- <div id="public-instance-method-details" class="method-section section">
717
- <h3 class="section-header">Public Instance Methods</h3>
718
-
719
-
720
- <div id="generate-ntermediate-ormat-method" class="method-detail ">
721
- <a name="method-i-generateIntermediateFormat"></a>
722
-
723
- <div class="method-heading">
724
-
725
- <span class="method-name">generateIntermediateFormat</span><span
726
- class="method-args">()</span>
727
- <span class="method-click-advice">click to toggle source</span>
728
-
729
- </div>
730
-
731
- <div class="method-description">
732
-
733
-
734
-
735
-
736
-
737
- <div class="method-source-code"
738
- id="generate-ntermediate-ormat-source">
739
- <pre>
740
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 32</span>
741
- 32: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateIntermediateFormat</span>
742
- 33: <span class="ruby-keyword kw">super</span>
743
- 34: <span class="ruby-keyword kw">end</span></pre>
744
- </div>
745
-
746
- </div>
747
-
748
-
749
-
750
-
751
- </div>
752
-
753
-
754
- <div id="to-tjp-method" class="method-detail ">
755
- <a name="method-i-to_tjp"></a>
756
-
757
- <div class="method-heading">
758
-
759
- <span class="method-name">to_tjp</span><span
760
- class="method-args">()</span>
761
- <span class="method-click-advice">click to toggle source</span>
762
-
763
- </div>
764
-
765
- <div class="method-description">
766
-
767
- <p>
768
- Return the project data in TJP syntax format.
769
- </p>
770
-
771
-
772
-
773
- <div class="method-source-code"
774
- id="to-tjp-source">
775
- <pre>
776
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 37</span>
777
- 37: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_tjp</span>
778
- 38: <span class="ruby-comment cmt"># Prepare the resource list.</span>
779
- 39: <span class="ruby-ivar">@resourceList</span> = <span class="ruby-constant">PropertyList</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@project</span>.<span class="ruby-identifier">resources</span>)
780
- 40: <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">setSorting</span>(<span class="ruby-identifier">a</span>(<span class="ruby-value str">'sortResources'</span>))
781
- 41: <span class="ruby-ivar">@resourceList</span> = <span class="ruby-identifier">filterResourceList</span>(<span class="ruby-ivar">@resourceList</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">a</span>(<span class="ruby-value str">'hideResource'</span>),
782
- 42: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'rollupResource'</span>), <span class="ruby-identifier">a</span>(<span class="ruby-value str">'openNodes'</span>))
783
- 43: <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">sort!</span>
784
- 44:
785
- 45: <span class="ruby-comment cmt"># Prepare the task list.</span>
786
- 46: <span class="ruby-ivar">@taskList</span> = <span class="ruby-constant">PropertyList</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@project</span>.<span class="ruby-identifier">tasks</span>)
787
- 47: <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">setSorting</span>(<span class="ruby-identifier">a</span>(<span class="ruby-value str">'sortTasks'</span>))
788
- 48: <span class="ruby-ivar">@taskList</span> = <span class="ruby-identifier">filterTaskList</span>(<span class="ruby-ivar">@taskList</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">a</span>(<span class="ruby-value str">'hideTask'</span>), <span class="ruby-identifier">a</span>(<span class="ruby-value str">'rollupTask'</span>),
789
- 49: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'openNodes'</span>))
790
- 50: <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">sort!</span>
791
- 51:
792
- 52: <span class="ruby-identifier">getBookings</span>
793
- 53:
794
- 54: <span class="ruby-ivar">@file</span> = <span class="ruby-value str">''</span>
795
- 55:
796
- 56: <span class="ruby-identifier">generateProjectProperty</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'definitions'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'project'</span>)
797
- 57:
798
- 58: <span class="ruby-identifier">generateFlagDeclaration</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'definitions'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'flags'</span>)
799
- 59: <span class="ruby-identifier">generateProjectIDs</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'definitions'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'projectids'</span>)
800
- 60: <span class="ruby-identifier">generateResourceList</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'definitions'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'resources'</span>)
801
- 61: <span class="ruby-identifier">generateTaskList</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'definitions'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'tasks'</span>)
802
- 62:
803
- 63: <span class="ruby-identifier">generateTaskAttributes</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>).<span class="ruby-identifier">empty?</span>
804
- 64: <span class="ruby-identifier">generateResourceAttributes</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'resourceAttributes'</span>).<span class="ruby-identifier">empty?</span>
805
- 65:
806
- 66: <span class="ruby-ivar">@file</span>
807
- 67: <span class="ruby-keyword kw">end</span></pre>
808
- </div>
809
-
810
- </div>
811
-
812
-
813
-
814
-
815
- </div>
816
-
817
-
818
- </div>
819
-
820
- <div id="private-instance-method-details" class="method-section section">
821
- <h3 class="section-header">Private Instance Methods</h3>
822
-
823
-
824
- <div id="generate-ttribute-method" class="method-detail ">
825
- <a name="method-i-generateAttribute"></a>
826
-
827
- <div class="method-heading">
828
-
829
- <span class="method-name">generateAttribute</span><span
830
- class="method-args">(property, attrId, indent, scenarioIdx = nil)</span>
831
- <span class="method-click-advice">click to toggle source</span>
832
-
833
- </div>
834
-
835
- <div class="method-description">
836
-
837
-
838
-
839
-
840
-
841
- <div class="method-source-code"
842
- id="generate-ttribute-source">
843
- <pre>
844
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 352</span>
845
- 352: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">attrId</span>, <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-keyword kw">nil</span>)
846
- 353: <span class="ruby-identifier">val</span> = <span class="ruby-identifier">scenarioIdx</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">property</span>[<span class="ruby-identifier">attrId</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">:</span> <span class="ruby-identifier">property</span>.<span class="ruby-identifier">get</span>(<span class="ruby-identifier">attrId</span>)
847
- 354: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">val</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> (<span class="ruby-identifier">val</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">val</span>.<span class="ruby-identifier">empty?</span>) <span class="ruby-operator">||</span>
848
- 355: (<span class="ruby-identifier">scenarioIdx</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">inheritable?</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">attrId</span>, <span class="ruby-identifier">scenarioIdx</span>))
849
- 356:
850
- 357: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-identifier">property</span>.<span class="ruby-identifier">getAttribute</span>(<span class="ruby-identifier">attrId</span>, <span class="ruby-identifier">scenarioIdx</span>).<span class="ruby-identifier">to_tjp</span>,
851
- 358: <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span>)
852
- 359: <span class="ruby-keyword kw">end</span></pre>
853
- </div>
854
-
855
- </div>
856
-
857
-
858
-
859
-
860
- </div>
861
-
862
-
863
- <div id="generate-ttribute-ext-method" class="method-detail ">
864
- <a name="method-i-generateAttributeText"></a>
865
-
866
- <div class="method-heading">
867
-
868
- <span class="method-name">generateAttributeText</span><span
869
- class="method-args">(text, indent, scenarioIdx = nil)</span>
870
- <span class="method-click-advice">click to toggle source</span>
871
-
872
- </div>
873
-
874
- <div class="method-description">
875
-
876
-
877
-
878
-
879
-
880
- <div class="method-source-code"
881
- id="generate-ttribute-ext-source">
882
- <pre>
883
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 361</span>
884
- 361: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-identifier">text</span>, <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span> = <span class="ruby-keyword kw">nil</span>)
885
- 362: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span>
886
- 363: <span class="ruby-identifier">tag</span> = <span class="ruby-value str">''</span>
887
- 364: <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-identifier">scenarioIdx</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">scenarioIdx</span> <span class="ruby-operator">!=</span> <span class="ruby-value">0</span>
888
- 365: <span class="ruby-identifier">tag</span> = <span class="ruby-node">&quot;#{@project.scenario(scenarioIdx).id}:&quot;</span>
889
- 366: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">tag</span>
890
- 367: <span class="ruby-keyword kw">end</span>
891
- 368: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{indentBlock(text, indent + tag.length + 2)}\n&quot;</span>
892
- 369: <span class="ruby-keyword kw">end</span></pre>
893
- </div>
894
-
895
- </div>
896
-
897
-
898
-
899
-
900
- </div>
901
-
902
-
903
- <div id="generate-ookings-y-esource-method" class="method-detail ">
904
- <a name="method-i-generateBookingsByResource"></a>
905
-
906
- <div class="method-heading">
907
-
908
- <span class="method-name">generateBookingsByResource</span><span
909
- class="method-args">(resource, indent, scenarioIdx)</span>
910
- <span class="method-click-advice">click to toggle source</span>
911
-
912
- </div>
913
-
914
- <div class="method-description">
915
-
916
-
917
-
918
-
919
-
920
- <div class="method-source-code"
921
- id="generate-ookings-y-esource-source">
922
- <pre>
923
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 415</span>
924
- 415: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateBookingsByResource</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span>)
925
- 416: <span class="ruby-comment cmt"># Get the bookings for this resource hashed by task.</span>
926
- 417: <span class="ruby-identifier">bookings</span> = <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">getBookings</span>(<span class="ruby-identifier">scenarioIdx</span>,
927
- 418: <span class="ruby-constant">TimeInterval</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">a</span>(<span class="ruby-value str">'start'</span>), <span class="ruby-identifier">a</span>(<span class="ruby-value str">'end'</span>)),
928
- 419: <span class="ruby-keyword kw">false</span>)
929
- 420: <span class="ruby-identifier">bookings</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">booking</span><span class="ruby-operator">|</span>
930
- 421: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">booking</span>.<span class="ruby-identifier">task</span>)
931
- 422: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-value str">'booking '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">booking</span>.<span class="ruby-identifier">to_tjp</span>(<span class="ruby-keyword kw">true</span>), <span class="ruby-identifier">indent</span>,
932
- 423: <span class="ruby-identifier">scenarioIdx</span>)
933
- 424: <span class="ruby-keyword kw">end</span>
934
- 425: <span class="ruby-keyword kw">end</span></pre>
935
- </div>
936
-
937
- </div>
938
-
939
-
940
-
941
-
942
- </div>
943
-
944
-
945
- <div id="generate-ookings-y-ask-method" class="method-detail ">
946
- <a name="method-i-generateBookingsByTask"></a>
947
-
948
- <div class="method-heading">
949
-
950
- <span class="method-name">generateBookingsByTask</span><span
951
- class="method-args">(task, indent, scenarioIdx)</span>
952
- <span class="method-click-advice">click to toggle source</span>
953
-
954
- </div>
955
-
956
- <div class="method-description">
957
-
958
-
959
-
960
-
961
-
962
- <div class="method-source-code"
963
- id="generate-ookings-y-ask-source">
964
- <pre>
965
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 400</span>
966
- 400: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateBookingsByTask</span>(<span class="ruby-identifier">task</span>, <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span>)
967
- 401: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">task</span>)
968
- 402:
969
- 403: <span class="ruby-comment cmt"># Convert Hash into an [ Resource, Booking ] Array sorted by Resource</span>
970
- 404: <span class="ruby-comment cmt"># ID. This guarantees a reproducible order.</span>
971
- 405: <span class="ruby-identifier">resourceBookings</span> = <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>][<span class="ruby-identifier">task</span>].<span class="ruby-identifier">sort</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">a</span>, <span class="ruby-identifier">b</span><span class="ruby-operator">|</span>
972
- 406: <span class="ruby-identifier">a</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">fullId</span> <span class="ruby-operator">&lt;=&gt;</span> <span class="ruby-identifier">b</span>[<span class="ruby-value">0</span>].<span class="ruby-identifier">fullId</span>
973
- 407: <span class="ruby-keyword kw">end</span>
974
- 408:
975
- 409: <span class="ruby-identifier">resourceBookings</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">resourceId</span>, <span class="ruby-identifier">booking</span><span class="ruby-operator">|</span>
976
- 410: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-value str">'booking '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">booking</span>.<span class="ruby-identifier">to_tjp</span>(<span class="ruby-keyword kw">false</span>), <span class="ruby-identifier">indent</span>,
977
- 411: <span class="ruby-identifier">scenarioIdx</span>)
978
- 412: <span class="ruby-keyword kw">end</span>
979
- 413: <span class="ruby-keyword kw">end</span></pre>
980
- </div>
981
-
982
- </div>
983
-
984
-
985
-
986
-
987
- </div>
988
-
989
-
990
- <div id="generate-ustom-ttribute-eclarations-method" class="method-detail ">
991
- <a name="method-i-generateCustomAttributeDeclarations"></a>
992
-
993
- <div class="method-heading">
994
-
995
- <span class="method-name">generateCustomAttributeDeclarations</span><span
996
- class="method-args">(tag, propertySet, attributes)</span>
997
- <span class="method-click-advice">click to toggle source</span>
998
-
999
- </div>
1000
-
1001
- <div class="method-description">
1002
-
1003
-
1004
-
1005
-
1006
-
1007
- <div class="method-source-code"
1008
- id="generate-ustom-ttribute-eclarations-source">
1009
- <pre>
1010
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 96</span>
1011
- 96: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateCustomAttributeDeclarations</span>(<span class="ruby-identifier">tag</span>, <span class="ruby-identifier">propertySet</span>, <span class="ruby-identifier">attributes</span>)
1012
- 97: <span class="ruby-comment cmt"># First we search the attribute definitions for any user defined</span>
1013
- 98: <span class="ruby-comment cmt"># attributes and count them.</span>
1014
- 99: <span class="ruby-identifier">customAttributes</span> = <span class="ruby-value">0</span>
1015
- 100: <span class="ruby-identifier">propertySet</span>.<span class="ruby-identifier">eachAttributeDefinition</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ad</span><span class="ruby-operator">|</span>
1016
- 101: <span class="ruby-identifier">customAttributes</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">ad</span>.<span class="ruby-identifier">userDefined</span>
1017
- 102: <span class="ruby-keyword kw">end</span>
1018
- 103: <span class="ruby-comment cmt"># Return if there are no user defined attributes.</span>
1019
- 104: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">customAttributes</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
1020
- 105:
1021
- 106: <span class="ruby-comment cmt"># Generate definitions for each user defined attribute that is in the</span>
1022
- 107: <span class="ruby-comment cmt"># taskAttributes list.</span>
1023
- 108: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">' extend '</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">tag</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;{\n&quot;</span>
1024
- 109: <span class="ruby-identifier">propertySet</span>.<span class="ruby-identifier">eachAttributeDefinition</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">ad</span><span class="ruby-operator">|</span>
1025
- 110: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">ad</span>.<span class="ruby-identifier">userDefined</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">attributes</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">ad</span>.<span class="ruby-identifier">id</span>)
1026
- 111:
1027
- 112: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot; #{ad.objClass.tjpId} #{ad.id} &quot;</span> <span class="ruby-operator">+</span>
1028
- 113: <span class="ruby-node">&quot;#{quotedString(ad.name)}\n&quot;</span>
1029
- 114: <span class="ruby-keyword kw">end</span>
1030
- 115: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot; }\n&quot;</span>
1031
- 116: <span class="ruby-keyword kw">end</span></pre>
1032
- </div>
1033
-
1034
- </div>
1035
-
1036
-
1037
-
1038
-
1039
- </div>
1040
-
1041
-
1042
- <div id="generate-lag-eclaration-method" class="method-detail ">
1043
- <a name="method-i-generateFlagDeclaration"></a>
1044
-
1045
- <div class="method-heading">
1046
-
1047
- <span class="method-name">generateFlagDeclaration</span><span
1048
- class="method-args">()</span>
1049
- <span class="method-click-advice">click to toggle source</span>
1050
-
1051
- </div>
1052
-
1053
- <div class="method-description">
1054
-
1055
-
1056
-
1057
-
1058
-
1059
- <div class="method-source-code"
1060
- id="generate-lag-eclaration-source">
1061
- <pre>
1062
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 118</span>
1063
- 118: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateFlagDeclaration</span>
1064
- 119: <span class="ruby-identifier">flags</span> = []
1065
- 120:
1066
- 121: <span class="ruby-identifier">properties</span> = <span class="ruby-ivar">@resourceList</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@taskList</span>
1067
- 122:
1068
- 123: <span class="ruby-identifier">properties</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">property</span><span class="ruby-operator">|</span>
1069
- 124: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
1070
- 125: <span class="ruby-identifier">property</span>[<span class="ruby-value str">'flags'</span>, <span class="ruby-identifier">scenarioIdx</span>].<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">flag</span><span class="ruby-operator">|</span>
1071
- 126: <span class="ruby-identifier">flags</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">flag</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">flags</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">flag</span>)
1072
- 127: <span class="ruby-keyword kw">end</span>
1073
- 128: <span class="ruby-keyword kw">end</span>
1074
- 129: <span class="ruby-keyword kw">end</span>
1075
- 130: <span class="ruby-identifier">flags</span>.<span class="ruby-identifier">sort</span>
1076
- 131: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">flags</span>.<span class="ruby-identifier">empty?</span>
1077
- 132: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;flags #{flags.join(', ')}\n\n&quot;</span>
1078
- 133: <span class="ruby-keyword kw">end</span>
1079
- 134: <span class="ruby-keyword kw">end</span></pre>
1080
- </div>
1081
-
1082
- </div>
1083
-
1084
-
1085
-
1086
-
1087
- </div>
1088
-
1089
-
1090
- <div id="generate-roject-s-method" class="method-detail ">
1091
- <a name="method-i-generateProjectIDs"></a>
1092
-
1093
- <div class="method-heading">
1094
-
1095
- <span class="method-name">generateProjectIDs</span><span
1096
- class="method-args">()</span>
1097
- <span class="method-click-advice">click to toggle source</span>
1098
-
1099
- </div>
1100
-
1101
- <div class="method-description">
1102
-
1103
-
1104
-
1105
-
1106
-
1107
- <div class="method-source-code"
1108
- id="generate-roject-s-source">
1109
- <pre>
1110
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 136</span>
1111
- 136: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateProjectIDs</span>
1112
- 137: <span class="ruby-comment cmt"># Compile a list of all projectIDs from the tasks in the taskList.</span>
1113
- 138: <span class="ruby-identifier">projectIDs</span> = []
1114
- 139: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
1115
- 140: <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
1116
- 141: <span class="ruby-identifier">pid</span> = <span class="ruby-identifier">task</span>[<span class="ruby-value str">'projectid'</span>, <span class="ruby-identifier">scenarioIdx</span>]
1117
- 142: <span class="ruby-identifier">projectIDs</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">pid</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">pid</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">projectIDs</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">pid</span>)
1118
- 143: <span class="ruby-keyword kw">end</span>
1119
- 144: <span class="ruby-keyword kw">end</span>
1120
- 145:
1121
- 146: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;projectids #{projectIDs.join(', ')}\n\n&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">projectIDs</span>.<span class="ruby-identifier">empty?</span>
1122
- 147: <span class="ruby-keyword kw">end</span></pre>
1123
- </div>
1124
-
1125
- </div>
1126
-
1127
-
1128
-
1129
-
1130
- </div>
1131
-
1132
-
1133
- <div id="generate-roject-roperty-method" class="method-detail ">
1134
- <a name="method-i-generateProjectProperty"></a>
1135
-
1136
- <div class="method-heading">
1137
-
1138
- <span class="method-name">generateProjectProperty</span><span
1139
- class="method-args">()</span>
1140
- <span class="method-click-advice">click to toggle source</span>
1141
-
1142
- </div>
1143
-
1144
- <div class="method-description">
1145
-
1146
-
1147
-
1148
-
1149
-
1150
- <div class="method-source-code"
1151
- id="generate-roject-roperty-source">
1152
- <pre>
1153
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 71</span>
1154
- 71: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateProjectProperty</span>
1155
- 72: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;project #{@project['projectid']} \&quot;#{@project['name']}\&quot; &quot;</span> <span class="ruby-operator">+</span>
1156
- 73: <span class="ruby-node">&quot;\&quot;#{@project['version']}\&quot; #{@project['start']} - &quot;</span> <span class="ruby-operator">+</span>
1157
- 74: <span class="ruby-node">&quot;#{@project['end']} {\n&quot;</span>
1158
- 75: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-node">&quot;timezone \&quot;#{@project['timezone']}\&quot;&quot;</span>, <span class="ruby-value">2</span>)
1159
- 76: <span class="ruby-identifier">generateCustomAttributeDeclarations</span>(<span class="ruby-value str">'resource'</span>, <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">resources</span>,
1160
- 77: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'resourceAttributes'</span>))
1161
- 78: <span class="ruby-identifier">generateCustomAttributeDeclarations</span>(<span class="ruby-value str">'task'</span>, <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">tasks</span>,
1162
- 79: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>))
1163
- 80: <span class="ruby-identifier">generateScenarioDefinition</span>(<span class="ruby-ivar">@project</span>.<span class="ruby-identifier">scenario</span>(<span class="ruby-value">0</span>), <span class="ruby-value">2</span>)
1164
- 81: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;}\n\n&quot;</span>
1165
- 82: <span class="ruby-keyword kw">end</span></pre>
1166
- </div>
1167
-
1168
- </div>
1169
-
1170
-
1171
-
1172
-
1173
- </div>
1174
-
1175
-
1176
- <div id="generate-esource-method" class="method-detail ">
1177
- <a name="method-i-generateResource"></a>
1178
-
1179
- <div class="method-heading">
1180
-
1181
- <span class="method-name">generateResource</span><span
1182
- class="method-args">(resource, indent)</span>
1183
- <span class="method-click-advice">click to toggle source</span>
1184
-
1185
- </div>
1186
-
1187
- <div class="method-description">
1188
-
1189
-
1190
-
1191
-
1192
-
1193
- <div class="method-source-code"
1194
- id="generate-esource-source">
1195
- <pre>
1196
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 160</span>
1197
- 160: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateResource</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-identifier">indent</span>)
1198
- 161: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">sequenceNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">100</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
1199
- 162:
1200
- 163: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-node">&quot;resource #{resource.id} &quot;</span> <span class="ruby-operator">+</span>
1201
- 164: <span class="ruby-node">&quot;#{quotedString(resource.name)}&quot;</span>
1202
- 165: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">' {'</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">empty?</span>
1203
- 166: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;\n&quot;</span>
1204
- 167:
1205
- 168: <span class="ruby-comment cmt"># Call this function recursively for all children that are included in the</span>
1206
- 169: <span class="ruby-comment cmt"># resource list as well.</span>
1207
- 170: <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">subresource</span><span class="ruby-operator">|</span>
1208
- 171: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">subresource</span>)
1209
- 172: <span class="ruby-identifier">generateResource</span>(<span class="ruby-identifier">subresource</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>)
1210
- 173: <span class="ruby-keyword kw">end</span>
1211
- 174: <span class="ruby-keyword kw">end</span>
1212
- 175:
1213
- 176: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;}\n&quot;</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">empty?</span>
1214
- 177: <span class="ruby-keyword kw">end</span></pre>
1215
- </div>
1216
-
1217
- </div>
1218
-
1219
-
1220
-
1221
-
1222
- </div>
1223
-
1224
-
1225
- <div id="generate-esource-ttributes-method" class="method-detail ">
1226
- <a name="method-i-generateResourceAttributes"></a>
1227
-
1228
- <div class="method-heading">
1229
-
1230
- <span class="method-name">generateResourceAttributes</span><span
1231
- class="method-args">()</span>
1232
- <span class="method-click-advice">click to toggle source</span>
1233
-
1234
- </div>
1235
-
1236
- <div class="method-description">
1237
-
1238
- <p>
1239
- Generate a list of resource supplement statements that include the rest of
1240
- the attributes.
1241
- </p>
1242
-
1243
-
1244
-
1245
- <div class="method-source-code"
1246
- id="generate-esource-ttributes-source">
1247
- <pre>
1248
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 274</span>
1249
- 274: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateResourceAttributes</span>
1250
- 275: <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">resource</span><span class="ruby-operator">|</span>
1251
- 276: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">sequenceNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">100</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
1252
- 277: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;supplement resource #{resource.fullId} {\n&quot;</span>
1253
- 278: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">resources</span>.<span class="ruby-identifier">eachAttributeDefinition</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attrDef</span><span class="ruby-operator">|</span>
1254
- 279: <span class="ruby-identifier">id</span> = <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">id</span>
1255
- 280: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> (<span class="ruby-operator">!</span><span class="ruby-ivar">@supportedResourceAttrs</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">id</span>) <span class="ruby-operator">&amp;&amp;</span>
1256
- 281: <span class="ruby-operator">!</span><span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">userDefined</span>) <span class="ruby-operator">||</span>
1257
- 282: <span class="ruby-operator">!</span><span class="ruby-identifier">a</span>(<span class="ruby-value str">'resourceAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">id</span>)
1258
- 283:
1259
- 284: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">scenarioSpecific</span>
1260
- 285: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
1261
- 286: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">inheritable?</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-identifier">id</span>, <span class="ruby-identifier">scenarioIdx</span>)
1262
- 287:
1263
- 288: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-identifier">id</span>, <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
1264
- 289: <span class="ruby-keyword kw">end</span>
1265
- 290: <span class="ruby-keyword kw">else</span>
1266
- 291: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-identifier">id</span>, <span class="ruby-value">2</span>)
1267
- 292: <span class="ruby-keyword kw">end</span>
1268
- 293: <span class="ruby-keyword kw">end</span>
1269
- 294:
1270
- 295: <span class="ruby-comment cmt"># Since 'booking' is a task attribute, we need a special handling if</span>
1271
- 296: <span class="ruby-comment cmt"># we want to list them in the resource context.</span>
1272
- 297: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'resourceAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'booking'</span>) <span class="ruby-operator">&amp;&amp;</span>
1273
- 298: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'resourceAttributes'</span>)[<span class="ruby-value">0</span>] <span class="ruby-operator">!=</span> <span class="ruby-value str">'*'</span>
1274
- 299: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
1275
- 300: <span class="ruby-identifier">generateBookingsByResource</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
1276
- 301: <span class="ruby-keyword kw">end</span>
1277
- 302: <span class="ruby-keyword kw">end</span>
1278
- 303:
1279
- 304: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;}\n&quot;</span>
1280
- 305: <span class="ruby-keyword kw">end</span>
1281
- 306: <span class="ruby-keyword kw">end</span></pre>
1282
- </div>
1283
-
1284
- </div>
1285
-
1286
-
1287
-
1288
-
1289
- </div>
1290
-
1291
-
1292
- <div id="generate-esource-ist-method" class="method-detail ">
1293
- <a name="method-i-generateResourceList"></a>
1294
-
1295
- <div class="method-heading">
1296
-
1297
- <span class="method-name">generateResourceList</span><span
1298
- class="method-args">()</span>
1299
- <span class="method-click-advice">click to toggle source</span>
1300
-
1301
- </div>
1302
-
1303
- <div class="method-description">
1304
-
1305
-
1306
-
1307
-
1308
-
1309
- <div class="method-source-code"
1310
- id="generate-esource-ist-source">
1311
- <pre>
1312
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 149</span>
1313
- 149: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateResourceList</span>
1314
- 150: <span class="ruby-comment cmt"># The resource definitions are generated recursively. So we only need to</span>
1315
- 151: <span class="ruby-comment cmt"># start it for the top-level resources.</span>
1316
- 152: <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">resource</span><span class="ruby-operator">|</span>
1317
- 153: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">nil?</span>
1318
- 154: <span class="ruby-identifier">generateResource</span>(<span class="ruby-identifier">resource</span>, <span class="ruby-value">0</span>)
1319
- 155: <span class="ruby-keyword kw">end</span>
1320
- 156: <span class="ruby-keyword kw">end</span>
1321
- 157: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;\n&quot;</span>
1322
- 158: <span class="ruby-keyword kw">end</span></pre>
1323
- </div>
1324
-
1325
- </div>
1326
-
1327
-
1328
-
1329
-
1330
- </div>
1331
-
1332
-
1333
- <div id="generate-cenario-efinition-method" class="method-detail ">
1334
- <a name="method-i-generateScenarioDefinition"></a>
1335
-
1336
- <div class="method-heading">
1337
-
1338
- <span class="method-name">generateScenarioDefinition</span><span
1339
- class="method-args">(scenario, indent)</span>
1340
- <span class="method-click-advice">click to toggle source</span>
1341
-
1342
- </div>
1343
-
1344
- <div class="method-description">
1345
-
1346
-
1347
-
1348
-
1349
-
1350
- <div class="method-source-code"
1351
- id="generate-cenario-efinition-source">
1352
- <pre>
1353
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 84</span>
1354
- 84: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateScenarioDefinition</span>(<span class="ruby-identifier">scenario</span>, <span class="ruby-identifier">indent</span>)
1355
- 85: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{' ' * indent}scenario #{scenario.id} &quot;</span> <span class="ruby-operator">+</span>
1356
- 86: <span class="ruby-node">&quot;#{quotedString(scenario.name)} {\n&quot;</span>
1357
- 87: <span class="ruby-identifier">scenario</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">sc</span><span class="ruby-operator">|</span>
1358
- 88: <span class="ruby-identifier">generateScenarioDefinition</span>(<span class="ruby-identifier">sc</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>)
1359
- 89: <span class="ruby-keyword kw">end</span>
1360
- 90: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{' ' * (indent + 2)}active &quot;</span> <span class="ruby-operator">+</span>
1361
- 91: <span class="ruby-node">&quot;#{scenario.get('active') ? 'yes' : 'no'}\n&quot;</span>
1362
- 92: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;#{' ' * indent}}\n&quot;</span>
1363
- 93: <span class="ruby-keyword kw">end</span></pre>
1364
- </div>
1365
-
1366
- </div>
1367
-
1368
-
1369
-
1370
-
1371
- </div>
1372
-
1373
-
1374
- <div id="generate-ask-method" class="method-detail ">
1375
- <a name="method-i-generateTask"></a>
1376
-
1377
- <div class="method-heading">
1378
-
1379
- <span class="method-name">generateTask</span><span
1380
- class="method-args">(task, indent)</span>
1381
- <span class="method-click-advice">click to toggle source</span>
1382
-
1383
- </div>
1384
-
1385
- <div class="method-description">
1386
-
1387
- <p>
1388
- Generate a task definition. It only contains a very small set of attributes
1389
- that have to be passed on the the nested tasks at creation time. All other
1390
- attributes are declared in subsequent supplement statements.
1391
- </p>
1392
-
1393
-
1394
-
1395
- <div class="method-source-code"
1396
- id="generate-ask-source">
1397
- <pre>
1398
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 193</span>
1399
- 193: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTask</span>(<span class="ruby-identifier">task</span>, <span class="ruby-identifier">indent</span>)
1400
- 194: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">sequenceNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">100</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
1401
- 195:
1402
- 196: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-node">&quot;task #{task.subId} &quot;</span> <span class="ruby-operator">+</span>
1403
- 197: <span class="ruby-node">&quot;#{quotedString(task.name)} {\n&quot;</span>
1404
- 198:
1405
- 199: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'depends'</span>)
1406
- 200: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
1407
- 201: <span class="ruby-identifier">generateTaskDependency</span>(<span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">task</span>, <span class="ruby-value str">'depends'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>)
1408
- 202: <span class="ruby-identifier">generateTaskDependency</span>(<span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">task</span>, <span class="ruby-value str">'precedes'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>)
1409
- 203: <span class="ruby-keyword kw">end</span>
1410
- 204: <span class="ruby-keyword kw">end</span>
1411
- 205:
1412
- 206: <span class="ruby-comment cmt"># Call this function recursively for all children that are included in the</span>
1413
- 207: <span class="ruby-comment cmt"># task list as well.</span>
1414
- 208: <span class="ruby-identifier">task</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">subtask</span><span class="ruby-operator">|</span>
1415
- 209: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">subtask</span>)
1416
- 210: <span class="ruby-identifier">generateTask</span>(<span class="ruby-identifier">subtask</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>)
1417
- 211: <span class="ruby-keyword kw">end</span>
1418
- 212: <span class="ruby-keyword kw">end</span>
1419
- 213:
1420
- 214: <span class="ruby-comment cmt"># Determine whether this task has subtasks that are included in the</span>
1421
- 215: <span class="ruby-comment cmt"># report or whether this is a leaf task for the report.</span>
1422
- 216: <span class="ruby-identifier">isLeafTask</span> = <span class="ruby-keyword kw">true</span>
1423
- 217: <span class="ruby-identifier">task</span>.<span class="ruby-identifier">children</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">subtask</span><span class="ruby-operator">|</span>
1424
- 218: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">subtask</span>)
1425
- 219: <span class="ruby-identifier">isLeafTask</span> = <span class="ruby-keyword kw">false</span>
1426
- 220: <span class="ruby-keyword kw">break</span>
1427
- 221: <span class="ruby-keyword kw">end</span>
1428
- 222: <span class="ruby-keyword kw">end</span>
1429
- 223:
1430
- 224: <span class="ruby-comment cmt"># For leaf tasks we put some attributes right here.</span>
1431
- 225: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">isLeafTask</span>
1432
- 226: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
1433
- 227: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">task</span>, <span class="ruby-value str">'start'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
1434
- 228: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>[<span class="ruby-value str">'milestone'</span>, <span class="ruby-identifier">scenarioIdx</span>]
1435
- 229: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>[<span class="ruby-value str">'scheduled'</span>, <span class="ruby-identifier">scenarioIdx</span>]
1436
- 230: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-value str">'milestone'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
1437
- 231: <span class="ruby-keyword kw">end</span>
1438
- 232: <span class="ruby-keyword kw">else</span>
1439
- 233: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">task</span>, <span class="ruby-value str">'end'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
1440
- 234: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-value str">'scheduling '</span> <span class="ruby-operator">+</span>
1441
- 235: (<span class="ruby-identifier">task</span>[<span class="ruby-value str">'forward'</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">?</span>
1442
- 236: <span class="ruby-value str">'asap'</span> <span class="ruby-operator">:</span> <span class="ruby-value str">'alap'</span>),
1443
- 237: <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
1444
- 238: <span class="ruby-keyword kw">end</span>
1445
- 239: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>[<span class="ruby-value str">'scheduled'</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">&amp;&amp;</span>
1446
- 240: <span class="ruby-operator">!</span><span class="ruby-identifier">inheritable?</span>(<span class="ruby-identifier">task</span>, <span class="ruby-value str">'scheduled'</span>, <span class="ruby-identifier">scenarioIdx</span>)
1447
- 241: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-value str">'scheduled'</span>, <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
1448
- 242: <span class="ruby-keyword kw">end</span>
1449
- 243: <span class="ruby-keyword kw">end</span>
1450
- 244: <span class="ruby-keyword kw">end</span>
1451
- 245:
1452
- 246: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">' '</span> * <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-value str">&quot;}\n&quot;</span>
1453
- 247: <span class="ruby-keyword kw">end</span></pre>
1454
- </div>
1455
-
1456
- </div>
1457
-
1458
-
1459
-
1460
-
1461
- </div>
1462
-
1463
-
1464
- <div id="generate-ask-ttributes-method" class="method-detail ">
1465
- <a name="method-i-generateTaskAttributes"></a>
1466
-
1467
- <div class="method-heading">
1468
-
1469
- <span class="method-name">generateTaskAttributes</span><span
1470
- class="method-args">()</span>
1471
- <span class="method-click-advice">click to toggle source</span>
1472
-
1473
- </div>
1474
-
1475
- <div class="method-description">
1476
-
1477
- <p>
1478
- Generate a list of task supplement statements that include the rest of the
1479
- attributes.
1480
- </p>
1481
-
1482
-
1483
-
1484
- <div class="method-source-code"
1485
- id="generate-ask-ttributes-source">
1486
- <pre>
1487
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 310</span>
1488
- 310: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTaskAttributes</span>
1489
- 311: <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
1490
- 312: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">sequenceNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">100</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
1491
- 313:
1492
- 314: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-node">&quot;supplement task #{task.fullId} {\n&quot;</span>
1493
- 315: <span class="ruby-comment cmt"># Declare adopted tasks.</span>
1494
- 316: <span class="ruby-identifier">adoptees</span> = <span class="ruby-value str">&quot;&quot;</span>
1495
- 317: <span class="ruby-identifier">task</span>.<span class="ruby-identifier">adoptees</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">adoptee</span><span class="ruby-operator">|</span>
1496
- 318: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">adoptee</span>)
1497
- 319:
1498
- 320: <span class="ruby-identifier">adoptees</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">', '</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">adoptees</span>.<span class="ruby-identifier">empty?</span>
1499
- 321: <span class="ruby-identifier">adoptees</span> <span class="ruby-operator">+=</span> <span class="ruby-identifier">adoptee</span>.<span class="ruby-identifier">fullId</span>
1500
- 322: <span class="ruby-keyword kw">end</span>
1501
- 323: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-node">&quot;adopt #{adoptees}&quot;</span>, <span class="ruby-value">2</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">adoptees</span>.<span class="ruby-identifier">empty?</span>
1502
- 324:
1503
- 325: <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">tasks</span>.<span class="ruby-identifier">eachAttributeDefinition</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">attrDef</span><span class="ruby-operator">|</span>
1504
- 326: <span class="ruby-identifier">id</span> = <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">id</span>
1505
- 327:
1506
- 328: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> (<span class="ruby-operator">!</span><span class="ruby-ivar">@supportedTaskAttrs</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">id</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">userDefined</span>) <span class="ruby-operator">||</span>
1507
- 329: <span class="ruby-operator">!</span><span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">id</span>)
1508
- 330:
1509
- 331: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">attrDef</span>.<span class="ruby-identifier">scenarioSpecific</span>
1510
- 332: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
1511
- 333: <span class="ruby-comment cmt"># Some attributes need special treatment.</span>
1512
- 334: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">id</span>
1513
- 335: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'depends'</span>
1514
- 336: <span class="ruby-keyword kw">next</span> <span class="ruby-comment cmt"># already taken care of</span>
1515
- 337: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'booking'</span>
1516
- 338: <span class="ruby-identifier">generateBookingsByTask</span>(<span class="ruby-identifier">task</span>, <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
1517
- 339: <span class="ruby-keyword kw">else</span>
1518
- 340: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">task</span>, <span class="ruby-identifier">id</span>, <span class="ruby-value">2</span>, <span class="ruby-identifier">scenarioIdx</span>)
1519
- 341: <span class="ruby-keyword kw">end</span>
1520
- 342: <span class="ruby-keyword kw">end</span>
1521
- 343: <span class="ruby-keyword kw">else</span>
1522
- 344: <span class="ruby-identifier">generateAttribute</span>(<span class="ruby-identifier">task</span>, <span class="ruby-identifier">id</span>, <span class="ruby-value">2</span>)
1523
- 345: <span class="ruby-keyword kw">end</span>
1524
- 346: <span class="ruby-keyword kw">end</span>
1525
- 347:
1526
- 348: <span class="ruby-ivar">@file</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">&quot;}\n&quot;</span>
1527
- 349: <span class="ruby-keyword kw">end</span>
1528
- 350: <span class="ruby-keyword kw">end</span></pre>
1529
- </div>
1530
-
1531
- </div>
1532
-
1533
-
1534
-
1535
-
1536
- </div>
1537
-
1538
-
1539
- <div id="generate-ask-ependency-method" class="method-detail ">
1540
- <a name="method-i-generateTaskDependency"></a>
1541
-
1542
- <div class="method-heading">
1543
-
1544
- <span class="method-name">generateTaskDependency</span><span
1545
- class="method-args">(scenarioIdx, task, tag, indent)</span>
1546
- <span class="method-click-advice">click to toggle source</span>
1547
-
1548
- </div>
1549
-
1550
- <div class="method-description">
1551
-
1552
- <p>
1553
- Generate &#8216;depends&#8217; or &#8216;precedes&#8217; attributes for a
1554
- task.
1555
- </p>
1556
-
1557
-
1558
-
1559
- <div class="method-source-code"
1560
- id="generate-ask-ependency-source">
1561
- <pre>
1562
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 250</span>
1563
- 250: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTaskDependency</span>(<span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">task</span>, <span class="ruby-identifier">tag</span>, <span class="ruby-identifier">indent</span>)
1564
- 251: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'depends'</span>)
1565
- 252:
1566
- 253: <span class="ruby-identifier">taskDeps</span> = <span class="ruby-identifier">task</span>[<span class="ruby-identifier">tag</span>, <span class="ruby-identifier">scenarioIdx</span>]
1567
- 254: <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">taskDeps</span>.<span class="ruby-identifier">empty?</span>
1568
- 255: <span class="ruby-identifier">str</span> = <span class="ruby-node">&quot;#{tag} &quot;</span>
1569
- 256: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">true</span>
1570
- 257: <span class="ruby-identifier">taskDeps</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">dep</span><span class="ruby-operator">|</span>
1571
- 258: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">inheritable?</span>(<span class="ruby-identifier">task</span>, <span class="ruby-identifier">tag</span>, <span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">dep</span>) <span class="ruby-operator">||</span>
1572
- 259: (<span class="ruby-identifier">task</span>.<span class="ruby-identifier">parent</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">parent</span>[<span class="ruby-identifier">tag</span>, <span class="ruby-identifier">scenarioIdx</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">dep</span>))
1573
- 260:
1574
- 261: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">first</span>
1575
- 262: <span class="ruby-identifier">first</span> = <span class="ruby-keyword kw">false</span>
1576
- 263: <span class="ruby-keyword kw">else</span>
1577
- 264: <span class="ruby-identifier">str</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-value str">', '</span>
1578
- 265: <span class="ruby-keyword kw">end</span>
1579
- 266: <span class="ruby-identifier">str</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">dep</span>.<span class="ruby-identifier">task</span>.<span class="ruby-identifier">fullId</span>
1580
- 267: <span class="ruby-keyword kw">end</span>
1581
- 268: <span class="ruby-identifier">generateAttributeText</span>(<span class="ruby-identifier">str</span>, <span class="ruby-identifier">indent</span>, <span class="ruby-identifier">scenarioIdx</span>) <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">first</span>
1582
- 269: <span class="ruby-keyword kw">end</span>
1583
- 270: <span class="ruby-keyword kw">end</span></pre>
1584
- </div>
1585
-
1586
- </div>
1587
-
1588
-
1589
-
1590
-
1591
- </div>
1592
-
1593
-
1594
- <div id="generate-ask-ist-method" class="method-detail ">
1595
- <a name="method-i-generateTaskList"></a>
1596
-
1597
- <div class="method-heading">
1598
-
1599
- <span class="method-name">generateTaskList</span><span
1600
- class="method-args">()</span>
1601
- <span class="method-click-advice">click to toggle source</span>
1602
-
1603
- </div>
1604
-
1605
- <div class="method-description">
1606
-
1607
-
1608
-
1609
-
1610
-
1611
- <div class="method-source-code"
1612
- id="generate-ask-ist-source">
1613
- <pre>
1614
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 179</span>
1615
- 179: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTaskList</span>
1616
- 180: <span class="ruby-comment cmt"># The task definitions are generated recursively. So we only need to start</span>
1617
- 181: <span class="ruby-comment cmt"># it for the top-level tasks.</span>
1618
- 182: <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
1619
- 183: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">task</span>.<span class="ruby-identifier">parent</span>.<span class="ruby-identifier">nil?</span>
1620
- 184: <span class="ruby-identifier">generateTask</span>(<span class="ruby-identifier">task</span>, <span class="ruby-value">0</span>)
1621
- 185: <span class="ruby-keyword kw">end</span>
1622
- 186: <span class="ruby-keyword kw">end</span>
1623
- 187: <span class="ruby-keyword kw">end</span></pre>
1624
- </div>
1625
-
1626
- </div>
1627
-
1628
-
1629
-
1630
-
1631
- </div>
1632
-
1633
-
1634
- <div id="get-ookings-method" class="method-detail ">
1635
- <a name="method-i-getBookings"></a>
1636
-
1637
- <div class="method-heading">
1638
-
1639
- <span class="method-name">getBookings</span><span
1640
- class="method-args">()</span>
1641
- <span class="method-click-advice">click to toggle source</span>
1642
-
1643
- </div>
1644
-
1645
- <div class="method-description">
1646
-
1647
- <p>
1648
- Get the booking data for all resources that should be included in the
1649
- report.
1650
- </p>
1651
-
1652
-
1653
-
1654
- <div class="method-source-code"
1655
- id="get-ookings-source">
1656
- <pre>
1657
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 373</span>
1658
- 373: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">getBookings</span>
1659
- 374: <span class="ruby-ivar">@bookings</span> = {}
1660
- 375: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">a</span>(<span class="ruby-value str">'taskAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'booking'</span>) <span class="ruby-operator">||</span>
1661
- 376: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'resourceAttributes'</span>).<span class="ruby-identifier">include?</span>(<span class="ruby-value str">'booking'</span>)
1662
- 377: <span class="ruby-identifier">a</span>(<span class="ruby-value str">'scenarios'</span>).<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
1663
- 378: <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>] = {}
1664
- 379: <span class="ruby-ivar">@resourceList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">resource</span><span class="ruby-operator">|</span>
1665
- 380: <span class="ruby-comment cmt"># Get the bookings for this resource hashed by task.</span>
1666
- 381: <span class="ruby-identifier">bookings</span> = <span class="ruby-identifier">resource</span>.<span class="ruby-identifier">getBookings</span>(
1667
- 382: <span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-constant">TimeInterval</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">a</span>(<span class="ruby-value str">'start'</span>), <span class="ruby-identifier">a</span>(<span class="ruby-value str">'end'</span>)))
1668
- 383: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">bookings</span>.<span class="ruby-identifier">nil?</span>
1669
- 384:
1670
- 385: <span class="ruby-comment cmt"># Now convert/add them to a tripple-stage hash by scenarioIdx, task</span>
1671
- 386: <span class="ruby-comment cmt"># and then resource.</span>
1672
- 387: <span class="ruby-identifier">bookings</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span>, <span class="ruby-identifier">booking</span><span class="ruby-operator">|</span>
1673
- 388: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@taskList</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">task</span>)
1674
- 389:
1675
- 390: <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>].<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">task</span>)
1676
- 391: <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>][<span class="ruby-identifier">task</span>] = {}
1677
- 392: <span class="ruby-keyword kw">end</span>
1678
- 393: <span class="ruby-ivar">@bookings</span>[<span class="ruby-identifier">scenarioIdx</span>][<span class="ruby-identifier">task</span>][<span class="ruby-identifier">resource</span>] = <span class="ruby-identifier">booking</span>
1679
- 394: <span class="ruby-keyword kw">end</span>
1680
- 395: <span class="ruby-keyword kw">end</span>
1681
- 396: <span class="ruby-keyword kw">end</span>
1682
- 397: <span class="ruby-keyword kw">end</span>
1683
- 398: <span class="ruby-keyword kw">end</span></pre>
1684
- </div>
1685
-
1686
- </div>
1687
-
1688
-
1689
-
1690
-
1691
- </div>
1692
-
1693
-
1694
- <div id="indent-lock-method" class="method-detail ">
1695
- <a name="method-i-indentBlock"></a>
1696
-
1697
- <div class="method-heading">
1698
-
1699
- <span class="method-name">indentBlock</span><span
1700
- class="method-args">(text, indent)</span>
1701
- <span class="method-click-advice">click to toggle source</span>
1702
-
1703
- </div>
1704
-
1705
- <div class="method-description">
1706
-
1707
- <p>
1708
- This utility function is used to indent multi-line attributes. All
1709
- attributes should be filtered through this function. Attributes that
1710
- contain line breaks will be indented properly. In addition to the
1711
- indentation specified by <em>indent</em> all but the first line will be
1712
- indented after the first word of the first line. The text may not end with
1713
- a line break.
1714
- </p>
1715
-
1716
-
1717
-
1718
- <div class="method-source-code"
1719
- id="indent-lock-source">
1720
- <pre>
1721
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 434</span>
1722
- 434: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">indentBlock</span>(<span class="ruby-identifier">text</span>, <span class="ruby-identifier">indent</span>)
1723
- 435: <span class="ruby-identifier">out</span> = <span class="ruby-value str">''</span>
1724
- 436: <span class="ruby-identifier">firstSpace</span> = <span class="ruby-value">0</span>
1725
- 437: <span class="ruby-identifier">text</span>.<span class="ruby-identifier">length</span>.<span class="ruby-identifier">times</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">i</span><span class="ruby-operator">|</span>
1726
- 438: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">firstSpace</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">text</span>[<span class="ruby-identifier">i</span>] <span class="ruby-operator">==</span> <span class="ruby-value">\ \</span><span class="ruby-comment cmt"># There must be a space after ?</span>
1727
- 439: <span class="ruby-identifier">firstSpace</span> = <span class="ruby-identifier">i</span>
1728
- 440: <span class="ruby-keyword kw">end</span>
1729
- 441: <span class="ruby-identifier">out</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">text</span>[<span class="ruby-identifier">i</span>]
1730
- 442: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">text</span>[<span class="ruby-identifier">i</span>] <span class="ruby-operator">==</span> <span class="ruby-value">\n\</span>
1731
- 443: <span class="ruby-identifier">out</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">' '</span> * (<span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">firstSpace</span> <span class="ruby-operator">-</span> <span class="ruby-value">1</span>)
1732
- 444: <span class="ruby-keyword kw">end</span>
1733
- 445: <span class="ruby-keyword kw">end</span>
1734
- 446: <span class="ruby-identifier">out</span>
1735
- 447: <span class="ruby-keyword kw">end</span></pre>
1736
- </div>
1737
-
1738
- </div>
1739
-
1740
-
1741
-
1742
-
1743
- </div>
1744
-
1745
-
1746
- <div id="inheritable--method" class="method-detail ">
1747
- <a name="method-i-inheritable%3F"></a>
1748
-
1749
- <div class="method-heading">
1750
-
1751
- <span class="method-name">inheritable?</span><span
1752
- class="method-args">(property, attrId, scenarioIdx, listItem = nil)</span>
1753
- <span class="method-click-advice">click to toggle source</span>
1754
-
1755
- </div>
1756
-
1757
- <div class="method-description">
1758
-
1759
- <p>
1760
- Return true if the attribute value for <em>attrId</em> can be inherited
1761
- from the parent scenario.
1762
- </p>
1763
-
1764
-
1765
-
1766
- <div class="method-source-code"
1767
- id="inheritable--source">
1768
- <pre>
1769
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 460</span>
1770
- 460: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">inheritable?</span>(<span class="ruby-identifier">property</span>, <span class="ruby-identifier">attrId</span>, <span class="ruby-identifier">scenarioIdx</span>, <span class="ruby-identifier">listItem</span> = <span class="ruby-keyword kw">nil</span>)
1771
- 461: <span class="ruby-identifier">parentScenario</span> = <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">scenario</span>(<span class="ruby-identifier">scenarioIdx</span>).<span class="ruby-identifier">parent</span>
1772
- 462: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">false</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">parentScenario</span>
1773
- 463:
1774
- 464: <span class="ruby-identifier">parentScenarioIdx</span> = <span class="ruby-ivar">@project</span>.<span class="ruby-identifier">scenarioIdx</span>(<span class="ruby-identifier">parentScenario</span>)
1775
- 465: <span class="ruby-identifier">parentAttr</span> = <span class="ruby-identifier">property</span>[<span class="ruby-identifier">attrId</span>, <span class="ruby-identifier">parentScenarioIdx</span>]
1776
- 466: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">parentAttr</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>) <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-identifier">listItem</span>
1777
- 467: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">parentAttr</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-identifier">listItem</span>)
1778
- 468: <span class="ruby-keyword kw">else</span>
1779
- 469: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">property</span>[<span class="ruby-identifier">attrId</span>, <span class="ruby-identifier">scenarioIdx</span>] <span class="ruby-operator">==</span> <span class="ruby-identifier">parentAttr</span>
1780
- 470: <span class="ruby-keyword kw">end</span>
1781
- 471: <span class="ruby-keyword kw">end</span></pre>
1782
- </div>
1783
-
1784
- </div>
1785
-
1786
-
1787
-
1788
-
1789
- </div>
1790
-
1791
-
1792
- <div id="quoted-tring-method" class="method-detail ">
1793
- <a name="method-i-quotedString"></a>
1794
-
1795
- <div class="method-heading">
1796
-
1797
- <span class="method-name">quotedString</span><span
1798
- class="method-args">(str)</span>
1799
- <span class="method-click-advice">click to toggle source</span>
1800
-
1801
- </div>
1802
-
1803
- <div class="method-description">
1804
-
1805
-
1806
-
1807
-
1808
-
1809
- <div class="method-source-code"
1810
- id="quoted-tring-source">
1811
- <pre>
1812
- <span class="ruby-comment cmt"># File lib/taskjuggler/reports/TjpExportRE.rb, line 449</span>
1813
- 449: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">quotedString</span>(<span class="ruby-identifier">str</span>)
1814
- 450: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">str</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">\n\</span>
1815
- 451: <span class="ruby-node">&quot;-8&lt;-\n#{str}\n-&gt;8-&quot;</span>
1816
- 452: <span class="ruby-keyword kw">else</span>
1817
- 453: <span class="ruby-identifier">escaped</span> = <span class="ruby-identifier">str</span>.<span class="ruby-identifier">gsub</span>(<span class="ruby-value str">&quot;\&quot;&quot;</span>, <span class="ruby-value str">'\&quot;'</span>)
1818
- 454: <span class="ruby-node">&quot;\&quot;#{escaped}\&quot;&quot;</span>
1819
- 455: <span class="ruby-keyword kw">end</span>
1820
- 456: <span class="ruby-keyword kw">end</span></pre>
1821
- </div>
1822
-
1823
- </div>
1824
-
1825
-
1826
-
1827
-
1828
- </div>
1829
-
1830
-
1831
- </div>
1832
-
1833
-
1834
- </div>
1835
-
1836
-
1837
- <div id="rdoc-debugging-section-dump" class="debugging-section">
1838
-
1839
- <p>Disabled; run with --debug to generate this.</p>
1840
-
1841
- </div>
1842
-
1843
- <div id="validator-badges">
1844
- <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
1845
- <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
1846
- Rdoc Generator</a> 1.1.6</small>.</p>
1847
- </div>
1848
-
1849
- </body>
1850
- </html>
1851
-