C# Class MediaPortal.GUI.Library.GUIGraphicsContext

Singleton class which holds all GFX related settings
Exibir arquivo Open project: MediaPortal/MediaPortal-1 Class Usage Examples

Public Properties

Property Type Description
DX9Device Device
DX9DeviceMadVr Device
InitVolumeHandlerLock object
LastFramesIndex int
RenderModeSwitch object
WindowChangeLock object
autoCropper IAutoCrop
form System.Windows.Forms.Form
graphics System.Drawing.Graphics

Public Methods

Method Description
AddTransform ( MediaPortal.GUI.Library.TransformMatrix matrix ) : void

BeginClip ( Rectangle rect ) : void

Sets a clip region. Set the clip rectangle as specified and enables the FontEngine to use clipping.

BeginClip ( Rectangle rect, bool constrain ) : void

Sets a clip region. Set the clip rectangle as specified and enables the FontEngine to use clipping. If constrain is true then nested calls will clip the specified clip rectangle at the parents clip rectangle.

BlackImageRendered ( ) : void

BypassUICalibration ( bool bypass ) : void

Enable/Disable bypassing of UI Calibration transforms

Calls have to be paired and can be nested.

Correct ( float &x, float &y ) : void

Apply screen offset correct

DescalePosToScreenResolution ( int &x, int &y ) : void

Descale a position from screen->skin resolutions

EndClip ( ) : void

Removes a clip region. Disables the FontEngine from using current clipping context.

GetClipRect ( ) : Rectangle

Returns the current clip rectangle.

