taskjuggler 0.0.11 → 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (697) hide show
  1. data/CHANGELOG +6 -1550
  2. data/benchmarks/UTF-8-Strings.rb +58 -0
  3. data/benchmarks/profile.clt +36082 -0
  4. data/benchmarks/profile.html +58182 -0
  5. data/benchmarks/runbench.rb +2 -2
  6. data/data/css/tjmanual.css +0 -1
  7. data/doc/AppConfig.html +1491 -0
  8. data/doc/CHANGELOG.html +557 -0
  9. data/doc/COPYING.html +899 -0
  10. data/doc/Diff.html +1193 -0
  11. data/doc/Diff/Hunk.html +1026 -0
  12. data/doc/Diffable.html +684 -0
  13. data/doc/DiffableString.html +684 -0
  14. data/doc/Object.html +720 -0
  15. data/doc/README_rdoc.html +742 -0
  16. data/doc/RuntimeConfig.html +856 -0
  17. data/doc/String.html +1005 -0
  18. data/doc/TaskJuggler.html +2639 -0
  19. data/doc/TaskJuggler/Account.html +753 -0
  20. data/doc/TaskJuggler/AccountAttribute.html +769 -0
  21. data/doc/TaskJuggler/AccountScenario.html +712 -0
  22. data/doc/TaskJuggler/Allocation.html +963 -0
  23. data/doc/TaskJuggler/AllocationAttribute.html +799 -0
  24. data/doc/TaskJuggler/AttributeBase.html +1328 -0
  25. data/doc/TaskJuggler/AttributeDefinition.html +815 -0
  26. data/doc/TaskJuggler/AttributeOverwrite.html +606 -0
  27. data/doc/TaskJuggler/BatchProcessor.html +1178 -0
  28. data/doc/TaskJuggler/Booking.html +859 -0
  29. data/doc/TaskJuggler/BookingListAttribute.html +769 -0
  30. data/doc/TaskJuggler/BooleanAttribute.html +769 -0
  31. data/doc/TaskJuggler/CSVFile.html +1128 -0
  32. data/doc/TaskJuggler/CellSettingPattern.html +700 -0
  33. data/doc/TaskJuggler/CellSettingPatternList.html +749 -0
  34. data/doc/TaskJuggler/Charge.html +777 -0
  35. data/doc/TaskJuggler/ChargeListAttribute.html +733 -0
  36. data/doc/TaskJuggler/ChargeSet.html +949 -0
  37. data/doc/TaskJuggler/ChargeSetListAttribute.html +778 -0
  38. data/doc/TaskJuggler/CollisionDetector.html +1089 -0
  39. data/doc/TaskJuggler/ColumnListAttribute.html +733 -0
  40. data/doc/TaskJuggler/ColumnTable.html +763 -0
  41. data/doc/TaskJuggler/Daemon.html +819 -0
  42. data/doc/TaskJuggler/DataCache.html +1025 -0
  43. data/doc/TaskJuggler/DataCacheEntry.html +737 -0
  44. data/doc/TaskJuggler/DateAttribute.html +737 -0
  45. data/doc/TaskJuggler/DefinitionListAttribute.html +655 -0
  46. data/doc/TaskJuggler/DependencyListAttribute.html +773 -0
  47. data/doc/TaskJuggler/DurationAttribute.html +770 -0
  48. data/doc/TaskJuggler/FileList.html +793 -0
  49. data/doc/TaskJuggler/FileRecord.html +702 -0
  50. data/doc/TaskJuggler/FixnumAttribute.html +691 -0
  51. data/doc/TaskJuggler/FlagListAttribute.html +769 -0
  52. data/doc/TaskJuggler/FloatAttribute.html +733 -0
  53. data/doc/TaskJuggler/FormatListAttribute.html +697 -0
  54. data/doc/TaskJuggler/GanttChart.html +1487 -0
  55. data/doc/TaskJuggler/GanttContainer.html +945 -0
  56. data/doc/TaskJuggler/GanttHeader.html +948 -0
  57. data/doc/TaskJuggler/GanttHeaderScaleItem.html +762 -0
  58. data/doc/TaskJuggler/GanttLine.html +1325 -0
  59. data/doc/TaskJuggler/GanttLoadStack.html +828 -0
  60. data/doc/TaskJuggler/GanttMilestone.html +926 -0
  61. data/doc/TaskJuggler/GanttRouter.html +1136 -0
  62. data/doc/TaskJuggler/GanttTaskBar.html +948 -0
  63. data/doc/TaskJuggler/HTMLDocument.html +754 -0
  64. data/doc/TaskJuggler/HTMLElements.html +599 -0
  65. data/doc/TaskJuggler/HTMLGraphics.html +837 -0
  66. data/doc/TaskJuggler/Interval.html +1076 -0
  67. data/doc/TaskJuggler/IntervalList.html +797 -0
  68. data/doc/TaskJuggler/IntervalListAttribute.html +773 -0
  69. data/doc/TaskJuggler/JobInfo.html +943 -0
  70. data/doc/TaskJuggler/Journal.html +1248 -0
  71. data/doc/TaskJuggler/JournalEntry.html +860 -0
  72. data/doc/TaskJuggler/JournalEntryList.html +1229 -0
  73. data/doc/TaskJuggler/KeywordArray.html +696 -0
  74. data/doc/TaskJuggler/KeywordDocumentation.html +2250 -0
  75. data/doc/TaskJuggler/Limits.html +1036 -0
  76. data/doc/TaskJuggler/Limits/Limit.html +947 -0
  77. data/doc/TaskJuggler/LimitsAttribute.html +734 -0
  78. data/doc/TaskJuggler/ListAttributeBase.html +703 -0
  79. data/doc/TaskJuggler/Log.html +1163 -0
  80. data/doc/TaskJuggler/LogFile.html +980 -0
  81. data/doc/TaskJuggler/LogicalAttribute.html +760 -0
  82. data/doc/TaskJuggler/LogicalExpression.html +801 -0
  83. data/doc/TaskJuggler/LogicalExpressionAttribute.html +691 -0
  84. data/doc/TaskJuggler/LogicalExpressionListAttribute.html +691 -0
  85. data/doc/TaskJuggler/LogicalFlag.html +753 -0
  86. data/doc/TaskJuggler/LogicalFunction.html +1409 -0
  87. data/doc/TaskJuggler/LogicalOperation.html +1144 -0
  88. data/doc/TaskJuggler/ManagerResponsibilities.html +736 -0
  89. data/doc/TaskJuggler/ManagerStatusRecord.html +740 -0
  90. data/doc/TaskJuggler/Message.html +837 -0
  91. data/doc/TaskJuggler/MessageHandler.html +1056 -0
  92. data/doc/TaskJuggler/Navigator.html +943 -0
  93. data/doc/TaskJuggler/NavigatorElement.html +994 -0
  94. data/doc/TaskJuggler/NikuProject.html +724 -0
  95. data/doc/TaskJuggler/NikuReport.html +1470 -0
  96. data/doc/TaskJuggler/NikuResource.html +694 -0
  97. data/doc/TaskJuggler/NodeListAttribute.html +655 -0
  98. data/doc/TaskJuggler/PlaceHolderCell.html +748 -0
  99. data/doc/TaskJuggler/ProcessIntercom.html +1017 -0
  100. data/doc/TaskJuggler/ProcessIntercomIface.html +773 -0
  101. data/doc/TaskJuggler/Project.html +3478 -0
  102. data/doc/TaskJuggler/ProjectBroker.html +1676 -0
  103. data/doc/TaskJuggler/ProjectBrokerIface.html +851 -0
  104. data/doc/TaskJuggler/ProjectFileParser.html +2102 -0
  105. data/doc/TaskJuggler/ProjectFileScanner.html +1896 -0
  106. data/doc/TaskJuggler/ProjectRecord.html +978 -0
  107. data/doc/TaskJuggler/ProjectServer.html +1249 -0
  108. data/doc/TaskJuggler/ProjectServerIface.html +868 -0
  109. data/doc/TaskJuggler/PropertyAttribute.html +691 -0
  110. data/doc/TaskJuggler/PropertyList.html +1399 -0
  111. data/doc/TaskJuggler/PropertySet.html +1796 -0
  112. data/doc/TaskJuggler/PropertyTreeNode.html +2851 -0
  113. data/doc/TaskJuggler/Query.html +1756 -0
  114. data/doc/TaskJuggler/RTFHandlers.html +664 -0
  115. data/doc/TaskJuggler/RTFNavigator.html +792 -0
  116. data/doc/TaskJuggler/RTFQuery.html +1083 -0
  117. data/doc/TaskJuggler/RTFReport.html +820 -0
  118. data/doc/TaskJuggler/RTFReportLink.html +812 -0
  119. data/doc/TaskJuggler/RTFWithQuerySupport.html +702 -0
  120. data/doc/TaskJuggler/RealFormat.html +805 -0
  121. data/doc/TaskJuggler/RealFormatAttribute.html +655 -0
  122. data/doc/TaskJuggler/ReferenceAttribute.html +880 -0
  123. data/doc/TaskJuggler/Report.html +1501 -0
  124. data/doc/TaskJuggler/ReportBase.html +1266 -0
  125. data/doc/TaskJuggler/ReportContext.html +837 -0
  126. data/doc/TaskJuggler/ReportServer.html +1068 -0
  127. data/doc/TaskJuggler/ReportServerIface.html +902 -0
  128. data/doc/TaskJuggler/ReportServerRecord.html +781 -0
  129. data/doc/TaskJuggler/ReportServlet.html +1029 -0
  130. data/doc/TaskJuggler/ReportTable.html +1179 -0
  131. data/doc/TaskJuggler/ReportTableCell.html +1666 -0
  132. data/doc/TaskJuggler/ReportTableColumn.html +890 -0
  133. data/doc/TaskJuggler/ReportTableLegend.html +1060 -0
  134. data/doc/TaskJuggler/ReportTableLine.html +1067 -0
  135. data/doc/TaskJuggler/Resource.html +1004 -0
  136. data/doc/TaskJuggler/ResourceListAttribute.html +829 -0
  137. data/doc/TaskJuggler/ResourceListRE.html +737 -0
  138. data/doc/TaskJuggler/ResourceScenario.html +2549 -0
  139. data/doc/TaskJuggler/RichText.html +879 -0
  140. data/doc/TaskJuggler/RichTextAttribute.html +811 -0
  141. data/doc/TaskJuggler/RichTextDocument.html +1038 -0
  142. data/doc/TaskJuggler/RichTextElement.html +1780 -0
  143. data/doc/TaskJuggler/RichTextFunctionExample.html +799 -0
  144. data/doc/TaskJuggler/RichTextFunctionHandler.html +750 -0
  145. data/doc/TaskJuggler/RichTextImage.html +712 -0
  146. data/doc/TaskJuggler/RichTextIntermediate.html +1285 -0
  147. data/doc/TaskJuggler/RichTextParser.html +868 -0
  148. data/doc/TaskJuggler/RichTextScanner.html +1565 -0
  149. data/doc/TaskJuggler/RichTextSnip.html +1000 -0
  150. data/doc/TaskJuggler/RichTextSyntaxRules.html +2052 -0
  151. data/doc/TaskJuggler/Scenario.html +656 -0
  152. data/doc/TaskJuggler/ScenarioData.html +838 -0
  153. data/doc/TaskJuggler/ScenarioListAttribute.html +733 -0
  154. data/doc/TaskJuggler/Scoreboard.html +1201 -0
  155. data/doc/TaskJuggler/SheetHandlerBase.html +1297 -0
  156. data/doc/TaskJuggler/SheetReceiver.html +1398 -0
  157. data/doc/TaskJuggler/SheetSender.html +1168 -0
  158. data/doc/TaskJuggler/Shift.html +751 -0
  159. data/doc/TaskJuggler/ShiftAssignment.html +1008 -0
  160. data/doc/TaskJuggler/ShiftAssignments.html +1413 -0
  161. data/doc/TaskJuggler/ShiftAssignmentsAttribute.html +734 -0
  162. data/doc/TaskJuggler/ShiftScenario.html +782 -0
  163. data/doc/TaskJuggler/SimpleQueryExpander.html +732 -0
  164. data/doc/TaskJuggler/SortListAttribute.html +691 -0
  165. data/doc/TaskJuggler/StatusSheetReceiver.html +678 -0
  166. data/doc/TaskJuggler/StatusSheetReport.html +935 -0
  167. data/doc/TaskJuggler/StatusSheetSender.html +808 -0
  168. data/doc/TaskJuggler/StdIoWrapper.html +696 -0
  169. data/doc/TaskJuggler/StringAttribute.html +733 -0
  170. data/doc/TaskJuggler/SymbolAttribute.html +691 -0
  171. data/doc/TaskJuggler/SyntaxReference.html +1240 -0
  172. data/doc/TaskJuggler/TOCEntry.html +836 -0
  173. data/doc/TaskJuggler/TSResourceRecord.html +732 -0
  174. data/doc/TaskJuggler/TSTaskRecord.html +744 -0
  175. data/doc/TaskJuggler/TableColumnDefinition.html +949 -0
  176. data/doc/TaskJuggler/TableOfContents.html +790 -0
  177. data/doc/TaskJuggler/TableReport.html +2555 -0
  178. data/doc/TaskJuggler/Task.html +890 -0
  179. data/doc/TaskJuggler/TaskDepListAttribute.html +773 -0
  180. data/doc/TaskJuggler/TaskDependency.html +832 -0
  181. data/doc/TaskJuggler/TaskListAttribute.html +773 -0
  182. data/doc/TaskJuggler/TaskListRE.html +736 -0
  183. data/doc/TaskJuggler/TaskScenario.html +5180 -0
  184. data/doc/TaskJuggler/TernarySearchTree.html +1341 -0
  185. data/doc/TaskJuggler/TextFormatter.html +973 -0
  186. data/doc/TaskJuggler/TextParser.html +1862 -0
  187. data/doc/TaskJuggler/TextParser/Macro.html +708 -0
  188. data/doc/TaskJuggler/TextParser/MacroTable.html +832 -0
  189. data/doc/TaskJuggler/TextParser/Pattern.html +1743 -0
  190. data/doc/TaskJuggler/TextParser/Rule.html +1419 -0
  191. data/doc/TaskJuggler/TextParser/Scanner.html +1516 -0
  192. data/doc/TaskJuggler/TextParser/Scanner/BufferStreamHandle.html +661 -0
  193. data/doc/TaskJuggler/TextParser/Scanner/FileStreamHandle.html +727 -0
  194. data/doc/TaskJuggler/TextParser/Scanner/MacroStackEntry.html +724 -0
  195. data/doc/TaskJuggler/TextParser/Scanner/StreamHandle.html +1095 -0
  196. data/doc/TaskJuggler/TextParser/SourceFileInfo.html +760 -0
  197. data/doc/TaskJuggler/TextParser/StackElement.html +940 -0
  198. data/doc/TaskJuggler/TextParser/State.html +1015 -0
  199. data/doc/TaskJuggler/TextParser/StateTransition.html +808 -0
  200. data/doc/TaskJuggler/TextParser/TextParserResultArray.html +711 -0
  201. data/doc/TaskJuggler/TextParser/TokenDoc.html +742 -0
  202. data/doc/TaskJuggler/TextReport.html +921 -0
  203. data/doc/TaskJuggler/TimeSheet.html +1264 -0
  204. data/doc/TaskJuggler/TimeSheetReceiver.html +675 -0
  205. data/doc/TaskJuggler/TimeSheetRecord.html +1415 -0
  206. data/doc/TaskJuggler/TimeSheetReport.html +1013 -0
  207. data/doc/TaskJuggler/TimeSheetSender.html +700 -0
  208. data/doc/TaskJuggler/TimeSheetSummary.html +959 -0
  209. data/doc/TaskJuggler/TimeSheets.html +736 -0
  210. data/doc/TaskJuggler/Tj3.html +857 -0
  211. data/doc/TaskJuggler/Tj3AppBase.html +942 -0
  212. data/doc/TaskJuggler/Tj3Client.html +1510 -0
  213. data/doc/TaskJuggler/Tj3Daemon.html +870 -0
  214. data/doc/TaskJuggler/Tj3Man.html +768 -0
  215. data/doc/TaskJuggler/Tj3SheetAppBase.html +758 -0
  216. data/doc/TaskJuggler/Tj3SsReceiver.html +747 -0
  217. data/doc/TaskJuggler/Tj3SsSender.html +780 -0
  218. data/doc/TaskJuggler/Tj3TsReceiver.html +747 -0
  219. data/doc/TaskJuggler/Tj3TsSender.html +767 -0
  220. data/doc/TaskJuggler/Tj3TsSummary.html +775 -0
  221. data/doc/TaskJuggler/TjException.html +692 -0
  222. data/doc/TaskJuggler/TjRuntimeError.html +606 -0
  223. data/doc/TaskJuggler/TjTime.html +3117 -0
  224. data/doc/TaskJuggler/TjpExample.html +897 -0
  225. data/doc/TaskJuggler/TjpExportRE.html +1772 -0
  226. data/doc/TaskJuggler/TjpSyntaxRules.html +14329 -0
  227. data/doc/TaskJuggler/URLParameter.html +691 -0
  228. data/doc/TaskJuggler/UserManual.html +1224 -0
  229. data/doc/TaskJuggler/VimSyntax.html +1064 -0
  230. data/doc/TaskJuggler/WebServer.html +757 -0
  231. data/doc/TaskJuggler/WelcomePage.html +789 -0
  232. data/doc/TaskJuggler/WorkingHours.html +1218 -0
  233. data/doc/TaskJuggler/WorkingHoursAttribute.html +756 -0
  234. data/doc/TaskJuggler/XMLBlob.html +707 -0
  235. data/doc/TaskJuggler/XMLComment.html +702 -0
  236. data/doc/TaskJuggler/XMLDocument.html +803 -0
  237. data/doc/TaskJuggler/XMLElement.html +990 -0
  238. data/doc/TaskJuggler/XMLNamedText.html +663 -0
  239. data/doc/TaskJuggler/XMLText.html +717 -0
  240. data/doc/index.html +4518 -0
  241. data/doc/lib/taskjuggler/AccountScenario_rb.html +69 -0
  242. data/doc/lib/taskjuggler/Account_rb.html +71 -0
  243. data/doc/lib/taskjuggler/AlgorithmDiff_rb.html +67 -0
  244. data/doc/lib/taskjuggler/Allocation_rb.html +71 -0
  245. data/doc/lib/taskjuggler/AppConfig_rb.html +69 -0
  246. data/doc/lib/taskjuggler/AttributeBase_rb.html +69 -0
  247. data/doc/lib/taskjuggler/AttributeDefinition_rb.html +67 -0
  248. data/doc/lib/taskjuggler/Attributes_rb.html +83 -0
  249. data/doc/lib/taskjuggler/BatchProcessor_rb.html +71 -0
  250. data/doc/lib/taskjuggler/Booking_rb.html +67 -0
  251. data/doc/lib/taskjuggler/ChargeSet_rb.html +69 -0
  252. data/doc/lib/taskjuggler/Charge_rb.html +69 -0
  253. data/doc/lib/taskjuggler/DataCache_rb.html +71 -0
  254. data/doc/lib/taskjuggler/FileList_rb.html +67 -0
  255. data/doc/lib/taskjuggler/HTMLDocument_rb.html +71 -0
  256. data/doc/lib/taskjuggler/HTMLElements_rb.html +69 -0
  257. data/doc/lib/taskjuggler/IntervalList_rb.html +69 -0
  258. data/doc/lib/taskjuggler/Interval_rb.html +69 -0
  259. data/doc/lib/taskjuggler/Journal_rb.html +67 -0
  260. data/doc/lib/taskjuggler/KeywordArray_rb.html +67 -0
  261. data/doc/lib/taskjuggler/KeywordDocumentation_rb.html +77 -0
  262. data/doc/lib/taskjuggler/Limits_rb.html +69 -0
  263. data/doc/lib/taskjuggler/LogFile_rb.html +69 -0
  264. data/doc/lib/taskjuggler/Log_rb.html +71 -0
  265. data/doc/lib/taskjuggler/LogicalExpression_rb.html +73 -0
  266. data/doc/lib/taskjuggler/LogicalFunction_rb.html +69 -0
  267. data/doc/lib/taskjuggler/LogicalOperation_rb.html +69 -0
  268. data/doc/lib/taskjuggler/MessageHandler_rb.html +69 -0
  269. data/doc/lib/taskjuggler/ProjectFileParser_rb.html +77 -0
  270. data/doc/lib/taskjuggler/ProjectFileScanner_rb.html +69 -0
  271. data/doc/lib/taskjuggler/Project_rb.html +113 -0
  272. data/doc/lib/taskjuggler/PropertyList_rb.html +67 -0
  273. data/doc/lib/taskjuggler/PropertySet_rb.html +71 -0
  274. data/doc/lib/taskjuggler/PropertyTreeNode_rb.html +67 -0
  275. data/doc/lib/taskjuggler/Query_rb.html +69 -0
  276. data/doc/lib/taskjuggler/RealFormat_rb.html +67 -0
  277. data/doc/lib/taskjuggler/ResourceScenario_rb.html +69 -0
  278. data/doc/lib/taskjuggler/Resource_rb.html +71 -0
  279. data/doc/lib/taskjuggler/RichText/Document_rb.html +73 -0
  280. data/doc/lib/taskjuggler/RichText/Element_rb.html +75 -0
  281. data/doc/lib/taskjuggler/RichText/FunctionExample_rb.html +73 -0
  282. data/doc/lib/taskjuggler/RichText/FunctionHandler_rb.html +67 -0
  283. data/doc/lib/taskjuggler/RichText/Parser_rb.html +75 -0
  284. data/doc/lib/taskjuggler/RichText/RTFHandlers_rb.html +75 -0
  285. data/doc/lib/taskjuggler/RichText/RTFNavigator_rb.html +73 -0
  286. data/doc/lib/taskjuggler/RichText/RTFQuery_rb.html +73 -0
  287. data/doc/lib/taskjuggler/RichText/RTFReportLink_rb.html +75 -0
  288. data/doc/lib/taskjuggler/RichText/RTFReport_rb.html +71 -0
  289. data/doc/lib/taskjuggler/RichText/RTFWithQuerySupport_rb.html +69 -0
  290. data/doc/lib/taskjuggler/RichText/Scanner_rb.html +71 -0
  291. data/doc/lib/taskjuggler/RichText/Snip_rb.html +71 -0
  292. data/doc/lib/taskjuggler/RichText/SyntaxRules_rb.html +67 -0
  293. data/doc/lib/taskjuggler/RichText/TOCEntry_rb.html +71 -0
  294. data/doc/lib/taskjuggler/RichText/TableOfContents_rb.html +71 -0
  295. data/doc/lib/taskjuggler/RichText_rb.html +73 -0
  296. data/doc/lib/taskjuggler/RuntimeConfig_rb.html +69 -0
  297. data/doc/lib/taskjuggler/ScenarioData_rb.html +71 -0
  298. data/doc/lib/taskjuggler/Scenario_rb.html +69 -0
  299. data/doc/lib/taskjuggler/Scoreboard_rb.html +69 -0
  300. data/doc/lib/taskjuggler/SheetHandlerBase_rb.html +75 -0
  301. data/doc/lib/taskjuggler/SheetReceiver_rb.html +81 -0
  302. data/doc/lib/taskjuggler/SheetSender_rb.html +79 -0
  303. data/doc/lib/taskjuggler/ShiftAssignments_rb.html +71 -0
  304. data/doc/lib/taskjuggler/ShiftScenario_rb.html +69 -0
  305. data/doc/lib/taskjuggler/Shift_rb.html +71 -0
  306. data/doc/lib/taskjuggler/SimpleQueryExpander_rb.html +69 -0
  307. data/doc/lib/taskjuggler/StatusSheetReceiver_rb.html +69 -0
  308. data/doc/lib/taskjuggler/StatusSheetSender_rb.html +69 -0
  309. data/doc/lib/taskjuggler/StdIoWrapper_rb.html +67 -0
  310. data/doc/lib/taskjuggler/SyntaxReference_rb.html +75 -0
  311. data/doc/lib/taskjuggler/TableColumnDefinition_rb.html +67 -0
  312. data/doc/lib/taskjuggler/TaskDependency_rb.html +67 -0
  313. data/doc/lib/taskjuggler/TaskJuggler_rb.html +75 -0
  314. data/doc/lib/taskjuggler/TaskScenario_rb.html +71 -0
  315. data/doc/lib/taskjuggler/Task_rb.html +71 -0
  316. data/doc/lib/taskjuggler/TernarySearchTree_rb.html +69 -0
  317. data/doc/lib/taskjuggler/TextFormatter_rb.html +69 -0
  318. data/doc/lib/taskjuggler/TextParser/MacroTable_rb.html +67 -0
  319. data/doc/lib/taskjuggler/TextParser/Pattern_rb.html +71 -0
  320. data/doc/lib/taskjuggler/TextParser/Rule_rb.html +69 -0
  321. data/doc/lib/taskjuggler/TextParser/Scanner_rb.html +77 -0
  322. data/doc/lib/taskjuggler/TextParser/SourceFileInfo_rb.html +67 -0
  323. data/doc/lib/taskjuggler/TextParser/StackElement_rb.html +67 -0
  324. data/doc/lib/taskjuggler/TextParser/State_rb.html +67 -0
  325. data/doc/lib/taskjuggler/TextParser/TokenDoc_rb.html +67 -0
  326. data/doc/lib/taskjuggler/TextParser_rb.html +79 -0
  327. data/doc/lib/taskjuggler/TimeSheetReceiver_rb.html +69 -0
  328. data/doc/lib/taskjuggler/TimeSheetSender_rb.html +69 -0
  329. data/doc/lib/taskjuggler/TimeSheetSummary_rb.html +69 -0
  330. data/doc/lib/taskjuggler/TimeSheets_rb.html +67 -0
  331. data/doc/lib/taskjuggler/Tj3AppBase_rb.html +79 -0
  332. data/doc/lib/taskjuggler/Tj3Config_rb.html +71 -0
  333. data/doc/lib/taskjuggler/Tj3SheetAppBase_rb.html +69 -0
  334. data/doc/lib/taskjuggler/TjException_rb.html +67 -0
  335. data/doc/lib/taskjuggler/TjTime_rb.html +71 -0
  336. data/doc/lib/taskjuggler/TjpExample_rb.html +69 -0
  337. data/doc/lib/taskjuggler/TjpSyntaxRules_rb.html +67 -0
  338. data/doc/lib/taskjuggler/URLParameter_rb.html +69 -0
  339. data/doc/lib/taskjuggler/UTF8String_rb.html +69 -0
  340. data/doc/lib/taskjuggler/UserManual_rb.html +81 -0
  341. data/doc/lib/taskjuggler/VimSyntax_rb.html +69 -0
  342. data/doc/lib/taskjuggler/WorkingHours_rb.html +71 -0
  343. data/doc/lib/taskjuggler/XMLDocument_rb.html +69 -0
  344. data/doc/lib/taskjuggler/XMLElement_rb.html +69 -0
  345. data/doc/lib/taskjuggler/apps/Tj3Client_rb.html +75 -0
  346. data/doc/lib/taskjuggler/apps/Tj3Daemon_rb.html +75 -0
  347. data/doc/lib/taskjuggler/apps/Tj3Man_rb.html +75 -0
  348. data/doc/lib/taskjuggler/apps/Tj3SsReceiver_rb.html +71 -0
  349. data/doc/lib/taskjuggler/apps/Tj3SsSender_rb.html +71 -0
  350. data/doc/lib/taskjuggler/apps/Tj3TsReceiver_rb.html +71 -0
  351. data/doc/lib/taskjuggler/apps/Tj3TsSender_rb.html +71 -0
  352. data/doc/lib/taskjuggler/apps/Tj3TsSummary_rb.html +71 -0
  353. data/doc/lib/taskjuggler/apps/Tj3_rb.html +71 -0
  354. data/doc/lib/taskjuggler/daemon/Daemon_rb.html +69 -0
  355. data/doc/lib/taskjuggler/daemon/ProcessIntercom_rb.html +71 -0
  356. data/doc/lib/taskjuggler/daemon/ProjectBroker_rb.html +83 -0
  357. data/doc/lib/taskjuggler/daemon/ProjectServer_rb.html +85 -0
  358. data/doc/lib/taskjuggler/daemon/ReportServer_rb.html +73 -0
  359. data/doc/lib/taskjuggler/daemon/ReportServlet_rb.html +69 -0
  360. data/doc/lib/taskjuggler/daemon/WebServer_rb.html +81 -0
  361. data/doc/lib/taskjuggler/daemon/WelcomePage_rb.html +71 -0
  362. data/doc/lib/taskjuggler/deep_copy_rb.html +67 -0
  363. data/doc/lib/taskjuggler/reports/CSVFile_rb.html +69 -0
  364. data/doc/lib/taskjuggler/reports/CollisionDetector_rb.html +69 -0
  365. data/doc/lib/taskjuggler/reports/ColumnTable_rb.html +69 -0
  366. data/doc/lib/taskjuggler/reports/GanttChart_rb.html +75 -0
  367. data/doc/lib/taskjuggler/reports/GanttContainer_rb.html +69 -0
  368. data/doc/lib/taskjuggler/reports/GanttHeaderScaleItem_rb.html +67 -0
  369. data/doc/lib/taskjuggler/reports/GanttHeader_rb.html +69 -0
  370. data/doc/lib/taskjuggler/reports/GanttLine_rb.html +79 -0
  371. data/doc/lib/taskjuggler/reports/GanttLoadStack_rb.html +69 -0
  372. data/doc/lib/taskjuggler/reports/GanttMilestone_rb.html +69 -0
  373. data/doc/lib/taskjuggler/reports/GanttRouter_rb.html +69 -0
  374. data/doc/lib/taskjuggler/reports/GanttTaskBar_rb.html +69 -0
  375. data/doc/lib/taskjuggler/reports/HTMLGraphics_rb.html +67 -0
  376. data/doc/lib/taskjuggler/reports/Navigator_rb.html +69 -0
  377. data/doc/lib/taskjuggler/reports/NikuReport_rb.html +71 -0
  378. data/doc/lib/taskjuggler/reports/ReportBase_rb.html +67 -0
  379. data/doc/lib/taskjuggler/reports/ReportContext_rb.html +67 -0
  380. data/doc/lib/taskjuggler/reports/ReportTableCell_rb.html +67 -0
  381. data/doc/lib/taskjuggler/reports/ReportTableColumn_rb.html +67 -0
  382. data/doc/lib/taskjuggler/reports/ReportTableLegend_rb.html +67 -0
  383. data/doc/lib/taskjuggler/reports/ReportTableLine_rb.html +69 -0
  384. data/doc/lib/taskjuggler/reports/ReportTable_rb.html +71 -0
  385. data/doc/lib/taskjuggler/reports/Report_rb.html +93 -0
  386. data/doc/lib/taskjuggler/reports/ResourceListRE_rb.html +75 -0
  387. data/doc/lib/taskjuggler/reports/StatusSheetReport_rb.html +69 -0
  388. data/doc/lib/taskjuggler/reports/TableReport_rb.html +77 -0
  389. data/doc/lib/taskjuggler/reports/TaskListRE_rb.html +75 -0
  390. data/doc/lib/taskjuggler/reports/TextReport_rb.html +69 -0
  391. data/doc/lib/taskjuggler/reports/TimeSheetReport_rb.html +69 -0
  392. data/doc/lib/taskjuggler/reports/TjpExportRE_rb.html +69 -0
  393. data/doc/lib/tj3_rb.html +69 -0
  394. data/doc/lib/tj3client_rb.html +69 -0
  395. data/doc/lib/tj3d_rb.html +69 -0
  396. data/doc/lib/tj3man_rb.html +69 -0
  397. data/doc/lib/tj3ss_receiver_rb.html +69 -0
  398. data/doc/lib/tj3ss_sender_rb.html +69 -0
  399. data/doc/lib/tj3ts_receiver_rb.html +69 -0
  400. data/doc/lib/tj3ts_sender_rb.html +69 -0
  401. data/doc/lib/tj3ts_summary_rb.html +69 -0
  402. data/doc/rdoc.css +706 -0
  403. data/examples/tutorial.tjp +2 -1
  404. data/lib/taskjuggler/Attributes.rb +33 -12
  405. data/lib/taskjuggler/DataCache.rb +17 -0
  406. data/lib/taskjuggler/FileList.rb +9 -0
  407. data/lib/taskjuggler/HTMLDocument.rb +19 -21
  408. data/lib/taskjuggler/HTMLElements.rb +46 -0
  409. data/lib/taskjuggler/Journal.rb +95 -46
  410. data/lib/taskjuggler/KeywordDocumentation.rb +248 -185
  411. data/lib/taskjuggler/LogicalExpression.rb +2 -2
  412. data/lib/taskjuggler/LogicalFunction.rb +22 -1
  413. data/lib/taskjuggler/LogicalOperation.rb +15 -5
  414. data/lib/taskjuggler/Project.rb +73 -16
  415. data/lib/taskjuggler/ProjectFileParser.rb +1 -1
  416. data/lib/taskjuggler/ProjectFileScanner.rb +27 -0
  417. data/lib/taskjuggler/PropertySet.rb +22 -45
  418. data/lib/taskjuggler/PropertyTreeNode.rb +99 -128
  419. data/lib/taskjuggler/Query.rb +39 -8
  420. data/lib/taskjuggler/Resource.rb +15 -6
  421. data/lib/taskjuggler/RichText/Document.rb +3 -3
  422. data/lib/taskjuggler/RichText/RTFQuery.rb +4 -4
  423. data/lib/taskjuggler/SheetHandlerBase.rb +14 -12
  424. data/lib/taskjuggler/SheetReceiver.rb +17 -15
  425. data/lib/taskjuggler/SheetSender.rb +16 -10
  426. data/{spec/support → lib/taskjuggler}/StdIoWrapper.rb +17 -0
  427. data/lib/taskjuggler/SyntaxReference.rb +2 -2
  428. data/lib/taskjuggler/TableColumnDefinition.rb +4 -3
  429. data/lib/taskjuggler/Task.rb +7 -2
  430. data/lib/taskjuggler/TaskJuggler.rb +74 -0
  431. data/lib/taskjuggler/TaskScenario.rb +62 -83
  432. data/lib/taskjuggler/TextParser.rb +20 -13
  433. data/lib/taskjuggler/TextParser/Scanner.rb +17 -1
  434. data/lib/taskjuggler/TimeSheetSummary.rb +9 -5
  435. data/lib/taskjuggler/TimeSheets.rb +6 -1
  436. data/lib/taskjuggler/Tj3AppBase.rb +41 -18
  437. data/lib/taskjuggler/Tj3Config.rb +1 -1
  438. data/lib/taskjuggler/TjTime.rb +6 -1
  439. data/lib/taskjuggler/TjpSyntaxRules.rb +408 -227
  440. data/lib/taskjuggler/UTF8String.rb +10 -0
  441. data/lib/taskjuggler/UserManual.rb +89 -81
  442. data/lib/taskjuggler/WorkingHours.rb +2 -3
  443. data/lib/taskjuggler/XMLDocument.rb +13 -4
  444. data/lib/taskjuggler/XMLElement.rb +31 -3
  445. data/lib/taskjuggler/apps/Tj3.rb +53 -21
  446. data/lib/taskjuggler/apps/Tj3Client.rb +19 -17
  447. data/lib/taskjuggler/apps/Tj3Daemon.rb +24 -21
  448. data/lib/taskjuggler/{Tj3Man.rb → apps/Tj3Man.rb} +2 -2
  449. data/lib/taskjuggler/apps/Tj3SsReceiver.rb +14 -11
  450. data/lib/taskjuggler/apps/Tj3SsSender.rb +17 -14
  451. data/lib/taskjuggler/apps/Tj3TsReceiver.rb +14 -11
  452. data/lib/taskjuggler/apps/Tj3TsSender.rb +16 -13
  453. data/lib/taskjuggler/apps/Tj3TsSummary.rb +16 -13
  454. data/lib/taskjuggler/reports/GanttChart.rb +1 -1
  455. data/lib/taskjuggler/reports/GanttRouter.rb +0 -2
  456. data/lib/taskjuggler/reports/GanttTaskBar.rb +2 -1
  457. data/lib/taskjuggler/reports/Navigator.rb +2 -1
  458. data/lib/taskjuggler/reports/NikuReport.rb +11 -7
  459. data/lib/taskjuggler/reports/ReportContext.rb +1 -0
  460. data/lib/taskjuggler/reports/StatusSheetReport.rb +7 -2
  461. data/lib/taskjuggler/reports/TableReport.rb +6 -4
  462. data/lib/taskjuggler/reports/TimeSheetReport.rb +3 -0
  463. data/lib/taskjuggler/reports/TjpExportRE.rb +4 -4
  464. data/lib/tj3man.rb +1 -1
  465. data/manual/Day_To_Day_Juggling +134 -137
  466. data/manual/TaskJuggler_2x_Migration +39 -32
  467. data/manual/The_TaskJuggler_Syntax +6 -0
  468. data/prj_cfg.rb +2 -3
  469. data/spec/StatusSheets_spec.rb +314 -0
  470. data/spec/TimeSheets_spec.rb +237 -16
  471. data/spec/Tj3_spec.rb +1 -1
  472. data/spec/support/DaemonControl.rb +1 -1
  473. data/tasks/changelog.rake +13 -3
  474. data/tasks/manual.rake +1 -1
  475. data/test/TestSuite/CSV-Reports/refs/celltext.csv +1 -1
  476. data/test/TestSuite/CSV-Reports/refs/resourcereport.csv +1 -1
  477. data/test/TestSuite/CSV-Reports/refs/resourcereport_with_tasks.csv +1 -1
  478. data/test/TestSuite/CSV-Reports/refs/sortByTree.csv +1 -1
  479. data/test/TestSuite/CSV-Reports/refs/sortBy_effort.up.csv +1 -1
  480. data/test/TestSuite/CSV-Reports/refs/sortBy_plan.start.down.csv +1 -1
  481. data/test/TestSuite/CSV-Reports/refs/taskreport.csv +1 -1
  482. data/test/TestSuite/CSV-Reports/refs/taskreport_with_resources.csv +1 -1
  483. data/test/TestSuite/CSV-Reports/sortByTree.tjp +3 -1
  484. data/test/TestSuite/CSV-Reports/sortBy_duration.down.tjp +4 -1
  485. data/test/TestSuite/CSV-Reports/sortBy_effort.up.tjp +1 -1
  486. data/test/TestSuite/CSV-Reports/sortBy_plan.start.down.tjp +4 -1
  487. data/test/TestSuite/CSV-Reports/taskreport.tjp +3 -1
  488. data/test/TestSuite/CSV-Reports/taskreport_with_resources.tjp +3 -1
  489. data/test/TestSuite/CSV-Reports/weekly.tjp +1 -0
  490. data/test/TestSuite/Export-Reports/refs/Account.tjp +25 -30
  491. data/test/TestSuite/Export-Reports/refs/AdoptedTasks.tjp +1 -0
  492. data/test/TestSuite/Export-Reports/refs/Allocate-1.tjp +43 -72
  493. data/test/TestSuite/Export-Reports/refs/Alternative.tjp +17 -22
  494. data/test/TestSuite/Export-Reports/refs/AutoID.tjp +11 -10
  495. data/test/TestSuite/Export-Reports/refs/AutoMacros.tjp +1 -0
  496. data/test/TestSuite/Export-Reports/refs/Booking.tjp +16 -23
  497. data/test/TestSuite/Export-Reports/refs/Caption.tjp +13 -16
  498. data/test/TestSuite/Export-Reports/refs/Celltext.tjp +12 -16
  499. data/test/TestSuite/Export-Reports/refs/Comments.tjp +15 -19
  500. data/test/TestSuite/Export-Reports/refs/Complete.tjp +17 -26
  501. data/test/TestSuite/Export-Reports/refs/CompletedWork.tji.tjp +40 -0
  502. data/test/TestSuite/Export-Reports/refs/Currencyformat.tjp +1 -0
  503. data/test/TestSuite/Export-Reports/refs/CustomAttributes.tjp +1 -0
  504. data/test/TestSuite/Export-Reports/refs/Depends1.tjp +5 -4
  505. data/test/TestSuite/Export-Reports/refs/Durations.tjp +18 -27
  506. data/test/TestSuite/Export-Reports/refs/Efficiency.tjp +21 -20
  507. data/test/TestSuite/Export-Reports/refs/EnvVar.tjp +21 -0
  508. data/test/TestSuite/Export-Reports/refs/Flags.tjp +6 -5
  509. data/test/TestSuite/Export-Reports/refs/Gap.tjp +2 -1
  510. data/test/TestSuite/Export-Reports/refs/HtmlTaskReport.tjp +15 -19
  511. data/test/TestSuite/Export-Reports/refs/Include.tjp +21 -20
  512. data/test/TestSuite/Export-Reports/refs/Journal.tjp +6 -5
  513. data/test/TestSuite/Export-Reports/refs/Limits-1.tjp +92 -140
  514. data/test/TestSuite/Export-Reports/refs/LoadUnits.tjp +293 -566
  515. data/test/TestSuite/Export-Reports/refs/LogicalExpression.tjp +1 -0
  516. data/test/TestSuite/Export-Reports/refs/LogicalFunction.tjp +17 -22
  517. data/test/TestSuite/Export-Reports/refs/Macro-1.tjp +32 -53
  518. data/test/TestSuite/Export-Reports/refs/Macro-2.tjp +1 -0
  519. data/test/TestSuite/Export-Reports/refs/Macro-3.tjp +1 -0
  520. data/test/TestSuite/Export-Reports/refs/Manager.tjp +51 -50
  521. data/test/TestSuite/Export-Reports/refs/Mandatory.tjp +22 -31
  522. data/test/TestSuite/Export-Reports/refs/Milestone.tjp +1 -0
  523. data/test/TestSuite/Export-Reports/refs/MinMax.tjp +2 -1
  524. data/test/TestSuite/Export-Reports/refs/Niku.tjp +80 -139
  525. data/test/TestSuite/Export-Reports/refs/Numberformat.tjp +1 -0
  526. data/test/TestSuite/Export-Reports/refs/Period.tjp +1 -0
  527. data/test/TestSuite/Export-Reports/refs/Persistent.tjp +17 -21
  528. data/test/TestSuite/Export-Reports/refs/Precedes1.tjp +1 -0
  529. data/test/TestSuite/Export-Reports/refs/Priority.tjp +121 -107
  530. data/test/TestSuite/Export-Reports/refs/Project.tjp +1 -0
  531. data/test/TestSuite/Export-Reports/refs/ProjectIDs.tjp +1 -0
  532. data/test/TestSuite/Export-Reports/refs/Query.tjp +17 -26
  533. data/test/TestSuite/Export-Reports/refs/Reports.tjp +42 -61
  534. data/test/TestSuite/Export-Reports/refs/Resource.tjp +21 -20
  535. data/test/TestSuite/Export-Reports/refs/ResourcePrefix.tjp +16 -20
  536. data/test/TestSuite/Export-Reports/refs/ResourceRoot.tjp +36 -35
  537. data/test/TestSuite/Export-Reports/refs/Responsible.tjp +17 -21
  538. data/test/TestSuite/Export-Reports/refs/RollupResource.tjp +36 -35
  539. data/test/TestSuite/Export-Reports/refs/Scenario.tjp +3 -1
  540. data/test/TestSuite/Export-Reports/refs/Scheduling.tjp +1 -0
  541. data/test/TestSuite/Export-Reports/refs/Select.tjp +29 -43
  542. data/test/TestSuite/Export-Reports/refs/Shift.tjp +12 -11
  543. data/test/TestSuite/Export-Reports/refs/Simple.tjp +15 -19
  544. data/test/TestSuite/Export-Reports/refs/StatusSheet.tjp +33 -47
  545. data/test/TestSuite/Export-Reports/refs/String.tjp +9 -10
  546. data/test/TestSuite/Export-Reports/refs/Supplement.tjp +7 -8
  547. data/test/TestSuite/Export-Reports/refs/TaskPrefix.tjp +10 -11
  548. data/test/TestSuite/Export-Reports/refs/TaskRoot.tjp +10 -9
  549. data/test/TestSuite/Export-Reports/refs/TimeFrame.tjp +9 -9
  550. data/test/TestSuite/Export-Reports/refs/TimeSheet1.tjp +25 -37
  551. data/test/TestSuite/Export-Reports/refs/Timezone.tjp +1 -0
  552. data/test/TestSuite/Export-Reports/refs/Vacation.tjp +26 -25
  553. data/test/TestSuite/Export-Reports/refs/tutorial.tjp +453 -821
  554. data/test/TestSuite/HTML-Reports/Alerts.html +160 -412
  555. data/test/TestSuite/HTML-Reports/CellText.html +758 -0
  556. data/test/TestSuite/HTML-Reports/ColumnPeriods.html +156 -0
  557. data/test/TestSuite/HTML-Reports/IsOngoing.html +172 -0
  558. data/test/TestSuite/HTML-Reports/LogicalFunctions.html +245 -0
  559. data/test/TestSuite/HTML-Reports/Query.html +31 -0
  560. data/test/TestSuite/HTML-Reports/css/tjmanual.css +0 -20
  561. data/test/TestSuite/HTML-Reports/css/tjreport.css +6 -7
  562. data/test/TestSuite/HTML-Reports/depArrows.html +851 -0
  563. data/test/TestSuite/HTML-Reports/profile.html +37581 -0
  564. data/test/TestSuite/{ReportGenerator/Correct → HTML-Reports/scripts}/scripts/wz_tooltip.js +20 -20
  565. data/test/TestSuite/ReportGenerator/Correct/Journal.tjp +27 -3
  566. data/test/TestSuite/ReportGenerator/Correct/LogicalFunctions3.tjp +20 -0
  567. data/test/TestSuite/ReportGenerator/Correct/LogicalFunctions4.tjp +16 -0
  568. data/test/TestSuite/ReportGenerator/Correct/refs/DependencyList-1.csv +4 -0
  569. data/test/TestSuite/ReportGenerator/Correct/refs/Journal-1.csv +2 -0
  570. data/test/TestSuite/ReportGenerator/Correct/refs/Journal-2.csv +8 -0
  571. data/test/TestSuite/ReportGenerator/Correct/refs/LogicalFunctions3-1.csv +4 -0
  572. data/test/TestSuite/ReportGenerator/Correct/refs/LogicalFunctions4-1.csv +2 -0
  573. data/test/TestSuite/Scheduler/Correct/Allocate.tjp +3 -1
  574. data/test/TestSuite/Scheduler/Correct/Booking.tjp +8 -7
  575. data/test/TestSuite/Scheduler/Correct/Booking2.tjp +16 -9
  576. data/test/TestSuite/Scheduler/Correct/Booking3.tjp +28 -0
  577. data/test/TestSuite/Scheduler/Correct/Container.tjp +2 -2
  578. data/test/TestSuite/Scheduler/Correct/Depends.tjp +3 -3
  579. data/test/TestSuite/Scheduler/Correct/InheritStartEnd.tjp +4 -4
  580. data/test/TestSuite/Scheduler/Correct/Limits.tjp +3 -1
  581. data/test/TestSuite/Scheduler/Correct/Mandatory.tjp +2 -2
  582. data/test/TestSuite/Scheduler/Correct/MultipleMandatories.tjp +2 -2
  583. data/test/TestSuite/Scheduler/Correct/Optimize-1.tjp +2 -2
  584. data/test/TestSuite/Scheduler/Correct/Optimize-2.tjp +3 -3
  585. data/test/TestSuite/Scheduler/Correct/Optimize-3.tjp +3 -3
  586. data/test/TestSuite/Scheduler/Correct/Optimize-4.tjp +3 -3
  587. data/test/TestSuite/Scheduler/Correct/Optimize-5.tjp +7 -7
  588. data/test/TestSuite/Scheduler/Correct/Scenarios.tjp +2 -2
  589. data/test/TestSuite/Scheduler/Correct/Shift.tjp +7 -5
  590. data/test/TestSuite/Scheduler/Correct/Shift2.tjp +1 -1
  591. data/test/TestSuite/Scheduler/Correct/TimeSheet2.tjp +5 -2
  592. data/test/TestSuite/Scheduler/Errors/booking_no_duty.tjp +1 -1
  593. data/test/TestSuite/Scheduler/Errors/ts_alert1_more_details.tjp +4 -2
  594. data/test/TestSuite/Scheduler/Errors/ts_alert2_more_details.tjp +4 -2
  595. data/test/TestSuite/Scheduler/Errors/ts_no_expected_end.tjp +4 -2
  596. data/test/TestSuite/Scheduler/Errors/ts_no_headline1.tjp +4 -2
  597. data/test/TestSuite/Scheduler/Errors/ts_no_rem_or_end.tjp +4 -2
  598. data/test/TestSuite/Scheduler/Errors/ts_no_remaining.tjp +4 -2
  599. data/test/TestSuite/Scheduler/Errors/ts_no_status_work.tjp +4 -2
  600. data/test/TestSuite/Scheduler/Errors/ts_no_work.tjp +4 -2
  601. data/test/TestSuite/Scheduler/Errors/ts_res_new_task.tjp +5 -2
  602. data/test/TestSuite/Scheduler/Errors/ts_work_too_high.tjp +4 -2
  603. data/test/TestSuite/Scheduler/Errors/ts_work_too_low.tjp +4 -2
  604. data/test/TestSuite/StatusSheets/dev2.tji +22 -0
  605. data/test/TestSuite/StatusSheets/run +1 -1
  606. data/test/TestSuite/Syntax/Correct/Booking.tjp +0 -5
  607. data/test/TestSuite/Syntax/Correct/CompletedWork.tji.tjp +38 -0
  608. data/test/TestSuite/Syntax/Correct/EnvVar.tjp +12 -0
  609. data/test/TestSuite/Syntax/Correct/Freeze.tjp +1 -3
  610. data/test/TestSuite/Syntax/Correct/Limits-1.tjp +9 -5
  611. data/test/TestSuite/Syntax/Correct/Priority.tjp +22 -11
  612. data/test/TestSuite/Syntax/Correct/Scenario.tjp +1 -1
  613. data/test/TestSuite/Syntax/Correct/StatusSheet.tjp +2 -0
  614. data/test/TestSuite/Syntax/Correct/TimeSheet1.tjp +4 -4
  615. data/test/TestSuite/Syntax/Correct/css/tjmanual.css +20 -0
  616. data/test/TestSuite/Syntax/Correct/css/tjreport.css +7 -6
  617. data/test/TestSuite/Syntax/Correct/tutorial.tjp +2 -1
  618. data/test/TestSuite/Syntax/Errors/no_own_resource_booking.tjp +16 -0
  619. data/test/TestSuite/Syntax/Errors/no_own_task_booking.tjp +16 -0
  620. data/test/TestSuite/Syntax/Errors/resourceroot_leaf.tjp +10 -0
  621. data/test/TestSuite/Syntax/Errors/runaway_token.tjp +8 -0
  622. data/test/TestSuite/Syntax/Errors/sorting_bsi.tjp +11 -0
  623. data/test/TestSuite/Syntax/Errors/ss_no_tracking_scenario.tjp +14 -0
  624. data/test/TestSuite/Syntax/Errors/taskroot_leaf.tjp +8 -0
  625. data/test/TestSuite/Syntax/Errors/ts_bad_priority.tjp +4 -2
  626. data/test/TestSuite/Syntax/Errors/ts_default_details.tjp +4 -2
  627. data/test/TestSuite/Syntax/Errors/ts_default_summary.tjp +4 -2
  628. data/test/TestSuite/Syntax/Errors/ts_duplicate_task.tjp +4 -2
  629. data/test/TestSuite/Syntax/Errors/ts_end_too_early.tjp +4 -2
  630. data/test/TestSuite/Syntax/Errors/ts_headline_too_long.tjp +4 -2
  631. data/test/TestSuite/Syntax/Errors/ts_no_headline2.tjp +4 -2
  632. data/test/TestSuite/Syntax/Errors/ts_no_tracking_scenario.tjp +14 -0
  633. data/test/TestSuite/Syntax/Errors/ts_summary_too_long.tjp +4 -2
  634. data/test/TestSuite/Syntax/Errors/unknown_env_var.tjp +7 -0
  635. data/test/TestSuite/TimeSheets/resrep.tji +7 -0
  636. data/test/TestSuite/TimeSheets/ts.tji +351 -0
  637. data/test/TestSuite/TimeSheets/tsdef.tji +2 -0
  638. data/test/test_Export-Reports.rb +3 -0
  639. data/test/test_Journal.rb +4 -4
  640. data/test/test_PropertySet.rb +5 -5
  641. data/test/test_Syntax.rb +3 -0
  642. data/test/test_WorkingHours.rb +11 -18
  643. metadata +1012 -649
  644. data/lib/exchangebug.rb +0 -42
  645. data/lib/ruby-signal-bug.rb +0 -55
  646. data/spec/tj3client.log +0 -23
  647. data/test/TestSuite/CSV-Reports/alert.tjp +0 -9
  648. data/test/TestSuite/CSV-Reports/refs/alert.csv +0 -15
  649. data/test/TestSuite/Export-Reports/refs/CriticalPath.tjp +0 -41
  650. data/test/TestSuite/Export-Reports/refs/DST.tjp +0 -89
  651. data/test/TestSuite/Export-Reports/refs/ReleasePlan.tjp +0 -79
  652. data/test/TestSuite/HTML-Reports/TimeSheet.html +0 -79
  653. data/test/TestSuite/HTML-Reports/reference.html +0 -51
  654. data/test/TestSuite/ReportGenerator/Correct/Alerts-1.csv +0 -1
  655. data/test/TestSuite/ReportGenerator/Correct/Alerts-1.html +0 -78
  656. data/test/TestSuite/ReportGenerator/Correct/Journal-1.csv +0 -6
  657. data/test/TestSuite/ReportGenerator/Correct/LogicalFunctions2.csv +0 -3
  658. data/test/TestSuite/ReportGenerator/Correct/css/tjmanual.css +0 -66
  659. data/test/TestSuite/ReportGenerator/Correct/css/tjreport.css +0 -413
  660. data/test/TestSuite/ReportGenerator/Correct/icons/details.png +0 -0
  661. data/test/TestSuite/ReportGenerator/Correct/icons/flag-green.png +0 -0
  662. data/test/TestSuite/ReportGenerator/Correct/icons/flag-red.png +0 -0
  663. data/test/TestSuite/ReportGenerator/Correct/icons/flag-yellow.png +0 -0
  664. data/test/TestSuite/ReportGenerator/Correct/icons/resource.png +0 -0
  665. data/test/TestSuite/ReportGenerator/Correct/icons/resourcegroup.png +0 -0
  666. data/test/TestSuite/ReportGenerator/Correct/icons/task.png +0 -0
  667. data/test/TestSuite/ReportGenerator/Correct/icons/taskgroup.png +0 -0
  668. data/test/TestSuite/ReportGenerator/Correct/icons/trend-down.png +0 -0
  669. data/test/TestSuite/ReportGenerator/Correct/icons/trend-flat.png +0 -0
  670. data/test/TestSuite/ReportGenerator/Correct/icons/trend-up.png +0 -0
  671. data/test/TestSuite/ReportGenerator/Correct/opennodes-1.csv +0 -2
  672. data/test/TestSuite/ReportGenerator/Correct/opennodes.csv +0 -2
  673. data/test/TestSuite/ReportGenerator/Correct/opennodes.tjp +0 -26
  674. data/test/TestSuite/ReportGenerator/Correct/refs/opennodes-1.csv +0 -2
  675. data/test/TestSuite/Scheduler/Correct/css/tjmanual.css +0 -86
  676. data/test/TestSuite/Scheduler/Correct/css/tjreport.css +0 -413
  677. data/test/TestSuite/Scheduler/Correct/icons/details.png +0 -0
  678. data/test/TestSuite/Scheduler/Correct/icons/flag-green.png +0 -0
  679. data/test/TestSuite/Scheduler/Correct/icons/flag-red.png +0 -0
  680. data/test/TestSuite/Scheduler/Correct/icons/flag-yellow.png +0 -0
  681. data/test/TestSuite/Scheduler/Correct/icons/resource.png +0 -0
  682. data/test/TestSuite/Scheduler/Correct/icons/resourcegroup.png +0 -0
  683. data/test/TestSuite/Scheduler/Correct/icons/task.png +0 -0
  684. data/test/TestSuite/Scheduler/Correct/icons/taskgroup.png +0 -0
  685. data/test/TestSuite/Scheduler/Correct/icons/trend-down.png +0 -0
  686. data/test/TestSuite/Scheduler/Correct/icons/trend-flat.png +0 -0
  687. data/test/TestSuite/Scheduler/Correct/icons/trend-up.png +0 -0
  688. data/test/TestSuite/Scheduler/Correct/scripts/wz_tooltip.js +0 -1301
  689. data/test/TestSuite/StatusSheetTemplates/project.tji +0 -35
  690. data/test/TestSuite/StatusSheetTemplates/project.tjp +0 -56
  691. data/test/TestSuite/StatusSheets/TimeSheets/2002-03-01/resource1_2002-03-01.tji +0 -0
  692. data/test/TestSuite/Syntax/Correct/CriticalPath.tjp +0 -33
  693. data/test/TestSuite/Syntax/Correct/DST.tjp +0 -11
  694. data/test/TestSuite/Syntax/Correct/ReleasePlan.tjp +0 -32
  695. data/test/TestSuite/Syntax/Correct/niku.xml +0 -30
  696. data/test/TestSuite/Syntax/Errors/sorting_wbs.tjp +0 -11
  697. data/test/TestSuite/TimeSheets/uu.txt +0 -29
