Location:
W32STD.H
Link against: ws32.lib
class CWsScreenDevice : public CBitmapDevice, public MWsClientClass;
Software device screen.
An object of this class can be used to enquire or set parameters of the software screen, and determine the physical limits of the device.
CWsScreenDevice gives access to the list of screen modes. These are the combinations of screen rotation and screen size supported by the device. One of them is selected as the current screen mode. The possible screen modes are initialised in wsini.ini.
MWsClientClass
- Base class for all classes whose objects are clients of the window server
MGraphicsDeviceMap
- Interface class for mapping between twips and device-specific units (pixels)
CBase
- Base class for all classes to be instantiated on the heap
CGraphicsDevice
- Specifies the interface for concrete device classes
CBitmapDevice
- Defines an abstract interface for the capabilities and attributes of a bitmapped graphics device
CWsScreenDevice
- Software device screen
Defined in CWsScreenDevice
:
AddFile()
, CWsScreenDevice()
, CWsScreenDevice()
, Construct()
, Construct()
, CopyScreenToBitmap()
, CopyScreenToBitmap()
, CreateContext()
, CreateContext()
, CurrentScreenMode()
, DisplayMode()
, EIncludeSprite
, EIncludeTextCursor
, ERemoveSprite
, FontHeightInPixels()
, FontHeightInTwips()
, GetCurrentScreenModeScale()
, GetCurrentScreenModeScaledOrigin()
, GetDefaultScreenModeOrigin()
, GetDefaultScreenSizeAndRotation()
, GetDefaultScreenSizeAndRotation()
, GetFontById()
, GetNearestFontInPixels()
, GetNearestFontInTwips()
, GetNearestFontToDesignHeightInPixels()
, GetNearestFontToDesignHeightInTwips()
, GetNearestFontToMaxHeightInPixels()
, GetNearestFontToMaxHeightInTwips()
, GetPalette()
, GetPixel()
, GetRotationsList()
, GetScanLine()
, GetScreenModeDisplayMode()
, GetScreenModeOrigin()
, GetScreenModeScale()
, GetScreenModeScaledOrigin()
, GetScreenModeSizeAndRotation()
, GetScreenModeSizeAndRotation()
, GetScreenNumber()
, GetScreenSizeModeList()
, HorizontalPixelsToTwips()
, HorizontalTwipsToPixels()
, NumScreenModes()
, NumTypefaces()
, PaletteAttributes()
, PointerRect()
, RectCompare()
, RectCompare()
, ReleaseFont()
, RemoveFile()
, ScreenModeEnforcement()
, SetAppScreenMode()
, SetBackLight()
, SetCustomPalette()
, SetPalette()
, SetScreenSizeAndRotation()
, SetScreenSizeAndRotation()
, SizeInPixels()
, SizeInTwips()
, TSpriteInCompare
, TypefaceSupport()
, VerticalPixelsToTwips()
, VerticalTwipsToPixels()
, ~CWsScreenDevice()
Inherited from CBase
:
Delete()
,
Extension_()
,
operator new()
Inherited from CBitmapDevice
:
CreateBitmapContext()
Inherited from MGraphicsDeviceMap
:
PixelsToTwips()
,
TwipsToPixels()
Inherited from MWsClientClass
:
WsHandle()
IMPORT_C CWsScreenDevice();
Default constructor. Developers should use the other constructor overload.
IMPORT_C CWsScreenDevice(RWsSession &aWs);
Constructs a new screen device attached to a particular window server session.
|
IMPORT_C TInt Construct();
Completes construction of the object.
This method invokes Construct(TInt aDefaultScreenNumber)
with default Screen number.
|
IMPORT_C TInt Construct(TInt aDefaultScreenNumber);
Completes construction of the object.
This function always causes a flush of the window server buffer.
|
|
virtual IMPORT_C TDisplayMode DisplayMode() const;
Gets the device's display mode.
This function always causes a flush of the window server buffer.
|
virtual IMPORT_C TSize SizeInPixels() const;
Gets the size of the screen device area in pixels.
This function always causes a flush of the window server buffer.
|
virtual IMPORT_C TSize SizeInTwips() const;
Gets the size of the screen device area in twips.
This function always causes a flush of the window server buffer.
|
virtual IMPORT_C TInt HorizontalTwipsToPixels(TInt aTwips) const;
Translates a twips to a pixel value.
|
|
virtual IMPORT_C TInt VerticalTwipsToPixels(TInt aTwips) const;
Translates a vertical dimension of a screen device in twips into pixels.
|
|
virtual IMPORT_C TInt HorizontalPixelsToTwips(TInt aPixels) const;
Translates a specified pixel value to a twips value.
|
|
virtual IMPORT_C TInt VerticalPixelsToTwips(TInt aPixels) const;
Translates a vertical dimension of a screen device in pixels into twips.
|
|
IMPORT_C TRect PointerRect() const;
Gets the active area for the pointing device.
This is a device-dependent parameter, and will typically depend on the screen size and other factors.
This function always causes a flush of the window server buffer.
|
virtual IMPORT_C TInt CreateContext(CGraphicsContext *&aGc);
Creates a graphics context for this device.
This function always causes a flush of the window server buffer.
|
|
inline TInt CreateContext(CWindowGc *&aGc);
Creates a graphics context for this device.
This function always causes a flush of the window server buffer.
|
|
virtual IMPORT_C TInt GetNearestFontInTwips(CFont *&aFont, const TFontSpec &aFontSpec);
Gets the nearest font, in twips, to that in the specified font specification.
This function is replaced by GetNearestFontToDesignHeightInTwips()
The font and bitmap server returns a pointer to the nearest matching font from those available, in aFont.
|
|
virtual IMPORT_C TInt GetNearestFontToDesignHeightInTwips(CFont *&aFont, const TFontSpec &aFontSpec);
Gets the nearest font in twips to that specified.
The font and bitmap server returns a pointer to the nearest matching font from those available. Matches to design height of font - this gives no guarantees on the actual physical size of the font.
This function replaces GetNearestFontInTwips
|
|
virtual IMPORT_C TInt GetNearestFontToMaxHeightInTwips(CFont *&aFont, const TFontSpec &aFontSpec, TInt aMaxHeight);
Gets the nearest font, in twips, to that specified.
The font and bitmap server returns a pointer to the nearest matching font from those available. Matches to max height of font - this does its best to return a font that will fit within the maximum height specified (but note that variations due to hinting algorithms may rarely result in this height being exceeded by up to one pixel). Problems can also be encountered with bitmap fonts where the typeface exists but doesn't have a font small enough.
|
|
virtual IMPORT_C TInt NumTypefaces() const;
Gets the number of typefaces supported by the screen device.
|
virtual IMPORT_C void TypefaceSupport(TTypefaceSupport &aTypefaceSupport, TInt aTypefaceIndex) const;
Gets typeface information for a particular typeface index number.
This information is returned in aTypefaceSupport, and includes: the typeface name and typeface attributes (in a TTypeface
object), the number of font heights, the maximum and minimum font heights and whether it is a scalable typeface.
|
virtual IMPORT_C TInt FontHeightInTwips(TInt aTypefaceIndex, TInt aHeightIndex) const;
Gets the height in twips of the specified font.
The value returned is rounded up or down to the nearest font height in twips.
The specified font is the one with height index number aHeightIndex of the typeface with index number aTypefaceIndex.
|
|
virtual IMPORT_C void GetPixel(TRgb &aColor, const TPoint &aPixel) const;
Gets the RGB colour of an individual pixel on a screen device.
This function always causes a flush of the window server buffer.
|
virtual IMPORT_C void GetScanLine(TDes8 &aScanLine, const TPoint &aStartPixel, TInt aPixelLength, TDisplayMode aDispMode)
const;
Gets a scanline into a buffer.
The pixels are converted from the bitmapped graphics device display mode format to the format of the specified device display mode.
By specifying the start pixel and number of pixels either the whole or a portion of a bitmapped graphics device pixel row may be copied.
This function always causes a flush of the window server buffer.
|
virtual IMPORT_C TInt AddFile(const TDesC &aName, TInt &aId);
Adds a font file to the device's typeface store. The specified font file must be accessible to any process, i.e. not located inside an application's private directory.
|
|
virtual IMPORT_C void RemoveFile(TInt aId=0);
Removes a font file from the font store.
|
virtual IMPORT_C TInt GetNearestFontInPixels(CFont *&aFont, const TFontSpec &aFontSpec);
Gets the nearest font to that specified for use by a bitmapped graphics device.
This function is replaced by GetNearestFontToDesignHeightInPixels()
The font and bitmap server returns a pointer to the nearest matching font from those available, in aFont.
|
|
virtual IMPORT_C TInt GetNearestFontToDesignHeightInPixels(CFont *&aFont, const TFontSpec &aFontSpec);
Gets the nearest font in pixels to that specified.
The font and bitmap server returns a pointer to the nearest matching font from those available. Matches to design height of font - this gives no guarantees on the actual physical size of the font.
This function replaces GetNearestFontInTwips
|
|
virtual IMPORT_C TInt GetNearestFontToMaxHeightInPixels(CFont *&aFont, const TFontSpec &aFontSpec, TInt aMaxHeight);
Gets the nearest font in pixels to that specified.
The font and bitmap server returns a pointer to the nearest matching font from those available. Matches to max height of font - this does its best to return a font that will fit within the maximum height specified (but note that variations due to hinting algorithms may rarely result in this height being exceeded by up to one pixel). Problems can also be encountered with bitmap fonts where the typeface exists but doesn't have a font small enough.
|
|
virtual IMPORT_C TInt FontHeightInPixels(TInt aTypefaceIndex, TInt aHeightIndex) const;
Gets the height of the specified font in pixels.
The value returned is rounded up or down to the nearest font height in pixels.
The specified font is the one with height index number aHeightIndex of the typeface with index number aTypefaceIndex.
|
|
virtual IMPORT_C void ReleaseFont(CFont *aFont);
Releases a specified font.
This function is used to indicate that the specified font is no longer needed for use by the screen device. As fonts can be shared between applications, this function does not delete the copy of the font from RAM, unless the font was only being used by this device.
|
virtual IMPORT_C void PaletteAttributes(TBool &aModifiable, TInt &aNumEntries) const;
Gets the attributes of the device's palette.
This function always causes a flush of the window server buffer.
|
virtual IMPORT_C void SetPalette(CPalette *aPalette);
Sets the screen device's palette.
This function always causes a flush of the window server buffer.
Use of this function is deprecated. SetCustomPalette()
should be used instead.
|
virtual IMPORT_C TInt GetPalette(CPalette *&aPalette) const;
Gets the screen device's palette.
This function always causes a flush of the window server buffer.
|
|
Capability: | WriteDeviceData |
IMPORT_C TInt SetCustomPalette(const CPalette *aPalette);
Sets the custom palette.
This function always causes a flush of the window server buffer.
|
|
|
IMPORT_C TInt GetFontById(CFont *&aFont, TUid aUid, const TAlgStyle &aAlgStyle);
Gets a font by its bitmap UID.
Within a font file each font has its own UID. An algorithmic style is not part of the actual font description, but is applied to it. For example algorithmic bolding applies an algorithm to increase the apparent weight of each character in the font. Note that the algorithm is applied blindly, and that a typeface may already have a style e.g. it may already be bold or italic. Thus a bold face will appear extra-bold if algorithmic bolding is applied to it. Algorithmic effects are not necessarily a substitute for typeface design and should be used with care.
|
|
IMPORT_C TBool RectCompare(const TRect &aRect1, const TRect &aRect2);
Compares two areas of the screen to see if they have the same content.
If there are any sprites on the screen they are not included in the comparison.
This function always causes a flush of the window server buffer.
|
|
IMPORT_C TBool RectCompare(const TRect &aRect1, const TRect &aRect2, TUint aFlags) const;
Compares two areas of the screen to see if they have the same content.
This function always causes a flush of the window server buffer.
|
|
IMPORT_C TInt CopyScreenToBitmap(const CFbsBitmap *aBitmap) const;
Saves the entire screen to a bitmap.
This function always causes a flush of the window server buffer.
|
|
IMPORT_C TInt CopyScreenToBitmap(const CFbsBitmap *aBitmap, const TRect &aRect) const;
Saves a region of the screen to a bitmap.
This function always causes a flush of the window server buffer.
|
|
Capability: | Illegal |
IMPORT_C TInt SetBackLight(TBool aBackLight);
Set back light.
|
|
IMPORT_C void SetScreenSizeAndRotation(const TPixelsTwipsAndRotation &aSizeAndRotation);
Sets the current screen size in twips and pixels, and the rotation for the screen device.
|
IMPORT_C void GetDefaultScreenSizeAndRotation(TPixelsTwipsAndRotation &aSizeAndRotation) const;
Gets the current screen size (in both pixels and twips) and rotation.
This function always causes a flush of the window server buffer.
|
IMPORT_C void SetScreenSizeAndRotation(const TPixelsAndRotation &aSizeAndRotation);
Sets the current screen size in pixels, and the rotation for the screen device.
This function always causes a flush of the window server buffer.
|
IMPORT_C void GetDefaultScreenSizeAndRotation(TPixelsAndRotation &aSizeAndRotation) const;
Gets the current screen size (in pixels) and the rotation.
This function always causes a flush of the window server buffer.
|
IMPORT_C TScreenModeEnforcement ScreenModeEnforcement() const;
Gets the current screen mode enforcement settings.
The global screen mode enforcement setting defines the requirements that a group window must meet to be displayed. The requirements
may have been set in wsini.ini, or using SetScreenModeEnforcement()
.
This function always causes a flush of the window server buffer.
|
IMPORT_C void GetScreenModeSizeAndRotation(TInt aMode, TPixelsTwipsAndRotation &aSizeAndRotation) const;
Get the screen rotation and size, in both pixels and twips, for the specified screen mode.
This function always causes a flush of the window server buffer.
|
IMPORT_C void GetScreenModeSizeAndRotation(TInt aMode, TPixelsAndRotation &aSizeAndRotation) const;
Get the screen rotation and size (in pixels) for the specified screen mode.
This function always causes a flush of the window server buffer.
|
IMPORT_C TInt GetRotationsList(TInt aMode, CArrayFixFlat< TInt > *aRotationList) const;
Gets the list of valid rotations for a particular screen size.
The list is initialised in wsini.ini.
This function always causes a flush of the window server buffer.
|
|
IMPORT_C TInt NumScreenModes() const;
Gets the number of available screen modes.
Each mode has a different size, and one or more possible rotations/orientations.
This function always causes a flush of the window server buffer.
|
IMPORT_C TInt CurrentScreenMode() const;
Gets the current screen mode index.
This function always causes a flush of the window server buffer.
|
IMPORT_C void SetAppScreenMode(TInt aMode);
Sets the application's screen mode; this also sets all the attributes of the screen mode.
Note: although this API was added in Symbian OS v8.0, the functionality is only available from Symbian OS v8.1 onwards.
|
IMPORT_C TPoint GetDefaultScreenModeOrigin() const;
Gets the origin for the current screen mode
This function always causes a flush of the window server buffer.
|
IMPORT_C TPoint GetScreenModeOrigin(TInt aMode) const;
Get the origin of the screen for the specified screen mode.
This function always causes a flush of the window server buffer.
|
|
IMPORT_C TSize GetCurrentScreenModeScale() const;
Gets the scale for the current screen mode.
This function always causes a flush of the window server buffer.
|
IMPORT_C TSize GetScreenModeScale(TInt aMode) const;
Gets the scale for the specified screen mode.
This function always causes a flush of the window server buffer.
|
|
IMPORT_C TPoint GetCurrentScreenModeScaledOrigin() const;
Gets the current screen mode's scaled origin.
The formula used is (A+B-1)/B
where:
A is the screen mode origin in physical coordinates,
B is the screen mode scale width.
The result obtained is the scaled origin of the present screen mode.
|
IMPORT_C TPoint GetScreenModeScaledOrigin(TInt aMode) const;
Gets the specfied screen mode's scaled origin.
The functionality is same as CWsScreenDevice::GetCurrentScreenModeScaledOrigin()
.
It always causes a flush of the window server buffer.
|
|
IMPORT_C TInt GetScreenSizeModeList(RArray< TInt > *aModeList);
Gets the available screen size modes.
This function retrieves all available screen size modes which are supported by the server.
|
|
IMPORT_C TDisplayMode GetScreenModeDisplayMode(const TInt &aMode) const;
Gets the display mode of the screen for the specified screen mode
This function always causes a flush of the window server buffer.
|
|
IMPORT_C TInt GetScreenNumber() const;
Get device's screen number
|
TSpriteInCompare
Whether or not to include sprites when comparing areas of the screen
|