GetFinalMatrix ( ) : ].float[

GetFinalTransform ( ) : MediaPortal.GUI.Library.TransformMatrix

GetOffsetCorrectionTransform ( ) : MediaPortal.GUI.Library.TransformMatrix

Get the transformation matrix that corrects for UI Calibration translation

GetOutputRect ( int sourceWidth, int sourceHeight, int maxWidth, int maxHeight, int &width, int &height ) : void

Calculates a rectangle based on current calibration values/pixel ratio

GetTexturePoolType ( ) : Pool

GetThemedSkinDirectory ( string dir ) : string

Return a themed version of the requested directory, otherwise return the default skin directory.

GetThemedSkinFile ( string filename ) : string

Return a themed version of the requested skin filename, otherwise return the default skin filename. Use a path to media to get images.

HasThemeSpecificSkinFile ( string filename ) : bool

Returns true if the current theme has the specified file.

IsDirectX9ExUsed ( ) : bool

IsTvWindow ( ) : bool

Returns true if the active window belongs to the my tv plugin

IsTvWindow ( int windowId ) : bool

Returns true if the specified window belongs to the my tv plugin

Load ( ) : void

Load calibration values for current resolution

LoadIdentity ( ) : void

Replaces the current control transform with the identity matrix.

MergeAlpha ( uint color ) : uint

OnAction ( Action action ) : void

Send a action to anyone interested

PopMatrix ( ) : void

This is a convenience method for users who wish to manage the control transform matrix with an OpenGL-like matrix stack. The matrix stack managed is *not* used to set the final transform for MP callers who do not use Push/Pop.

PopProjectionMatrix ( ) : void

This is a convenience method for users who wish to manage the direct3d projection matrix with an OpenGL-like matrix stack. The matrix stack managed is *not* used to set the direct3d projection matrix for MP callers who do not use Push/Pop.

PushMatrix ( ) : void

This is a convenience method for users who wish to manage the control transform matrix with an OpenGL-like matrix stack. The matrix stack managed is *not* used to set the final transform for MP callers who do not use Push/Pop.

PushProjectionMatrix ( ) : void

This is a convenience method for users who wish to manage the direct3d projection matrix with an OpenGL-like matrix stack. The matrix stack managed is *not* used to set the direct3d projection matrix for MP callers who do not use Push/Pop.

RemoveTransform ( ) : void

RenderBlack ( ) : void

ResetCursor ( bool interpolate ) : void

ResetLastActivity ( ) : void

Resets last user activity & unblanks screen

RestoreCameraPosition ( ) : void

RotateX ( float angle, float y, float z ) : void

Rotates the control transform matrix by the specified angle (in degrees) around the x-axis.

RotateY ( float angle, float x, float z ) : void

Rotates the control transform matrix by the specified angle (in degrees) around the y-axis.

RotateZ ( float angle, float x, float y ) : void

Rotates the control transform matrix by the specified angle (in degrees) around the z-axis.

Save ( ) : void

Save calibration settings to calibrationWxH.xml where W=resolution width H=resolution height

Scale ( float x, float y, float z ) : void

Scales the control transform matrix by the specified vector.

ScaleFinalCoords ( float &x, float &y, float &z ) : void

ScaleFinalXCoord ( float x, float y ) : float

ScaleFinalYCoord ( float x, float y ) : float

ScaleFinalZCoord ( float x, float y ) : float

ScaleHorizontal ( int x ) : int

Scale X position for current resolution

ScaleHorizontal ( float &x ) : void

ScaleHorizontal ( int &x ) : void

Scale X position for current resolution

ScalePosToScreenResolution ( int &x, int &y ) : void

Scale position for current resolution

ScaleRectToScreenResolution ( int &left, int &top, int &right, int &bottom ) : void

Scale rectangle for current resolution.

ScaleVertical ( int y ) : int

Scale y position for current resolution

ScaleVertical ( float &y ) : void

ScaleVertical ( int &y ) : void

Scale y position for current resolution

ScaleVideoWindow ( int &width, int &height, float &x, float &y ) : void
SendMessage ( GUIMessage msg ) : void

Send a message to anyone interested

SetCameraPosition ( Point camera ) : void

SetPerspectiveProjectionMatrix ( float fovy, float aspectratio, float nearPlane, float farPlane ) : void

Sets the direct3d project matrix to the specfied perspective view.

SetScalingResolution ( int posX, int posY, bool needsScaling ) : void

SetWindowTransform ( MediaPortal.GUI.Library.TransformMatrix matrix ) : void

Translate ( float x, float y, float z ) : void

Translates the control transform matrix by the specified vector.

UpdateCameraPosition ( Point camera ) : void

UpdateFinalTransform ( MediaPortal.GUI.Library.TransformMatrix matrix ) : void

VideoReceived ( ) : void

VideoWindowChanged ( ) : void

Delegates video window size/position change notify to be done by main thread

Private Methods

Method Description
GUIGraphicsContext ( ) : System
PostMessage ( IntPtr hWnd, uint Msg, IntPtr wParam, IntPtr lParam ) : bool
SyncFrameTime ( ) : void

Method Details

AddTransform() public static method

public static AddTransform ( MediaPortal.GUI.Library.TransformMatrix matrix ) : void
matrix MediaPortal.GUI.Library.TransformMatrix
return void

BeginClip() public static method

Sets a clip region. Set the clip rectangle as specified and enables the FontEngine to use clipping.
public static BeginClip ( Rectangle rect ) : void
rect System.Drawing.Rectangle
return void

BeginClip() public static method

Sets a clip region. Set the clip rectangle as specified and enables the FontEngine to use clipping. If constrain is true then nested calls will clip the specified clip rectangle at the parents clip rectangle.
public static BeginClip ( Rectangle rect, bool constrain ) : void
rect System.Drawing.Rectangle
constrain bool
return void

BlackImageRendered() public static method

public static BlackImageRendered ( ) : void
return void

BypassUICalibration() public static method

Enable/Disable bypassing of UI Calibration transforms
Calls have to be paired and can be nested.
public static BypassUICalibration ( bool bypass ) : void
bypass bool true to enable bypassing
return void

Correct() public static method

Apply screen offset correct
public static Correct ( float &x, float &y ) : void
x float X correction.
y float Y correction.
return void

DescalePosToScreenResolution() public static method

Descale a position from screen->skin resolutions
public static DescalePosToScreenResolution ( int &x, int &y ) : void
x int X coordinate to descale.
y int Y coordinate to descale.
return void

EndClip() public static method

Removes a clip region. Disables the FontEngine from using current clipping context.
public static EndClip ( ) : void
return void

GetClipRect() public static method

Returns the current clip rectangle.
public static GetClipRect ( ) : Rectangle
return System.Drawing.Rectangle

GetFinalMatrix() public static method

public static GetFinalMatrix ( ) : ].float[
return ].float[

GetFinalTransform() public static method

public static GetFinalTransform ( ) : MediaPortal.GUI.Library.TransformMatrix
return MediaPortal.GUI.Library.TransformMatrix

GetOffsetCorrectionTransform() public static method

Get the transformation matrix that corrects for UI Calibration translation
public static GetOffsetCorrectionTransform ( ) : MediaPortal.GUI.Library.TransformMatrix
return MediaPortal.GUI.Library.TransformMatrix

GetOutputRect() public static method

Calculates a rectangle based on current calibration values/pixel ratio
public static GetOutputRect ( int sourceWidth, int sourceHeight, int maxWidth, int maxHeight, int &width, int &height ) : void
sourceWidth int width of source rectangle
sourceHeight int height of source rectangle
maxWidth int max. width allowed
maxHeight int max. height allowed
width int returned width of calculated rectangle
height int returned height of calculated rectangle
return void

GetTexturePoolType() public static method

public static GetTexturePoolType ( ) : Pool
return Pool

GetThemedSkinDirectory() public static method

Return a themed version of the requested directory, otherwise return the default skin directory.
public static GetThemedSkinDirectory ( string dir ) : string
dir string
return string

GetThemedSkinFile() public static method

Return a themed version of the requested skin filename, otherwise return the default skin filename. Use a path to media to get images.
public static GetThemedSkinFile ( string filename ) : string
filename string
return string

HasThemeSpecificSkinFile() public static method

Returns true if the current theme has the specified file.
public static HasThemeSpecificSkinFile ( string filename ) : bool
filename string
return bool

IsDirectX9ExUsed() public static method

public static IsDirectX9ExUsed ( ) : bool
return bool

IsTvWindow() public static method

Returns true if the active window belongs to the my tv plugin
public static IsTvWindow ( ) : bool
return bool

IsTvWindow() public static method

Returns true if the specified window belongs to the my tv plugin
public static IsTvWindow ( int windowId ) : bool
windowId int id of window
return bool

Load() public static method

Load calibration values for current resolution
public static Load ( ) : void
return void

LoadIdentity() public static method

Replaces the current control transform with the identity matrix.
public static LoadIdentity ( ) : void
return void

MergeAlpha() public static method

public static MergeAlpha ( uint color ) : uint
color uint
return uint

OnAction() public static method

Send a action to anyone interested
public static OnAction ( Action action ) : void
action Action The message.
return void

PopMatrix() public static method

This is a convenience method for users who wish to manage the control transform matrix with an OpenGL-like matrix stack. The matrix stack managed is *not* used to set the final transform for MP callers who do not use Push/Pop.
public static PopMatrix ( ) : void
return void

PopProjectionMatrix() public static method

This is a convenience method for users who wish to manage the direct3d projection matrix with an OpenGL-like matrix stack. The matrix stack managed is *not* used to set the direct3d projection matrix for MP callers who do not use Push/Pop.
public static PopProjectionMatrix ( ) : void
return void

PushMatrix() public static method

This is a convenience method for users who wish to manage the control transform matrix with an OpenGL-like matrix stack. The matrix stack managed is *not* used to set the final transform for MP callers who do not use Push/Pop.
public static PushMatrix ( ) : void
return void

PushProjectionMatrix() public static method

This is a convenience method for users who wish to manage the direct3d projection matrix with an OpenGL-like matrix stack. The matrix stack managed is *not* used to set the direct3d projection matrix for MP callers who do not use Push/Pop.
public static PushProjectionMatrix ( ) : void
return void

RemoveTransform() public static method

public static RemoveTransform ( ) : void
return void

RenderBlack() public static method

public static RenderBlack ( ) : void
return void

ResetCursor() public static method

public static ResetCursor ( bool interpolate ) : void
interpolate bool
return void

ResetLastActivity() public static method

Resets last user activity & unblanks screen
public static ResetLastActivity ( ) : void
return void

RestoreCameraPosition() public static method

public static RestoreCameraPosition ( ) : void
return void

RotateX() public static method

Rotates the control transform matrix by the specified angle (in degrees) around the x-axis.
public static RotateX ( float angle, float y, float z ) : void
angle float
y float
z float
return void

RotateY() public static method

Rotates the control transform matrix by the specified angle (in degrees) around the y-axis.
public static RotateY ( float angle, float x, float z ) : void
angle float
x float
z float
return void

RotateZ() public static method

Rotates the control transform matrix by the specified angle (in degrees) around the z-axis.
public static RotateZ ( float angle, float x, float y ) : void
angle float
x float
y float
return void

Save() public static method

Save calibration settings to calibrationWxH.xml where W=resolution width H=resolution height
public static Save ( ) : void
return void

Scale() public static method

Scales the control transform matrix by the specified vector.
public static Scale ( float x, float y, float z ) : void
x float
y float
z float
return void

ScaleFinalCoords() public static method

public static ScaleFinalCoords ( float &x, float &y, float &z ) : void
x float
y float
z float
return void

ScaleFinalXCoord() public static method

public static ScaleFinalXCoord ( float x, float y ) : float
x float
y float
return float

ScaleFinalYCoord() public static method

public static ScaleFinalYCoord ( float x, float y ) : float
x float
y float
return float

ScaleFinalZCoord() public static method

public static ScaleFinalZCoord ( float x, float y ) : float
x float
y float
return float

ScaleHorizontal() public static method

Scale X position for current resolution
public static ScaleHorizontal ( int x ) : int
x int X coordinate to scale.
return int

ScaleHorizontal() public static method

public static ScaleHorizontal ( float &x ) : void
x float
return void

ScaleHorizontal() public static method

Scale X position for current resolution
public static ScaleHorizontal ( int &x ) : void
x int X coordinate to scale.
return void

ScalePosToScreenResolution() public static method

Scale position for current resolution
public static ScalePosToScreenResolution ( int &x, int &y ) : void
x int X coordinate to scale.
y int Y coordinate to scale.
return void

ScaleRectToScreenResolution() public static method

Scale rectangle for current resolution.
public static ScaleRectToScreenResolution ( int &left, int &top, int &right, int &bottom ) : void
left int left side
top int top side
right int right side
bottom int bottom side
return void

ScaleVertical() public static method

Scale y position for current resolution
public static ScaleVertical ( int y ) : int
y int Y coordinate to scale.
return int

ScaleVertical() public static method

public static ScaleVertical ( float &y ) : void
y float
return void

ScaleVertical() public static method

Scale y position for current resolution
public static ScaleVertical ( int &y ) : void
y int Y coordinate to scale.
return void

ScaleVideoWindow() public static method

public static ScaleVideoWindow ( int &width, int &height, float &x, float &y ) : void
width int
height int
x float
y float
return void

SendMessage() public static method

Send a message to anyone interested
public static SendMessage ( GUIMessage msg ) : void
msg GUIMessage The message.
return void

SetCameraPosition() public static method

public static SetCameraPosition ( Point camera ) : void
camera Point
return void

SetPerspectiveProjectionMatrix() public static method

Sets the direct3d project matrix to the specfied perspective view.
public static SetPerspectiveProjectionMatrix ( float fovy, float aspectratio, float nearPlane, float farPlane ) : void
fovy float
aspectratio float
nearPlane float
farPlane float
return void

SetScalingResolution() public static method

public static SetScalingResolution ( int posX, int posY, bool needsScaling ) : void
posX int
posY int
needsScaling bool
return void

SetWindowTransform() public static method

public static SetWindowTransform ( MediaPortal.GUI.Library.TransformMatrix matrix ) : void
matrix MediaPortal.GUI.Library.TransformMatrix
return void

Translate() public static method

Translates the control transform matrix by the specified vector.
public static Translate ( float x, float y, float z ) : void
x float
y float
z float
return void

UpdateCameraPosition() public static method

public static UpdateCameraPosition ( Point camera ) : void
camera Point
return void

UpdateFinalTransform() public static method

public static UpdateFinalTransform ( MediaPortal.GUI.Library.TransformMatrix matrix ) : void
matrix MediaPortal.GUI.Library.TransformMatrix
return void

VideoReceived() public static method

public static VideoReceived ( ) : void
return void

VideoWindowChanged() public static method

Delegates video window size/position change notify to be done by main thread
public static VideoWindowChanged ( ) : void
return void

Property Details

DX9Device public_oe static_oe property

public static Device DX9Device
return Device

DX9DeviceMadVr public_oe static_oe property

public static Device DX9DeviceMadVr
return Device

InitVolumeHandlerLock public_oe static_oe property

public static object InitVolumeHandlerLock
return object

LastFramesIndex public_oe static_oe property

public static int LastFramesIndex
return int

RenderModeSwitch public_oe static_oe property

public static object RenderModeSwitch
return object

WindowChangeLock public_oe static_oe property

public static object WindowChangeLock
return object

autoCropper public_oe static_oe property

public static IAutoCrop autoCropper
return IAutoCrop

form public_oe static_oe property

public static Form,System.Windows.Forms form
return System.Windows.Forms.Form

graphics public_oe static_oe property

public static Graphics,System.Drawing graphics
return System.Drawing.Graphics