@@ -0,0 +1,1666 @@
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::ReportTableCell</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/ReportTableCell_rb.html?TB_iframe=true&amp;height=550&amp;width=785"
42
+ class="thickbox" title="lib/taskjuggler/reports/ReportTableCell.rb">lib/taskjuggler/reports/ReportTableCell.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="../Object.html">Object</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-%3D%3D">#==</a></li>
75
+
76
+ <li><a href="#method-i-addHtmlTooltip">#addHtmlTooltip</a></li>
77
+
78
+ <li><a href="#method-i-calculateIndentation">#calculateIndentation</a></li>
79
+
80
+ <li><a href="#method-i-cellIcon">#cellIcon</a></li>
81
+
82
+ <li><a href="#method-i-cellLabel">#cellLabel</a></li>
83
+
84
+ <li><a href="#method-i-cellStyle">#cellStyle</a></li>
85
+
86
+ <li><a href="#method-i-shortVersion">#shortVersion</a></li>
87
+
88
+ <li><a href="#method-i-to_csv">#to_csv</a></li>
89
+
90
+ <li><a href="#method-i-to_html">#to_html</a></li>
91
+
92
+ </ul>
93
+ </div>
94
+
95
+
96
+ <!-- Included Modules -->
97
+
98
+ </div>
99
+
100
+ <div id="project-metadata">
101
+
102
+
103
+ <div id="fileindex-section" class="section project-section">
104
+ <h3 class="section-header">Files</h3>
105
+ <ul>
106
+
107
+ <li class="file"><a href="../CHANGELOG.html">CHANGELOG</a></li>
108
+
109
+ <li class="file"><a href="../COPYING.html">COPYING</a></li>
110
+
111
+ <li class="file"><a href="../README_rdoc.html">README.rdoc</a></li>
112
+
113
+ </ul>
114
+ </div>
115
+
116
+
117
+ <div id="classindex-section" class="section project-section">
118
+ <h3 class="section-header">Class Index
119
+ <span class="search-toggle"><img src="../images/find.png"
120
+ height="16" width="16" alt="[+]"
121
+ title="show/hide quicksearch" /></span></h3>
122
+ <form action="#" method="get" accept-charset="utf-8" class="initially-hidden">
123
+ <fieldset>
124
+ <legend>Quicksearch</legend>
125
+ <input type="text" name="quicksearch" value=""
126
+ class="quicksearch-field" />
127
+ </fieldset>
128
+ </form>
129
+
130
+ <ul class="link-list">
131
+
132
+ <li><a href="../TaskJuggler.html">TaskJuggler</a></li>
133
+
134
+ <li><a href="../TaskJuggler/Account.html">TaskJuggler::Account</a></li>
135
+
136
+ <li><a href="../TaskJuggler/AccountAttribute.html">TaskJuggler::AccountAttribute</a></li>
137
+
138
+ <li><a href="../TaskJuggler/AccountScenario.html">TaskJuggler::AccountScenario</a></li>
139
+
140
+ <li><a href="../TaskJuggler/Allocation.html">TaskJuggler::Allocation</a></li>
141
+
142
+ <li><a href="../TaskJuggler/AllocationAttribute.html">TaskJuggler::AllocationAttribute</a></li>
143
+
144
+ <li><a href="../TaskJuggler/AttributeBase.html">TaskJuggler::AttributeBase</a></li>
145
+
146
+ <li><a href="../TaskJuggler/AttributeDefinition.html">TaskJuggler::AttributeDefinition</a></li>
147
+
148
+ <li><a href="../TaskJuggler/AttributeOverwrite.html">TaskJuggler::AttributeOverwrite</a></li>
149
+
150
+ <li><a href="../TaskJuggler/BatchProcessor.html">TaskJuggler::BatchProcessor</a></li>
151
+
152
+ <li><a href="../TaskJuggler/Booking.html">TaskJuggler::Booking</a></li>
153
+
154
+ <li><a href="../TaskJuggler/BookingListAttribute.html">TaskJuggler::BookingListAttribute</a></li>
155
+
156
+ <li><a href="../TaskJuggler/BooleanAttribute.html">TaskJuggler::BooleanAttribute</a></li>
157
+
158
+ <li><a href="../TaskJuggler/CSVFile.html">TaskJuggler::CSVFile</a></li>
159
+
160
+ <li><a href="../TaskJuggler/CellSettingPattern.html">TaskJuggler::CellSettingPattern</a></li>
161
+
162
+ <li><a href="../TaskJuggler/CellSettingPatternList.html">TaskJuggler::CellSettingPatternList</a></li>
163
+
164
+ <li><a href="../TaskJuggler/Charge.html">TaskJuggler::Charge</a></li>
165
+
166
+ <li><a href="../TaskJuggler/ChargeListAttribute.html">TaskJuggler::ChargeListAttribute</a></li>
167
+
168
+ <li><a href="../TaskJuggler/ChargeSet.html">TaskJuggler::ChargeSet</a></li>
169
+
170
+ <li><a href="../TaskJuggler/ChargeSetListAttribute.html">TaskJuggler::ChargeSetListAttribute</a></li>
171
+
172
+ <li><a href="../TaskJuggler/CollisionDetector.html">TaskJuggler::CollisionDetector</a></li>
173
+
174
+ <li><a href="../TaskJuggler/ColumnListAttribute.html">TaskJuggler::ColumnListAttribute</a></li>
175
+
176
+ <li><a href="../TaskJuggler/ColumnTable.html">TaskJuggler::ColumnTable</a></li>
177
+
178
+ <li><a href="../TaskJuggler/Daemon.html">TaskJuggler::Daemon</a></li>
179
+
180
+ <li><a href="../TaskJuggler/DataCache.html">TaskJuggler::DataCache</a></li>
181
+
182
+ <li><a href="../TaskJuggler/DataCacheEntry.html">TaskJuggler::DataCacheEntry</a></li>
183
+
184
+ <li><a href="../TaskJuggler/DateAttribute.html">TaskJuggler::DateAttribute</a></li>
185
+
186
+ <li><a href="../TaskJuggler/DefinitionListAttribute.html">TaskJuggler::DefinitionListAttribute</a></li>
187
+
188
+ <li><a href="../TaskJuggler/DependencyListAttribute.html">TaskJuggler::DependencyListAttribute</a></li>
189
+
190
+ <li><a href="../TaskJuggler/DurationAttribute.html">TaskJuggler::DurationAttribute</a></li>
191
+
192
+ <li><a href="../TaskJuggler/FileList.html">TaskJuggler::FileList</a></li>
193
+
194
+ <li><a href="../TaskJuggler/FileRecord.html">TaskJuggler::FileRecord</a></li>
195
+
196
+ <li><a href="../TaskJuggler/FixnumAttribute.html">TaskJuggler::FixnumAttribute</a></li>
197
+
198
+ <li><a href="../TaskJuggler/FlagListAttribute.html">TaskJuggler::FlagListAttribute</a></li>
199
+
200
+ <li><a href="../TaskJuggler/FloatAttribute.html">TaskJuggler::FloatAttribute</a></li>
201
+
202
+ <li><a href="../TaskJuggler/FormatListAttribute.html">TaskJuggler::FormatListAttribute</a></li>
203
+
204
+ <li><a href="../TaskJuggler/GanttChart.html">TaskJuggler::GanttChart</a></li>
205
+
206
+ <li><a href="../TaskJuggler/GanttContainer.html">TaskJuggler::GanttContainer</a></li>
207
+
208
+ <li><a href="../TaskJuggler/GanttHeader.html">TaskJuggler::GanttHeader</a></li>
209
+
210
+ <li><a href="../TaskJuggler/GanttHeaderScaleItem.html">TaskJuggler::GanttHeaderScaleItem</a></li>
211
+
212
+ <li><a href="../TaskJuggler/GanttLine.html">TaskJuggler::GanttLine</a></li>
213
+
214
+ <li><a href="../TaskJuggler/GanttLoadStack.html">TaskJuggler::GanttLoadStack</a></li>
215
+
216
+ <li><a href="../TaskJuggler/GanttMilestone.html">TaskJuggler::GanttMilestone</a></li>
217
+
218
+ <li><a href="../TaskJuggler/GanttRouter.html">TaskJuggler::GanttRouter</a></li>
219
+
220
+ <li><a href="../TaskJuggler/GanttTaskBar.html">TaskJuggler::GanttTaskBar</a></li>
221
+
222
+ <li><a href="../TaskJuggler/HTMLDocument.html">TaskJuggler::HTMLDocument</a></li>
223
+
224
+ <li><a href="../TaskJuggler/HTMLElements.html">TaskJuggler::HTMLElements</a></li>
225
+
226
+ <li><a href="../TaskJuggler/HTMLGraphics.html">TaskJuggler::HTMLGraphics</a></li>
227
+
228
+ <li><a href="../TaskJuggler/Interval.html">TaskJuggler::Interval</a></li>
229
+
230
+ <li><a href="../TaskJuggler/IntervalList.html">TaskJuggler::IntervalList</a></li>
231
+
232
+ <li><a href="../TaskJuggler/IntervalListAttribute.html">TaskJuggler::IntervalListAttribute</a></li>
233
+
234
+ <li><a href="../TaskJuggler/JobInfo.html">TaskJuggler::JobInfo</a></li>
235
+
236
+ <li><a href="../TaskJuggler/Journal.html">TaskJuggler::Journal</a></li>
237
+
238
+ <li><a href="../TaskJuggler/JournalEntry.html">TaskJuggler::JournalEntry</a></li>
239
+
240
+ <li><a href="../TaskJuggler/JournalEntryList.html">TaskJuggler::JournalEntryList</a></li>
241
+
242
+ <li><a href="../TaskJuggler/KeywordArray.html">TaskJuggler::KeywordArray</a></li>
243
+
244
+ <li><a href="../TaskJuggler/KeywordDocumentation.html">TaskJuggler::KeywordDocumentation</a></li>
245
+
246
+ <li><a href="../TaskJuggler/Limits.html">TaskJuggler::Limits</a></li>
247
+
248
+ <li><a href="../TaskJuggler/Limits/Limit.html">TaskJuggler::Limits::Limit</a></li>
249
+
250
+ <li><a href="../TaskJuggler/LimitsAttribute.html">TaskJuggler::LimitsAttribute</a></li>
251
+
252
+ <li><a href="../TaskJuggler/ListAttributeBase.html">TaskJuggler::ListAttributeBase</a></li>
253
+
254
+ <li><a href="../TaskJuggler/Log.html">TaskJuggler::Log</a></li>
255
+
256
+ <li><a href="../TaskJuggler/LogFile.html">TaskJuggler::LogFile</a></li>
257
+
258
+ <li><a href="../TaskJuggler/LogicalAttribute.html">TaskJuggler::LogicalAttribute</a></li>
259
+
260
+ <li><a href="../TaskJuggler/LogicalExpression.html">TaskJuggler::LogicalExpression</a></li>
261
+
262
+ <li><a href="../TaskJuggler/LogicalExpressionAttribute.html">TaskJuggler::LogicalExpressionAttribute</a></li>
263
+
264
+ <li><a href="../TaskJuggler/LogicalExpressionListAttribute.html">TaskJuggler::LogicalExpressionListAttribute</a></li>
265
+
266
+ <li><a href="../TaskJuggler/LogicalFlag.html">TaskJuggler::LogicalFlag</a></li>
267
+
268
+ <li><a href="../TaskJuggler/LogicalFunction.html">TaskJuggler::LogicalFunction</a></li>
269
+
270
+ <li><a href="../TaskJuggler/LogicalOperation.html">TaskJuggler::LogicalOperation</a></li>
271
+
272
+ <li><a href="../TaskJuggler/ManagerResponsibilities.html">TaskJuggler::ManagerResponsibilities</a></li>
273
+
274
+ <li><a href="../TaskJuggler/ManagerStatusRecord.html">TaskJuggler::ManagerStatusRecord</a></li>
275
+
276
+ <li><a href="../TaskJuggler/Message.html">TaskJuggler::Message</a></li>
277
+
278
+ <li><a href="../TaskJuggler/MessageHandler.html">TaskJuggler::MessageHandler</a></li>
279
+
280
+ <li><a href="../TaskJuggler/Navigator.html">TaskJuggler::Navigator</a></li>
281
+
282
+ <li><a href="../TaskJuggler/NavigatorElement.html">TaskJuggler::NavigatorElement</a></li>
283
+
284
+ <li><a href="../TaskJuggler/NikuProject.html">TaskJuggler::NikuProject</a></li>
285
+
286
+ <li><a href="../TaskJuggler/NikuReport.html">TaskJuggler::NikuReport</a></li>
287
+
288
+ <li><a href="../TaskJuggler/NikuResource.html">TaskJuggler::NikuResource</a></li>
289
+
290
+ <li><a href="../TaskJuggler/NodeListAttribute.html">TaskJuggler::NodeListAttribute</a></li>
291
+
292
+ <li><a href="../TaskJuggler/PlaceHolderCell.html">TaskJuggler::PlaceHolderCell</a></li>
293
+
294
+ <li><a href="../TaskJuggler/ProcessIntercom.html">TaskJuggler::ProcessIntercom</a></li>
295
+
296
+ <li><a href="../TaskJuggler/ProcessIntercomIface.html">TaskJuggler::ProcessIntercomIface</a></li>
297
+
298
+ <li><a href="../TaskJuggler/Project.html">TaskJuggler::Project</a></li>
299
+
300
+ <li><a href="../TaskJuggler/ProjectBroker.html">TaskJuggler::ProjectBroker</a></li>
301
+
302
+ <li><a href="../TaskJuggler/ProjectBrokerIface.html">TaskJuggler::ProjectBrokerIface</a></li>
303
+
304
+ <li><a href="../TaskJuggler/ProjectFileParser.html">TaskJuggler::ProjectFileParser</a></li>
305
+
306
+ <li><a href="../TaskJuggler/ProjectFileScanner.html">TaskJuggler::ProjectFileScanner</a></li>
307
+
308
+ <li><a href="../TaskJuggler/ProjectRecord.html">TaskJuggler::ProjectRecord</a></li>
309
+
310
+ <li><a href="../TaskJuggler/ProjectServer.html">TaskJuggler::ProjectServer</a></li>
311
+
312
+ <li><a href="../TaskJuggler/ProjectServerIface.html">TaskJuggler::ProjectServerIface</a></li>
313
+
314
+ <li><a href="../TaskJuggler/PropertyAttribute.html">TaskJuggler::PropertyAttribute</a></li>
315
+
316
+ <li><a href="../TaskJuggler/PropertyList.html">TaskJuggler::PropertyList</a></li>
317
+
318
+ <li><a href="../TaskJuggler/PropertySet.html">TaskJuggler::PropertySet</a></li>
319
+
320
+ <li><a href="../TaskJuggler/PropertyTreeNode.html">TaskJuggler::PropertyTreeNode</a></li>
321
+
322
+ <li><a href="../TaskJuggler/Query.html">TaskJuggler::Query</a></li>
323
+
324
+ <li><a href="../TaskJuggler/RTFHandlers.html">TaskJuggler::RTFHandlers</a></li>
325
+
326
+ <li><a href="../TaskJuggler/RTFNavigator.html">TaskJuggler::RTFNavigator</a></li>
327
+
328
+ <li><a href="../TaskJuggler/RTFQuery.html">TaskJuggler::RTFQuery</a></li>
329
+
330
+ <li><a href="../TaskJuggler/RTFReport.html">TaskJuggler::RTFReport</a></li>
331
+
332
+ <li><a href="../TaskJuggler/RTFReportLink.html">TaskJuggler::RTFReportLink</a></li>
333
+
334
+ <li><a href="../TaskJuggler/RTFWithQuerySupport.html">TaskJuggler::RTFWithQuerySupport</a></li>
335
+
336
+ <li><a href="../TaskJuggler/RealFormat.html">TaskJuggler::RealFormat</a></li>
337
+
338
+ <li><a href="../TaskJuggler/RealFormatAttribute.html">TaskJuggler::RealFormatAttribute</a></li>
339
+
340
+ <li><a href="../TaskJuggler/ReferenceAttribute.html">TaskJuggler::ReferenceAttribute</a></li>
341
+
342
+ <li><a href="../TaskJuggler/Report.html">TaskJuggler::Report</a></li>
343
+
344
+ <li><a href="../TaskJuggler/ReportBase.html">TaskJuggler::ReportBase</a></li>
345
+
346
+ <li><a href="../TaskJuggler/ReportContext.html">TaskJuggler::ReportContext</a></li>
347
+
348
+ <li><a href="../TaskJuggler/ReportServer.html">TaskJuggler::ReportServer</a></li>
349
+
350
+ <li><a href="../TaskJuggler/ReportServerIface.html">TaskJuggler::ReportServerIface</a></li>
351
+
352
+ <li><a href="../TaskJuggler/ReportServerRecord.html">TaskJuggler::ReportServerRecord</a></li>
353
+
354
+ <li><a href="../TaskJuggler/ReportServlet.html">TaskJuggler::ReportServlet</a></li>
355
+
356
+ <li><a href="../TaskJuggler/ReportTable.html">TaskJuggler::ReportTable</a></li>
357
+
358
+ <li><a href="../TaskJuggler/ReportTableCell.html">TaskJuggler::ReportTableCell</a></li>
359
+
360
+ <li><a href="../TaskJuggler/ReportTableColumn.html">TaskJuggler::ReportTableColumn</a></li>
361
+
362
+ <li><a href="../TaskJuggler/ReportTableLegend.html">TaskJuggler::ReportTableLegend</a></li>
363
+
364
+ <li><a href="../TaskJuggler/ReportTableLine.html">TaskJuggler::ReportTableLine</a></li>
365
+
366
+ <li><a href="../TaskJuggler/Resource.html">TaskJuggler::Resource</a></li>
367
+
368
+ <li><a href="../TaskJuggler/ResourceListAttribute.html">TaskJuggler::ResourceListAttribute</a></li>
369
+
370
+ <li><a href="../TaskJuggler/ResourceListRE.html">TaskJuggler::ResourceListRE</a></li>
371
+
372
+ <li><a href="../TaskJuggler/ResourceScenario.html">TaskJuggler::ResourceScenario</a></li>
373
+
374
+ <li><a href="../TaskJuggler/RichText.html">TaskJuggler::RichText</a></li>
375
+
376
+ <li><a href="../TaskJuggler/RichTextAttribute.html">TaskJuggler::RichTextAttribute</a></li>
377
+
378
+ <li><a href="../TaskJuggler/RichTextDocument.html">TaskJuggler::RichTextDocument</a></li>
379
+
380
+ <li><a href="../TaskJuggler/RichTextElement.html">TaskJuggler::RichTextElement</a></li>
381
+
382
+ <li><a href="../TaskJuggler/RichTextFunctionExample.html">TaskJuggler::RichTextFunctionExample</a></li>
383
+
384
+ <li><a href="../TaskJuggler/RichTextFunctionHandler.html">TaskJuggler::RichTextFunctionHandler</a></li>
385
+
386
+ <li><a href="../TaskJuggler/RichTextImage.html">TaskJuggler::RichTextImage</a></li>
387
+
388
+ <li><a href="../TaskJuggler/RichTextIntermediate.html">TaskJuggler::RichTextIntermediate</a></li>
389
+
390
+ <li><a href="../TaskJuggler/RichTextParser.html">TaskJuggler::RichTextParser</a></li>
391
+
392
+ <li><a href="../TaskJuggler/RichTextScanner.html">TaskJuggler::RichTextScanner</a></li>
393
+
394
+ <li><a href="../TaskJuggler/RichTextSnip.html">TaskJuggler::RichTextSnip</a></li>
395
+
396
+ <li><a href="../TaskJuggler/RichTextSyntaxRules.html">TaskJuggler::RichTextSyntaxRules</a></li>
397
+
398
+ <li><a href="../TaskJuggler/Scenario.html">TaskJuggler::Scenario</a></li>
399
+
400
+ <li><a href="../TaskJuggler/ScenarioData.html">TaskJuggler::ScenarioData</a></li>
401
+
402
+ <li><a href="../TaskJuggler/ScenarioListAttribute.html">TaskJuggler::ScenarioListAttribute</a></li>
403
+
404
+ <li><a href="../TaskJuggler/Scoreboard.html">TaskJuggler::Scoreboard</a></li>
405
+
406
+ <li><a href="../TaskJuggler/SheetHandlerBase.html">TaskJuggler::SheetHandlerBase</a></li>
407
+
408
+ <li><a href="../TaskJuggler/SheetReceiver.html">TaskJuggler::SheetReceiver</a></li>
409
+
410
+ <li><a href="../TaskJuggler/SheetSender.html">TaskJuggler::SheetSender</a></li>
411
+
412
+ <li><a href="../TaskJuggler/Shift.html">TaskJuggler::Shift</a></li>
413
+
414
+ <li><a href="../TaskJuggler/ShiftAssignment.html">TaskJuggler::ShiftAssignment</a></li>
415
+
416
+ <li><a href="../TaskJuggler/ShiftAssignments.html">TaskJuggler::ShiftAssignments</a></li>
417
+
418
+ <li><a href="../TaskJuggler/ShiftAssignmentsAttribute.html">TaskJuggler::ShiftAssignmentsAttribute</a></li>
419
+
420
+ <li><a href="../TaskJuggler/ShiftScenario.html">TaskJuggler::ShiftScenario</a></li>
421
+
422
+ <li><a href="../TaskJuggler/SimpleQueryExpander.html">TaskJuggler::SimpleQueryExpander</a></li>
423
+
424
+ <li><a href="../TaskJuggler/SortListAttribute.html">TaskJuggler::SortListAttribute</a></li>
425
+
426
+ <li><a href="../TaskJuggler/StatusSheetReceiver.html">TaskJuggler::StatusSheetReceiver</a></li>
427
+
428
+ <li><a href="../TaskJuggler/StatusSheetReport.html">TaskJuggler::StatusSheetReport</a></li>
429
+
430
+ <li><a href="../TaskJuggler/StatusSheetSender.html">TaskJuggler::StatusSheetSender</a></li>
431
+
432
+ <li><a href="../TaskJuggler/StdIoWrapper.html">TaskJuggler::StdIoWrapper</a></li>
433
+
434
+ <li><a href="../TaskJuggler/StringAttribute.html">TaskJuggler::StringAttribute</a></li>
435
+
436
+ <li><a href="../TaskJuggler/SymbolAttribute.html">TaskJuggler::SymbolAttribute</a></li>
437
+
438
+ <li><a href="../TaskJuggler/SyntaxReference.html">TaskJuggler::SyntaxReference</a></li>
439
+
440
+ <li><a href="../TaskJuggler/TOCEntry.html">TaskJuggler::TOCEntry</a></li>
441
+
442
+ <li><a href="../TaskJuggler/TSResourceRecord.html">TaskJuggler::TSResourceRecord</a></li>
443
+
444
+ <li><a href="../TaskJuggler/TSTaskRecord.html">TaskJuggler::TSTaskRecord</a></li>
445
+
446
+ <li><a href="../TaskJuggler/TableColumnDefinition.html">TaskJuggler::TableColumnDefinition</a></li>
447
+
448
+ <li><a href="../TaskJuggler/TableOfContents.html">TaskJuggler::TableOfContents</a></li>
449
+
450
+ <li><a href="../TaskJuggler/TableReport.html">TaskJuggler::TableReport</a></li>
451
+
452
+ <li><a href="../TaskJuggler/Task.html">TaskJuggler::Task</a></li>
453
+
454
+ <li><a href="../TaskJuggler/TaskDepListAttribute.html">TaskJuggler::TaskDepListAttribute</a></li>
455
+
456
+ <li><a href="../TaskJuggler/TaskDependency.html">TaskJuggler::TaskDependency</a></li>
457
+
458
+ <li><a href="../TaskJuggler/TaskListAttribute.html">TaskJuggler::TaskListAttribute</a></li>
459
+
460
+ <li><a href="../TaskJuggler/TaskListRE.html">TaskJuggler::TaskListRE</a></li>
461
+
462
+ <li><a href="../TaskJuggler/TaskScenario.html">TaskJuggler::TaskScenario</a></li>
463
+
464
+ <li><a href="../TaskJuggler/TernarySearchTree.html">TaskJuggler::TernarySearchTree</a></li>
465
+
466
+ <li><a href="../TaskJuggler/TextFormatter.html">TaskJuggler::TextFormatter</a></li>
467
+
468
+ <li><a href="../TaskJuggler/TextParser.html">TaskJuggler::TextParser</a></li>
469
+
470
+ <li><a href="../TaskJuggler/TextParser/Macro.html">TaskJuggler::TextParser::Macro</a></li>
471
+
472
+ <li><a href="../TaskJuggler/TextParser/MacroTable.html">TaskJuggler::TextParser::MacroTable</a></li>
473
+
474
+ <li><a href="../TaskJuggler/TextParser/Pattern.html">TaskJuggler::TextParser::Pattern</a></li>
475
+
476
+ <li><a href="../TaskJuggler/TextParser/Rule.html">TaskJuggler::TextParser::Rule</a></li>
477
+
478
+ <li><a href="../TaskJuggler/TextParser/Scanner.html">TaskJuggler::TextParser::Scanner</a></li>
479
+
480
+ <li><a href="../TaskJuggler/TextParser/Scanner/BufferStreamHandle.html">TaskJuggler::TextParser::Scanner::BufferStreamHandle</a></li>
481
+
482
+ <li><a href="../TaskJuggler/TextParser/Scanner/FileStreamHandle.html">TaskJuggler::TextParser::Scanner::FileStreamHandle</a></li>
483
+
484
+ <li><a href="../TaskJuggler/TextParser/Scanner/MacroStackEntry.html">TaskJuggler::TextParser::Scanner::MacroStackEntry</a></li>
485
+
486
+ <li><a href="../TaskJuggler/TextParser/Scanner/StreamHandle.html">TaskJuggler::TextParser::Scanner::StreamHandle</a></li>
487
+
488
+ <li><a href="../TaskJuggler/TextParser/SourceFileInfo.html">TaskJuggler::TextParser::SourceFileInfo</a></li>
489
+
490
+ <li><a href="../TaskJuggler/TextParser/StackElement.html">TaskJuggler::TextParser::StackElement</a></li>
491
+
492
+ <li><a href="../TaskJuggler/TextParser/State.html">TaskJuggler::TextParser::State</a></li>
493
+
494
+ <li><a href="../TaskJuggler/TextParser/StateTransition.html">TaskJuggler::TextParser::StateTransition</a></li>
495
+
496
+ <li><a href="../TaskJuggler/TextParser/TextParserResultArray.html">TaskJuggler::TextParser::TextParserResultArray</a></li>
497
+
498
+ <li><a href="../TaskJuggler/TextParser/TokenDoc.html">TaskJuggler::TextParser::TokenDoc</a></li>
499
+
500
+ <li><a href="../TaskJuggler/TextReport.html">TaskJuggler::TextReport</a></li>
501
+
502
+ <li><a href="../TaskJuggler/TimeSheet.html">TaskJuggler::TimeSheet</a></li>
503
+
504
+ <li><a href="../TaskJuggler/TimeSheetReceiver.html">TaskJuggler::TimeSheetReceiver</a></li>
505
+
506
+ <li><a href="../TaskJuggler/TimeSheetRecord.html">TaskJuggler::TimeSheetRecord</a></li>
507
+
508
+ <li><a href="../TaskJuggler/TimeSheetReport.html">TaskJuggler::TimeSheetReport</a></li>
509
+
510
+ <li><a href="../TaskJuggler/TimeSheetSender.html">TaskJuggler::TimeSheetSender</a></li>
511
+
512
+ <li><a href="../TaskJuggler/TimeSheetSummary.html">TaskJuggler::TimeSheetSummary</a></li>
513
+
514
+ <li><a href="../TaskJuggler/TimeSheets.html">TaskJuggler::TimeSheets</a></li>
515
+
516
+ <li><a href="../TaskJuggler/Tj3.html">TaskJuggler::Tj3</a></li>
517
+
518
+ <li><a href="../TaskJuggler/Tj3AppBase.html">TaskJuggler::Tj3AppBase</a></li>
519
+
520
+ <li><a href="../TaskJuggler/Tj3Client.html">TaskJuggler::Tj3Client</a></li>
521
+
522
+ <li><a href="../TaskJuggler/Tj3Daemon.html">TaskJuggler::Tj3Daemon</a></li>
523
+
524
+ <li><a href="../TaskJuggler/Tj3Man.html">TaskJuggler::Tj3Man</a></li>
525
+
526
+ <li><a href="../TaskJuggler/Tj3SheetAppBase.html">TaskJuggler::Tj3SheetAppBase</a></li>
527
+
528
+ <li><a href="../TaskJuggler/Tj3SsReceiver.html">TaskJuggler::Tj3SsReceiver</a></li>
529
+
530
+ <li><a href="../TaskJuggler/Tj3SsSender.html">TaskJuggler::Tj3SsSender</a></li>
531
+
532
+ <li><a href="../TaskJuggler/Tj3TsReceiver.html">TaskJuggler::Tj3TsReceiver</a></li>
533
+
534
+ <li><a href="../TaskJuggler/Tj3TsSender.html">TaskJuggler::Tj3TsSender</a></li>
535
+
536
+ <li><a href="../TaskJuggler/Tj3TsSummary.html">TaskJuggler::Tj3TsSummary</a></li>
537
+
538
+ <li><a href="../TaskJuggler/TjException.html">TaskJuggler::TjException</a></li>
539
+
540
+ <li><a href="../TaskJuggler/TjRuntimeError.html">TaskJuggler::TjRuntimeError</a></li>
541
+
542
+ <li><a href="../TaskJuggler/TjTime.html">TaskJuggler::TjTime</a></li>
543
+
544
+ <li><a href="../TaskJuggler/TjpExample.html">TaskJuggler::TjpExample</a></li>
545
+
546
+ <li><a href="../TaskJuggler/TjpExportRE.html">TaskJuggler::TjpExportRE</a></li>
547
+
548
+ <li><a href="../TaskJuggler/TjpSyntaxRules.html">TaskJuggler::TjpSyntaxRules</a></li>
549
+
550
+ <li><a href="../TaskJuggler/URLParameter.html">TaskJuggler::URLParameter</a></li>
551
+
552
+ <li><a href="../TaskJuggler/UserManual.html">TaskJuggler::UserManual</a></li>
553
+
554
+ <li><a href="../TaskJuggler/VimSyntax.html">TaskJuggler::VimSyntax</a></li>
555
+
556
+ <li><a href="../TaskJuggler/WebServer.html">TaskJuggler::WebServer</a></li>
557
+
558
+ <li><a href="../TaskJuggler/WelcomePage.html">TaskJuggler::WelcomePage</a></li>
559
+
560
+ <li><a href="../TaskJuggler/WorkingHours.html">TaskJuggler::WorkingHours</a></li>
561
+
562
+ <li><a href="../TaskJuggler/WorkingHoursAttribute.html">TaskJuggler::WorkingHoursAttribute</a></li>
563
+
564
+ <li><a href="../TaskJuggler/XMLBlob.html">TaskJuggler::XMLBlob</a></li>
565
+
566
+ <li><a href="../TaskJuggler/XMLComment.html">TaskJuggler::XMLComment</a></li>
567
+
568
+ <li><a href="../TaskJuggler/XMLDocument.html">TaskJuggler::XMLDocument</a></li>
569
+
570
+ <li><a href="../TaskJuggler/XMLElement.html">TaskJuggler::XMLElement</a></li>
571
+
572
+ <li><a href="../TaskJuggler/XMLNamedText.html">TaskJuggler::XMLNamedText</a></li>
573
+
574
+ <li><a href="../TaskJuggler/XMLText.html">TaskJuggler::XMLText</a></li>
575
+
576
+ <li><a href="../Diff.html">Diff</a></li>
577
+
578
+ <li><a href="../Diff/Hunk.html">Diff::Hunk</a></li>
579
+
580
+ <li><a href="../AppConfig.html">AppConfig</a></li>
581
+
582
+ <li><a href="../Diffable.html">Diffable</a></li>
583
+
584
+ <li><a href="../DiffableString.html">DiffableString</a></li>
585
+
586
+ <li><a href="../Object.html">Object</a></li>
587
+
588
+ <li><a href="../RuntimeConfig.html">RuntimeConfig</a></li>
589
+
590
+ <li><a href="../String.html">String</a></li>
591
+
592
+ </ul>
593
+ <div id="no-class-search-results" style="display: none;">No matching classes.</div>
594
+ </div>
595
+
596
+
597
+ </div>
598
+ </div>
599
+
600
+ <div id="documentation">
601
+ <h1 class="class">TaskJuggler::ReportTableCell</h1>
602
+
603
+ <div id="description">
604
+ <p>
605
+ This class models the output format independent version of a cell in a <a
606
+ href="TableReport.html">TableReport</a>. It belongs to a certain <a
607
+ href="ReportTableLine.html">ReportTableLine</a> and <a
608
+ href="ReportTableColumn.html">ReportTableColumn</a>. Normally a cell
609
+ contains text on a colored background. By help of the @special variable it
610
+ can alternatively contain any object the provides the necessary output
611
+ methods such as to_html.
612
+ </p>
613
+
614
+ </div>
615
+
616
+ <!-- Constants -->
617
+
618
+
619
+ <!-- Attributes -->
620
+
621
+ <div id="attribute-method-details" class="method-section section">
622
+ <h3 class="section-header">Attributes</h3>
623
+
624
+
625
+ <div id="line-attribute-method" class="method-detail">
626
+ <a name="line"></a>
627
+
628
+ <div class="method-heading attribute-method-heading">
629
+ <span class="method-name">line</span><span
630
+ class="attribute-access-type">[R]</span>
631
+ </div>
632
+
633
+ <div class="method-description">
634
+
635
+
636
+
637
+ </div>
638
+ </div>
639
+
640
+ <div id="data-attribute-method" class="method-detail">
641
+ <a name="data"></a>
642
+
643
+ <a name="data="></a>
644
+
645
+ <div class="method-heading attribute-method-heading">
646
+ <span class="method-name">data</span><span
647
+ class="attribute-access-type">[RW]</span>
648
+ </div>
649
+
650
+ <div class="method-description">
651
+
652
+
653
+
654
+ </div>
655
+ </div>
656
+
657
+ <div id="category-attribute-method" class="method-detail">
658
+ <a name="category"></a>
659
+
660
+ <a name="category="></a>
661
+
662
+ <div class="method-heading attribute-method-heading">
663
+ <span class="method-name">category</span><span
664
+ class="attribute-access-type">[RW]</span>
665
+ </div>
666
+
667
+ <div class="method-description">
668
+
669
+
670
+
671
+ </div>
672
+ </div>
673
+
674
+ <div id="hidden-attribute-method" class="method-detail">
675
+ <a name="hidden"></a>
676
+
677
+ <a name="hidden="></a>
678
+
679
+ <div class="method-heading attribute-method-heading">
680
+ <span class="method-name">hidden</span><span
681
+ class="attribute-access-type">[RW]</span>
682
+ </div>
683
+
684
+ <div class="method-description">
685
+
686
+
687
+
688
+ </div>
689
+ </div>
690
+
691
+ <div id="alignment-attribute-method" class="method-detail">
692
+ <a name="alignment"></a>
693
+
694
+ <a name="alignment="></a>
695
+
696
+ <div class="method-heading attribute-method-heading">
697
+ <span class="method-name">alignment</span><span
698
+ class="attribute-access-type">[RW]</span>
699
+ </div>
700
+
701
+ <div class="method-description">
702
+
703
+
704
+
705
+ </div>
706
+ </div>
707
+
708
+ <div id="padding-attribute-method" class="method-detail">
709
+ <a name="padding"></a>
710
+
711
+ <a name="padding="></a>
712
+
713
+ <div class="method-heading attribute-method-heading">
714
+ <span class="method-name">padding</span><span
715
+ class="attribute-access-type">[RW]</span>
716
+ </div>
717
+
718
+ <div class="method-description">
719
+
720
+
721
+
722
+ </div>
723
+ </div>
724
+
725
+ <div id="text-attribute-method" class="method-detail">
726
+ <a name="text"></a>
727
+
728
+ <a name="text="></a>
729
+
730
+ <div class="method-heading attribute-method-heading">
731
+ <span class="method-name">text</span><span
732
+ class="attribute-access-type">[RW]</span>
733
+ </div>
734
+
735
+ <div class="method-description">
736
+
737
+
738
+
739
+ </div>
740
+ </div>
741
+
742
+ <div id="tooltip-attribute-method" class="method-detail">
743
+ <a name="tooltip"></a>
744
+
745
+ <a name="tooltip="></a>
746
+
747
+ <div class="method-heading attribute-method-heading">
748
+ <span class="method-name">tooltip</span><span
749
+ class="attribute-access-type">[RW]</span>
750
+ </div>
751
+
752
+ <div class="method-description">
753
+
754
+
755
+
756
+ </div>
757
+ </div>
758
+
759
+ <div id="show-ooltip-int-attribute-method" class="method-detail">
760
+ <a name="showTooltipHint"></a>
761
+
762
+ <a name="showTooltipHint="></a>
763
+
764
+ <div class="method-heading attribute-method-heading">
765
+ <span class="method-name">showTooltipHint</span><span
766
+ class="attribute-access-type">[RW]</span>
767
+ </div>
768
+
769
+ <div class="method-description">
770
+
771
+
772
+
773
+ </div>
774
+ </div>
775
+
776
+ <div id="icon-ooltip-attribute-method" class="method-detail">
777
+ <a name="iconTooltip"></a>
778
+
779
+ <a name="iconTooltip="></a>
780
+
781
+ <div class="method-heading attribute-method-heading">
782
+ <span class="method-name">iconTooltip</span><span
783
+ class="attribute-access-type">[RW]</span>
784
+ </div>
785
+
786
+ <div class="method-description">
787
+
788
+
789
+
790
+ </div>
791
+ </div>
792
+
793
+ <div id="selfcontained-attribute-method" class="method-detail">
794
+ <a name="selfcontained"></a>
795
+
796
+ <a name="selfcontained="></a>
797
+
798
+ <div class="method-heading attribute-method-heading">
799
+ <span class="method-name">selfcontained</span><span
800
+ class="attribute-access-type">[RW]</span>
801
+ </div>
802
+
803
+ <div class="method-description">
804
+
805
+
806
+
807
+ </div>
808
+ </div>
809
+
810
+ <div id="cell-olor-attribute-method" class="method-detail">
811
+ <a name="cellColor"></a>
812
+
813
+ <a name="cellColor="></a>
814
+
815
+ <div class="method-heading attribute-method-heading">
816
+ <span class="method-name">cellColor</span><span
817
+ class="attribute-access-type">[RW]</span>
818
+ </div>
819
+
820
+ <div class="method-description">
821
+
822
+
823
+
824
+ </div>
825
+ </div>
826
+
827
+ <div id="indent-attribute-method" class="method-detail">
828
+ <a name="indent"></a>
829
+
830
+ <a name="indent="></a>
831
+
832
+ <div class="method-heading attribute-method-heading">
833
+ <span class="method-name">indent</span><span
834
+ class="attribute-access-type">[RW]</span>
835
+ </div>
836
+
837
+ <div class="method-description">
838
+
839
+
840
+
841
+ </div>
842
+ </div>
843
+
844
+ <div id="icon-attribute-method" class="method-detail">
845
+ <a name="icon"></a>
846
+
847
+ <a name="icon="></a>
848
+
849
+ <div class="method-heading attribute-method-heading">
850
+ <span class="method-name">icon</span><span
851
+ class="attribute-access-type">[RW]</span>
852
+ </div>
853
+
854
+ <div class="method-description">
855
+
856
+
857
+
858
+ </div>
859
+ </div>
860
+
861
+ <div id="font-ize-attribute-method" class="method-detail">
862
+ <a name="fontSize"></a>
863
+
864
+ <a name="fontSize="></a>
865
+
866
+ <div class="method-heading attribute-method-heading">
867
+ <span class="method-name">fontSize</span><span
868
+ class="attribute-access-type">[RW]</span>
869
+ </div>
870
+
871
+ <div class="method-description">
872
+
873
+
874
+
875
+ </div>
876
+ </div>
877
+
878
+ <div id="font-olor-attribute-method" class="method-detail">
879
+ <a name="fontColor"></a>
880
+
881
+ <a name="fontColor="></a>
882
+
883
+ <div class="method-heading attribute-method-heading">
884
+ <span class="method-name">fontColor</span><span
885
+ class="attribute-access-type">[RW]</span>
886
+ </div>
887
+
888
+ <div class="method-description">
889
+
890
+
891
+
892
+ </div>
893
+ </div>
894
+
895
+ <div id="bold-attribute-method" class="method-detail">
896
+ <a name="bold"></a>
897
+
898
+ <a name="bold="></a>
899
+
900
+ <div class="method-heading attribute-method-heading">
901
+ <span class="method-name">bold</span><span
902
+ class="attribute-access-type">[RW]</span>
903
+ </div>
904
+
905
+ <div class="method-description">
906
+
907
+
908
+
909
+ </div>
910
+ </div>
911
+
912
+ <div id="width-attribute-method" class="method-detail">
913
+ <a name="width"></a>
914
+
915
+ <a name="width="></a>
916
+
917
+ <div class="method-heading attribute-method-heading">
918
+ <span class="method-name">width</span><span
919
+ class="attribute-access-type">[RW]</span>
920
+ </div>
921
+
922
+ <div class="method-description">
923
+
924
+
925
+
926
+ </div>
927
+ </div>
928
+
929
+ <div id="rows-attribute-method" class="method-detail">
930
+ <a name="rows"></a>
931
+
932
+ <a name="rows="></a>
933
+
934
+ <div class="method-heading attribute-method-heading">
935
+ <span class="method-name">rows</span><span
936
+ class="attribute-access-type">[RW]</span>
937
+ </div>
938
+
939
+ <div class="method-description">
940
+
941
+
942
+
943
+ </div>
944
+ </div>
945
+
946
+ <div id="columns-attribute-method" class="method-detail">
947
+ <a name="columns"></a>
948
+
949
+ <a name="columns="></a>
950
+
951
+ <div class="method-heading attribute-method-heading">
952
+ <span class="method-name">columns</span><span
953
+ class="attribute-access-type">[RW]</span>
954
+ </div>
955
+
956
+ <div class="method-description">
957
+
958
+
959
+
960
+ </div>
961
+ </div>
962
+
963
+ <div id="special-attribute-method" class="method-detail">
964
+ <a name="special"></a>
965
+
966
+ <a name="special="></a>
967
+
968
+ <div class="method-heading attribute-method-heading">
969
+ <span class="method-name">special</span><span
970
+ class="attribute-access-type">[RW]</span>
971
+ </div>
972
+
973
+ <div class="method-description">
974
+
975
+
976
+
977
+ </div>
978
+ </div>
979
+
980
+ </div>
981
+
982
+
983
+ <!-- Methods -->
984
+
985
+ <div id="public-class-method-details" class="method-section section">
986
+ <h3 class="section-header">Public Class Methods</h3>
987
+
988
+
989
+ <div id="new-method" class="method-detail ">
990
+ <a name="method-c-new"></a>
991
+
992
+ <div class="method-heading">
993
+
994
+ <span class="method-name">new</span><span
995
+ class="method-args">(line, query, text = nil, headerCell = false)</span>
996
+ <span class="method-click-advice">click to toggle source</span>
997
+
998
+ </div>
999
+
1000
+ <div class="method-description">
1001
+
1002
+ <p>
1003
+ Create the <a href="ReportTableCell.html">ReportTableCell</a> object and
1004
+ initialize the attributes to some default values. <em>line</em> is the <a
1005
+ href="ReportTableLine.html">ReportTableLine</a> this cell belongs to.
1006
+ <em>text</em> is the text that should appear in the cell.
1007
+ <em>headerCell</em> is a flag that must be true only for table header
1008
+ cells.
1009
+ </p>
1010
+
1011
+
1012
+
1013
+ <div class="method-source-code"
1014
+ id="new-source">
1015
+ <pre>
1016
+ <span class="ruby-comment cmt"># File lib/taskjuggler/reports/ReportTableCell.rb, line 35</span>
1017
+ 35: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">line</span>, <span class="ruby-identifier">query</span>, <span class="ruby-identifier">text</span> = <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">headerCell</span> = <span class="ruby-keyword kw">false</span>)
1018
+ 36: <span class="ruby-ivar">@line</span> = <span class="ruby-identifier">line</span>
1019
+ 37: <span class="ruby-ivar">@line</span>.<span class="ruby-identifier">addCell</span>(<span class="ruby-keyword kw">self</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">line</span>
1020
+ 38:
1021
+ 39: <span class="ruby-comment cmt"># Specifies whether this is a header cell or not.</span>
1022
+ 40: <span class="ruby-ivar">@headerCell</span> = <span class="ruby-identifier">headerCell</span>
1023
+ 41: <span class="ruby-comment cmt"># A copy of a Query object that is needed to access project data via the</span>
1024
+ 42: <span class="ruby-comment cmt"># query function.</span>
1025
+ 43: <span class="ruby-ivar">@query</span> = <span class="ruby-identifier">query</span> <span class="ruby-operator">?</span> <span class="ruby-identifier">query</span>.<span class="ruby-identifier">dup</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>
1026
+ 44: <span class="ruby-comment cmt"># The cell textual content. This may be a String or a</span>
1027
+ 45: <span class="ruby-comment cmt"># RichTextIntermediate object.</span>
1028
+ 46: <span class="ruby-keyword kw">self</span>.<span class="ruby-identifier">text</span> = <span class="ruby-identifier">text</span> <span class="ruby-operator">||</span> <span class="ruby-value str">''</span>
1029
+ 47: <span class="ruby-comment cmt"># A custom text for the tooltip.</span>
1030
+ 48: <span class="ruby-ivar">@tooltip</span> = <span class="ruby-keyword kw">nil</span>
1031
+ 49: <span class="ruby-comment cmt"># Determines if the tooltip is triggered by an special hinting icon or</span>
1032
+ 50: <span class="ruby-comment cmt"># the whole cell.</span>
1033
+ 51: <span class="ruby-ivar">@showTooltipHint</span> = <span class="ruby-keyword kw">true</span>
1034
+ 52: <span class="ruby-comment cmt"># The original data of the cell content (optional, nil if not provided)</span>
1035
+ 53: <span class="ruby-ivar">@data</span> = <span class="ruby-keyword kw">nil</span>
1036
+ 54: <span class="ruby-comment cmt"># Determines the background color of the cell.</span>
1037
+ 55: <span class="ruby-ivar">@category</span> = <span class="ruby-keyword kw">nil</span>
1038
+ 56: <span class="ruby-comment cmt"># True of the cell is hidden (because other cells span multiple rows or</span>
1039
+ 57: <span class="ruby-comment cmt"># columns)</span>
1040
+ 58: <span class="ruby-ivar">@hidden</span> = <span class="ruby-keyword kw">false</span>
1041
+ 59: <span class="ruby-comment cmt"># How to horizontally align the cell</span>
1042
+ 60: <span class="ruby-ivar">@alignment</span> = <span class="ruby-value">:center</span>
1043
+ 61: <span class="ruby-comment cmt"># Horizontal padding between frame and cell content</span>
1044
+ 62: <span class="ruby-ivar">@padding</span> = <span class="ruby-value">3</span>
1045
+ 63: <span class="ruby-comment cmt"># Whether or not to indent the cell. If not nil, it is a Fixnum</span>
1046
+ 64: <span class="ruby-comment cmt"># indicating the indentation level.</span>
1047
+ 65: <span class="ruby-ivar">@indent</span> = <span class="ruby-keyword kw">nil</span>
1048
+ 66: <span class="ruby-comment cmt"># The basename of the icon file</span>
1049
+ 67: <span class="ruby-ivar">@icon</span> = <span class="ruby-keyword kw">nil</span>
1050
+ 68: <span class="ruby-comment cmt"># A custom tooltip for the cell icon</span>
1051
+ 69: <span class="ruby-ivar">@iconTooltip</span> = <span class="ruby-keyword kw">nil</span>
1052
+ 70: <span class="ruby-comment cmt"># Font size of the cell text in pixels</span>
1053
+ 71: <span class="ruby-ivar">@fontSize</span> = <span class="ruby-keyword kw">nil</span>
1054
+ 72: <span class="ruby-comment cmt"># The background color of the cell. Overwrite the @category color.</span>
1055
+ 73: <span class="ruby-ivar">@cellColor</span> = <span class="ruby-keyword kw">nil</span>
1056
+ 74: <span class="ruby-comment cmt"># The color of the cell text font.</span>
1057
+ 75: <span class="ruby-ivar">@fontColor</span> = <span class="ruby-keyword kw">nil</span>
1058
+ 76: <span class="ruby-comment cmt"># True of a bold font is to be used for the cell text.</span>
1059
+ 77: <span class="ruby-ivar">@bold</span> = <span class="ruby-keyword kw">false</span>
1060
+ 78: <span class="ruby-comment cmt"># The width of the column in pixels</span>
1061
+ 79: <span class="ruby-ivar">@width</span> = <span class="ruby-keyword kw">nil</span>
1062
+ 80: <span class="ruby-comment cmt"># The number of rows the cell spans</span>
1063
+ 81: <span class="ruby-ivar">@rows</span> = <span class="ruby-value">1</span>
1064
+ 82: <span class="ruby-comment cmt"># The number of columns the cell spans</span>
1065
+ 83: <span class="ruby-ivar">@columns</span> = <span class="ruby-value">1</span>
1066
+ 84: <span class="ruby-comment cmt"># True of the resulting report should not contain any information from</span>
1067
+ 85: <span class="ruby-comment cmt"># other files.</span>
1068
+ 86: <span class="ruby-ivar">@selfcontained</span> = <span class="ruby-keyword kw">false</span>
1069
+ 87: <span class="ruby-comment cmt"># Ignore everything and use this reference to generate the output.</span>
1070
+ 88: <span class="ruby-ivar">@special</span> = <span class="ruby-keyword kw">nil</span>
1071
+ 89: <span class="ruby-keyword kw">end</span></pre>
1072
+ </div>
1073
+
1074
+ </div>
1075
+
1076
+
1077
+
1078
+
1079
+ </div>
1080
+
1081
+
1082
+ </div>
1083
+
1084
+ <div id="public-instance-method-details" class="method-section section">
1085
+ <h3 class="section-header">Public Instance Methods</h3>
1086
+
1087
+
1088
+ <div id="--method" class="method-detail ">
1089
+ <a name="method-i-%3D%3D"></a>
1090
+
1091
+ <div class="method-heading">
1092
+
1093
+ <span class="method-name">==</span><span
1094
+ class="method-args">(c)</span>
1095
+ <span class="method-click-advice">click to toggle source</span>
1096
+
1097
+ </div>
1098
+
1099
+ <div class="method-description">
1100
+
1101
+ <p>
1102
+ Return true if two cells are similar enough so that they can be merged in
1103
+ the report to a single, wider cell. <em>c</em> is the cell to compare this
1104
+ cell with.
1105
+ </p>
1106
+
1107
+
1108
+
1109
+ <div class="method-source-code"
1110
+ id="--source">
1111
+ <pre>
1112
+ <span class="ruby-comment cmt"># File lib/taskjuggler/reports/ReportTableCell.rb, line 94</span>
1113
+ 94: <span class="ruby-keyword kw">def</span> <span class="ruby-operator">==</span>(<span class="ruby-identifier">c</span>)
1114
+ 95: <span class="ruby-ivar">@text</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">text</span> <span class="ruby-operator">&amp;&amp;</span>
1115
+ 96: <span class="ruby-ivar">@tooltip</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">tooltip</span> <span class="ruby-operator">&amp;&amp;</span>
1116
+ 97: <span class="ruby-ivar">@alignment</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">alignment</span> <span class="ruby-operator">&amp;&amp;</span>
1117
+ 98: <span class="ruby-ivar">@padding</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">padding</span> <span class="ruby-operator">&amp;&amp;</span>
1118
+ 99: <span class="ruby-ivar">@indent</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">indent</span> <span class="ruby-operator">&amp;&amp;</span>
1119
+ 100: <span class="ruby-ivar">@cellColor</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">cellColor</span> <span class="ruby-operator">&amp;&amp;</span>
1120
+ 101: <span class="ruby-ivar">@category</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">c</span>.<span class="ruby-identifier">category</span>
1121
+ 102: <span class="ruby-keyword kw">end</span></pre>
1122
+ </div>
1123
+
1124
+ </div>
1125
+
1126
+
1127
+
1128
+
1129
+ </div>
1130
+
1131
+
1132
+ <div id="to-csv-method" class="method-detail ">
1133
+ <a name="method-i-to_csv"></a>
1134
+
1135
+ <div class="method-heading">
1136
+
1137
+ <span class="method-name">to_csv</span><span
1138
+ class="method-args">(csv, columnIdx, lineIdx)</span>
1139
+ <span class="method-click-advice">click to toggle source</span>
1140
+
1141
+ </div>
1142
+
1143
+ <div class="method-description">
1144
+
1145
+ <p>
1146
+ Add the text content of the cell to an Array of Arrays form of the table.
1147
+ </p>
1148
+
1149
+
1150
+
1151
+ <div class="method-source-code"
1152
+ id="to-csv-source">
1153
+ <pre>
1154
+ <span class="ruby-comment cmt"># File lib/taskjuggler/reports/ReportTableCell.rb, line 157</span>
1155
+ 157: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_csv</span>(<span class="ruby-identifier">csv</span>, <span class="ruby-identifier">columnIdx</span>, <span class="ruby-identifier">lineIdx</span>)
1156
+ 158: <span class="ruby-comment cmt"># We only support left indentation in CSV files as the spaces for right</span>
1157
+ 159: <span class="ruby-comment cmt"># indentation will be disregarded by most applications.</span>
1158
+ 160: <span class="ruby-identifier">indent</span> = <span class="ruby-ivar">@indent</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@alignment</span> <span class="ruby-operator">==</span> <span class="ruby-value">:left</span> <span class="ruby-operator">?</span> <span class="ruby-value str">' '</span> * <span class="ruby-ivar">@indent</span> <span class="ruby-operator">:</span> <span class="ruby-value str">''</span>
1159
+ 161: <span class="ruby-identifier">columns</span> = <span class="ruby-value">1</span>
1160
+ 162: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@special</span>
1161
+ 163: <span class="ruby-comment cmt"># This is for nested tables. They will be inserted as whole columns</span>
1162
+ 164: <span class="ruby-comment cmt"># in the existing table.</span>
1163
+ 165: <span class="ruby-identifier">csv</span>[<span class="ruby-identifier">lineIdx</span>][<span class="ruby-identifier">columnIdx</span>] = <span class="ruby-keyword kw">nil</span>
1164
+ 166: <span class="ruby-identifier">columns</span> = <span class="ruby-ivar">@special</span>.<span class="ruby-identifier">to_csv</span>(<span class="ruby-identifier">csv</span>, <span class="ruby-identifier">columnIdx</span>)
1165
+ 167: <span class="ruby-keyword kw">else</span>
1166
+ 168: <span class="ruby-identifier">cell</span> =
1167
+ 169: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@data</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@data</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">String</span>)
1168
+ 170: <span class="ruby-ivar">@data</span>
1169
+ 171: <span class="ruby-keyword kw">elsif</span> <span class="ruby-ivar">@text</span>
1170
+ 172: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@text</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value str">'functionHandler'</span>)
1171
+ 173: <span class="ruby-ivar">@text</span>.<span class="ruby-identifier">setQuery</span>(<span class="ruby-ivar">@query</span>)
1172
+ 174: <span class="ruby-keyword kw">end</span>
1173
+ 175: <span class="ruby-identifier">str</span> = <span class="ruby-ivar">@text</span>.<span class="ruby-identifier">to_s</span>
1174
+ 176: <span class="ruby-comment cmt"># Remove any trailing line breaks. These don't really make much</span>
1175
+ 177: <span class="ruby-comment cmt"># sense in CSV files.</span>
1176
+ 178: <span class="ruby-keyword kw">while</span> <span class="ruby-identifier">str</span>[<span class="ruby-value">1</span>] <span class="ruby-operator">==</span> <span class="ruby-value">\n\</span>
1177
+ 179: <span class="ruby-identifier">str</span>.<span class="ruby-identifier">chomp!</span>
1178
+ 180: <span class="ruby-keyword kw">end</span>
1179
+ 181: <span class="ruby-identifier">str</span>
1180
+ 182: <span class="ruby-keyword kw">end</span>
1181
+ 183:
1182
+ 184: <span class="ruby-comment cmt"># Try to convert numbers and other types to their native Ruby type if</span>
1183
+ 185: <span class="ruby-comment cmt"># they are supported by CSVFile.</span>
1184
+ 186: <span class="ruby-identifier">native</span> = <span class="ruby-constant">CSVFile</span>.<span class="ruby-identifier">strToNative</span>(<span class="ruby-identifier">cell</span>)
1185
+ 187:
1186
+ 188: <span class="ruby-comment cmt"># Only for String objects, we add the indentation.</span>
1187
+ 189: <span class="ruby-identifier">csv</span>[<span class="ruby-identifier">lineIdx</span>][<span class="ruby-identifier">columnIdx</span>] = (<span class="ruby-identifier">native</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">String</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">indent</span> <span class="ruby-operator">+</span> <span class="ruby-identifier">native</span> <span class="ruby-operator">:</span>
1188
+ 190: <span class="ruby-identifier">native</span>)
1189
+ 191: <span class="ruby-keyword kw">end</span>
1190
+ 192:
1191
+ 193: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">columns</span>
1192
+ 194: <span class="ruby-keyword kw">end</span></pre>
1193
+ </div>
1194
+
1195
+ </div>
1196
+
1197
+
1198
+
1199
+
1200
+ </div>
1201
+
1202
+
1203
+ <div id="to-html-method" class="method-detail ">
1204
+ <a name="method-i-to_html"></a>
1205
+
1206
+ <div class="method-heading">
1207
+
1208
+ <span class="method-name">to_html</span><span
1209
+ class="method-args">()</span>
1210
+ <span class="method-click-advice">click to toggle source</span>
1211
+
1212
+ </div>
1213
+
1214
+ <div class="method-description">
1215
+
1216
+ <p>
1217
+ Turn the abstract cell representation into an HTML element tree.
1218
+ </p>
1219
+
1220
+
1221
+
1222
+ <div class="method-source-code"
1223
+ id="to-html-source">
1224
+ <pre>
1225
+ <span class="ruby-comment cmt"># File lib/taskjuggler/reports/ReportTableCell.rb, line 105</span>
1226
+ 105: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_html</span>
1227
+ 106: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@hidden</span>
1228
+ 107: <span class="ruby-keyword kw">return</span> <span class="ruby-ivar">@special</span>.<span class="ruby-identifier">to_html</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@special</span>
1229
+ 108:
1230
+ 109: <span class="ruby-comment cmt"># Determine cell attributes</span>
1231
+ 110: <span class="ruby-identifier">attribs</span> = { }
1232
+ 111: <span class="ruby-identifier">attribs</span>[<span class="ruby-value str">'rowspan'</span>] = <span class="ruby-node">&quot;#{@rows}&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@rows</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">1</span>
1233
+ 112: <span class="ruby-identifier">attribs</span>[<span class="ruby-value str">'colspan'</span>] = <span class="ruby-node">&quot;#{@columns}&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@columns</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">1</span>
1234
+ 113: <span class="ruby-identifier">attribs</span>[<span class="ruby-value str">'class'</span>] = <span class="ruby-ivar">@category</span> <span class="ruby-operator">?</span> <span class="ruby-ivar">@category</span> <span class="ruby-operator">:</span> <span class="ruby-value str">'tabcell'</span>
1235
+ 114: <span class="ruby-identifier">style</span> = <span class="ruby-value str">''</span>
1236
+ 115: <span class="ruby-identifier">style</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;background-color: #{@cellColor}; &quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@cellColor</span>
1237
+ 116: <span class="ruby-identifier">attribs</span>[<span class="ruby-value str">'style'</span>] = <span class="ruby-identifier">style</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">style</span>.<span class="ruby-identifier">empty?</span>
1238
+ 117: <span class="ruby-identifier">cell</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-identifier">attribs</span>)
1239
+ 118:
1240
+ 119: <span class="ruby-identifier">cell</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">table</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>,
1241
+ 120: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-ivar">@category</span> <span class="ruby-operator">?</span> <span class="ruby-value str">'tj_table_cell'</span> <span class="ruby-operator">:</span> <span class="ruby-value str">'tj_table_header_cell'</span>,
1242
+ 121: <span class="ruby-value str">'cellspacing'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'0'</span>, <span class="ruby-value str">'style'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">cellStyle</span>))
1243
+ 122: <span class="ruby-identifier">table</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">row</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
1244
+ 123:
1245
+ 124: <span class="ruby-identifier">calculateIndentation</span>
1246
+ 125:
1247
+ 126: <span class="ruby-comment cmt"># Insert a padding cell for the left side indentation.</span>
1248
+ 127: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@leftIndent</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@leftIndent</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
1249
+ 128: <span class="ruby-identifier">row</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'style'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;width:#{@leftIndent}px; &quot;</span>)
1250
+ 129: <span class="ruby-keyword kw">end</span>
1251
+ 130: <span class="ruby-identifier">row</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">cellIcon</span>(<span class="ruby-identifier">cell</span>)
1252
+ 131:
1253
+ 132: <span class="ruby-identifier">labelDiv</span>, <span class="ruby-identifier">tooltip</span> = <span class="ruby-identifier">cellLabel</span>
1254
+ 133: <span class="ruby-identifier">row</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">labelDiv</span>
1255
+ 134:
1256
+ 135: <span class="ruby-comment cmt"># Overwrite the tooltip if the user has specified a custom tooltip.</span>
1257
+ 136: <span class="ruby-identifier">tooltip</span> = <span class="ruby-ivar">@tooltip</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@tooltip</span>
1258
+ 137: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tooltip</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tooltip</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@selfcontained</span>
1259
+ 138: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@showTooltipHint</span>
1260
+ 139: <span class="ruby-identifier">row</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>))
1261
+ 140: <span class="ruby-identifier">td</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'img'</span>, <span class="ruby-value str">'src'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'icons/details.png'</span>,
1262
+ 141: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'tj_table_cell_tooltip'</span>)
1263
+ 142: <span class="ruby-identifier">addHtmlTooltip</span>(<span class="ruby-identifier">tooltip</span>, <span class="ruby-identifier">td</span>, <span class="ruby-identifier">cell</span>)
1264
+ 143: <span class="ruby-keyword kw">else</span>
1265
+ 144: <span class="ruby-identifier">addHtmlTooltip</span>(<span class="ruby-identifier">tooltip</span>, <span class="ruby-identifier">cell</span>)
1266
+ 145: <span class="ruby-keyword kw">end</span>
1267
+ 146: <span class="ruby-keyword kw">end</span>
1268
+ 147:
1269
+ 148: <span class="ruby-comment cmt"># Insert a padding cell for the right side indentation.</span>
1270
+ 149: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@rightIndent</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@rightIndent</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
1271
+ 150: <span class="ruby-identifier">row</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'style'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;width:#{@rightIndent}px; &quot;</span>)
1272
+ 151: <span class="ruby-keyword kw">end</span>
1273
+ 152:
1274
+ 153: <span class="ruby-identifier">cell</span>
1275
+ 154: <span class="ruby-keyword kw">end</span></pre>
1276
+ </div>
1277
+
1278
+ </div>
1279
+
1280
+
1281
+
1282
+
1283
+ </div>
1284
+
1285
+
1286
+ </div>
1287
+
1288
+ <div id="private-instance-method-details" class="method-section section">
1289
+ <h3 class="section-header">Private Instance Methods</h3>
1290
+
1291
+
1292
+ <div id="add-tml-ooltip-method" class="method-detail ">
1293
+ <a name="method-i-addHtmlTooltip"></a>
1294
+
1295
+ <div class="method-heading">
1296
+
1297
+ <span class="method-name">addHtmlTooltip</span><span
1298
+ class="method-args">(tooltip, trigger, hook = nil)</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="add-tml-ooltip-source">
1311
+ <pre>
1312
+ <span class="ruby-comment cmt"># File lib/taskjuggler/reports/ReportTableCell.rb, line 344</span>
1313
+ 344: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">addHtmlTooltip</span>(<span class="ruby-identifier">tooltip</span>, <span class="ruby-identifier">trigger</span>, <span class="ruby-identifier">hook</span> = <span class="ruby-keyword kw">nil</span>)
1314
+ 345: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">tooltip</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">tooltip</span>.<span class="ruby-identifier">empty?</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@selfcontained</span>
1315
+ 346:
1316
+ 347: <span class="ruby-identifier">hook</span> = <span class="ruby-identifier">trigger</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">hook</span>.<span class="ruby-identifier">nil?</span>
1317
+ 348: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tooltip</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value str">'functionHandler'</span>)
1318
+ 349: <span class="ruby-identifier">tooltip</span>.<span class="ruby-identifier">setQuery</span>(<span class="ruby-ivar">@query</span>)
1319
+ 350: <span class="ruby-keyword kw">end</span>
1320
+ 351: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@query</span>
1321
+ 352: <span class="ruby-ivar">@query</span>.<span class="ruby-identifier">attributeId</span> = <span class="ruby-value str">'name'</span>
1322
+ 353: <span class="ruby-ivar">@query</span>.<span class="ruby-identifier">process</span>
1323
+ 354: <span class="ruby-identifier">title</span> = <span class="ruby-ivar">@query</span>.<span class="ruby-identifier">to_s</span>
1324
+ 355: <span class="ruby-keyword kw">else</span>
1325
+ 356: <span class="ruby-identifier">title</span> = <span class="ruby-value str">''</span>
1326
+ 357: <span class="ruby-keyword kw">end</span>
1327
+ 358: <span class="ruby-identifier">trigger</span>[<span class="ruby-value str">'onclick'</span>] = <span class="ruby-node">&quot;TagToTip('ID#{trigger.object_id}', &quot;</span> <span class="ruby-operator">+</span>
1328
+ 359: <span class="ruby-node">&quot;TITLE, '#{title}')&quot;</span>
1329
+ 360: <span class="ruby-identifier">trigger</span>[<span class="ruby-value str">'style'</span>] = <span class="ruby-identifier">trigger</span>[<span class="ruby-value str">'style'</span>] <span class="ruby-operator">?</span> <span class="ruby-identifier">trigger</span>[<span class="ruby-value str">'style'</span>] <span class="ruby-operator">:</span> <span class="ruby-value str">'cursor:help; '</span>
1330
+ 361: <span class="ruby-identifier">hook</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">ltDiv</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'div'</span>,
1331
+ 362: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'tj_tooltip_box'</span>,
1332
+ 363: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'cursor:help'</span>,
1333
+ 364: <span class="ruby-value str">'id'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;ID#{trigger.object_id}&quot;</span>))
1334
+ 365: <span class="ruby-identifier">ltDiv</span> <span class="ruby-operator">&lt;&lt;</span> (<span class="ruby-identifier">tooltip</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value str">'to_html'</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">tooltip</span>.<span class="ruby-identifier">to_html</span> <span class="ruby-operator">:</span>
1335
+ 366: <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">tooltip</span>))
1336
+ 367: <span class="ruby-keyword kw">end</span></pre>
1337
+ </div>
1338
+
1339
+ </div>
1340
+
1341
+
1342
+
1343
+
1344
+ </div>
1345
+
1346
+
1347
+ <div id="calculate-ndentation-method" class="method-detail ">
1348
+ <a name="method-i-calculateIndentation"></a>
1349
+
1350
+ <div class="method-heading">
1351
+
1352
+ <span class="method-name">calculateIndentation</span><span
1353
+ class="method-args">()</span>
1354
+ <span class="method-click-advice">click to toggle source</span>
1355
+
1356
+ </div>
1357
+
1358
+ <div class="method-description">
1359
+
1360
+
1361
+
1362
+
1363
+
1364
+ <div class="method-source-code"
1365
+ id="calculate-ndentation-source">
1366
+ <pre>
1367
+ <span class="ruby-comment cmt"># File lib/taskjuggler/reports/ReportTableCell.rb, line 198</span>
1368
+ 198: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">calculateIndentation</span>
1369
+ 199: <span class="ruby-comment cmt"># In tree sorting mode, some cells have to be indented to reflect the</span>
1370
+ 200: <span class="ruby-comment cmt"># tree nesting structure. The indentation is achieved with padding cells</span>
1371
+ 201: <span class="ruby-comment cmt"># and needs to be applied to the proper side depending on the alignment.</span>
1372
+ 202: <span class="ruby-ivar">@leftIndent</span> = <span class="ruby-ivar">@rightIndent</span> = <span class="ruby-value">0</span>
1373
+ 203: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@indent</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@alignment</span> <span class="ruby-operator">!=</span> <span class="ruby-value">:center</span>
1374
+ 204: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@alignment</span> <span class="ruby-operator">==</span> <span class="ruby-value">:left</span>
1375
+ 205: <span class="ruby-ivar">@leftIndent</span> = <span class="ruby-ivar">@indent</span> * <span class="ruby-value">8</span>
1376
+ 206: <span class="ruby-keyword kw">elsif</span> <span class="ruby-ivar">@alignment</span> <span class="ruby-operator">==</span> <span class="ruby-value">:right</span>
1377
+ 207: <span class="ruby-ivar">@rightIndent</span> = (<span class="ruby-ivar">@line</span>.<span class="ruby-identifier">table</span>.<span class="ruby-identifier">maxIndent</span> <span class="ruby-operator">-</span> <span class="ruby-ivar">@indent</span>) * <span class="ruby-value">8</span>
1378
+ 208: <span class="ruby-keyword kw">end</span>
1379
+ 209: <span class="ruby-keyword kw">end</span>
1380
+ 210: <span class="ruby-keyword kw">end</span></pre>
1381
+ </div>
1382
+
1383
+ </div>
1384
+
1385
+
1386
+
1387
+
1388
+ </div>
1389
+
1390
+
1391
+ <div id="cell-con-method" class="method-detail ">
1392
+ <a name="method-i-cellIcon"></a>
1393
+
1394
+ <div class="method-heading">
1395
+
1396
+ <span class="method-name">cellIcon</span><span
1397
+ class="method-args">(cell)</span>
1398
+ <span class="method-click-advice">click to toggle source</span>
1399
+
1400
+ </div>
1401
+
1402
+ <div class="method-description">
1403
+
1404
+
1405
+
1406
+
1407
+
1408
+ <div class="method-source-code"
1409
+ id="cell-con-source">
1410
+ <pre>
1411
+ <span class="ruby-comment cmt"># File lib/taskjuggler/reports/ReportTableCell.rb, line 222</span>
1412
+ 222: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cellIcon</span>(<span class="ruby-identifier">cell</span>)
1413
+ 223: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@icon</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@selfcontained</span>
1414
+ 224: <span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'tj_table_cell_icon'</span>)
1415
+ 225: <span class="ruby-identifier">td</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'img'</span>, <span class="ruby-value str">'src'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-node">&quot;icons/#{@icon}.png&quot;</span>,
1416
+ 226: <span class="ruby-value str">'alt'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">&quot;Icon&quot;</span>)
1417
+ 227: <span class="ruby-identifier">addHtmlTooltip</span>(<span class="ruby-ivar">@iconTooltip</span>, <span class="ruby-identifier">td</span>, <span class="ruby-identifier">cell</span>)
1418
+ 228: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">td</span>
1419
+ 229: <span class="ruby-keyword kw">end</span>
1420
+ 230:
1421
+ 231: <span class="ruby-keyword kw">nil</span>
1422
+ 232: <span class="ruby-keyword kw">end</span></pre>
1423
+ </div>
1424
+
1425
+ </div>
1426
+
1427
+
1428
+
1429
+
1430
+ </div>
1431
+
1432
+
1433
+ <div id="cell-abel-method" class="method-detail ">
1434
+ <a name="method-i-cellLabel"></a>
1435
+
1436
+ <div class="method-heading">
1437
+
1438
+ <span class="method-name">cellLabel</span><span
1439
+ class="method-args">()</span>
1440
+ <span class="method-click-advice">click to toggle source</span>
1441
+
1442
+ </div>
1443
+
1444
+ <div class="method-description">
1445
+
1446
+
1447
+
1448
+
1449
+
1450
+ <div class="method-source-code"
1451
+ id="cell-abel-source">
1452
+ <pre>
1453
+ <span class="ruby-comment cmt"># File lib/taskjuggler/reports/ReportTableCell.rb, line 234</span>
1454
+ 234: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cellLabel</span>
1455
+ 235: <span class="ruby-comment cmt"># If we have a RichText content and a width limit, we enable line</span>
1456
+ 236: <span class="ruby-comment cmt"># wrapping.</span>
1457
+ 237: <span class="ruby-comment cmt"># Overfl. Wrap. Height Width</span>
1458
+ 238: <span class="ruby-comment cmt"># Fixed Height: x - x -</span>
1459
+ 239: <span class="ruby-comment cmt"># Fixed Width: x x - x</span>
1460
+ 240: <span class="ruby-comment cmt"># Both: x - x x</span>
1461
+ 241: <span class="ruby-comment cmt"># None: - x - -</span>
1462
+ 242: <span class="ruby-identifier">fixedHeight</span> = <span class="ruby-ivar">@line</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@line</span>.<span class="ruby-identifier">table</span>.<span class="ruby-identifier">equiLines</span>
1463
+ 243: <span class="ruby-identifier">fixedWidth</span> = <span class="ruby-operator">!</span><span class="ruby-ivar">@width</span>.<span class="ruby-identifier">nil?</span>
1464
+ 244: <span class="ruby-identifier">style</span> = <span class="ruby-value str">''</span>
1465
+ 245: <span class="ruby-identifier">style</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">&quot;overflow:hidden; &quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">fixedHeight</span> <span class="ruby-operator">||</span> <span class="ruby-identifier">fixedWidth</span>
1466
+ 246: <span class="ruby-identifier">style</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;white-space:#{fixedWidth &amp;&amp; !fixedHeight ?
1467
+ 247: 'normal' : 'nowrap'}; &quot;</span>
1468
+ 248: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">fixedHeight</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-operator">!</span><span class="ruby-identifier">fixedWidth</span>
1469
+ 249: <span class="ruby-identifier">style</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;height:#{@line.height - 3}px; &quot;</span>
1470
+ 250: <span class="ruby-keyword kw">end</span>
1471
+ 251: <span class="ruby-identifier">style</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">'font-weight:bold; '</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@bold</span>
1472
+ 252: <span class="ruby-identifier">style</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;font-size: #{@fontSize}px; &quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">fontSize</span>
1473
+ 253: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@fontColor</span>
1474
+ 254: <span class="ruby-identifier">style</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;color:#{@fontColor}; &quot;</span>
1475
+ 255: <span class="ruby-keyword kw">end</span>
1476
+ 256:
1477
+ 257: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@text</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@text</span>.<span class="ruby-identifier">empty?</span>
1478
+ 258:
1479
+ 259: <span class="ruby-identifier">tooltip</span> = <span class="ruby-keyword kw">nil</span>
1480
+ 260:
1481
+ 261: <span class="ruby-comment cmt"># @text can be a String or a RichText (with or without embedded</span>
1482
+ 262: <span class="ruby-comment cmt"># queries). To find out if @text has multiple lines, we need to expand</span>
1483
+ 263: <span class="ruby-comment cmt"># it and convert it to a plain text again.</span>
1484
+ 264: <span class="ruby-identifier">textAsString</span> =
1485
+ 265: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@text</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RichTextIntermediate</span>)
1486
+ 266: <span class="ruby-comment cmt"># @text is a RichText.</span>
1487
+ 267: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@text</span>.<span class="ruby-identifier">respond_to?</span>(<span class="ruby-value str">'functionHandler'</span>)
1488
+ 268: <span class="ruby-ivar">@text</span>.<span class="ruby-identifier">setQuery</span>(<span class="ruby-ivar">@query</span>)
1489
+ 269: <span class="ruby-keyword kw">end</span>
1490
+ 270: <span class="ruby-ivar">@text</span>.<span class="ruby-identifier">to_s</span>
1491
+ 271: <span class="ruby-keyword kw">else</span>
1492
+ 272: <span class="ruby-ivar">@text</span>
1493
+ 273: <span class="ruby-keyword kw">end</span>
1494
+ 274:
1495
+ 275: <span class="ruby-keyword kw">return</span> <span class="ruby-keyword kw">nil</span>, <span class="ruby-keyword kw">nil</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">textAsString</span>.<span class="ruby-identifier">empty?</span>
1496
+ 276:
1497
+ 277: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@width</span>
1498
+ 278: <span class="ruby-comment cmt"># We have 4 pixels padding on each side of the cell.</span>
1499
+ 279: <span class="ruby-identifier">labelWidth</span> = <span class="ruby-ivar">@width</span> <span class="ruby-operator">-</span> <span class="ruby-value">8</span>
1500
+ 280: <span class="ruby-identifier">labelWidth</span> <span class="ruby-operator">-=</span> <span class="ruby-ivar">@leftIndent</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@leftIndent</span>
1501
+ 281: <span class="ruby-identifier">labelWidth</span> <span class="ruby-operator">-=</span> <span class="ruby-ivar">@rightIndent</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@rightIndent</span>
1502
+ 282: <span class="ruby-keyword kw">if</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@selfcontained</span>
1503
+ 283: <span class="ruby-comment cmt"># The icons are 20 pixels width including padding.</span>
1504
+ 284: <span class="ruby-identifier">labelWidth</span> <span class="ruby-operator">-=</span> <span class="ruby-value">20</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@icon</span>
1505
+ 285: <span class="ruby-identifier">labelWidth</span> <span class="ruby-operator">-=</span> <span class="ruby-value">20</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">tooltip</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@tooltip</span>
1506
+ 286: <span class="ruby-keyword kw">end</span>
1507
+ 287: <span class="ruby-keyword kw">else</span>
1508
+ 288: <span class="ruby-identifier">labelWidth</span> = <span class="ruby-keyword kw">nil</span>
1509
+ 289: <span class="ruby-keyword kw">end</span>
1510
+ 290: <span class="ruby-identifier">shortText</span>, <span class="ruby-identifier">singleLine</span> = <span class="ruby-identifier">shortVersion</span>(<span class="ruby-identifier">textAsString</span>, <span class="ruby-identifier">labelWidth</span>)
1511
+ 291:
1512
+ 292: <span class="ruby-keyword kw">if</span> (<span class="ruby-ivar">@line</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@line</span>.<span class="ruby-identifier">table</span>.<span class="ruby-identifier">equiLines</span> <span class="ruby-operator">&amp;&amp;</span> (<span class="ruby-operator">!</span><span class="ruby-identifier">singleLine</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@width</span> )) <span class="ruby-operator">&amp;&amp;</span>
1513
+ 293: <span class="ruby-operator">!</span><span class="ruby-ivar">@headerCell</span>
1514
+ 294: <span class="ruby-comment cmt"># The cell is size-limited. We only put a shortened plain-text version</span>
1515
+ 295: <span class="ruby-comment cmt"># in the cell and provide the full content via a tooltip.</span>
1516
+ 296: <span class="ruby-comment cmt"># Header cells are never shortened.</span>
1517
+ 297: <span class="ruby-identifier">tooltip</span> = <span class="ruby-ivar">@text</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">shortText</span> <span class="ruby-operator">!=</span> <span class="ruby-identifier">textAsString</span>
1518
+ 298: <span class="ruby-identifier">tl</span> = <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">shortText</span>)
1519
+ 299: <span class="ruby-keyword kw">else</span>
1520
+ 300: <span class="ruby-identifier">tl</span> = (<span class="ruby-ivar">@text</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">RichTextIntermediate</span>) <span class="ruby-operator">?</span> <span class="ruby-ivar">@text</span>.<span class="ruby-identifier">to_html</span> <span class="ruby-operator">:</span>
1521
+ 301: <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@text</span>))
1522
+ 302: <span class="ruby-keyword kw">end</span>
1523
+ 303:
1524
+ 304: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">labelWidth</span>
1525
+ 305: <span class="ruby-identifier">style</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;min-width: #{labelWidth}px; max-width: #{labelWidth}px; &quot;</span>
1526
+ 306: <span class="ruby-keyword kw">end</span>
1527
+ 307:
1528
+ 308: <span class="ruby-identifier">td</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'td'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-value str">'tj_table_cell_label'</span>,
1529
+ 309: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">&gt;</span> <span class="ruby-identifier">style</span>)
1530
+ 310: <span class="ruby-identifier">td</span> <span class="ruby-operator">&lt;&lt;</span> <span class="ruby-identifier">tl</span>
1531
+ 311:
1532
+ 312: <span class="ruby-keyword kw">return</span> <span class="ruby-identifier">td</span>, <span class="ruby-identifier">tooltip</span>
1533
+ 313: <span class="ruby-keyword kw">end</span></pre>
1534
+ </div>
1535
+
1536
+ </div>
1537
+
1538
+
1539
+
1540
+
1541
+ </div>
1542
+
1543
+
1544
+ <div id="cell-tyle-method" class="method-detail ">
1545
+ <a name="method-i-cellStyle"></a>
1546
+
1547
+ <div class="method-heading">
1548
+
1549
+ <span class="method-name">cellStyle</span><span
1550
+ class="method-args">()</span>
1551
+ <span class="method-click-advice">click to toggle source</span>
1552
+
1553
+ </div>
1554
+
1555
+ <div class="method-description">
1556
+
1557
+ <p>
1558
+ Determine cell style
1559
+ </p>
1560
+
1561
+
1562
+
1563
+ <div class="method-source-code"
1564
+ id="cell-tyle-source">
1565
+ <pre>
1566
+ <span class="ruby-comment cmt"># File lib/taskjuggler/reports/ReportTableCell.rb, line 213</span>
1567
+ 213: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">cellStyle</span>
1568
+ 214: <span class="ruby-identifier">style</span> = <span class="ruby-node">&quot;text-align:#{@alignment.to_s}; &quot;</span>
1569
+ 215: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@line</span> <span class="ruby-operator">&amp;&amp;</span> <span class="ruby-ivar">@line</span>.<span class="ruby-identifier">table</span>.<span class="ruby-identifier">equiLines</span>
1570
+ 216: <span class="ruby-identifier">style</span> <span class="ruby-operator">+=</span> <span class="ruby-node">&quot;height:#{@line.height - 7}px; &quot;</span>
1571
+ 217: <span class="ruby-keyword kw">end</span>
1572
+ 218:
1573
+ 219: <span class="ruby-identifier">style</span>
1574
+ 220: <span class="ruby-keyword kw">end</span></pre>
1575
+ </div>
1576
+
1577
+ </div>
1578
+
1579
+
1580
+
1581
+
1582
+ </div>
1583
+
1584
+
1585
+ <div id="short-ersion-method" class="method-detail ">
1586
+ <a name="method-i-shortVersion"></a>
1587
+
1588
+ <div class="method-heading">
1589
+
1590
+ <span class="method-name">shortVersion</span><span
1591
+ class="method-args">(itext, width)</span>
1592
+ <span class="method-click-advice">click to toggle source</span>
1593
+
1594
+ </div>
1595
+
1596
+ <div class="method-description">
1597
+
1598
+ <p>
1599
+ Convert a <a href="RichText.html">RichText</a> <a
1600
+ href="../String.html">String</a> into a small one-line plain text version
1601
+ that fits the column.
1602
+ </p>
1603
+
1604
+
1605
+
1606
+ <div class="method-source-code"
1607
+ id="short-ersion-source">
1608
+ <pre>
1609
+ <span class="ruby-comment cmt"># File lib/taskjuggler/reports/ReportTableCell.rb, line 317</span>
1610
+ 317: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">shortVersion</span>(<span class="ruby-identifier">itext</span>, <span class="ruby-identifier">width</span>)
1611
+ 318: <span class="ruby-identifier">text</span> = <span class="ruby-identifier">itext</span>.<span class="ruby-identifier">to_s</span>
1612
+ 319: <span class="ruby-identifier">singleLine</span> = <span class="ruby-keyword kw">true</span>
1613
+ 320: <span class="ruby-identifier">modified</span> = <span class="ruby-keyword kw">false</span>
1614
+ 321: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-value str">&quot;\n&quot;</span>)
1615
+ 322: <span class="ruby-identifier">text</span> = <span class="ruby-identifier">text</span>[<span class="ruby-value">0</span>, <span class="ruby-identifier">text</span>.<span class="ruby-identifier">index</span>(<span class="ruby-value str">&quot;\n&quot;</span>)]
1616
+ 323: <span class="ruby-identifier">singleLine</span> = <span class="ruby-keyword kw">false</span>
1617
+ 324: <span class="ruby-identifier">modified</span> = <span class="ruby-keyword kw">true</span>
1618
+ 325: <span class="ruby-keyword kw">end</span>
1619
+ 326: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">width</span>
1620
+ 327: <span class="ruby-identifier">widthWithoutIcon</span> = <span class="ruby-identifier">width</span> <span class="ruby-operator">-</span> <span class="ruby-value">20</span>
1621
+ 328: <span class="ruby-comment cmt"># Assuming an average character width of 7 pixels</span>
1622
+ 329: <span class="ruby-identifier">maxChars</span> = <span class="ruby-identifier">widthWithoutIcon</span> <span class="ruby-operator">/</span> <span class="ruby-value">7</span>
1623
+ 330: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">text</span>.<span class="ruby-identifier">length</span> <span class="ruby-operator">&gt;</span> <span class="ruby-identifier">maxChars</span>
1624
+ 331: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">maxChars</span> <span class="ruby-operator">&gt;</span> <span class="ruby-value">0</span>
1625
+ 332: <span class="ruby-identifier">text</span> = <span class="ruby-identifier">text</span>[<span class="ruby-value">0</span>, <span class="ruby-identifier">maxChars</span>]
1626
+ 333: <span class="ruby-keyword kw">else</span>
1627
+ 334: <span class="ruby-identifier">text</span> = <span class="ruby-value str">''</span>
1628
+ 335: <span class="ruby-keyword kw">end</span>
1629
+ 336: <span class="ruby-identifier">modified</span> = <span class="ruby-keyword kw">true</span>
1630
+ 337: <span class="ruby-keyword kw">end</span>
1631
+ 338: <span class="ruby-keyword kw">end</span>
1632
+ 339: <span class="ruby-comment cmt"># Add three dots to show that there is more info available.</span>
1633
+ 340: <span class="ruby-identifier">text</span> <span class="ruby-operator">+=</span> <span class="ruby-value str">&quot;...&quot;</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">modified</span>
1634
+ 341: [ <span class="ruby-identifier">text</span>, <span class="ruby-identifier">singleLine</span> ]
1635
+ 342: <span class="ruby-keyword kw">end</span></pre>
1636
+ </div>
1637
+
1638
+ </div>
1639
+
1640
+
1641
+
1642
+
1643
+ </div>
1644
+
1645
+
1646
+ </div>
1647
+
1648
+
1649
+ </div>
1650
+
1651
+
1652
+ <div id="rdoc-debugging-section-dump" class="debugging-section">
1653
+
1654
+ <p>Disabled; run with --debug to generate this.</p>
1655
+
1656
+ </div>
1657
+
1658
+ <div id="validator-badges">
1659
+ <p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
1660
+ <p><small>Generated with the <a href="http://deveiate.org/projects/Darkfish-Rdoc/">Darkfish
1661
+ Rdoc Generator</a> 1.1.6</small>.</p>
1662
+ </div>
1663
+
1664
+ </body>
1665
+ </html>
1666
+