taskjuggler 0.0.2
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.
- data/COPYING +280 -0
- data/README +31 -0
- data/Rakefile +20 -0
- data/benchmarks/UTF-8-Strings.rb +58 -0
- data/benchmarks/allocate.tjp +30 -0
- data/benchmarks/booking.tjp +62 -0
- data/benchmarks/depends.tjp +112 -0
- data/benchmarks/htmltaskreport.tjp +45 -0
- data/benchmarks/runbench.rb +24 -0
- data/bin/tj3 +3 -0
- data/bin/tj3man +3 -0
- data/doc/classes/AppConfig.html +808 -0
- data/doc/classes/Arguments.html +226 -0
- data/doc/classes/String.html +395 -0
- data/doc/classes/TaskJuggler.html +1358 -0
- data/doc/classes/TaskJuggler/Account.html +257 -0
- data/doc/classes/TaskJuggler/AccountScenario.html +218 -0
- data/doc/classes/TaskJuggler/Allocation.html +419 -0
- data/doc/classes/TaskJuggler/AllocationAttribute.html +291 -0
- data/doc/classes/TaskJuggler/AttributeBase.html +608 -0
- data/doc/classes/TaskJuggler/AttributeDefinition.html +259 -0
- data/doc/classes/TaskJuggler/Booking.html +307 -0
- data/doc/classes/TaskJuggler/BookingListAttribute.html +263 -0
- data/doc/classes/TaskJuggler/BooleanAttribute.html +261 -0
- data/doc/classes/TaskJuggler/CSVFile.html +325 -0
- data/doc/classes/TaskJuggler/Charge.html +279 -0
- data/doc/classes/TaskJuggler/ChargeListAttribute.html +229 -0
- data/doc/classes/TaskJuggler/ChargeSet.html +440 -0
- data/doc/classes/TaskJuggler/ChargeSetListAttribute.html +276 -0
- data/doc/classes/TaskJuggler/ColumnTable.html +260 -0
- data/doc/classes/TaskJuggler/DateAttribute.html +194 -0
- data/doc/classes/TaskJuggler/DependencyListAttribute.html +267 -0
- data/doc/classes/TaskJuggler/DurationAttribute.html +229 -0
- data/doc/classes/TaskJuggler/FixnumAttribute.html +194 -0
- data/doc/classes/TaskJuggler/FlagListAttribute.html +263 -0
- data/doc/classes/TaskJuggler/FloatAttribute.html +229 -0
- data/doc/classes/TaskJuggler/GanttChart.html +667 -0
- data/doc/classes/TaskJuggler/GanttContainer.html +441 -0
- data/doc/classes/TaskJuggler/GanttHeader.html +280 -0
- data/doc/classes/TaskJuggler/GanttHeaderScaleItem.html +245 -0
- data/doc/classes/TaskJuggler/GanttLine.html +398 -0
- data/doc/classes/TaskJuggler/GanttLoadStack.html +327 -0
- data/doc/classes/TaskJuggler/GanttMilestone.html +415 -0
- data/doc/classes/TaskJuggler/GanttRouter.html +425 -0
- data/doc/classes/TaskJuggler/GanttTaskBar.html +429 -0
- data/doc/classes/TaskJuggler/HTMLDocument.html +240 -0
- data/doc/classes/TaskJuggler/HTMLGraphics.html +231 -0
- data/doc/classes/TaskJuggler/Interval.html +552 -0
- data/doc/classes/TaskJuggler/IntervalListAttribute.html +267 -0
- data/doc/classes/TaskJuggler/KeywordDocumentation.html +796 -0
- data/doc/classes/TaskJuggler/Limits.html +416 -0
- data/doc/classes/TaskJuggler/Limits/Limit.html +381 -0
- data/doc/classes/TaskJuggler/LimitsAttribute.html +261 -0
- data/doc/classes/TaskJuggler/Log.html +613 -0
- data/doc/classes/TaskJuggler/LogicalAttribute.html +226 -0
- data/doc/classes/TaskJuggler/LogicalExpression.html +251 -0
- data/doc/classes/TaskJuggler/LogicalFlag.html +229 -0
- data/doc/classes/TaskJuggler/LogicalFunction.html +324 -0
- data/doc/classes/TaskJuggler/LogicalOperation.html +299 -0
- data/doc/classes/TaskJuggler/Macro.html +194 -0
- data/doc/classes/TaskJuggler/MacroParser.html +360 -0
- data/doc/classes/TaskJuggler/MacroTable.html +366 -0
- data/doc/classes/TaskJuggler/Message.html +281 -0
- data/doc/classes/TaskJuggler/MessageHandler.html +215 -0
- data/doc/classes/TaskJuggler/Project.html +1606 -0
- data/doc/classes/TaskJuggler/ProjectFileParser.html +412 -0
- data/doc/classes/TaskJuggler/PropertyList.html +597 -0
- data/doc/classes/TaskJuggler/PropertySet.html +1200 -0
- data/doc/classes/TaskJuggler/PropertyTreeNode.html +1449 -0
- data/doc/classes/TaskJuggler/Query.html +600 -0
- data/doc/classes/TaskJuggler/RealFormat.html +252 -0
- data/doc/classes/TaskJuggler/ReferenceAttribute.html +194 -0
- data/doc/classes/TaskJuggler/Report.html +528 -0
- data/doc/classes/TaskJuggler/ReportElement.html +1070 -0
- data/doc/classes/TaskJuggler/ReportTable.html +497 -0
- data/doc/classes/TaskJuggler/ReportTableCell.html +518 -0
- data/doc/classes/TaskJuggler/ReportTableColumn.html +364 -0
- data/doc/classes/TaskJuggler/ReportTableElement.html +644 -0
- data/doc/classes/TaskJuggler/ReportTableLegend.html +343 -0
- data/doc/classes/TaskJuggler/ReportTableLine.html +431 -0
- data/doc/classes/TaskJuggler/Resource.html +211 -0
- data/doc/classes/TaskJuggler/ResourceListAttribute.html +267 -0
- data/doc/classes/TaskJuggler/ResourceListRE.html +249 -0
- data/doc/classes/TaskJuggler/ResourceScenario.html +1137 -0
- data/doc/classes/TaskJuggler/RichText.html +537 -0
- data/doc/classes/TaskJuggler/RichTextAttribute.html +229 -0
- data/doc/classes/TaskJuggler/RichTextDocument.html +418 -0
- data/doc/classes/TaskJuggler/RichTextElement.html +829 -0
- data/doc/classes/TaskJuggler/RichTextException.html +212 -0
- data/doc/classes/TaskJuggler/RichTextParser.html +317 -0
- data/doc/classes/TaskJuggler/RichTextProtocolExample.html +303 -0
- data/doc/classes/TaskJuggler/RichTextProtocolHandler.html +194 -0
- data/doc/classes/TaskJuggler/RichTextScanner.html +561 -0
- data/doc/classes/TaskJuggler/RichTextSnip.html +364 -0
- data/doc/classes/TaskJuggler/RichTextSyntaxRules.html +883 -0
- data/doc/classes/TaskJuggler/Scenario.html +163 -0
- data/doc/classes/TaskJuggler/ScenarioData.html +354 -0
- data/doc/classes/TaskJuggler/Scoreboard.html +638 -0
- data/doc/classes/TaskJuggler/Shift.html +255 -0
- data/doc/classes/TaskJuggler/ShiftAssignment.html +488 -0
- data/doc/classes/TaskJuggler/ShiftAssignments.html +715 -0
- data/doc/classes/TaskJuggler/ShiftAssignmentsAttribute.html +261 -0
- data/doc/classes/TaskJuggler/ShiftScenario.html +282 -0
- data/doc/classes/TaskJuggler/SourceFileInfo.html +247 -0
- data/doc/classes/TaskJuggler/StringAttribute.html +229 -0
- data/doc/classes/TaskJuggler/SymbolAttribute.html +194 -0
- data/doc/classes/TaskJuggler/SyntaxReference.html +516 -0
- data/doc/classes/TaskJuggler/TOCEntry.html +242 -0
- data/doc/classes/TaskJuggler/TableColumnDefinition.html +273 -0
- data/doc/classes/TaskJuggler/TableOfContents.html +256 -0
- data/doc/classes/TaskJuggler/Task.html +203 -0
- data/doc/classes/TaskJuggler/TaskDependency.html +251 -0
- data/doc/classes/TaskJuggler/TaskListAttribute.html +267 -0
- data/doc/classes/TaskJuggler/TaskListRE.html +250 -0
- data/doc/classes/TaskJuggler/TaskScenario.html +2206 -0
- data/doc/classes/TaskJuggler/TextParser.html +670 -0
- data/doc/classes/TaskJuggler/TextParser/Pattern.html +923 -0
- data/doc/classes/TaskJuggler/TextParser/Rule.html +779 -0
- data/doc/classes/TaskJuggler/TextParser/StackElement.html +267 -0
- data/doc/classes/TaskJuggler/TextParser/TextParserResultArray.html +212 -0
- data/doc/classes/TaskJuggler/TextParser/TokenDoc.html +221 -0
- data/doc/classes/TaskJuggler/TextScanner.html +708 -0
- data/doc/classes/TaskJuggler/TextScanner/BufferStreamHandle.html +355 -0
- data/doc/classes/TaskJuggler/TextScanner/FileStreamHandle.html +341 -0
- data/doc/classes/TaskJuggler/TextScanner/StreamHandle.html +260 -0
- data/doc/classes/TaskJuggler/TjException.html +185 -0
- data/doc/classes/TaskJuggler/TjTime.html +1845 -0
- data/doc/classes/TaskJuggler/TjpExample.html +310 -0
- data/doc/classes/TaskJuggler/TjpExportRE.html +329 -0
- data/doc/classes/TaskJuggler/TjpSyntaxRules.html +8928 -0
- data/doc/classes/TaskJuggler/UserManual.html +606 -0
- data/doc/classes/TaskJuggler/WorkingHours.html +582 -0
- data/doc/classes/TaskJuggler/WorkingHoursAttribute.html +284 -0
- data/doc/classes/TaskJuggler/XMLBlob.html +207 -0
- data/doc/classes/TaskJuggler/XMLComment.html +206 -0
- data/doc/classes/TaskJuggler/XMLDocument.html +293 -0
- data/doc/classes/TaskJuggler/XMLElement.html +341 -0
- data/doc/classes/TaskJuggler/XMLNamedText.html +174 -0
- data/doc/classes/TaskJuggler/XMLText.html +221 -0
- data/doc/files/COPYING.html +448 -0
- data/doc/files/README.html +134 -0
- data/doc/files/lib/AccountScenario_rb.html +116 -0
- data/doc/files/lib/Account_rb.html +118 -0
- data/doc/files/lib/Allocation_rb.html +118 -0
- data/doc/files/lib/AppConfig_rb.html +116 -0
- data/doc/files/lib/AttributeBase_rb.html +106 -0
- data/doc/files/lib/AttributeDefinition_rb.html +106 -0
- data/doc/files/lib/Attributes_rb.html +130 -0
- data/doc/files/lib/Booking_rb.html +106 -0
- data/doc/files/lib/ChargeSet_rb.html +116 -0
- data/doc/files/lib/Charge_rb.html +116 -0
- data/doc/files/lib/HTMLDocument_rb.html +116 -0
- data/doc/files/lib/Interval_rb.html +116 -0
- data/doc/files/lib/KeywordDocumentation_rb.html +122 -0
- data/doc/files/lib/Limits_rb.html +116 -0
- data/doc/files/lib/Log_rb.html +116 -0
- data/doc/files/lib/LogicalExpression_rb.html +122 -0
- data/doc/files/lib/LogicalFlag_rb.html +116 -0
- data/doc/files/lib/LogicalFunction_rb.html +116 -0
- data/doc/files/lib/LogicalOperation_rb.html +116 -0
- data/doc/files/lib/MacroParser_rb.html +118 -0
- data/doc/files/lib/MacroTable_rb.html +122 -0
- data/doc/files/lib/MessageHandler_rb.html +106 -0
- data/doc/files/lib/Message_rb.html +116 -0
- data/doc/files/lib/ProjectFileParser_rb.html +122 -0
- data/doc/files/lib/Project_rb.html +148 -0
- data/doc/files/lib/PropertyList_rb.html +106 -0
- data/doc/files/lib/PropertySet_rb.html +118 -0
- data/doc/files/lib/PropertyTreeNode_rb.html +106 -0
- data/doc/files/lib/Query_rb.html +116 -0
- data/doc/files/lib/RealFormat_rb.html +106 -0
- data/doc/files/lib/ResourceScenario_rb.html +116 -0
- data/doc/files/lib/Resource_rb.html +118 -0
- data/doc/files/lib/RichTextDocument_rb.html +120 -0
- data/doc/files/lib/RichTextElement_rb.html +120 -0
- data/doc/files/lib/RichTextParser_rb.html +120 -0
- data/doc/files/lib/RichTextProtocolExample_rb.html +120 -0
- data/doc/files/lib/RichTextProtocolHandler_rb.html +106 -0
- data/doc/files/lib/RichTextScanner_rb.html +116 -0
- data/doc/files/lib/RichTextSnip_rb.html +118 -0
- data/doc/files/lib/RichTextSyntaxRules_rb.html +106 -0
- data/doc/files/lib/RichText_rb.html +118 -0
- data/doc/files/lib/ScenarioData_rb.html +118 -0
- data/doc/files/lib/Scenario_rb.html +116 -0
- data/doc/files/lib/Scoreboard_rb.html +106 -0
- data/doc/files/lib/ShiftAssignments_rb.html +116 -0
- data/doc/files/lib/ShiftScenario_rb.html +116 -0
- data/doc/files/lib/Shift_rb.html +118 -0
- data/doc/files/lib/SourceFileInfo_rb.html +106 -0
- data/doc/files/lib/SyntaxReference_rb.html +122 -0
- data/doc/files/lib/TOCEntry_rb.html +118 -0
- data/doc/files/lib/TableColumnDefinition_rb.html +106 -0
- data/doc/files/lib/TableOfContents_rb.html +118 -0
- data/doc/files/lib/TaskDependency_rb.html +106 -0
- data/doc/files/lib/TaskJuggler_rb.html +120 -0
- data/doc/files/lib/TaskScenario_rb.html +116 -0
- data/doc/files/lib/Task_rb.html +118 -0
- data/doc/files/lib/TextParser/Pattern_rb.html +116 -0
- data/doc/files/lib/TextParser/Rule_rb.html +106 -0
- data/doc/files/lib/TextParser/StackElement_rb.html +106 -0
- data/doc/files/lib/TextParser/TokenDoc_rb.html +106 -0
- data/doc/files/lib/TextParser_rb.html +124 -0
- data/doc/files/lib/TextScanner_rb.html +128 -0
- data/doc/files/lib/Tj3Config_rb.html +118 -0
- data/doc/files/lib/TjException_rb.html +106 -0
- data/doc/files/lib/TjTime_rb.html +118 -0
- data/doc/files/lib/TjpExample_rb.html +116 -0
- data/doc/files/lib/TjpSyntaxRules_rb.html +106 -0
- data/doc/files/lib/UTF8String_rb.html +132 -0
- data/doc/files/lib/UserManual_rb.html +124 -0
- data/doc/files/lib/WorkingHours_rb.html +116 -0
- data/doc/files/lib/XMLDocument_rb.html +116 -0
- data/doc/files/lib/XMLElement_rb.html +116 -0
- data/doc/files/lib/reports/CSVFile_rb.html +116 -0
- data/doc/files/lib/reports/ColumnTable_rb.html +116 -0
- data/doc/files/lib/reports/GanttChart_rb.html +122 -0
- data/doc/files/lib/reports/GanttContainer_rb.html +116 -0
- data/doc/files/lib/reports/GanttHeaderScaleItem_rb.html +106 -0
- data/doc/files/lib/reports/GanttHeader_rb.html +116 -0
- data/doc/files/lib/reports/GanttLine_rb.html +126 -0
- data/doc/files/lib/reports/GanttLoadStack_rb.html +116 -0
- data/doc/files/lib/reports/GanttMilestone_rb.html +116 -0
- data/doc/files/lib/reports/GanttRouter_rb.html +106 -0
- data/doc/files/lib/reports/GanttTaskBar_rb.html +116 -0
- data/doc/files/lib/reports/HTMLGraphics_rb.html +106 -0
- data/doc/files/lib/reports/ReportElement_rb.html +118 -0
- data/doc/files/lib/reports/ReportTableCell_rb.html +106 -0
- data/doc/files/lib/reports/ReportTableColumn_rb.html +106 -0
- data/doc/files/lib/reports/ReportTableElement_rb.html +122 -0
- data/doc/files/lib/reports/ReportTableLegend_rb.html +106 -0
- data/doc/files/lib/reports/ReportTableLine_rb.html +116 -0
- data/doc/files/lib/reports/ReportTable_rb.html +118 -0
- data/doc/files/lib/reports/Report_rb.html +126 -0
- data/doc/files/lib/reports/ResourceListRE_rb.html +122 -0
- data/doc/files/lib/reports/TaskListRE_rb.html +122 -0
- data/doc/files/lib/reports/TjpExportRE_rb.html +116 -0
- data/doc/files/lib/taskjuggler3_rb.html +276 -0
- data/doc/files/lib/tj3man_rb.html +189 -0
- data/doc/fr_class_index.html +285 -0
- data/doc/fr_file_index.html +223 -0
- data/doc/fr_method_index.html +1953 -0
- data/doc/index.html +21 -0
- data/doc/rdoc-style.css +299 -0
- data/examples/tutorial.tjp +361 -0
- data/gem_spec.rb +30 -0
- data/lib/Account.rb +50 -0
- data/lib/AccountScenario.rb +39 -0
- data/lib/Allocation.rb +102 -0
- data/lib/AppConfig.rb +134 -0
- data/lib/AttributeBase.rb +131 -0
- data/lib/AttributeDefinition.rb +47 -0
- data/lib/Attributes.rb +478 -0
- data/lib/BatchProcessor.rb +209 -0
- data/lib/Booking.rb +59 -0
- data/lib/Charge.rb +71 -0
- data/lib/ChargeSet.rb +126 -0
- data/lib/HTMLDocument.rb +59 -0
- data/lib/Interval.rb +127 -0
- data/lib/KeywordDocumentation.rb +560 -0
- data/lib/Limits.rb +219 -0
- data/lib/Log.rb +160 -0
- data/lib/LogicalExpression.rb +71 -0
- data/lib/LogicalFlag.rb +34 -0
- data/lib/LogicalFunction.rb +102 -0
- data/lib/LogicalOperation.rb +118 -0
- data/lib/MacroParser.rb +77 -0
- data/lib/MacroTable.rb +84 -0
- data/lib/Message.rb +56 -0
- data/lib/MessageHandler.rb +34 -0
- data/lib/Project.rb +662 -0
- data/lib/ProjectFileParser.rb +333 -0
- data/lib/PropertyList.rb +181 -0
- data/lib/PropertySet.rb +304 -0
- data/lib/PropertyTreeNode.rb +461 -0
- data/lib/Query.rb +227 -0
- data/lib/RealFormat.rb +73 -0
- data/lib/Resource.rb +42 -0
- data/lib/ResourceScenario.rb +511 -0
- data/lib/RichText.rb +147 -0
- data/lib/RichTextDocument.rb +139 -0
- data/lib/RichTextElement.rb +391 -0
- data/lib/RichTextParser.rb +66 -0
- data/lib/RichTextProtocolExample.rb +65 -0
- data/lib/RichTextProtocolHandler.rb +35 -0
- data/lib/RichTextScanner.rb +390 -0
- data/lib/RichTextSnip.rb +104 -0
- data/lib/RichTextSyntaxRules.rb +265 -0
- data/lib/Scenario.rb +27 -0
- data/lib/ScenarioData.rb +65 -0
- data/lib/Scoreboard.rb +141 -0
- data/lib/Shift.rb +48 -0
- data/lib/ShiftAssignments.rb +291 -0
- data/lib/ShiftScenario.rb +46 -0
- data/lib/SourceFileInfo.rb +37 -0
- data/lib/SyntaxReference.rb +284 -0
- data/lib/TOCEntry.rb +76 -0
- data/lib/TableColumnDefinition.rb +54 -0
- data/lib/TableOfContents.rb +46 -0
- data/lib/Task.rb +37 -0
- data/lib/TaskDependency.rb +39 -0
- data/lib/TaskJuggler.rb +84 -0
- data/lib/TaskScenario.rb +1622 -0
- data/lib/TextParser.rb +416 -0
- data/lib/TextParser/Pattern.rb +263 -0
- data/lib/TextParser/Rule.rb +171 -0
- data/lib/TextParser/StackElement.rb +45 -0
- data/lib/TextParser/TokenDoc.rb +38 -0
- data/lib/TextScanner.rb +682 -0
- data/lib/Tj3Config.rb +27 -0
- data/lib/TjException.rb +27 -0
- data/lib/TjTime.rb +395 -0
- data/lib/TjpExample.rb +119 -0
- data/lib/TjpSyntaxRules.rb +4022 -0
- data/lib/UTF8String.rb +100 -0
- data/lib/UserManual.rb +282 -0
- data/lib/WorkingHours.rb +323 -0
- data/lib/XMLDocument.rb +54 -0
- data/lib/XMLElement.rb +175 -0
- data/lib/reports/CSVFile.rb +146 -0
- data/lib/reports/ColumnTable.rb +66 -0
- data/lib/reports/GanttChart.rb +308 -0
- data/lib/reports/GanttContainer.rb +107 -0
- data/lib/reports/GanttHeader.rb +141 -0
- data/lib/reports/GanttHeaderScaleItem.rb +42 -0
- data/lib/reports/GanttLine.rb +329 -0
- data/lib/reports/GanttLoadStack.rb +113 -0
- data/lib/reports/GanttMilestone.rb +80 -0
- data/lib/reports/GanttRouter.rb +375 -0
- data/lib/reports/GanttTaskBar.rb +95 -0
- data/lib/reports/HTMLGraphics.rb +65 -0
- data/lib/reports/Report.rb +344 -0
- data/lib/reports/ReportElement.rb +427 -0
- data/lib/reports/ReportTable.rb +144 -0
- data/lib/reports/ReportTableCell.rb +142 -0
- data/lib/reports/ReportTableColumn.rb +82 -0
- data/lib/reports/ReportTableElement.rb +852 -0
- data/lib/reports/ReportTableLegend.rb +167 -0
- data/lib/reports/ReportTableLine.rb +87 -0
- data/lib/reports/ResourceListRE.rb +72 -0
- data/lib/reports/TaskListRE.rb +73 -0
- data/lib/reports/TjpExportRE.rb +394 -0
- data/lib/taskjuggler3.rb +106 -0
- data/lib/tj3man.rb +88 -0
- data/manual/Day_To_Day_Juggling +168 -0
- data/manual/Getting_Started +61 -0
- data/manual/How_To_Contribute +185 -0
- data/manual/Installation +68 -0
- data/manual/Intro +102 -0
- data/manual/Reporting_Bugs +26 -0
- data/manual/Rich_Text_Attributes +90 -0
- data/manual/TaskJuggler_2x_Migration +40 -0
- data/manual/Tutorial +579 -0
- data/manual/fdl +450 -0
- data/prj_cfg.rb +43 -0
- data/setup.rb +1585 -0
- data/tasks/csts.rake +72 -0
- data/tasks/gem.rake +14 -0
- data/tasks/manual.rake +10 -0
- data/tasks/missing.rake +21 -0
- data/tasks/rcov.rake +14 -0
- data/tasks/rdoc.rake +17 -0
- data/tasks/rexml_fix.rb +16 -0
- data/tasks/rexml_fix_19.rb +49 -0
- data/tasks/show.rake +21 -0
- data/tasks/stats.rake +25 -0
- data/tasks/test.rake +11 -0
- data/test/MessageChecker.rb +53 -0
- data/test/TestSuite/CSV-Reports/celltext-Reference.csv +14 -0
- data/test/TestSuite/CSV-Reports/celltext.tjp +7 -0
- data/test/TestSuite/CSV-Reports/genrefs +6 -0
- data/test/TestSuite/CSV-Reports/project-1.tji +57 -0
- data/test/TestSuite/CSV-Reports/resourcereport-Reference.csv +4 -0
- data/test/TestSuite/CSV-Reports/resourcereport.tjp +10 -0
- data/test/TestSuite/CSV-Reports/resourcereport_with_tasks-Reference.csv +22 -0
- data/test/TestSuite/CSV-Reports/resourcereport_with_tasks.tjp +11 -0
- data/test/TestSuite/CSV-Reports/sortByTree-Reference.csv +14 -0
- data/test/TestSuite/CSV-Reports/sortByTree.tjp +8 -0
- data/test/TestSuite/CSV-Reports/sortBy_duration.down-Reference.csv +14 -0
- data/test/TestSuite/CSV-Reports/sortBy_duration.down.tjp +10 -0
- data/test/TestSuite/CSV-Reports/sortBy_effort.up-Reference.csv +14 -0
- data/test/TestSuite/CSV-Reports/sortBy_effort.up.tjp +10 -0
- data/test/TestSuite/CSV-Reports/sortBy_plan.start.down-Reference.csv +14 -0
- data/test/TestSuite/CSV-Reports/sortBy_plan.start.down.tjp +10 -0
- data/test/TestSuite/CSV-Reports/taskreport-Reference.csv +14 -0
- data/test/TestSuite/CSV-Reports/taskreport.tjp +10 -0
- data/test/TestSuite/CSV-Reports/taskreport_with_resources-Reference.csv +24 -0
- data/test/TestSuite/CSV-Reports/taskreport_with_resources.tjp +11 -0
- data/test/TestSuite/Scheduler/Correct/Allocate.tjp +86 -0
- data/test/TestSuite/Scheduler/Correct/AutomaticMilestones.tjp +63 -0
- data/test/TestSuite/Scheduler/Correct/Booking.tjp +161 -0
- data/test/TestSuite/Scheduler/Correct/Depends.tjp +50 -0
- data/test/TestSuite/Scheduler/Correct/Duration.tjp +34 -0
- data/test/TestSuite/Scheduler/Correct/InheritStartEnd.tjp +129 -0
- data/test/TestSuite/Scheduler/Correct/Limits.tjp +81 -0
- data/test/TestSuite/Scheduler/Correct/MultipleMandatories.tjp +43 -0
- data/test/TestSuite/Scheduler/Correct/Optimize-1.tjp +28 -0
- data/test/TestSuite/Scheduler/Correct/Optimize-2.tjp +33 -0
- data/test/TestSuite/Scheduler/Correct/Optimize-3.tjp +33 -0
- data/test/TestSuite/Scheduler/Correct/Optimize-4.tjp +34 -0
- data/test/TestSuite/Scheduler/Correct/Optimize-5.tjp +62 -0
- data/test/TestSuite/Scheduler/Correct/Precedes.tjp +50 -0
- data/test/TestSuite/Scheduler/Correct/Shift.tjp +102 -0
- data/test/TestSuite/Scheduler/Errors/account_no_leaf.tjp +13 -0
- data/test/TestSuite/Scheduler/Errors/booking_conflict.tjp +10 -0
- data/test/TestSuite/Scheduler/Errors/booking_no_duty.tjp +9 -0
- data/test/TestSuite/Scheduler/Errors/booking_on_vacation.tjp +9 -0
- data/test/TestSuite/Scheduler/Errors/container_booking.tjp +14 -0
- data/test/TestSuite/Scheduler/Errors/container_duration.tjp +11 -0
- data/test/TestSuite/Scheduler/Errors/effort_no_allocations.tjp +7 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_1.tjp +19 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_10.tjp +36 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_11.tjp +27 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_12.tjp +20 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_13.tjp +27 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_14.tjp +26 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_2.tjp +24 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_3.tjp +18 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_4.tjp +36 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_5.tjp +37 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_6.tjp +35 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_7.tjp +46 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_8.tjp +51 -0
- data/test/TestSuite/Scheduler/Errors/loop_detected_9.tjp +20 -0
- data/test/TestSuite/Scheduler/Errors/maxend.tjp +8 -0
- data/test/TestSuite/Scheduler/Errors/maxstart.tjp +8 -0
- data/test/TestSuite/Scheduler/Errors/milestone_booking.tjp +10 -0
- data/test/TestSuite/Scheduler/Errors/milestone_duration.tjp +8 -0
- data/test/TestSuite/Scheduler/Errors/milestone_start_end.tjp +8 -0
- data/test/TestSuite/Scheduler/Errors/minend.tjp +8 -0
- data/test/TestSuite/Scheduler/Errors/minstart.tjp +8 -0
- data/test/TestSuite/Scheduler/Errors/multiple_durations.tjp +11 -0
- data/test/TestSuite/Scheduler/Errors/no_tasks.tjp +6 -0
- data/test/TestSuite/Scheduler/Errors/not_scheduled.tjp +8 -0
- data/test/TestSuite/Scheduler/Errors/task_depend_child.tjp +10 -0
- data/test/TestSuite/Scheduler/Errors/task_depend_multi.tjp +13 -0
- data/test/TestSuite/Scheduler/Errors/task_depend_parent.tjp +11 -0
- data/test/TestSuite/Scheduler/Errors/task_depend_self.tjp +10 -0
- data/test/TestSuite/Scheduler/Errors/task_depend_unknown.tjp +10 -0
- data/test/TestSuite/Scheduler/Errors/task_overspecified_1.tjp +9 -0
- data/test/TestSuite/Scheduler/Errors/task_overspecified_2.tjp +14 -0
- data/test/TestSuite/Scheduler/Errors/task_overspecified_3.tjp +14 -0
- data/test/TestSuite/Scheduler/Errors/task_underspecified_1.tjp +8 -0
- data/test/TestSuite/Scheduler/Errors/task_underspecified_2.tjp +8 -0
- data/test/TestSuite/Scheduler/Errors/task_underspecified_3.tjp +9 -0
- data/test/TestSuite/Syntax/Correct/Account.tjp +53 -0
- data/test/TestSuite/Syntax/Correct/Allocate-1.tjp +24 -0
- data/test/TestSuite/Syntax/Correct/Alternative.tjp +13 -0
- data/test/TestSuite/Syntax/Correct/AutoMacros.tjp +14 -0
- data/test/TestSuite/Syntax/Correct/Booking.tjp +26 -0
- data/test/TestSuite/Syntax/Correct/Caption.tjp +33 -0
- data/test/TestSuite/Syntax/Correct/Celltext.tjp +28 -0
- data/test/TestSuite/Syntax/Correct/Comments.tjp +29 -0
- data/test/TestSuite/Syntax/Correct/Complete.tjp +16 -0
- data/test/TestSuite/Syntax/Correct/CompletedWork.tji +20 -0
- data/test/TestSuite/Syntax/Correct/CriticalPath.tjp +31 -0
- data/test/TestSuite/Syntax/Correct/Currencyformat.tjp +12 -0
- data/test/TestSuite/Syntax/Correct/CustomAttributes.tjp +14 -0
- data/test/TestSuite/Syntax/Correct/Depends1.tjp +22 -0
- data/test/TestSuite/Syntax/Correct/Durations.tjp +29 -0
- data/test/TestSuite/Syntax/Correct/Efficiency.tjp +19 -0
- data/test/TestSuite/Syntax/Correct/Export.tjp +40 -0
- data/test/TestSuite/Syntax/Correct/Flags.tjp +32 -0
- data/test/TestSuite/Syntax/Correct/Freeze.tjp +28 -0
- data/test/TestSuite/Syntax/Correct/Gap.tjp +15 -0
- data/test/TestSuite/Syntax/Correct/HtmlTaskReport.tjp +33 -0
- data/test/TestSuite/Syntax/Correct/Limits-1.tjp +71 -0
- data/test/TestSuite/Syntax/Correct/LoadUnits.tjp +31 -0
- data/test/TestSuite/Syntax/Correct/Macro-1.tjp +19 -0
- data/test/TestSuite/Syntax/Correct/Mandatory.tjp +17 -0
- data/test/TestSuite/Syntax/Correct/Milestone.tjp +12 -0
- data/test/TestSuite/Syntax/Correct/MinMax.tjp +17 -0
- data/test/TestSuite/Syntax/Correct/Numberformat.tjp +12 -0
- data/test/TestSuite/Syntax/Correct/Period.tjp +16 -0
- data/test/TestSuite/Syntax/Correct/Persistent.tjp +11 -0
- data/test/TestSuite/Syntax/Correct/Precedes1.tjp +17 -0
- data/test/TestSuite/Syntax/Correct/Priority.tjp +30 -0
- data/test/TestSuite/Syntax/Correct/Project.tjp +21 -0
- data/test/TestSuite/Syntax/Correct/ProjectIDs.tjp +23 -0
- data/test/TestSuite/Syntax/Correct/RawHTML.tjp +29 -0
- data/test/TestSuite/Syntax/Correct/Reports.tjp +54 -0
- data/test/TestSuite/Syntax/Correct/Resource.tjp +20 -0
- data/test/TestSuite/Syntax/Correct/Responsible.tjp +16 -0
- data/test/TestSuite/Syntax/Correct/Scenario.tjp +15 -0
- data/test/TestSuite/Syntax/Correct/Scheduling.tjp +26 -0
- data/test/TestSuite/Syntax/Correct/Select.tjp +27 -0
- data/test/TestSuite/Syntax/Correct/Shift.tjp +55 -0
- data/test/TestSuite/Syntax/Correct/Simple.tjp +25 -0
- data/test/TestSuite/Syntax/Correct/String.tjp +12 -0
- data/test/TestSuite/Syntax/Correct/Supplement.tjp +24 -0
- data/test/TestSuite/Syntax/Correct/TaskRoot.tjp +34 -0
- data/test/TestSuite/Syntax/Correct/TimeFrame.tjp +19 -0
- data/test/TestSuite/Syntax/Correct/Timezone.tjp +8 -0
- data/test/TestSuite/Syntax/Correct/Vacation.tjp +33 -0
- data/test/TestSuite/Syntax/Correct/csvtest +16 -0
- data/test/TestSuite/Syntax/Correct/manual2example.rb +24 -0
- data/test/TestSuite/Syntax/Correct/tutorial.tjp +485 -0
- data/test/TestSuite/Syntax/Errors/bad_include.tjp +11 -0
- data/test/TestSuite/Syntax/Errors/booking_group.tjp +14 -0
- data/test/TestSuite/Syntax/Errors/booking_milestone.tjp +13 -0
- data/test/TestSuite/Syntax/Errors/booking_no_leaf.tjp +13 -0
- data/test/TestSuite/Syntax/Errors/chargeset.tjp +14 -0
- data/test/TestSuite/Syntax/Errors/chargeset_master.tjp +15 -0
- data/test/TestSuite/Syntax/Errors/container_attribute.tjp +13 -0
- data/test/TestSuite/Syntax/Errors/cost_acct_no_top.tjp +24 -0
- data/test/TestSuite/Syntax/Errors/cost_rev_same.tjp +24 -0
- data/test/TestSuite/Syntax/Errors/date_in_range.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/effort_zero.tjp +8 -0
- data/test/TestSuite/Syntax/Errors/empty.tjp +1 -0
- data/test/TestSuite/Syntax/Errors/export_bad_extn.tjp +9 -0
- data/test/TestSuite/Syntax/Errors/extend_id_cap.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/interval_end_in_range.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/interval_start_in_range.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/leaf_resource_id_expected.tjp +12 -0
- data/test/TestSuite/Syntax/Errors/misaligned_date.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/no_csv_suffix.tjp +10 -0
- data/test/TestSuite/Syntax/Errors/no_html_suffix.tjp +10 -0
- data/test/TestSuite/Syntax/Errors/operand_attribute.tjp +11 -0
- data/test/TestSuite/Syntax/Errors/operand_unkn_flag.tjp +11 -0
- data/test/TestSuite/Syntax/Errors/operand_unkn_scen.tjp +11 -0
- data/test/TestSuite/Syntax/Errors/overtime_range.tjp +13 -0
- data/test/TestSuite/Syntax/Errors/purge_no_list.tjp +8 -0
- data/test/TestSuite/Syntax/Errors/purge_unknown_id.tjp +8 -0
- data/test/TestSuite/Syntax/Errors/report_end.tjp +10 -0
- data/test/TestSuite/Syntax/Errors/report_redifinition.tjp +10 -0
- data/test/TestSuite/Syntax/Errors/report_start.tjp +10 -0
- data/test/TestSuite/Syntax/Errors/resource_exists.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/resource_id_expected.tjp +8 -0
- data/test/TestSuite/Syntax/Errors/rev_acct_no_top.tjp +24 -0
- data/test/TestSuite/Syntax/Errors/scenario_exists.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/shift_assignment_overlap.tjp +15 -0
- data/test/TestSuite/Syntax/Errors/shift_exists.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/shift_id_expected.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/sloppy_range.tjp +13 -0
- data/test/TestSuite/Syntax/Errors/sort_direction.tjp +11 -0
- data/test/TestSuite/Syntax/Errors/sort_unknown_scen.tjp +11 -0
- data/test/TestSuite/Syntax/Errors/sorting_crit_exptd1.tjp +11 -0
- data/test/TestSuite/Syntax/Errors/sorting_crit_exptd2.tjp +11 -0
- data/test/TestSuite/Syntax/Errors/sorting_wbs.tjp +11 -0
- data/test/TestSuite/Syntax/Errors/start_before_end1.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/start_before_end2.tjp +6 -0
- data/test/TestSuite/Syntax/Errors/task_complete.tjp +8 -0
- data/test/TestSuite/Syntax/Errors/task_exists.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/task_priority.tjp +8 -0
- data/test/TestSuite/Syntax/Errors/task_without_chargeset.tjp +9 -0
- data/test/TestSuite/Syntax/Errors/time_interval.tjp +12 -0
- data/test/TestSuite/Syntax/Errors/too_many_bangs.tjp +10 -0
- data/test/TestSuite/Syntax/Errors/undecl_flag.tjp +6 -0
- data/test/TestSuite/Syntax/Errors/unknown_projectid.tjp +7 -0
- data/test/TestSuite/Syntax/Errors/unknown_scenario_id.tjp +6 -0
- data/test/TestSuite/Syntax/Errors/unknown_scenario_idx.tjp +11 -0
- data/test/TestSuite/Syntax/Errors/unknown_task.tjp +10 -0
- data/test/all.rb +31 -0
- data/test/test_BatchProcessor.rb +54 -0
- data/test/test_CSV-Reports.rb +101 -0
- data/test/test_Limits.rb +104 -0
- data/test/test_LogicalExpression.rb +110 -0
- data/test/test_MacroTable.rb +51 -0
- data/test/test_Project.rb +57 -0
- data/test/test_PropertySet.rb +71 -0
- data/test/test_Query.rb +83 -0
- data/test/test_RealFormat.rb +83 -0
- data/test/test_RichText.rb +869 -0
- data/test/test_Scheduler.rb +42 -0
- data/test/test_ShiftAssignments.rb +77 -0
- data/test/test_Syntax.rb +41 -0
- data/test/test_TextScanner.rb +95 -0
- data/test/test_TjTime.rb +114 -0
- data/test/test_TjpExample.rb +169 -0
- data/test/test_UTF8String.rb +84 -0
- data/test/test_WorkingHours.rb +56 -0
- metadata +649 -0
|
@@ -0,0 +1,364 @@
|
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
4
|
+
<head>
|
|
5
|
+
<title>Class: TaskJuggler::ReportTableColumn [TaskJuggler III API documentation]</title>
|
|
6
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
7
|
+
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
8
|
+
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
9
|
+
<script type="text/javascript">
|
|
10
|
+
// <![CDATA[
|
|
11
|
+
|
|
12
|
+
function popupCode( url ) {
|
|
13
|
+
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
function toggleCode( id ) {
|
|
17
|
+
if ( document.getElementById )
|
|
18
|
+
elem = document.getElementById( id );
|
|
19
|
+
else if ( document.all )
|
|
20
|
+
elem = eval( "document.all." + id );
|
|
21
|
+
else
|
|
22
|
+
return false;
|
|
23
|
+
|
|
24
|
+
elemStyle = elem.style;
|
|
25
|
+
|
|
26
|
+
if ( elemStyle.display != "block" ) {
|
|
27
|
+
elemStyle.display = "block"
|
|
28
|
+
} else {
|
|
29
|
+
elemStyle.display = "none"
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// Make codeblocks hidden by default
|
|
36
|
+
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }<\/style>" )
|
|
37
|
+
|
|
38
|
+
// ]]>
|
|
39
|
+
</script>
|
|
40
|
+
|
|
41
|
+
</head>
|
|
42
|
+
<body>
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
<div id="classHeader">
|
|
46
|
+
<table class="header-table">
|
|
47
|
+
<tr class="top-aligned-row">
|
|
48
|
+
<td><strong>Class</strong></td>
|
|
49
|
+
<td class="class-name-in-header">TaskJuggler::ReportTableColumn</td>
|
|
50
|
+
</tr>
|
|
51
|
+
<tr class="top-aligned-row">
|
|
52
|
+
<td><strong>In:</strong></td>
|
|
53
|
+
<td>
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
<a href="../../files/lib/reports/ReportTableColumn_rb.html">
|
|
57
|
+
|
|
58
|
+
lib/reports/ReportTableColumn.rb
|
|
59
|
+
|
|
60
|
+
</a>
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
<br />
|
|
64
|
+
|
|
65
|
+
</td>
|
|
66
|
+
</tr>
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
<tr class="top-aligned-row">
|
|
70
|
+
<td><strong>Parent:</strong></td>
|
|
71
|
+
<td>
|
|
72
|
+
|
|
73
|
+
Object
|
|
74
|
+
|
|
75
|
+
</td>
|
|
76
|
+
</tr>
|
|
77
|
+
|
|
78
|
+
</table>
|
|
79
|
+
</div>
|
|
80
|
+
<!-- banner header -->
|
|
81
|
+
|
|
82
|
+
<div id="bodyContent">
|
|
83
|
+
|
|
84
|
+
<div id="contextContent">
|
|
85
|
+
|
|
86
|
+
<div id="description">
|
|
87
|
+
<p>
|
|
88
|
+
The <a href="ReportTableColumn.html">ReportTableColumn</a> class models the
|
|
89
|
+
output format independend column of a <a
|
|
90
|
+
href="ReportTable.html">ReportTable</a>. It usually just contains the table
|
|
91
|
+
header description. The table header comprises of one or two lines per
|
|
92
|
+
column. So each column header consists of 2 cells. @cell1 is the top cell
|
|
93
|
+
and must be present. @cell2 is the optional bottom cell. If @cell2 is
|
|
94
|
+
hidden, @cell1 takes all the vertical space.
|
|
95
|
+
</p>
|
|
96
|
+
<p>
|
|
97
|
+
For some columns, the table does not contain the usual grid lines but
|
|
98
|
+
another abstract object that responds to the usual generator methods such
|
|
99
|
+
as <a href="ReportTableColumn.html#M000316">to_html</a>(). In such a case,
|
|
100
|
+
@cell1 references the embedded object via its special variable. The
|
|
101
|
+
embedded object then replaced the complete column content.
|
|
102
|
+
</p>
|
|
103
|
+
|
|
104
|
+
</div>
|
|
105
|
+
|
|
106
|
+
</div>
|
|
107
|
+
|
|
108
|
+
|
|
109
|
+
<div id="method-list">
|
|
110
|
+
<h3 class="section-bar">Methods</h3>
|
|
111
|
+
|
|
112
|
+
<div class="name-list">
|
|
113
|
+
|
|
114
|
+
<a href="#M000315">minWidth</a>
|
|
115
|
+
|
|
116
|
+
<a href="#M000314">new</a>
|
|
117
|
+
|
|
118
|
+
<a href="#M000317">to_csv</a>
|
|
119
|
+
|
|
120
|
+
<a href="#M000316">to_html</a>
|
|
121
|
+
|
|
122
|
+
</div>
|
|
123
|
+
</div>
|
|
124
|
+
|
|
125
|
+
</div>
|
|
126
|
+
|
|
127
|
+
<!-- if includes -->
|
|
128
|
+
|
|
129
|
+
<div id="section">
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
<div id="attribute-list">
|
|
134
|
+
<h3 class="section-bar">Attributes</h3>
|
|
135
|
+
|
|
136
|
+
<div class="name-list">
|
|
137
|
+
<table>
|
|
138
|
+
|
|
139
|
+
<tr class="top-aligned-row context-row">
|
|
140
|
+
<td class="context-item-name">cell1</td>
|
|
141
|
+
|
|
142
|
+
<td class="context-item-value"> [R] </td>
|
|
143
|
+
|
|
144
|
+
<td class="context-item-desc"></td>
|
|
145
|
+
</tr>
|
|
146
|
+
|
|
147
|
+
<tr class="top-aligned-row context-row">
|
|
148
|
+
<td class="context-item-name">cell2</td>
|
|
149
|
+
|
|
150
|
+
<td class="context-item-value"> [R] </td>
|
|
151
|
+
|
|
152
|
+
<td class="context-item-desc"></td>
|
|
153
|
+
</tr>
|
|
154
|
+
|
|
155
|
+
<tr class="top-aligned-row context-row">
|
|
156
|
+
<td class="context-item-name">definition</td>
|
|
157
|
+
|
|
158
|
+
<td class="context-item-value"> [R] </td>
|
|
159
|
+
|
|
160
|
+
<td class="context-item-desc"></td>
|
|
161
|
+
</tr>
|
|
162
|
+
|
|
163
|
+
<tr class="top-aligned-row context-row">
|
|
164
|
+
<td class="context-item-name">scrollbar</td>
|
|
165
|
+
|
|
166
|
+
<td class="context-item-value"> [RW] </td>
|
|
167
|
+
|
|
168
|
+
<td class="context-item-desc"></td>
|
|
169
|
+
</tr>
|
|
170
|
+
|
|
171
|
+
</table>
|
|
172
|
+
</div>
|
|
173
|
+
</div>
|
|
174
|
+
|
|
175
|
+
|
|
176
|
+
<!-- if method_list -->
|
|
177
|
+
|
|
178
|
+
<div id="methods">
|
|
179
|
+
|
|
180
|
+
<h3 class="section-bar">Public Class methods</h3>
|
|
181
|
+
|
|
182
|
+
|
|
183
|
+
<div id="method-M000314" class="method-detail">
|
|
184
|
+
<a name="M000314"></a>
|
|
185
|
+
|
|
186
|
+
<div class="method-heading">
|
|
187
|
+
|
|
188
|
+
<a href="#M000314" class="method-signature">
|
|
189
|
+
|
|
190
|
+
<span class="method-name">new</span><span class="method-args">(table, definition, title)</span>
|
|
191
|
+
|
|
192
|
+
</a>
|
|
193
|
+
|
|
194
|
+
</div>
|
|
195
|
+
|
|
196
|
+
<div class="method-description">
|
|
197
|
+
|
|
198
|
+
<p>
|
|
199
|
+
Create a new column. <em>table</em> is a reference to the <a
|
|
200
|
+
href="ReportTable.html">ReportTable</a> this column belongs to.
|
|
201
|
+
<em>definition</em> is the <a
|
|
202
|
+
href="TableColumnDefinition.html">TableColumnDefinition</a> of the column
|
|
203
|
+
from the project definition. <em>title</em> is the text that is used for
|
|
204
|
+
the column header.
|
|
205
|
+
</p>
|
|
206
|
+
|
|
207
|
+
<p><a class="source-toggle" href="#"
|
|
208
|
+
onclick="toggleCode('M000314-source');return false;">[Source]</a></p>
|
|
209
|
+
<div class="method-source-code" id="M000314-source">
|
|
210
|
+
<pre>
|
|
211
|
+
<span class="ruby-comment cmt"># File lib/reports/ReportTableColumn.rb, line 36</span>
|
|
212
|
+
36: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">table</span>, <span class="ruby-identifier">definition</span>, <span class="ruby-identifier">title</span>)
|
|
213
|
+
37: <span class="ruby-ivar">@table</span> = <span class="ruby-identifier">table</span>
|
|
214
|
+
38: <span class="ruby-comment cmt"># Register this new column with the ReportTable.</span>
|
|
215
|
+
39: <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">addColumn</span>(<span class="ruby-keyword kw">self</span>)
|
|
216
|
+
40: <span class="ruby-ivar">@definition</span> = <span class="ruby-identifier">definition</span>
|
|
217
|
+
41: <span class="ruby-comment cmt"># Register this new column with the TableColumnDefinition.</span>
|
|
218
|
+
42: <span class="ruby-identifier">definition</span>.<span class="ruby-identifier">column</span> = <span class="ruby-keyword kw">self</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">definition</span>
|
|
219
|
+
43:
|
|
220
|
+
44: <span class="ruby-comment cmt"># Create the 2 cells of the header.</span>
|
|
221
|
+
45: <span class="ruby-ivar">@cell1</span> = <span class="ruby-constant">ReportTableCell</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">title</span>, <span class="ruby-keyword kw">true</span>)
|
|
222
|
+
46: <span class="ruby-ivar">@cell1</span>.<span class="ruby-identifier">padding</span> = <span class="ruby-value">5</span>
|
|
223
|
+
47: <span class="ruby-ivar">@cell2</span> = <span class="ruby-constant">ReportTableCell</span>.<span class="ruby-identifier">new</span>(<span class="ruby-keyword kw">nil</span>, <span class="ruby-value str">''</span>, <span class="ruby-keyword kw">true</span>)
|
|
224
|
+
48: <span class="ruby-comment cmt"># Header text is always bold.</span>
|
|
225
|
+
49: <span class="ruby-ivar">@cell1</span>.<span class="ruby-identifier">bold</span> = <span class="ruby-ivar">@cell2</span>.<span class="ruby-identifier">bold</span> = <span class="ruby-keyword kw">true</span>
|
|
226
|
+
50: <span class="ruby-comment cmt"># This variable is set to true if the column requires a scrollbar later</span>
|
|
227
|
+
51: <span class="ruby-comment cmt"># on.</span>
|
|
228
|
+
52: <span class="ruby-ivar">@scrollbar</span> = <span class="ruby-keyword kw">false</span>
|
|
229
|
+
53: <span class="ruby-keyword kw">end</span>
|
|
230
|
+
</pre>
|
|
231
|
+
</div>
|
|
232
|
+
|
|
233
|
+
</div>
|
|
234
|
+
</div>
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
<h3 class="section-bar">Public Instance methods</h3>
|
|
238
|
+
|
|
239
|
+
|
|
240
|
+
<div id="method-M000315" class="method-detail">
|
|
241
|
+
<a name="M000315"></a>
|
|
242
|
+
|
|
243
|
+
<div class="method-heading">
|
|
244
|
+
|
|
245
|
+
<a href="#M000315" class="method-signature">
|
|
246
|
+
|
|
247
|
+
<span class="method-name">minWidth</span><span class="method-args">()</span>
|
|
248
|
+
|
|
249
|
+
</a>
|
|
250
|
+
|
|
251
|
+
</div>
|
|
252
|
+
|
|
253
|
+
<div class="method-description">
|
|
254
|
+
|
|
255
|
+
<p>
|
|
256
|
+
Return the mininum required width for the column.
|
|
257
|
+
</p>
|
|
258
|
+
|
|
259
|
+
<p><a class="source-toggle" href="#"
|
|
260
|
+
onclick="toggleCode('M000315-source');return false;">[Source]</a></p>
|
|
261
|
+
<div class="method-source-code" id="M000315-source">
|
|
262
|
+
<pre>
|
|
263
|
+
<span class="ruby-comment cmt"># File lib/reports/ReportTableColumn.rb, line 56</span>
|
|
264
|
+
56: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">minWidth</span>
|
|
265
|
+
57: <span class="ruby-identifier">width</span> = <span class="ruby-ivar">@cell1</span>.<span class="ruby-identifier">width</span>
|
|
266
|
+
58: <span class="ruby-identifier">width</span> = <span class="ruby-ivar">@cell2</span>.<span class="ruby-identifier">width</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">width</span>.<span class="ruby-identifier">nil?</span> <span class="ruby-operator">||</span> <span class="ruby-ivar">@cell2</span>.<span class="ruby-identifier">width</span> <span class="ruby-operator">></span> <span class="ruby-identifier">width</span>
|
|
267
|
+
59: <span class="ruby-identifier">width</span>
|
|
268
|
+
60: <span class="ruby-keyword kw">end</span>
|
|
269
|
+
</pre>
|
|
270
|
+
</div>
|
|
271
|
+
|
|
272
|
+
</div>
|
|
273
|
+
</div>
|
|
274
|
+
|
|
275
|
+
|
|
276
|
+
<div id="method-M000317" class="method-detail">
|
|
277
|
+
<a name="M000317"></a>
|
|
278
|
+
|
|
279
|
+
<div class="method-heading">
|
|
280
|
+
|
|
281
|
+
<a href="#M000317" class="method-signature">
|
|
282
|
+
|
|
283
|
+
<span class="method-name">to_csv</span><span class="method-args">(csv)</span>
|
|
284
|
+
|
|
285
|
+
</a>
|
|
286
|
+
|
|
287
|
+
</div>
|
|
288
|
+
|
|
289
|
+
<div class="method-description">
|
|
290
|
+
|
|
291
|
+
<p>
|
|
292
|
+
Put the abstract representation into an Array. <em>csv</em> is an Array of
|
|
293
|
+
Arrays of Strings. We have an Array with Strings for every cell. The outer
|
|
294
|
+
Array holds the Arrays representing the lines.
|
|
295
|
+
</p>
|
|
296
|
+
|
|
297
|
+
<p><a class="source-toggle" href="#"
|
|
298
|
+
onclick="toggleCode('M000317-source');return false;">[Source]</a></p>
|
|
299
|
+
<div class="method-source-code" id="M000317-source">
|
|
300
|
+
<pre>
|
|
301
|
+
<span class="ruby-comment cmt"># File lib/reports/ReportTableColumn.rb, line 74</span>
|
|
302
|
+
74: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_csv</span>(<span class="ruby-identifier">csv</span>)
|
|
303
|
+
75: <span class="ruby-comment cmt"># For CSV reports we can only include the first header line.</span>
|
|
304
|
+
76: <span class="ruby-ivar">@cell1</span>.<span class="ruby-identifier">to_csv</span>(<span class="ruby-identifier">csv</span>)
|
|
305
|
+
77: <span class="ruby-keyword kw">end</span>
|
|
306
|
+
</pre>
|
|
307
|
+
</div>
|
|
308
|
+
|
|
309
|
+
</div>
|
|
310
|
+
</div>
|
|
311
|
+
|
|
312
|
+
|
|
313
|
+
<div id="method-M000316" class="method-detail">
|
|
314
|
+
<a name="M000316"></a>
|
|
315
|
+
|
|
316
|
+
<div class="method-heading">
|
|
317
|
+
|
|
318
|
+
<a href="#M000316" class="method-signature">
|
|
319
|
+
|
|
320
|
+
<span class="method-name">to_html</span><span class="method-args">(row)</span>
|
|
321
|
+
|
|
322
|
+
</a>
|
|
323
|
+
|
|
324
|
+
</div>
|
|
325
|
+
|
|
326
|
+
<div class="method-description">
|
|
327
|
+
|
|
328
|
+
<p>
|
|
329
|
+
Convert the abstract representation into HTML elements.
|
|
330
|
+
</p>
|
|
331
|
+
|
|
332
|
+
<p><a class="source-toggle" href="#"
|
|
333
|
+
onclick="toggleCode('M000316-source');return false;">[Source]</a></p>
|
|
334
|
+
<div class="method-source-code" id="M000316-source">
|
|
335
|
+
<pre>
|
|
336
|
+
<span class="ruby-comment cmt"># File lib/reports/ReportTableColumn.rb, line 63</span>
|
|
337
|
+
63: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_html</span>(<span class="ruby-identifier">row</span>)
|
|
338
|
+
64: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">row</span> <span class="ruby-operator">==</span> <span class="ruby-value">1</span>
|
|
339
|
+
65: <span class="ruby-ivar">@cell1</span>.<span class="ruby-identifier">to_html</span>
|
|
340
|
+
66: <span class="ruby-keyword kw">else</span>
|
|
341
|
+
67: <span class="ruby-ivar">@cell2</span>.<span class="ruby-identifier">to_html</span>
|
|
342
|
+
68: <span class="ruby-keyword kw">end</span>
|
|
343
|
+
69: <span class="ruby-keyword kw">end</span>
|
|
344
|
+
</pre>
|
|
345
|
+
</div>
|
|
346
|
+
|
|
347
|
+
</div>
|
|
348
|
+
</div>
|
|
349
|
+
|
|
350
|
+
|
|
351
|
+
|
|
352
|
+
</div>
|
|
353
|
+
|
|
354
|
+
|
|
355
|
+
|
|
356
|
+
|
|
357
|
+
</div>
|
|
358
|
+
|
|
359
|
+
<div id="validator-badges">
|
|
360
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
361
|
+
</div>
|
|
362
|
+
|
|
363
|
+
</body>
|
|
364
|
+
</html>
|
|
@@ -0,0 +1,644 @@
|
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN"
|
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
4
|
+
<head>
|
|
5
|
+
<title>Class: TaskJuggler::ReportTableElement [TaskJuggler III API documentation]</title>
|
|
6
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
|
7
|
+
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
8
|
+
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
9
|
+
<script type="text/javascript">
|
|
10
|
+
// <![CDATA[
|
|
11
|
+
|
|
12
|
+
function popupCode( url ) {
|
|
13
|
+
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
|
14
|
+
}
|
|
15
|
+
|
|
16
|
+
function toggleCode( id ) {
|
|
17
|
+
if ( document.getElementById )
|
|
18
|
+
elem = document.getElementById( id );
|
|
19
|
+
else if ( document.all )
|
|
20
|
+
elem = eval( "document.all." + id );
|
|
21
|
+
else
|
|
22
|
+
return false;
|
|
23
|
+
|
|
24
|
+
elemStyle = elem.style;
|
|
25
|
+
|
|
26
|
+
if ( elemStyle.display != "block" ) {
|
|
27
|
+
elemStyle.display = "block"
|
|
28
|
+
} else {
|
|
29
|
+
elemStyle.display = "none"
|
|
30
|
+
}
|
|
31
|
+
|
|
32
|
+
return true;
|
|
33
|
+
}
|
|
34
|
+
|
|
35
|
+
// Make codeblocks hidden by default
|
|
36
|
+
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }<\/style>" )
|
|
37
|
+
|
|
38
|
+
// ]]>
|
|
39
|
+
</script>
|
|
40
|
+
|
|
41
|
+
</head>
|
|
42
|
+
<body>
|
|
43
|
+
|
|
44
|
+
|
|
45
|
+
<div id="classHeader">
|
|
46
|
+
<table class="header-table">
|
|
47
|
+
<tr class="top-aligned-row">
|
|
48
|
+
<td><strong>Class</strong></td>
|
|
49
|
+
<td class="class-name-in-header">TaskJuggler::ReportTableElement</td>
|
|
50
|
+
</tr>
|
|
51
|
+
<tr class="top-aligned-row">
|
|
52
|
+
<td><strong>In:</strong></td>
|
|
53
|
+
<td>
|
|
54
|
+
|
|
55
|
+
|
|
56
|
+
<a href="../../files/lib/reports/ReportTableElement_rb.html">
|
|
57
|
+
|
|
58
|
+
lib/reports/ReportTableElement.rb
|
|
59
|
+
|
|
60
|
+
</a>
|
|
61
|
+
|
|
62
|
+
|
|
63
|
+
<br />
|
|
64
|
+
|
|
65
|
+
</td>
|
|
66
|
+
</tr>
|
|
67
|
+
|
|
68
|
+
|
|
69
|
+
<tr class="top-aligned-row">
|
|
70
|
+
<td><strong>Parent:</strong></td>
|
|
71
|
+
<td>
|
|
72
|
+
|
|
73
|
+
<a href="ReportElement.html">
|
|
74
|
+
|
|
75
|
+
TaskJuggler::ReportElement
|
|
76
|
+
|
|
77
|
+
</a>
|
|
78
|
+
|
|
79
|
+
</td>
|
|
80
|
+
</tr>
|
|
81
|
+
|
|
82
|
+
</table>
|
|
83
|
+
</div>
|
|
84
|
+
<!-- banner header -->
|
|
85
|
+
|
|
86
|
+
<div id="bodyContent">
|
|
87
|
+
|
|
88
|
+
<div id="contextContent">
|
|
89
|
+
|
|
90
|
+
<div id="description">
|
|
91
|
+
<p>
|
|
92
|
+
This is base class for all types of tabular report elements. All tabular
|
|
93
|
+
report elements are converted to an abstract (output independent)
|
|
94
|
+
intermediate form first, before the are turned into the requested output
|
|
95
|
+
format.
|
|
96
|
+
</p>
|
|
97
|
+
|
|
98
|
+
</div>
|
|
99
|
+
|
|
100
|
+
</div>
|
|
101
|
+
|
|
102
|
+
|
|
103
|
+
<div id="method-list">
|
|
104
|
+
<h3 class="section-bar">Methods</h3>
|
|
105
|
+
|
|
106
|
+
<div class="name-list">
|
|
107
|
+
|
|
108
|
+
<a href="#M000364">generateHeaderCell</a>
|
|
109
|
+
|
|
110
|
+
<a href="#M000361">generateIntermediateFormat</a>
|
|
111
|
+
|
|
112
|
+
<a href="#M000366">generateResourceList</a>
|
|
113
|
+
|
|
114
|
+
<a href="#M000365">generateTaskList</a>
|
|
115
|
+
|
|
116
|
+
<a href="#M000360">new</a>
|
|
117
|
+
|
|
118
|
+
<a href="#M000363">to_csv</a>
|
|
119
|
+
|
|
120
|
+
<a href="#M000362">to_html</a>
|
|
121
|
+
|
|
122
|
+
</div>
|
|
123
|
+
</div>
|
|
124
|
+
|
|
125
|
+
</div>
|
|
126
|
+
|
|
127
|
+
<!-- if includes -->
|
|
128
|
+
|
|
129
|
+
<div id="section">
|
|
130
|
+
|
|
131
|
+
|
|
132
|
+
|
|
133
|
+
<div id="attribute-list">
|
|
134
|
+
<h3 class="section-bar">Attributes</h3>
|
|
135
|
+
|
|
136
|
+
<div class="name-list">
|
|
137
|
+
<table>
|
|
138
|
+
|
|
139
|
+
<tr class="top-aligned-row context-row">
|
|
140
|
+
<td class="context-item-name">legend</td>
|
|
141
|
+
|
|
142
|
+
<td class="context-item-value"> [R] </td>
|
|
143
|
+
|
|
144
|
+
<td class="context-item-desc"></td>
|
|
145
|
+
</tr>
|
|
146
|
+
|
|
147
|
+
</table>
|
|
148
|
+
</div>
|
|
149
|
+
</div>
|
|
150
|
+
|
|
151
|
+
|
|
152
|
+
<!-- if method_list -->
|
|
153
|
+
|
|
154
|
+
<div id="methods">
|
|
155
|
+
|
|
156
|
+
<h3 class="section-bar">Public Class methods</h3>
|
|
157
|
+
|
|
158
|
+
|
|
159
|
+
<div id="method-M000360" class="method-detail">
|
|
160
|
+
<a name="M000360"></a>
|
|
161
|
+
|
|
162
|
+
<div class="method-heading">
|
|
163
|
+
|
|
164
|
+
<a href="#M000360" class="method-signature">
|
|
165
|
+
|
|
166
|
+
<span class="method-name">new</span><span class="method-args">(report)</span>
|
|
167
|
+
|
|
168
|
+
</a>
|
|
169
|
+
|
|
170
|
+
</div>
|
|
171
|
+
|
|
172
|
+
<div class="method-description">
|
|
173
|
+
|
|
174
|
+
<p>
|
|
175
|
+
Generate a new <a href="ReportTableElement.html">ReportTableElement</a>
|
|
176
|
+
object.
|
|
177
|
+
</p>
|
|
178
|
+
|
|
179
|
+
<p><a class="source-toggle" href="#"
|
|
180
|
+
onclick="toggleCode('M000360-source');return false;">[Source]</a></p>
|
|
181
|
+
<div class="method-source-code" id="M000360-source">
|
|
182
|
+
<pre>
|
|
183
|
+
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 29</span>
|
|
184
|
+
29: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">report</span>)
|
|
185
|
+
30: <span class="ruby-keyword kw">super</span>
|
|
186
|
+
31:
|
|
187
|
+
32: <span class="ruby-comment cmt"># Reference to the intermediate representation.</span>
|
|
188
|
+
33: <span class="ruby-ivar">@table</span> = <span class="ruby-keyword kw">nil</span>
|
|
189
|
+
34:
|
|
190
|
+
35: <span class="ruby-ivar">@legend</span> = <span class="ruby-constant">ReportTableLegend</span>.<span class="ruby-identifier">new</span>
|
|
191
|
+
36: <span class="ruby-keyword kw">end</span>
|
|
192
|
+
</pre>
|
|
193
|
+
</div>
|
|
194
|
+
|
|
195
|
+
</div>
|
|
196
|
+
</div>
|
|
197
|
+
|
|
198
|
+
|
|
199
|
+
<h3 class="section-bar">Public Instance methods</h3>
|
|
200
|
+
|
|
201
|
+
|
|
202
|
+
<div id="method-M000361" class="method-detail">
|
|
203
|
+
<a name="M000361"></a>
|
|
204
|
+
|
|
205
|
+
<div class="method-heading">
|
|
206
|
+
|
|
207
|
+
<a href="#M000361" class="method-signature">
|
|
208
|
+
|
|
209
|
+
<span class="method-name">generateIntermediateFormat</span><span class="method-args">()</span>
|
|
210
|
+
|
|
211
|
+
</a>
|
|
212
|
+
|
|
213
|
+
</div>
|
|
214
|
+
|
|
215
|
+
<div class="method-description">
|
|
216
|
+
|
|
217
|
+
<p>
|
|
218
|
+
This is an abstract member that all sub classes must re-implement. It may
|
|
219
|
+
or may not do something though.
|
|
220
|
+
</p>
|
|
221
|
+
|
|
222
|
+
<p><a class="source-toggle" href="#"
|
|
223
|
+
onclick="toggleCode('M000361-source');return false;">[Source]</a></p>
|
|
224
|
+
<div class="method-source-code" id="M000361-source">
|
|
225
|
+
<pre>
|
|
226
|
+
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 40</span>
|
|
227
|
+
40: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateIntermediateFormat</span>
|
|
228
|
+
41: <span class="ruby-identifier">raise</span> <span class="ruby-value str">'This function must be overriden by derived classes.'</span>
|
|
229
|
+
42: <span class="ruby-keyword kw">end</span>
|
|
230
|
+
</pre>
|
|
231
|
+
</div>
|
|
232
|
+
|
|
233
|
+
</div>
|
|
234
|
+
</div>
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
<div id="method-M000363" class="method-detail">
|
|
238
|
+
<a name="M000363"></a>
|
|
239
|
+
|
|
240
|
+
<div class="method-heading">
|
|
241
|
+
|
|
242
|
+
<a href="#M000363" class="method-signature">
|
|
243
|
+
|
|
244
|
+
<span class="method-name">to_csv</span><span class="method-args">()</span>
|
|
245
|
+
|
|
246
|
+
</a>
|
|
247
|
+
|
|
248
|
+
</div>
|
|
249
|
+
|
|
250
|
+
<div class="method-description">
|
|
251
|
+
|
|
252
|
+
<p>
|
|
253
|
+
Convert the <a href="ReportElement.html">ReportElement</a> into an Array of
|
|
254
|
+
Arrays. It has one Array for each line. The nested Arrays have one <a
|
|
255
|
+
href="../String.html">String</a> for each column.
|
|
256
|
+
</p>
|
|
257
|
+
|
|
258
|
+
<p><a class="source-toggle" href="#"
|
|
259
|
+
onclick="toggleCode('M000363-source');return false;">[Source]</a></p>
|
|
260
|
+
<div class="method-source-code" id="M000363-source">
|
|
261
|
+
<pre>
|
|
262
|
+
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 123</span>
|
|
263
|
+
123: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_csv</span>
|
|
264
|
+
124: <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">to_csv</span>
|
|
265
|
+
125: <span class="ruby-keyword kw">end</span>
|
|
266
|
+
</pre>
|
|
267
|
+
</div>
|
|
268
|
+
|
|
269
|
+
</div>
|
|
270
|
+
</div>
|
|
271
|
+
|
|
272
|
+
|
|
273
|
+
<div id="method-M000362" class="method-detail">
|
|
274
|
+
<a name="M000362"></a>
|
|
275
|
+
|
|
276
|
+
<div class="method-heading">
|
|
277
|
+
|
|
278
|
+
<a href="#M000362" class="method-signature">
|
|
279
|
+
|
|
280
|
+
<span class="method-name">to_html</span><span class="method-args">()</span>
|
|
281
|
+
|
|
282
|
+
</a>
|
|
283
|
+
|
|
284
|
+
</div>
|
|
285
|
+
|
|
286
|
+
<div class="method-description">
|
|
287
|
+
|
|
288
|
+
<p>
|
|
289
|
+
Turn the <a href="ReportTableElement.html">ReportTableElement</a> into an
|
|
290
|
+
equivalent HTML element tree.
|
|
291
|
+
</p>
|
|
292
|
+
|
|
293
|
+
<p><a class="source-toggle" href="#"
|
|
294
|
+
onclick="toggleCode('M000362-source');return false;">[Source]</a></p>
|
|
295
|
+
<div class="method-source-code" id="M000362-source">
|
|
296
|
+
<pre>
|
|
297
|
+
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 45</span>
|
|
298
|
+
45: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">to_html</span>
|
|
299
|
+
46: <span class="ruby-identifier">html</span> = []
|
|
300
|
+
47:
|
|
301
|
+
48: <span class="ruby-comment cmt"># Make sure we have some margins around the report.</span>
|
|
302
|
+
49: <span class="ruby-identifier">html</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">frame</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'div'</span>,
|
|
303
|
+
50: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'margin: 35px 5% 25px 5%; '</span>))
|
|
304
|
+
51:
|
|
305
|
+
52: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@prolog</span>
|
|
306
|
+
53: <span class="ruby-ivar">@prolog</span>.<span class="ruby-identifier">sectionNumbers</span> = <span class="ruby-keyword kw">false</span>
|
|
307
|
+
54: <span class="ruby-identifier">frame</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@prolog</span>.<span class="ruby-identifier">to_html</span>
|
|
308
|
+
55: <span class="ruby-keyword kw">end</span>
|
|
309
|
+
56:
|
|
310
|
+
57: <span class="ruby-identifier">frame</span> <span class="ruby-operator"><<</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>, <span class="ruby-value str">'summary'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'Report Table'</span>,
|
|
311
|
+
58: <span class="ruby-value str">'cellspacing'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'2'</span>, <span class="ruby-value str">'border'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'0'</span>,
|
|
312
|
+
59: <span class="ruby-value str">'cellpadding'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'0'</span>, <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
|
|
313
|
+
60: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tabback'</span>))
|
|
314
|
+
61:
|
|
315
|
+
62: <span class="ruby-comment cmt"># The headline is put in a sub-table to appear bigger.</span>
|
|
316
|
+
63: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@headline</span>
|
|
317
|
+
64: <span class="ruby-identifier">table</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">thead</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'thead'</span>))
|
|
318
|
+
65: <span class="ruby-identifier">thead</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
|
|
319
|
+
66: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</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>))
|
|
320
|
+
67: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">table1</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'table'</span>, <span class="ruby-value str">'summary'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'headline'</span>,
|
|
321
|
+
68: <span class="ruby-value str">'cellspacing'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'1'</span>, <span class="ruby-value str">'border'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'0'</span>,
|
|
322
|
+
69: <span class="ruby-value str">'cellpadding'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'5'</span>,
|
|
323
|
+
70: <span class="ruby-value str">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>, <span class="ruby-value str">'width'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'100%'</span>))
|
|
324
|
+
71: <span class="ruby-identifier">table1</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr1</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
|
|
325
|
+
72: <span class="ruby-identifier">tr1</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">td1</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">'align'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'center'</span>,
|
|
326
|
+
73: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'font-size:16px; '</span> <span class="ruby-operator">+</span>
|
|
327
|
+
74: <span class="ruby-value str">'font-weight:bold'</span>,
|
|
328
|
+
75: <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tabfront'</span>))
|
|
329
|
+
76: <span class="ruby-identifier">td1</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@headline</span>, <span class="ruby-value str">'p'</span>)
|
|
330
|
+
77: <span class="ruby-keyword kw">end</span>
|
|
331
|
+
78:
|
|
332
|
+
79: <span class="ruby-comment cmt"># Now generate the actual table with the data.</span>
|
|
333
|
+
80: <span class="ruby-identifier">table</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tbody</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tbody'</span>))
|
|
334
|
+
81: <span class="ruby-identifier">tbody</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
|
|
335
|
+
82: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</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>))
|
|
336
|
+
83: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">to_html</span>
|
|
337
|
+
84:
|
|
338
|
+
85: <span class="ruby-comment cmt"># Embedd the caption as RichText into the table footer.</span>
|
|
339
|
+
86: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@caption</span>
|
|
340
|
+
87: <span class="ruby-identifier">tbody</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>))
|
|
341
|
+
88: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</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>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tabback'</span>))
|
|
342
|
+
89: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">div</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'div'</span>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'caption'</span>,
|
|
343
|
+
90: <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'margin:1px'</span>))
|
|
344
|
+
91: <span class="ruby-ivar">@caption</span>.<span class="ruby-identifier">sectionNumbers</span> = <span class="ruby-keyword kw">false</span>
|
|
345
|
+
92: <span class="ruby-identifier">div</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@caption</span>.<span class="ruby-identifier">to_html</span>
|
|
346
|
+
93: <span class="ruby-keyword kw">end</span>
|
|
347
|
+
94:
|
|
348
|
+
95: <span class="ruby-comment cmt"># A sub-table with the legend.</span>
|
|
349
|
+
96: <span class="ruby-identifier">tbody</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'font-size:10px;'</span>))
|
|
350
|
+
97: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</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>, <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span>
|
|
351
|
+
98: <span class="ruby-value str">'padding-left:1px; padding-right:1px;'</span>))
|
|
352
|
+
99: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@legend</span>.<span class="ruby-identifier">to_html</span>
|
|
353
|
+
100:
|
|
354
|
+
101: <span class="ruby-comment cmt"># The footer with some administrative information.</span>
|
|
355
|
+
102: <span class="ruby-identifier">tbody</span> <span class="ruby-operator"><<</span> (<span class="ruby-identifier">tr</span> = <span class="ruby-constant">XMLElement</span>.<span class="ruby-identifier">new</span>(<span class="ruby-value str">'tr'</span>, <span class="ruby-value str">'style'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'font-size:9px'</span>))
|
|
356
|
+
103: <span class="ruby-identifier">tr</span> <span class="ruby-operator"><<</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>, <span class="ruby-value str">'class'</span> =<span class="ruby-operator">></span> <span class="ruby-value str">'tabfooter'</span>))
|
|
357
|
+
104: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@project</span>[<span class="ruby-value str">'copyright'</span>] <span class="ruby-operator">+</span> <span class="ruby-value str">" - "</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@project</span>[<span class="ruby-value str">'copyright'</span>]
|
|
358
|
+
105: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"Project: #{@project['name']} "</span> <span class="ruby-operator">+</span>
|
|
359
|
+
106: <span class="ruby-node">"Version: #{@project['version']} - "</span> <span class="ruby-operator">+</span>
|
|
360
|
+
107: <span class="ruby-node">"Created on #{TjTime.now.to_s("%Y-%m-%d %H:%M:%S")} "</span> <span class="ruby-operator">+</span>
|
|
361
|
+
108: <span class="ruby-value str">"with "</span>)
|
|
362
|
+
109: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLNamedText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">"#{AppConfig.packageName}"</span>, <span class="ruby-value str">'a'</span>,
|
|
363
|
+
110: <span class="ruby-value str">'href'</span> =<span class="ruby-operator">></span> <span class="ruby-node">"#{AppConfig.contact}"</span>)
|
|
364
|
+
111: <span class="ruby-identifier">td</span> <span class="ruby-operator"><<</span> <span class="ruby-constant">XMLText</span>.<span class="ruby-identifier">new</span>(<span class="ruby-node">" v#{AppConfig.version}"</span>)
|
|
365
|
+
112:
|
|
366
|
+
113: <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@epilog</span>
|
|
367
|
+
114: <span class="ruby-ivar">@epilog</span>.<span class="ruby-identifier">sectionNumbers</span> = <span class="ruby-keyword kw">false</span>
|
|
368
|
+
115: <span class="ruby-identifier">frame</span> <span class="ruby-operator"><<</span> <span class="ruby-ivar">@epilog</span>.<span class="ruby-identifier">to_html</span>
|
|
369
|
+
116: <span class="ruby-keyword kw">end</span>
|
|
370
|
+
117:
|
|
371
|
+
118: <span class="ruby-identifier">html</span>
|
|
372
|
+
119: <span class="ruby-keyword kw">end</span>
|
|
373
|
+
</pre>
|
|
374
|
+
</div>
|
|
375
|
+
|
|
376
|
+
</div>
|
|
377
|
+
</div>
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
<h3 class="section-bar">Protected Instance methods</h3>
|
|
381
|
+
|
|
382
|
+
|
|
383
|
+
<div id="method-M000364" class="method-detail">
|
|
384
|
+
<a name="M000364"></a>
|
|
385
|
+
|
|
386
|
+
<div class="method-heading">
|
|
387
|
+
|
|
388
|
+
<a href="#M000364" class="method-signature">
|
|
389
|
+
|
|
390
|
+
<span class="method-name">generateHeaderCell</span><span class="method-args">(columnDef)</span>
|
|
391
|
+
|
|
392
|
+
</a>
|
|
393
|
+
|
|
394
|
+
</div>
|
|
395
|
+
|
|
396
|
+
<div class="method-description">
|
|
397
|
+
|
|
398
|
+
<p>
|
|
399
|
+
Generates cells for the table header. <em>columnDef</em> is the <a
|
|
400
|
+
href="TableColumnDefinition.html">TableColumnDefinition</a> object that
|
|
401
|
+
describes the column. Based on the id of the column different actions need
|
|
402
|
+
to be taken to generate the header text.
|
|
403
|
+
</p>
|
|
404
|
+
|
|
405
|
+
<p><a class="source-toggle" href="#"
|
|
406
|
+
onclick="toggleCode('M000364-source');return false;">[Source]</a></p>
|
|
407
|
+
<div class="method-source-code" id="M000364-source">
|
|
408
|
+
<pre>
|
|
409
|
+
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 132</span>
|
|
410
|
+
132: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateHeaderCell</span>(<span class="ruby-identifier">columnDef</span>)
|
|
411
|
+
133: <span class="ruby-keyword kw">case</span> <span class="ruby-identifier">columnDef</span>.<span class="ruby-identifier">id</span>
|
|
412
|
+
134: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'chart'</span>
|
|
413
|
+
135: <span class="ruby-comment cmt"># For the 'chart' column we generate a GanttChart object. The sizes are</span>
|
|
414
|
+
136: <span class="ruby-comment cmt"># set so that the lines of the Gantt chart line up with the lines of the</span>
|
|
415
|
+
137: <span class="ruby-comment cmt"># table.</span>
|
|
416
|
+
138: <span class="ruby-identifier">gantt</span> = <span class="ruby-constant">GanttChart</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@now</span>, <span class="ruby-ivar">@weekStartsMonday</span>, <span class="ruby-keyword kw">self</span>)
|
|
417
|
+
139: <span class="ruby-identifier">gantt</span>.<span class="ruby-identifier">generateByScale</span>(<span class="ruby-ivar">@start</span>, <span class="ruby-ivar">@end</span>, <span class="ruby-identifier">columnDef</span>.<span class="ruby-identifier">scale</span>)
|
|
418
|
+
140: <span class="ruby-comment cmt"># The header consists of 2 lines separated by a 1 pixel boundary.</span>
|
|
419
|
+
141: <span class="ruby-identifier">gantt</span>.<span class="ruby-identifier">header</span>.<span class="ruby-identifier">height</span> = <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">headerLineHeight</span> <span class="ruby-operator">*</span> <span class="ruby-value">2</span> <span class="ruby-operator">+</span> <span class="ruby-value">1</span>
|
|
420
|
+
142: <span class="ruby-comment cmt"># The maximum width of the chart. In case it needs more space, a</span>
|
|
421
|
+
143: <span class="ruby-comment cmt"># scrollbar is shown or the chart gets truncated depending on the output</span>
|
|
422
|
+
144: <span class="ruby-comment cmt"># format.</span>
|
|
423
|
+
145: <span class="ruby-identifier">gantt</span>.<span class="ruby-identifier">viewWidth</span> = <span class="ruby-identifier">columnDef</span>.<span class="ruby-identifier">width</span>
|
|
424
|
+
146: <span class="ruby-identifier">column</span> = <span class="ruby-constant">ReportTableColumn</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@table</span>, <span class="ruby-identifier">columnDef</span>, <span class="ruby-value str">''</span>)
|
|
425
|
+
147: <span class="ruby-identifier">column</span>.<span class="ruby-identifier">cell1</span>.<span class="ruby-identifier">special</span> = <span class="ruby-identifier">gantt</span>
|
|
426
|
+
148: <span class="ruby-identifier">column</span>.<span class="ruby-identifier">cell2</span>.<span class="ruby-identifier">hidden</span> = <span class="ruby-keyword kw">true</span>
|
|
427
|
+
149: <span class="ruby-identifier">column</span>.<span class="ruby-identifier">scrollbar</span> = <span class="ruby-identifier">gantt</span>.<span class="ruby-identifier">hasScrollbar?</span>
|
|
428
|
+
150: <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">equiLines</span> = <span class="ruby-keyword kw">true</span>
|
|
429
|
+
151: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'hourly'</span>
|
|
430
|
+
152: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">midnight</span>, <span class="ruby-identifier">:sameTimeNextHour</span>,
|
|
431
|
+
153: <span class="ruby-identifier">:weekdayAndDate</span>, <span class="ruby-identifier">:hour</span>)
|
|
432
|
+
154: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'daily'</span>
|
|
433
|
+
155: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">midnight</span>, <span class="ruby-identifier">:sameTimeNextDay</span>,
|
|
434
|
+
156: <span class="ruby-identifier">:shortMonthName</span>, <span class="ruby-identifier">:day</span>)
|
|
435
|
+
157: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'weekly'</span>
|
|
436
|
+
158: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">beginOfWeek</span>(<span class="ruby-ivar">@weekStartsMonday</span>),
|
|
437
|
+
159: <span class="ruby-identifier">:sameTimeNextWeek</span>, <span class="ruby-identifier">:shortMonthName</span>, <span class="ruby-identifier">:day</span>)
|
|
438
|
+
160: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'monthly'</span>
|
|
439
|
+
161: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">beginOfMonth</span>, <span class="ruby-identifier">:sameTimeNextMonth</span>,
|
|
440
|
+
162: <span class="ruby-identifier">:year</span>, <span class="ruby-identifier">:shortMonthName</span>)
|
|
441
|
+
163: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'quarterly'</span>
|
|
442
|
+
164: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">beginOfQuarter</span>,
|
|
443
|
+
165: <span class="ruby-identifier">:sameTimeNextQuarter</span>, <span class="ruby-identifier">:year</span>, <span class="ruby-identifier">:quarterName</span>)
|
|
444
|
+
166: <span class="ruby-keyword kw">when</span> <span class="ruby-value str">'yearly'</span>
|
|
445
|
+
167: <span class="ruby-identifier">genCalChartHeader</span>(<span class="ruby-identifier">columnDef</span>, <span class="ruby-ivar">@start</span>.<span class="ruby-identifier">beginOfYear</span>, <span class="ruby-identifier">:sameTimeNextYear</span>,
|
|
446
|
+
168: <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">:year</span>)
|
|
447
|
+
169: <span class="ruby-keyword kw">else</span>
|
|
448
|
+
170: <span class="ruby-comment cmt"># This is the most common case. It does not need any special treatment.</span>
|
|
449
|
+
171: <span class="ruby-comment cmt"># We just set the pre-defined or user-defined column title in the first</span>
|
|
450
|
+
172: <span class="ruby-comment cmt"># row of the header. The 2nd row is not visible.</span>
|
|
451
|
+
173: <span class="ruby-identifier">column</span> = <span class="ruby-constant">ReportTableColumn</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@table</span>, <span class="ruby-identifier">columnDef</span>, <span class="ruby-identifier">columnDef</span>.<span class="ruby-identifier">title</span>)
|
|
452
|
+
174: <span class="ruby-identifier">column</span>.<span class="ruby-identifier">cell1</span>.<span class="ruby-identifier">rows</span> = <span class="ruby-value">2</span>
|
|
453
|
+
175: <span class="ruby-identifier">column</span>.<span class="ruby-identifier">cell2</span>.<span class="ruby-identifier">hidden</span> = <span class="ruby-keyword kw">true</span>
|
|
454
|
+
176: <span class="ruby-keyword kw">end</span>
|
|
455
|
+
177: <span class="ruby-keyword kw">end</span>
|
|
456
|
+
</pre>
|
|
457
|
+
</div>
|
|
458
|
+
|
|
459
|
+
</div>
|
|
460
|
+
</div>
|
|
461
|
+
|
|
462
|
+
|
|
463
|
+
<div id="method-M000366" class="method-detail">
|
|
464
|
+
<a name="M000366"></a>
|
|
465
|
+
|
|
466
|
+
<div class="method-heading">
|
|
467
|
+
|
|
468
|
+
<a href="#M000366" class="method-signature">
|
|
469
|
+
|
|
470
|
+
<span class="method-name">generateResourceList</span><span class="method-args">(resourceList, taskList, scopeLine)</span>
|
|
471
|
+
|
|
472
|
+
</a>
|
|
473
|
+
|
|
474
|
+
</div>
|
|
475
|
+
|
|
476
|
+
<div class="method-description">
|
|
477
|
+
|
|
478
|
+
<p>
|
|
479
|
+
Generate a <a href="ReportTableLine.html">ReportTableLine</a> for each of
|
|
480
|
+
the resources in <em>resourceList</em>. In case <em>taskList</em> is not
|
|
481
|
+
nil, it also generates the nested task lines for each task that the
|
|
482
|
+
resource is assigned to. If <em>scopeLine</em> is defined, the generated
|
|
483
|
+
resource lines will be within the scope this task line.
|
|
484
|
+
</p>
|
|
485
|
+
|
|
486
|
+
<p><a class="source-toggle" href="#"
|
|
487
|
+
onclick="toggleCode('M000366-source');return false;">[Source]</a></p>
|
|
488
|
+
<div class="method-source-code" id="M000366-source">
|
|
489
|
+
<pre>
|
|
490
|
+
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 238</span>
|
|
491
|
+
238: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateResourceList</span>(<span class="ruby-identifier">resourceList</span>, <span class="ruby-identifier">taskList</span>, <span class="ruby-identifier">scopeLine</span>)
|
|
492
|
+
239: <span class="ruby-identifier">queryAttrs</span> = { <span class="ruby-value str">'scopeProperty'</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">scopeLine</span> <span class="ruby-value">? </span><span class="ruby-identifier">scopeLine</span>.<span class="ruby-identifier">property</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>,
|
|
493
|
+
240: <span class="ruby-value str">'loadUnit'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@loadUnit</span>,
|
|
494
|
+
241: <span class="ruby-value str">'numberFormat'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@numberFormat</span>,
|
|
495
|
+
242: <span class="ruby-value str">'currencyFormat'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@currencyFormat</span>,
|
|
496
|
+
243: <span class="ruby-value str">'start'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@start</span>, <span class="ruby-value str">'end'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@end</span>,
|
|
497
|
+
244: <span class="ruby-value str">'costAccount'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@costAccount</span>,
|
|
498
|
+
245: <span class="ruby-value str">'revenueAccount'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@revenueAccount</span> }
|
|
499
|
+
246: <span class="ruby-identifier">resourceList</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">Query</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">queryAttrs</span>)
|
|
500
|
+
247: <span class="ruby-identifier">resourceList</span>.<span class="ruby-identifier">sort!</span>
|
|
501
|
+
248:
|
|
502
|
+
249: <span class="ruby-comment cmt"># The primary line counter. Is not used for enclosed lines.</span>
|
|
503
|
+
250: <span class="ruby-identifier">no</span> = <span class="ruby-value">0</span>
|
|
504
|
+
251: <span class="ruby-comment cmt"># The scope line counter. It's reset for each new scope.</span>
|
|
505
|
+
252: <span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">scopeLine</span> <span class="ruby-value">? </span><span class="ruby-identifier">scopeLine</span>.<span class="ruby-identifier">lineNo</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
|
|
506
|
+
253: <span class="ruby-comment cmt"># Init the variable to get a larger scope</span>
|
|
507
|
+
254: <span class="ruby-identifier">line</span> = <span class="ruby-keyword kw">nil</span>
|
|
508
|
+
255: <span class="ruby-identifier">resourceList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">resource</span><span class="ruby-operator">|</span>
|
|
509
|
+
256: <span class="ruby-identifier">no</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
|
510
|
+
257: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">lineNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">10</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
511
|
+
258: <span class="ruby-identifier">lineNo</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
|
512
|
+
259: <span class="ruby-ivar">@scenarios</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
|
|
513
|
+
260: <span class="ruby-comment cmt"># Generate line for each resource.</span>
|
|
514
|
+
261: <span class="ruby-identifier">line</span> = <span class="ruby-constant">ReportTableLine</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@table</span>, <span class="ruby-identifier">resource</span>, <span class="ruby-identifier">scopeLine</span>)
|
|
515
|
+
262:
|
|
516
|
+
263: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">no</span> = <span class="ruby-identifier">no</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">scopeLine</span>
|
|
517
|
+
264: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">lineNo</span>
|
|
518
|
+
265: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">subLineNo</span> = <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">lines</span>
|
|
519
|
+
266: <span class="ruby-identifier">setIndent</span>(<span class="ruby-identifier">line</span>, <span class="ruby-ivar">@resourceRoot</span>, <span class="ruby-identifier">resourceList</span>.<span class="ruby-identifier">treeMode?</span>)
|
|
520
|
+
267:
|
|
521
|
+
268: <span class="ruby-comment cmt"># Generate a cell for each column in this line.</span>
|
|
522
|
+
269: <span class="ruby-ivar">@columns</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">column</span><span class="ruby-operator">|</span>
|
|
523
|
+
270: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">generateTableCell</span>(<span class="ruby-identifier">line</span>, <span class="ruby-identifier">resource</span>, <span class="ruby-identifier">column</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
524
|
+
271: <span class="ruby-keyword kw">end</span>
|
|
525
|
+
272: <span class="ruby-keyword kw">end</span>
|
|
526
|
+
273:
|
|
527
|
+
274: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">taskList</span>
|
|
528
|
+
275: <span class="ruby-comment cmt"># If we have a taskList we generate nested lines for each of the</span>
|
|
529
|
+
276: <span class="ruby-comment cmt"># tasks that the resource is assigned to and pass the user-defined</span>
|
|
530
|
+
277: <span class="ruby-comment cmt"># filter.</span>
|
|
531
|
+
278: <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">setSorting</span>(<span class="ruby-ivar">@sortTasks</span>)
|
|
532
|
+
279: <span class="ruby-identifier">assignedTaskList</span> = <span class="ruby-identifier">filterTaskList</span>(<span class="ruby-identifier">taskList</span>, <span class="ruby-identifier">resource</span>,
|
|
533
|
+
280: <span class="ruby-ivar">@hideTask</span>, <span class="ruby-ivar">@rollupTask</span>)
|
|
534
|
+
281: <span class="ruby-identifier">assignedTaskList</span>.<span class="ruby-identifier">sort!</span>
|
|
535
|
+
282: <span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">generateTaskList</span>(<span class="ruby-identifier">assignedTaskList</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">line</span>)
|
|
536
|
+
283: <span class="ruby-keyword kw">end</span>
|
|
537
|
+
284: <span class="ruby-keyword kw">end</span>
|
|
538
|
+
285: <span class="ruby-identifier">lineNo</span>
|
|
539
|
+
286: <span class="ruby-keyword kw">end</span>
|
|
540
|
+
</pre>
|
|
541
|
+
</div>
|
|
542
|
+
|
|
543
|
+
</div>
|
|
544
|
+
</div>
|
|
545
|
+
|
|
546
|
+
|
|
547
|
+
<div id="method-M000365" class="method-detail">
|
|
548
|
+
<a name="M000365"></a>
|
|
549
|
+
|
|
550
|
+
<div class="method-heading">
|
|
551
|
+
|
|
552
|
+
<a href="#M000365" class="method-signature">
|
|
553
|
+
|
|
554
|
+
<span class="method-name">generateTaskList</span><span class="method-args">(taskList, resourceList, scopeLine)</span>
|
|
555
|
+
|
|
556
|
+
</a>
|
|
557
|
+
|
|
558
|
+
</div>
|
|
559
|
+
|
|
560
|
+
<div class="method-description">
|
|
561
|
+
|
|
562
|
+
<p>
|
|
563
|
+
Generate a <a href="ReportTableLine.html">ReportTableLine</a> for each of
|
|
564
|
+
the tasks in <em>taskList</em>. In case <em>resourceList</em> is not nil,
|
|
565
|
+
it also generates the nested resource lines for each resource that is
|
|
566
|
+
assigned to the particular task. If <em>scopeLine</em> is defined, the
|
|
567
|
+
generated task lines will be within the scope this resource line.
|
|
568
|
+
</p>
|
|
569
|
+
|
|
570
|
+
<p><a class="source-toggle" href="#"
|
|
571
|
+
onclick="toggleCode('M000365-source');return false;">[Source]</a></p>
|
|
572
|
+
<div class="method-source-code" id="M000365-source">
|
|
573
|
+
<pre>
|
|
574
|
+
<span class="ruby-comment cmt"># File lib/reports/ReportTableElement.rb, line 184</span>
|
|
575
|
+
184: <span class="ruby-keyword kw">def</span> <span class="ruby-identifier">generateTaskList</span>(<span class="ruby-identifier">taskList</span>, <span class="ruby-identifier">resourceList</span>, <span class="ruby-identifier">scopeLine</span>)
|
|
576
|
+
185: <span class="ruby-identifier">queryAttrs</span> = { <span class="ruby-value str">'scopeProperty'</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">scopeLine</span> <span class="ruby-value">? </span><span class="ruby-identifier">scopeLine</span>.<span class="ruby-identifier">property</span> <span class="ruby-operator">:</span> <span class="ruby-keyword kw">nil</span>,
|
|
577
|
+
186: <span class="ruby-value str">'loadUnit'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@loadUnit</span>,
|
|
578
|
+
187: <span class="ruby-value str">'numberFormat'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@numberFormat</span>,
|
|
579
|
+
188: <span class="ruby-value str">'currencyFormat'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@currencyFormat</span>,
|
|
580
|
+
189: <span class="ruby-value str">'start'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@start</span>, <span class="ruby-value str">'end'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@end</span>,
|
|
581
|
+
190: <span class="ruby-value str">'costAccount'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@costAccount</span>,
|
|
582
|
+
191: <span class="ruby-value str">'revenueAccount'</span> =<span class="ruby-operator">></span> <span class="ruby-ivar">@revenueAccount</span> }
|
|
583
|
+
192: <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">query</span> = <span class="ruby-constant">Query</span>.<span class="ruby-identifier">new</span>(<span class="ruby-identifier">queryAttrs</span>)
|
|
584
|
+
193: <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">sort!</span>
|
|
585
|
+
194:
|
|
586
|
+
195: <span class="ruby-comment cmt"># The primary line counter. Is not used for enclosed lines.</span>
|
|
587
|
+
196: <span class="ruby-identifier">no</span> = <span class="ruby-value">0</span>
|
|
588
|
+
197: <span class="ruby-comment cmt"># The scope line counter. It's reset for each new scope.</span>
|
|
589
|
+
198: <span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">scopeLine</span> <span class="ruby-value">? </span><span class="ruby-identifier">scopeLine</span>.<span class="ruby-identifier">lineNo</span> <span class="ruby-operator">:</span> <span class="ruby-value">0</span>
|
|
590
|
+
199: <span class="ruby-comment cmt"># Init the variable to get a larger scope</span>
|
|
591
|
+
200: <span class="ruby-identifier">line</span> = <span class="ruby-keyword kw">nil</span>
|
|
592
|
+
201: <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">task</span><span class="ruby-operator">|</span>
|
|
593
|
+
202: <span class="ruby-identifier">no</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
|
594
|
+
203: <span class="ruby-constant">Log</span>.<span class="ruby-identifier">activity</span> <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">lineNo</span> <span class="ruby-operator">%</span> <span class="ruby-value">10</span> <span class="ruby-operator">==</span> <span class="ruby-value">0</span>
|
|
595
|
+
204: <span class="ruby-identifier">lineNo</span> <span class="ruby-operator">+=</span> <span class="ruby-value">1</span>
|
|
596
|
+
205: <span class="ruby-ivar">@scenarios</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">scenarioIdx</span><span class="ruby-operator">|</span>
|
|
597
|
+
206: <span class="ruby-comment cmt"># Generate line for each task.</span>
|
|
598
|
+
207: <span class="ruby-identifier">line</span> = <span class="ruby-constant">ReportTableLine</span>.<span class="ruby-identifier">new</span>(<span class="ruby-ivar">@table</span>, <span class="ruby-identifier">task</span>, <span class="ruby-identifier">scopeLine</span>)
|
|
599
|
+
208:
|
|
600
|
+
209: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">no</span> = <span class="ruby-identifier">no</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">scopeLine</span>
|
|
601
|
+
210: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">lineNo</span>
|
|
602
|
+
211: <span class="ruby-identifier">line</span>.<span class="ruby-identifier">subLineNo</span> = <span class="ruby-ivar">@table</span>.<span class="ruby-identifier">lines</span>
|
|
603
|
+
212: <span class="ruby-identifier">setIndent</span>(<span class="ruby-identifier">line</span>, <span class="ruby-ivar">@taskRoot</span>, <span class="ruby-identifier">taskList</span>.<span class="ruby-identifier">treeMode?</span>)
|
|
604
|
+
213:
|
|
605
|
+
214: <span class="ruby-comment cmt"># Generate a cell for each column in this line.</span>
|
|
606
|
+
215: <span class="ruby-ivar">@columns</span>.<span class="ruby-identifier">each</span> <span class="ruby-keyword kw">do</span> <span class="ruby-operator">|</span><span class="ruby-identifier">columnDef</span><span class="ruby-operator">|</span>
|
|
607
|
+
216: <span class="ruby-keyword kw">next</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">generateTableCell</span>(<span class="ruby-identifier">line</span>, <span class="ruby-identifier">task</span>, <span class="ruby-identifier">columnDef</span>, <span class="ruby-identifier">scenarioIdx</span>)
|
|
608
|
+
217: <span class="ruby-keyword kw">end</span>
|
|
609
|
+
218: <span class="ruby-keyword kw">end</span>
|
|
610
|
+
219:
|
|
611
|
+
220: <span class="ruby-keyword kw">if</span> <span class="ruby-identifier">resourceList</span>
|
|
612
|
+
221: <span class="ruby-comment cmt"># If we have a resourceList we generate nested lines for each of the</span>
|
|
613
|
+
222: <span class="ruby-comment cmt"># resources that are assigned to this task and pass the user-defined</span>
|
|
614
|
+
223: <span class="ruby-comment cmt"># filter.</span>
|
|
615
|
+
224: <span class="ruby-identifier">resourceList</span>.<span class="ruby-identifier">setSorting</span>(<span class="ruby-ivar">@sortResources</span>)
|
|
616
|
+
225: <span class="ruby-identifier">assignedResourceList</span> = <span class="ruby-identifier">filterResourceList</span>(<span class="ruby-identifier">resourceList</span>, <span class="ruby-identifier">task</span>,
|
|
617
|
+
226: <span class="ruby-ivar">@hideResource</span>, <span class="ruby-ivar">@rollupResource</span>)
|
|
618
|
+
227: <span class="ruby-identifier">assignedResourceList</span>.<span class="ruby-identifier">sort!</span>
|
|
619
|
+
228: <span class="ruby-identifier">lineNo</span> = <span class="ruby-identifier">generateResourceList</span>(<span class="ruby-identifier">assignedResourceList</span>, <span class="ruby-keyword kw">nil</span>, <span class="ruby-identifier">line</span>)
|
|
620
|
+
229: <span class="ruby-keyword kw">end</span>
|
|
621
|
+
230: <span class="ruby-keyword kw">end</span>
|
|
622
|
+
231: <span class="ruby-identifier">lineNo</span>
|
|
623
|
+
232: <span class="ruby-keyword kw">end</span>
|
|
624
|
+
</pre>
|
|
625
|
+
</div>
|
|
626
|
+
|
|
627
|
+
</div>
|
|
628
|
+
</div>
|
|
629
|
+
|
|
630
|
+
|
|
631
|
+
|
|
632
|
+
</div>
|
|
633
|
+
|
|
634
|
+
|
|
635
|
+
|
|
636
|
+
|
|
637
|
+
</div>
|
|
638
|
+
|
|
639
|
+
<div id="validator-badges">
|
|
640
|
+
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
641
|
+
</div>
|
|
642
|
+
|
|
643
|
+
</body>
|
|
644
|
+
</html>
|