TrackManiaControl/libs/FML/Types/Actionable.php

58 lines
1.5 KiB
PHP
Raw Normal View History

<?php
namespace FML\Types;
/**
2014-06-21 03:18:21 +02:00
* Interface for Elements that support the action attribute
*
2014-06-21 03:18:21 +02:00
* @author steeffeen
2014-04-13 18:21:40 +02:00
* @copyright FancyManiaLinks Copyright © 2014 Steffen Schröder
2014-06-21 03:18:21 +02:00
* @license http://www.gnu.org/licenses/ GNU General Public License, Version 3
*/
interface Actionable {
2014-01-21 20:30:40 +01:00
/*
2014-01-12 00:51:46 +01:00
* Constants
*/
2014-06-21 03:18:21 +02:00
const ACTION_0 = '0';
const ACTION_BACK = 'back';
const ACTION_ENTER = 'enter';
const ACTION_HOME = 'home';
const ACTION_MENU_SOLO = 'menu_solo';
2014-01-21 20:30:40 +01:00
const ACTION_MENU_COMPETITIONS = 'menu_competitions';
2014-06-21 03:18:21 +02:00
const ACTION_MENU_LOCAL = 'menu_local';
const ACTION_MENU_INTERNET = 'menu_internet';
const ACTION_MENU_EDITORS = 'menu_editors';
const ACTION_MENU_PROFILE = 'menu_profile';
const ACTION_QUIT = 'quit';
const ACTION_QUITSERVER = 'maniaplanet:quitserver';
const ACTION_SAVEREPLAY = 'maniaplanet:savereplay';
const ACTION_TOGGLESPEC = 'maniaplanet:togglespec';
const ACTIONKEY_F5 = 1;
const ACTIONKEY_F6 = 2;
const ACTIONKEY_F7 = 3;
const ACTIONKEY_F8 = 4;
/**
2014-06-21 03:18:21 +02:00
* Set action
*
2014-06-21 03:18:21 +02:00
* @param string $action Action name
2014-07-03 22:34:47 +02:00
* @return static
*/
public function setAction($action);
2014-01-12 00:51:46 +01:00
2014-01-21 20:30:40 +01:00
/**
2014-06-21 03:18:21 +02:00
* Get the assigned action
2014-01-21 20:30:40 +01:00
*
2014-06-21 03:18:21 +02:00
* @return string
2014-01-21 20:30:40 +01:00
*/
public function getAction();
2014-01-12 00:51:46 +01:00
/**
2014-06-21 03:18:21 +02:00
* Set action key
2014-01-12 00:51:46 +01:00
*
2014-06-21 03:18:21 +02:00
* @param int $actionKey Action key
2014-07-03 22:34:47 +02:00
* @return static
2014-01-12 00:51:46 +01:00
*/
public function setActionKey($actionKey);
}