buildHorizontal method

Widget buildHorizontal()

Implementation

Widget buildHorizontal() {
  return Row(
    children: [
      if (measureAxis != null && !useSecondaryMeasure)
        Column(
          crossAxisAlignment: CrossAxisAlignment.end,
          children: [
            if (domainAxis != null && useSecondaryDomain)
              SizedBox(
                height: domainAxis!.tickLength +
                    domainAxis!.gapTickLabel +
                    domainAxis!.xAxisLabelSpace,
              ),
            Expanded(
              child: Row(
                children: [
                  MeasureLabelLayout(
                    max: measure.max,
                    measureAxis: measureAxis!,
                    direction: direction,
                    labelsInViewport: measure.labelsInViewport,
                  ),
                  SizedBox(width: measureAxis!.gapTickLabel),
                  MeasureTickLayout(
                    max: measure.max,
                    measureAxis: measureAxis!,
                    direction: direction,
                    labelsInViewport: measure.labelsInViewport,
                  ),
                ],
              ),
            ),
            if (domainAxis != null && !useSecondaryDomain)
              SizedBox(
                height: domainAxis!.tickLength +
                    domainAxis!.gapTickLabel +
                    domainAxis!.xAxisLabelSpace,
              ),
          ],
        ),
      Expanded(
        child: Column(
          children: [
            if (domainAxis != null && useSecondaryDomain) ...[
              DomainLabelLayout(
                labelsInViewport: domain.labelsInViewport,
                domainAxis: domainAxis!,
                direction: direction,
              ),
              SizedBox(height: domainAxis!.gapTickLabel),
              DomainTickLayout(
                labelsInViewport: domain.labelsInViewport,
                domainAxis: domainAxis!,
                direction: direction,
              ),
            ],
            Expanded(
              child: Stack(
                fit: StackFit.expand,
                children: [
                  if (measureAxis != null)
                    MeasureGridLineLayout(
                      max: measure.max,
                      measureAxis: measureAxis!,
                      direction: direction,
                      labelsInViewport: measure.labelsInViewport,
                    ),
                  if (domainAxis != null)
                    DomainGridLineLayout(
                      domainAxis: domainAxis!,
                      direction: direction,
                      labelsInViewport: domain.labelsInViewport,
                    ),
                  DecoratedBox(
                    position:
                        axisLine?.position == AxisLinePosition.background
                            ? DecorationPosition.background
                            : DecorationPosition.foreground,
                    decoration: BoxDecoration(
                      border: Border(
                        bottom:
                            axisLine?.bottom?.borderSide ?? BorderSide.none,
                        left: axisLine?.left?.borderSide ?? BorderSide.none,
                        top: axisLine?.top?.borderSide ?? BorderSide.none,
                        right: axisLine?.right?.borderSide ?? BorderSide.none,
                      ),
                    ),
                    child: drawHorizontal(),
                  ),
                ],
              ),
            ),
            if (domainAxis != null && !useSecondaryDomain) ...[
              DomainTickLayout(
                labelsInViewport: domain.labelsInViewport,
                domainAxis: domainAxis!,
                direction: direction,
              ),
              SizedBox(height: domainAxis!.gapTickLabel),
              DomainLabelLayout(
                labelsInViewport: domain.labelsInViewport,
                domainAxis: domainAxis!,
                direction: direction,
              ),
            ],
          ],
        ),
      ),
      if (measureAxis != null && useSecondaryMeasure)
        Column(
          crossAxisAlignment: CrossAxisAlignment.end,
          children: [
            if (domainAxis != null && useSecondaryDomain)
              SizedBox(
                height: domainAxis!.tickLength +
                    domainAxis!.gapTickLabel +
                    domainAxis!.xAxisLabelSpace,
              ),
            Expanded(
              child: Row(
                children: [
                  MeasureTickLayout(
                    max: measure.max,
                    measureAxis: measureAxis!,
                    direction: direction,
                    labelsInViewport: measure.labelsInViewport,
                  ),
                  SizedBox(width: measureAxis!.gapTickLabel),
                  MeasureLabelLayout(
                    max: measure.max,
                    measureAxis: measureAxis!,
                    direction: direction,
                    labelsInViewport: measure.labelsInViewport,
                  ),
                ],
              ),
            ),
            if (domainAxis != null && !useSecondaryDomain)
              SizedBox(
                height: domainAxis!.tickLength +
                    domainAxis!.gapTickLabel +
                    domainAxis!.xAxisLabelSpace,
              ),
          ],
        ),
    ],
  );
}