|
TYPO3 API
SVNRelease
|
00001 <?php 00002 /*************************************************************** 00003 * Copyright notice 00004 * 00005 * (c) 2010-2011 TYPO3 Tree Team <http://forge.typo3.org/projects/typo3v4-extjstrees> 00006 * All rights reserved 00007 * 00008 * This script is part of the TYPO3 project. The TYPO3 project is 00009 * free software; you can redistribute it and/or modify 00010 * it under the terms of the GNU General Public License as published by 00011 * the Free Software Foundation; either version 2 of the License, or 00012 * (at your option) any later version. 00013 * 00014 * The GNU General Public License can be found at 00015 * http://www.gnu.org/copyleft/gpl.html. 00016 * A copy is found in the textfile GPL.txt and important notices to the license 00017 * from the author is found in LICENSE.txt distributed with these scripts. 00018 * 00019 * 00020 * This script is distributed in the hope that it will be useful, 00021 * but WITHOUT ANY WARRANTY; without even the implied warranty of 00022 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 00023 * GNU General Public License for more details. 00024 * 00025 * This copyright notice MUST APPEAR in all copies of the script! 00026 ***************************************************************/ 00027 00028 /** 00029 * Abstract Context Menu for ExtDirect 00030 * 00031 * This is a concrete implementation that should stay here to be shared 00032 * between the different ExtDirect implementation. Just create a subclass 00033 * for adding specific purposes. 00034 * 00035 * @author Stefan Galinski <stefan.galinski@gmail.com> 00036 * @package TYPO3 00037 * @subpackage t3lib 00038 */ 00039 abstract class t3lib_contextmenu_extdirect_ContextMenu extends t3lib_contextmenu_AbstractContextMenu { 00040 /** 00041 * Returns the actions for the given node informations 00042 * 00043 * Note: This method should be overriden to fit your specific needs. 00044 * 00045 * The informations should contain the basic informations of a 00046 * t3lib_tree_Node for further processing. Also the classname (property type) 00047 * of the node should be given, because we need this information 00048 * to create the ndoe. 00049 * 00050 * @param stdClass $nodeInfo 00051 * @return array 00052 */ 00053 public function getActionsForNodeArray($nodeData) { 00054 if ($this->dataProvider === NULL) { 00055 $dataProvider = t3lib_div::makeInstance('t3lib_contextmenu_AbstractDataProvider'); 00056 $this->setDataProvider($dataProvider); 00057 } 00058 00059 /** @var $node t3lib_tree_Node */ 00060 $node = t3lib_div::makeInstance('t3lib_tree_Node', (array) $nodeData); 00061 $actions = $this->dataProvider->getActionsForNode($node); 00062 00063 return $actions; 00064 } 00065 00066 /** 00067 * Unused for this implementation 00068 * 00069 * @see getActionsForNodeArray() 00070 * @param t3lib_tree_Node $node 00071 * @return array 00072 */ 00073 public function getActionsForNode(t3lib_tree_Node $node) { 00074 } 00075 } 00076 00077 ?>
1.8.0