List of built-in functions

From Official Kodi Wiki
Revision as of 18:36, 7 September 2013 by Martijn (talk | contribs)
Jump to navigation Jump to search
Home icon grey.png   ▶ Development ▶ Add-on development ▶ List of built-in functions
Cleanup.png This page or section may require cleanup, updating, spellchecking, reformatting and/or updated images. Please improve this page if you can. The discussion page may contain suggestions.


The latest up-to-date list of built-in functions can be found in the function CBuiltins::Execute() in the source code file xbmc/interfaces/Builtins.cpp.

In addition to the following list, for most <onclick> and <onfocus> button actions in the skin you can also use the functions from Keyboard.xml.

Example:
<onclick>VolumeUp</onclick>
<onclick>VolumeDown</onclick>

You can use parameters with all media windows, as can be seen here:

All Platforms

Reboot Cold reboots the system (power cycle)
ShutDown Trigger default Shutdown action defined in System Settings
Powerdown Powerdown system
Quit Quits XBMC
Hibernate Hibernate (S4) the System
Suspend Suspends (S3 / S1 depending on bios setting) the System
RestartApp Restarts XBMC (not implemented under Win32)
Minimize Minimizes XBMC
Credits Runs the Credits
Mastermode Runs XBMC in master mode
ActivateWindow(window[,dir,return]) Opens the given window. The parameter window can either be the window's id, or in the case of a standard window, the window's name. See here for a list of window names, and their respective ids. If, furthermore, the window is Music, Video, Pictures, or Program files, then the optional dir parameter specifies which folder XBMC should default to once the window is opened. This must be a source as specified in sources.xml, or a subfolder of a valid source. For some windows (MusicLibrary and VideoLibrary), the return parameter may be specified, which indicates that XBMC should use this folder as the "root" of the level, and thus the "parent directory" action from within this folder will return the user to where they were prior to the window activating.
ActivateWindowAndFocus(id1, id2,item1, id3,item2) Activate window with id1, first focus control id2 and then focus control id3. if either of the controls is a container, you can specify which item to focus (else, set it to 0).(Future Frodo addition)
ReplaceWindowAndFocus(id1, id2,item1, id3,item2) Replace window with id1, first focus control id2 and then focus control id3. if either of the controls is a container, you can specify which item to focus (else, set it to 0).(Future Gotham addition)
ReplaceWindow(window,dir) Replaces the current window with the given window. This is the same as ActivateWindow() but it doesn't update the window history list, so when you go back from the new window it will not return to the previous window, rather will return to the previous window's previous window.
TakeScreenshot Takes a Screenshot
ActivateScreensaver Starts the screensaver (Future Gotham addition)
RunScript(script[,args]*) Runs the python script. You must specify the full path to the script. If the script is an add-on, you can also execute it using its add-on id. As of 2007/02/24, all extra parameters are passed to the script as arguments and can be accessed by python using sys.argv
RunAddon(id) Runs the specified plugin/script
RunPlugin(plugin) Runs the plugin. Full path must be specified. Does not work for folder plugins
RunAppleScript(script[,args]*) Run the specified AppleScript command
Extract Extracts a specified archive to an optionally specified path. ! REQUIRES ABSOLUTE PATHS !
Filter Opens the mediafilter dialog in the video and musiclibrary (Future Frodo addition)
PlayMedia(media[,isdir][,1],[playoffset=xx]) Plays the media. This can be a playlist, music, or video file, directory, plugin or an Url. The optional parameter ",isdir" can be used for playing a directory. ",1" will start a video in a preview window, instead of fullscreen. If media is a playlist, you can use playoffset=xx where xx is the position to start playback from.
SlideShow(dir [,recursive, [not]random]) Starts a slideshow of pictures in the folder dir. Optional parameters are "recursive", and "random" or "notrandom" parameters. The "recursive" parameter starts a recursive slideshow, adding images from sub-folders. The "random" and "notrandom" parameters override the Randomize setting found in the pictures media window.
RecursiveSlideShow(dir) Run a slideshow from the specified directory, including all subdirs
ReloadSkin() Reloads the current skin – useful for Skinners to use after they upload modified skin files (saves power cycling)
RefreshRSS Reload RSS feeds from RSSFeeds.xml
PlayerControl(command) Allows control of music and videos. The command may be one of Play, Stop, Forward, Rewind, Next, Previous, BigSkipForward, BigSkipBackward, SmallSkipForward, SmallSkipBackward, Random, RandomOn, RandomOff, Repeat, RepeatOne, RepeatAll, RepeatOff, Partymode(music) or Partymode(video) or Partymode(path to .xsp file), and Record. Play will either pause, resume, or stop ffwding or rewinding. Random toggles random playback and Repeat cycles through the repeat modes (these both take an optional second parameter, Notify, that notifies the user of the new state). Partymode(music/video) toggles the appropriate partymode, defaults to music if no parameter is given, besides the default music or video partymode you can also pass a path to a custom smartplaylist (.xsp) as parameter.
Playlist.PlayOffset Start playing from a particular offset in the playlist
Playlist.Clear Clear the current playlist
XBMC.ActivateWindow(type,path to playlist) Opens the window for the desired playlist
EjectTray() Either opens or closes the DVD tray, depending on its current state
AlarmClock(name,command,time[,silent,loop]) Pops up a dialog asking for the length of time for the alarm (unless the parameter time is specified), and starts a timer. When the timer runs out, it'll execute the built-in command (the parameter command) if it is specified, otherwise it'll pop up an alarm notice. Add silent to hide the alarm notification. Add loop for the alarm to execute the command each time the specified time interval expires.
CancelAlarm(name[,silent]) Cancel a running alarm. Set silent to true to hide the alarm notification. only available in trunk >r35674
Action Executes an action for the active window (same as in keymap)
Notification(header,message[,time,image]) Will display a notification dialog with the specified header and message, in addition you can set the length of time it displays in milliseconds and a icon image.
PlayDVD Will play the inserted CD or DVD media from the DVD-ROM drive.
RipCD Will rip the inserted CD from the DVD-ROM drive.
Skin.ToggleSetting(setting) Toggles the skin setting ?setting? for use with conditional visibility tags containing Skin.HasSetting(setting).
Skin.SetString(string[,value]) Pops up a keyboard dialog and allows the user to input a string which can be used in a label control elsewhere in the skin via the info tag Skin.String(string). If the value parameter is specified, then the keyboard dialog does not pop up, and the string is set directly.
Skin.SetNumeric(numeric[,value]) Pops up a keyboard dialog and allows the user to input a numerical.
Skin.SetPath(string[,value]) Pops up a folder browser and allows the user to select a folder of images to be used in a multi image control else where in the skin via the info tag Skin.String(string). If the value parameter is specified, then the file browser dialog does not pop up, and the path is set directly.
Skin.Theme Cycles the skin theme. Skin.theme(-1) will go backwards.
Skin.SetImage(string[,value]) Pops up a file browser and allows the user to select an image file to be used in an image control elsewhere in the skin via the info tag Skin.String(string). If the value parameter is specified, then the file browser dialog does not pop up, and the image path is set directly.
Skin.SetLargeImage(string[,value]) Pops up a file browser and allows the user to select an large image file to be used in an image control else where in the skin via the info tag Skin.String(string). If the value parameter is specified, then the file browser dialog does not pop up, and the image path is set directly.
Skin.SetFile(string,mask,folderpath) Pops up a folder browser and allows the user to select a file off the hard-disk to be used else where in the skin via the info tag Skin.String(string). If the mask parameter is specified, then the file browser will only search for the extension specified (.avi,.mp3,.m3u,.png,.bmp,etc.,etc.). To use multiple extensions separate them using "|" minus quotes. If the folderpath parameter is set the file browser will start in that folder.
Skin.SetAddon(string,type) Pops up a select dialog and allows the user to select an add-on of the given type to be used elsewhere in the skin via the info tag Skin.String(string). The most common types are xbmc.addon.video, xbmc.addon.audio, xbmc.addon.image and xbmc.addon.executable.
Skin.SetBool(setting) Sets the skin setting ?setting? to true, for use with the conditional visibility tags containing Skin.HasSetting(setting). The settings are saved per-skin in settings.xml just like all the other XBMC settings.
Skin.Reset(setting) Resets the skin setting ?setting?. If ?setting? is a bool setting (i.e. set via SetBool or ToggleSetting) then the setting is reset to false. If ?setting? is a string (Set via SetString, SetImage, or SetPath) then it is set to empty.
Skin.ResetSettings Resets all the above skin settings to their defaults (toggles all set to false, strings all set to empty.)
Mute Mutes (or unmutes) the volume.
SetVolume(percent[,showvolumebar]) Sets the volume to the percentage specified. Optionally, show the Volume Dialog in XBMC when setting the volume.
Dialog.Close(dialog[,force]) Close a dialog. Set force to true to bypass animations. Use (all,true) to close all opened dialogs at once.
System.LogOff Log off current user.
System.Exec Execute shell commands.
System.ExecWait Execute shell commands and freezes XBMC until shell is closed.
AllowIdleShutdown Allow the system to shutdown on idle. (Future Frodo addition)
InhibitIdleShutdown(true/false) Prevent the system to shutdown on idle. (Future Frodo addition)
Resolution Change XBMC's Resolution.
UpdateLibrary(database,[path]) Takes either "video" or "music" as a parameter to begin updating the corresponding database. For "video" you can additionally specify a specific path to be scanned.
CleanLibrary(database) This funtion will perform a number of 'cleanup' tasks on your video database and can be run if you have moved, deleted or renamed files. Takes either "video" or "music" as a parameter to begin cleaning the corresponding database.
PageDown Send a page down event to the pagecontrol with given id.
PageUp Send a page up event to the pagecontrol with given id.
LastFM.Love All songs that can be submitted to Last.fm can be loved, optional parameter (false) = direct loving without confirmationdialog. (Future Frodo removal)
LastFM.Ban Only songs that are playing on last.fm radio can be banned, optional parameter (false) = direct banning without confirmationdialog. (Future Frodo removal)
Container.Refresh Refresh current listing.
Container.Update Update current listing. Send Container.Update(path,replace) to reset the path history.
Container.SetViewMode(id) Set the current view mode (list, icons etc.) to the given container id.
Container.NextViewMode Select the next view mode.
Container.PreviousViewMode Select the previous view mode.
Container.SetViewMode Move to the view with the given id.
Container.NextSortMethod Change to the next sort method.
Container.PreviousSortMethod Change to the previous sort method.
Container.SetSortMethod Change to the specified sort method.
Container.SortDirection Toggle the sort direction.
Control.Move(id,offset) Will make a Container with the "id" specified in the command move focus by "offset".
Control.SetFocus(id,position) Will make a list with the "id" specified in the command gain focus at "position" number in its list. Alias SetFocus(id,position)
Control.Message(id,message,[windowid]) Sends a given message to a control in a given window (or active window if omitted). Messages can be movedown, moveup, pagedown, pageup, click.
SendClick(windowid,id) Sends a click to a control in a given window (or active window if omitted).
LoadProfile(profilename,[prompt]) Load the specified profile. If prompt is not specified, and a password would be required for the requested profile, this command will silently fail. If promp' is specified and a password is required, a password dialog will be shown.
SetProperty(key,value[,id]) Sets a window property for the current window (key,value), or the specified window (key,value,id).
ClearProperty(key[,id]) Clears a window property for the current focused window/dialog(key), or the specified window (key,id).
PlayWith() Play the selected item with the specified player core.
LIRC.Stop Removes XBMC as a LIRC client.
LIRC.Start Adds XBMC as a LIRC client.
LIRC.Send(command) Sends a command to LIRC, syntax is the lirc protocol without the newline.
Example: LIRC.Send(SEND_ONCE Onkyo_RC-453S2 volup)
LCD.Suspend Suspends LCDproc.
LCD.Resume Resumes LCDproc.
WakeOnLan(mac) Sends the wake-up packet to the broadcast address for the specified MAC address (Format: FF:FF:FF:FF:FF:FF or FF-FF-FF-FF-FF-FF).
exportlibrary(music,false,filepath) The music library will be exported to a single file stored at filepath location.
exportlibrary(video,true,thumbs,overwrite,actorthumbs) The video library is exported to multiple files with the given options. Here thumbs, overwrite and actorthumbs are boolean values (true or false).
Addon.Default.OpenSettings Open a settings dialog for the default addon of the given type
UpdateAddonRepos Triggers a forced update of enabled add-on repositories.
UpdateLocalAddons Triggers a scan of local add-on directories.
Weather.Refresh Force weather data refresh
Weather.LocationNext Switch to next weather location
Weather.LocationPrevious Switch to previous weather location
Weather.LocationSet Switch to given weather location (parameter can be 1-3)
VideoLibrary.Search Brings up a search dialog which will search the library