public function getCategoryInsertionPointValueOptions()
    {
        $trees = $this->getCategoryService()->getAllCategoryTreesAsArray();
        
        $valueOptions = array();
        
        foreach ($trees as $rootId => $tree) {
            $valueOptions[$rootId] = array(
                'label'   => 'Label of category ' . $rootId,
                'options' => array()
            );
            foreach ($tree as $node) {
                $category = $node->getNode();
                
                if ($category->getId() == $rootId) {
                    $valueOptions[$rootId]['label'] = $category->getTitle();
                } //else {
                    $valueOptions[$rootId]['options'][$category->getId()] = str_repeat('-', $node->getLevel()) . $category->getTitle();
                //}
            }
        }
        
        return $valueOptions;
    }