J1.5:How to create a custom button
From Joomla! Documentation
(Difference between revisions)
(→Explanation of JToolBarHelper button functionality) |
(messed it up earlier) |
||
| Line 8: | Line 8: | ||
* You can modify the default function that is run by using the $this->registerTask('add', 'edit'); to redirect logic, in this example a call from the default button add is directed to the edit function. | * You can modify the default function that is run by using the $this->registerTask('add', 'edit'); to redirect logic, in this example a call from the default button add is directed to the edit function. | ||
| − | ==Default Buttons Included with Joomla 1.5== | + | ==Default Buttons / Functions Included with Joomla 1.5== |
<source lang="php"> | <source lang="php"> | ||
| − | JToolBarHelper:: | + | JToolBarHelper::title(); |
| − | JToolBarHelper:: | + | JToolBarHelper::spacer(); |
| + | JToolBarHelper::divider(); | ||
| + | JToolBarHelper::custom(); | ||
| + | JToolBarHelper::customX(); | ||
| + | JToolBarHelper::preview(); | ||
JToolBarHelper::help(); | JToolBarHelper::help(); | ||
| − | |||
| − | |||
| − | |||
JToolBarHelper::back(); | JToolBarHelper::back(); | ||
| − | JToolBarHelper:: | + | JToolBarHelper::media_manager(); |
| − | JToolBarHelper:: | + | JToolBarHelper::addNew(); |
| − | JToolBarHelper:: | + | JToolBarHelper::addNewX(); |
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
| − | + | ||
JToolBarHelper::publish(); | JToolBarHelper::publish(); | ||
| − | JToolBarHelper::unpublish (); | + | JToolBarHelper::publishList(); |
| − | JToolBarHelper:: | + | JToolBarHelper::makeDefault(); |
| − | JToolBarHelper::trash(); | + | JToolBarHelper::assign(); |
| − | JToolBarHelper:: | + | JToolBarHelper::unpublish(); |
| − | JToolBarHelper:: | + | JToolBarHelper::unpublishList(); |
| − | JToolBarHelper:: | + | JToolBarHelper::archiveList(); |
| − | JToolBarHelper:: | + | JToolBarHelper::unarchiveList(); |
| + | JToolBarHelper::editList(); | ||
| + | JToolBarHelper::editListX(); | ||
| + | JToolBarHelper::editHtml(); | ||
| + | JToolBarHelper::editHtmlX(); | ||
| + | JToolBarHelper::editCss(); | ||
| + | JToolBarHelper::editCssX(); | ||
| + | JToolBarHelper::deleteList(); | ||
| + | JToolBarHelper::deleteListX(); | ||
| + | JToolBarHelper::trash(); | ||
| + | JToolBarHelper::apply(); | ||
| + | JToolBarHelper::save(); | ||
| + | JToolBarHelper::cancel(); | ||
| + | JToolBarHelper::preferences(); | ||
| + | JToolBarHelper::addEntry(); | ||
</source> | </source> | ||
| Line 46: | Line 53: | ||
* The syntax for a custom button that can be added into a view | * The syntax for a custom button that can be added into a view | ||
<source lang="php"> | <source lang="php"> | ||
| + | /** | ||
| + | * Writes a custom option and task button for the button bar | ||
| + | * @param string The task to perform (picked up by the switch($task) blocks | ||
| + | * @param string The image to display | ||
| + | * @param string The image to display when moused over | ||
| + | * @param string The alt text for the icon image | ||
| + | * @param boolean True if required to check that a standard list item is checked | ||
| + | * @param boolean True if required to include callinh hideMainMenu() | ||
| + | */ | ||
| + | |||
JToolBarHelper::custom( 'task', 'icon', 'icon over', 'alt', boolean, boolean ); | JToolBarHelper::custom( 'task', 'icon', 'icon over', 'alt', boolean, boolean ); | ||
</source> | </source> | ||
| Line 74: | Line 91: | ||
<source lang="php"> | <source lang="php"> | ||
| − | JToolBarHelper :: custom( 'someFunction', 'iconname.png', 'iconname.png', 'alt text', | + | JToolBarHelper :: custom( 'someFunction', 'iconname.png', 'iconname.png', 'alt text', false, false ); |
</source> | </source> | ||
Revision as of 14:44, 22 July 2008
This Namespace has been archived - Please Do Not Edit or Create Pages in this namespace. Pages contain information for a Joomla! version which is no longer supported. It exists only as a historical reference, will not be improved and its content may be incomplete.
| This article is a small, well-defined item that could be completed by someone with a reasonable knowledge of the subject matter and a modest time commitment. If you would like to try writing this article you're welcome to do so.
The subject may be self-evident, but if not then further details should be available on the discussion page. Please add {{inuse}} at the top of this page while editing. For other small, well-defined tasks, please look in the Cookie jar. ---Thank you. This article was last edited by Mole84 (talk| contribs) 4 years ago. (Purge) |
Note
Please note that the content on this page is currently incomplete. Please treat it as a work in progress.
- This article was last edited by Mole84 (talk| contribs) 4 years ago. (Purge)
The code below is used for adding buttons to the back-end toolbar when developing components and modules.
Contents |
Explanation of JToolBarHelper button functionality
- When you add a JToolBarHelper function into an admin view it will display the icon and preform the corresponding function listed in the controller when pressed.
- You can modify the default function that is run by using the $this->registerTask('add', 'edit'); to redirect logic, in this example a call from the default button add is directed to the edit function.
Default Buttons / Functions Included with Joomla 1.5
JToolBarHelper::title(); JToolBarHelper::spacer(); JToolBarHelper::divider(); JToolBarHelper::custom(); JToolBarHelper::customX(); JToolBarHelper::preview(); JToolBarHelper::help(); JToolBarHelper::back(); JToolBarHelper::media_manager(); JToolBarHelper::addNew(); JToolBarHelper::addNewX(); JToolBarHelper::publish(); JToolBarHelper::publishList(); JToolBarHelper::makeDefault(); JToolBarHelper::assign(); JToolBarHelper::unpublish(); JToolBarHelper::unpublishList(); JToolBarHelper::archiveList(); JToolBarHelper::unarchiveList(); JToolBarHelper::editList(); JToolBarHelper::editListX(); JToolBarHelper::editHtml(); JToolBarHelper::editHtmlX(); JToolBarHelper::editCss(); JToolBarHelper::editCssX(); JToolBarHelper::deleteList(); JToolBarHelper::deleteListX(); JToolBarHelper::trash(); JToolBarHelper::apply(); JToolBarHelper::save(); JToolBarHelper::cancel(); JToolBarHelper::preferences(); JToolBarHelper::addEntry();
- The icons associated with these functions are stored at:
www/administrator/templates/khepri/images
Custom button
- The syntax for a custom button that can be added into a view
/** * Writes a custom option and task button for the button bar * @param string The task to perform (picked up by the switch($task) blocks * @param string The image to display * @param string The image to display when moused over * @param string The alt text for the icon image * @param boolean True if required to check that a standard list item is checked * @param boolean True if required to include callinh hideMainMenu() */ JToolBarHelper::custom( 'task', 'icon', 'icon over', 'alt', boolean, boolean );
- The Default Admin Toolbar Icons are stored at:
www/administrator/templates/khepri/images
- From here you will notice that the icons are linked to display through the CSS file at:
www/administrator/templates/khepri/css/icon.css
- This icon CSS file is automatically included through the admin template. If we would like to add a custom toolbar icon into an installable component it is useful to follow the same structure. We will have to manually include our new CSS file.
- An example of the icon CSS statement:
.icon-32-iconname { background-image: url(../../images/icon-32-iconfile.png); }
- As you can see iconname and iconfile do not necessarily have to be the same.
- JToolBarHelper will look for the iconname at the end of .icon-32- and the filename must be preceded by icon-32-
- The following would create this custom toolbar icon, notice the iconname dose not correspond to the actual file name but the CSS allows the reference.
JToolBarHelper :: custom( 'someFunction', 'iconname.png', 'iconname.png', 'alt text', false, false );
- You can place your icon file and css file at any point in your installable component, which will allow it to be easily transferable.
- To include a new CSS file to your entire admin side it may be useful to include it in the entry point.
JHTML::_('stylesheet', THISCOMPONENTNAME.css', 'components/THISCOMPONENT/assets/css/');
Upload button
- Method 1:
// Add an upload button and view a popup screen width 550 and height 400 $alt = "Upload"; $bar=& JToolBar::getInstance( 'toolbar' ); $bar->appendButton( 'Popup', 'upload', $alt, 'index.php', 550, 400 );
- Method 2:
// You view button for popup media manager tools JToolBarHelper::media_manager( '/' );
