MediaWiki  1.34.0
SkinFactory Class Reference

Factory class to create Skin objects. More...

Public Member Functions

 getSkinNames ()
 Returns an associative array of: skin name => human readable name. More...
 
 makeSkin ( $name)
 Create a given Skin using the registered callback for $name. More...
 
 register ( $name, $displayName, $callback)
 Register a new Skin factory function. More...
 

Private Attributes

array $displayNames = []
 Map of name => fallback human-readable name, used when the 'skinname-<skin>' message is not available. More...
 
array $factoryFunctions = []
 Map of name => callback. More...
 

Detailed Description

Factory class to create Skin objects.

Since
1.24

Definition at line 29 of file SkinFactory.php.

Member Function Documentation

◆ getSkinNames()

SkinFactory::getSkinNames ( )

Returns an associative array of: skin name => human readable name.

Returns
array

Definition at line 71 of file SkinFactory.php.

References $displayNames.

◆ makeSkin()

SkinFactory::makeSkin (   $name)

Create a given Skin using the registered callback for $name.

Parameters
string$nameName of the skin you want
Exceptions
SkinExceptionIf a factory function isn't registered for $name
UnexpectedValueExceptionIf the factory function returns a non-Skin object
Returns
Skin

Definition at line 82 of file SkinFactory.php.

◆ register()

SkinFactory::register (   $name,
  $displayName,
  $callback 
)

Register a new Skin factory function.

Will override if it's already registered.

Parameters
string$nameInternal skin name. Should be all-lowercase (technically doesn't have to be, but doing so would change the case of i18n message keys).
string$displayNameFor backwards-compatibility with old skin loading system. This is the text used as skin's human-readable name when the 'skinname-<skin>' message is not available. It should be the same as the skin name provided in $wgExtensionCredits.
callable$callbackCallback that takes the skin name as an argument
Exceptions
InvalidArgumentExceptionIf an invalid callback is provided

Definition at line 57 of file SkinFactory.php.

Member Data Documentation

◆ $displayNames

array SkinFactory::$displayNames = []
private

Map of name => fallback human-readable name, used when the 'skinname-<skin>' message is not available.

Definition at line 42 of file SkinFactory.php.

Referenced by getSkinNames().

◆ $factoryFunctions

array SkinFactory::$factoryFunctions = []
private

Map of name => callback.

Definition at line 35 of file SkinFactory.php.


The documentation for this class was generated from the following file: