[ Index ]

PHP Cross Reference of Phabricator

title

Body

[close]

/src/view/phui/ -> PHUIWorkboardView.php (source)

   1  <?php
   2  
   3  final class PHUIWorkboardView extends AphrontTagView {
   4  
   5    private $panels = array();
   6    private $fluidLayout = false;
   7    private $fluidishLayout = false;
   8    private $actions = array();
   9  
  10    public function addPanel(PHUIWorkpanelView $panel) {
  11      $this->panels[] = $panel;
  12      return $this;
  13    }
  14  
  15    public function setFluidLayout($layout) {
  16      $this->fluidLayout = $layout;
  17      return $this;
  18    }
  19  
  20    public function setFluidishLayout($layout) {
  21      $this->fluidishLayout = $layout;
  22      return $this;
  23    }
  24  
  25    public function addAction(PHUIIconView $action) {
  26      $this->actions[] = $action;
  27      return $this;
  28    }
  29  
  30    public function getTagAttributes() {
  31      return array(
  32        'class' => 'phui-workboard-view',
  33      );
  34    }
  35  
  36    public function getTagContent() {
  37      require_celerity_resource('phui-workboard-view-css');
  38  
  39      $action_list = null;
  40      if (!empty($this->actions)) {
  41        $items = array();
  42        foreach ($this->actions as $action) {
  43          $items[] = phutil_tag(
  44            'li',
  45              array(
  46                'class' => 'phui-workboard-action-item',
  47              ),
  48              $action);
  49        }
  50        $action_list = phutil_tag(
  51          'ul',
  52            array(
  53              'class' => 'phui-workboard-action-list',
  54            ),
  55            $items);
  56      }
  57  
  58      $view = new AphrontMultiColumnView();
  59      $view->setGutter(AphrontMultiColumnView::GUTTER_MEDIUM);
  60      if ($this->fluidLayout) {
  61        $view->setFluidLayout($this->fluidLayout);
  62      }
  63      if ($this->fluidishLayout) {
  64        $view->setFluidishLayout($this->fluidishLayout);
  65      }
  66      foreach ($this->panels as $panel) {
  67        $view->addColumn($panel);
  68      }
  69  
  70      $board = phutil_tag(
  71        'div',
  72          array(
  73            'class' => 'phui-workboard-view-shadow',
  74          ),
  75          $view);
  76  
  77      return array(
  78        $action_list,
  79        $board,
  80      );
  81    }
  82  }


Generated: Sun Nov 30 09:20:46 2014 Cross-referenced by PHPXref 0.7.1