PrevNextUpHome SophiaFramework UNIVERSE 5.3
SFBDisplay
Wrapper Class for the IDisplay interface.
#include <SFBDisplay.h.hpp>
class SFBDisplay : public SFBBase;
SFMTYPEDEFWRAPPER(SFBDisplay)

Inheritance diagram

 Inheritance diagram of SFBDisplayClass

Veresion

BREW 2.0 BREW 2.1 BREW 3.1 BREW 4.0
O O O O

Reference

BREW API IDisplay

Member

Public Functions
Void Backlight( Bool on )
Turn the display backlight(s) of the phone on or off.
Void BitBlt( SInt32 xDest , SInt32 yDest , SInt32 cxDest , SInt32 cyDest , VoidConstPtr bmpSrc , SInt32 xSrc , SInt32 ySrc , AEERasterOp rop = AEE_RO_COPY )
Perform a bit-block transfer of the data corresponding to a rectangle of pixels from the specified source bitmap into the given area in the destination bitmap.
Void BitBlt( SInt32 xDest , SInt32 yDest , SInt32 cxDest , SInt32 cyDest , SFXBufferConstRef bmpSrc , SInt32 xSrc , SInt32 ySrc , AEERasterOp rop = AEE_RO_COPY )
Perform a bit-block transfer of the data corresponding to a rectangle of pixels from the specified source bitmap into the given area in the destination bitmap.
Void BitBlt( SFXRectangleConstRef rect , VoidConstPtr bmpSrc , SFXGridConstRef gridSrc , AEERasterOp rop = AEE_RO_COPY )
Perform a bit-block transfer of the data corresponding to a rectangle of pixels from the specified source bitmap into the given area in the destination bitmap.
Void BitBlt( SFXRectangleConstRef rect , SFXBufferConstRef bmpSrc , SFXGridConstRef gridSrc , AEERasterOp rop = AEE_RO_COPY )
Perform a bit-block transfer of the data corresponding to a rectangle of pixels from the specified source bitmap into the given area in the destination bitmap.
Void BitBlt( SFXRectangleConstRef rect , SFBBitmapSmpConstRef bmpSrc , SFXGridConstRef gridSrc , AEERasterOp rop = AEE_RO_COPY )
Perform a bit-block transfer of the data corresponding to a rectangle of pixels from the specified source bitmap into the given area in the destination bitmap.
Void ClearScreen( Void )
Clear the current clipping rectangle, or the entire destination bitmap if no clipping rectangle set.
SFCError Clone( SFBDisplaySmpPtr clone )
Create a new SFBDisplay instance, and copies the current settings from the primary (source) SFBDisplay instance to the new one.
SFBDisplaySmp Clone( Void )
Create a new SFBDisplay instance, and copies the current settings from the primary (source) SFBDisplay instance to the new one.
SFCError CreateDIBitmap( SFBDIBSmpPtr clone , UInt08 depth , UInt16 width , UInt16 height )
Create a new device-independent bitmap (DIB).
SFBDIBSmp CreateDIBitmap( UInt08 depth , SFXSizeConstRef size )
Create a new device-independent bitmap (DIB).
SInt32 DrawFrame( SFXRectanglePtr rect , AEEFrameType frameType , RGBVAL fillType )
Draw complex frames based upon the color resolution of the system. It allows single and 3D frames to be drawn.
SInt32 DrawFrame( SFXRectanglePtr rect , AEEFrameType frameType , SFXRGBColorConstRef fillType )
Draw complex frames based upon the color resolution of the system. It allows single and 3D frames to be drawn.
Void DrawHLine( SInt16 x , SInt16 y , SInt16 length )
Draw a horizontal line of the given length, starting from the given point. The line shall be Black in color.
Void DrawHLine( SFXPixelConstRef pixel , SInt16 length )
Draw a horizontal line of the given length, starting from the given point. The line shall be Black in color.
Void DrawRect( SFXRectangleConstRef rect , RGBVAL frameColor , RGBVAL fillColor , UInt32 flags )
Draw the given rectangle using the specified color and flags.
Void DrawRect( SFXRectangleConstRef rect , SFXRGBColorConstRef frameColor , SFXRGBColorConstRef fillColor , UInt32 flags )
Draw the given rectangle using the specified color and flags.
SFCError DrawText( AEEFont font , WCharConstPtr text , SInt32 textLength , SInt32 x , SInt32 y , SFXRectangleConstPtr rect , UInt32 flags = IDF_ALIGN_NONE )
Draw the given text at the given location, using the given font and bounds the text to the clipping rectangle.
SFCError DrawText( AEEFont font , WCharConstPtr text , SInt32 textLength , SInt32 x , SInt32 y , SFXRectangleConstRef rect , UInt32 flags = IDF_ALIGN_NONE )
Draw the given text at the given location, using the given font and bounds the text to the clipping rectangle.
SFCError DrawText( AEEFont font , SFXWideStringConstRef text , SInt32 textLength , SFXGridConstPtr grid , SFXRectangleConstPtr rect , UInt32 align = IDF_ALIGN_NONE )
Draw the given text at the given location, using the given font and bounds the text to the clipping rectangle.
SFCError DrawText( AEEFont font , SFXWideStringConstRef text , SInt32 textLength , SFXGridConstRef grid , SFXRectangleConstRef rect , UInt32 align = IDF_ALIGN_NONE )
Draw the given text at the given location, using the given font and bounds the text to the clipping rectangle.
SFCError DrawText( AEEFont font , SFXWideStringConstRef text , SInt32 textLength , SFXGridConstRef grid , UInt32 align = IDF_ALIGN_NONE )
Draw the given text at the given location, using the given font and bounds the text to the clipping rectangle.
SFCError DrawText( AEEFont font , SFXWideStringConstRef text , SInt32 textLength , SFXRectangleConstRef rect , UInt32 align = IDF_ALIGN_NONE )
Draw the given text at the given location, using the given font and bounds the text to the clipping rectangle.
Void DrawVLine( SInt16 x , SInt16 y , SInt16 length )
Draw a vertical line of the given length, starting from the given point. The line shall be Black in color.
Void DrawVLine( SFXPixelConstRef pixel , SInt16 length )
Draw a vertical line of the given length, starting from the given point. The line shall be Black in color.
Void EraseRect( SFXRectanglePtr rect )
Fill the given rectangle with the default background color.
Void EraseRgn( SInt16 x , SInt16 y , UInt16 cx , UInt16 cy )
Fill the region enclosed by the given coordinates with the default background color.
Void EraseRgn( SFXRectangleConstRef rect )
Fill the region enclosed by the given coordinates with the default background color.
Void FillRect( SFXRectanglePtr rect , RGBVAL fillColor )
Draw a filled rectangle with the specified color.
Void FillRect( SFXRectanglePtr rect , SFXRGBColorConstRef fillColor )
Draw a filled rectangle with the specified color.
Void FrameButton( SFXRectanglePtr rect , Bool pressed , RGBVAL fillType )
Draw a 3D framed button based upon the color resolution of the system.
Void FrameButton( SFXRectanglePtr rect , Bool pressed , SFXRGBColorConstRef fillType )
Draw a 3D framed button based upon the color resolution of the system.
Void FrameRect( SFXRectanglePtr rect )
Draw the borders of a rectangle.
Void FrameSolidRect( SFXRectanglePtr rect )
Draw the borders of a rectangle and fills it with a color.
Void GetClipRect( SFXRectanglePtr rect )
Return the current clipping rectangle.
SFXRectangle GetClipRect( Void )
Return the current clipping rectangle.
SFBBitmapSmp GetDestination( Void )
Get the destination bitmap to which will be rendered.
SFCError GetDeviceBitmap( SFBBitmapSmpPtr clone )
Retrieve the device (screen) bitmap.
SFBBitmapSmp GetDeviceBitmap( Void )
Retrieve the device (screen) bitmap.
SInt32 GetFontMetrics( AEEFont font , SInt32Ptr ascent = null , SInt32Ptr descent = null )
Retrieve information about the specified font.
static
SFBDisplaySmp
GetInstance( Void )
Get Instance of SFBDisplay Interface.
WChar GetSymbol( AEESymbol symbol , AEEFont font )
Return the char corresponding to the specified symbol value.
Void InvertRect( SFXRectanglePtr rect )
Invert the colors in the given rectangle.
Bool IsEnabled( Void )
Query the enabled state of the display corresponding to the destination bitmap
Void MakeDefault( Void )
Make this SFBDisplay the default.
SInt32 MeasureText( AEEFont font , WCharConstPtr text )
Measure the width of a given text if drawn using the specified font.
SInt32 MeasureText( AEEFont font , SFXWideStringConstRef text )
Measure the width of a given text if drawn using the specified font.
SInt32 MeasureTextEx( AEEFont font , WCharConstPtr text , SInt32 textLength , SInt32 maxWidth , SInt32Ptr fits )
Measure the width of a given text if drawn using the specified font. The return value is the actual pixel width of the string.
SInt32 MeasureTextEx( AEEFont font , SFXWideStringConstRef text , SInt32 textLength , SInt32 maxWidth , SInt32Ptr fits )
Measure the width of a given text if drawn using the specified font. The return value is the actual pixel width of the string.
static
SFBDisplaySmp
NewInstance( AEECLSID clsid = AEECLSID_DISPLAYCLONE )
Create a new SFBDisplay instance.
static
SFBDisplaySmp
NewInstance( SFCErrorPtr exception = null )
Create a new SFBDisplay instance.
static
SFBDisplaySmp
NewInstance( AEECLSID id , SFCErrorPtr exception = null )
Create a new SFBDisplay instance.
SFCError NotifyEnable( SFXCallbackPtr callback )
Register for a notification of a change to the display's enabled state.
Void ResetClipRect( Void )
Reset the Clip Rectangle.
SFCError ResetDestination( Void )
Reset destination bitmap which will be rendered of SFBDIsplay, and set it to corrent bitmap.
Void SetAnnunciators( UInt16 value , UInt16 mask )
Turn the specified annunciators on (or off).
Void SetClipRect( SFXRectangleConstRef rect )
Set the clipping rectangle.
RGBVAL SetColor( AEEClrItem item , RGBVAL itemColor )
Set and retrieves the color of the specified color item.
RGBVAL SetColor( AEEClrItem item , SFXRGBColorConstRef itemColor )
Set and retrieves the color of the specified color item.
SFCError SetDestination( SFBBitmapSmpConstRef bmpDest )
Set the destination bitmap to which will be rendered.
SFBFontPtr SetFont( AEEFont font , SFBFontPtr newFont )
Set the Font to be used to draw the specified AEEFont.
SFCError SetPrefs( ACharConstPtr dispSettings , SInt32 dispSettingsLen )
Change the display settings for the display associated with this IDisplay's destination bitmap.
SFCError SetPrefs( SFXAnsiStringConstRef dispSettings )
Change the display settings for the display associated with this IDisplay's destination bitmap.
Void Update( Void )
Update the screen if the destination bitmap is the device bitmap.
Void UpdateEx( Bool defer )
Update the screen if the destination bitmap is the device bitmap.
Protected Functions
static
SFBBaseSmp
FactoryByCreate( AEECLSID id , SFCErrorPtr exception = null ) (inherits from SFBBase)
Create the instance for the specified ClassID's interface.
static
SFBBaseSmp
FactoryByQuery( SFBQuerySmpConstRef query , AEECLSID id , SFCErrorPtr exception = null ) (inherits from SFBBase)
Create the instance for the specified ClassID's interface using the SFBQuery instance.

SFBDisplay::Backlight
Turn the display backlight(s) of the phone on or off.
[ public ]
Void Backlight(
    Bool on   // if true, the display backlights are turned on. 
              // if false, the display backlights are turned off
);

Description

This function turns the display backlight(s) of the phone on or off depending on the parameter "on".

When this function is used to turn the backlight on, the OEM of the handset (that is, handset manufacturer) decides how long it remains on before it is turned off again. Similarly, when this function is used to turn off the backlight, the OEM of the handset decides how long it remains off before it is turned on again.

Reference

BREW API IDISPLAY_Backlight


SFBDisplay::BitBlt
Perform a bit-block transfer of the data corresponding to a rectangle of pixels from the specified source bitmap into the given area in the destination bitmap.
[ public ]
Void BitBlt(
    SInt32 xDest                    
    SInt32 yDest                    
    SInt32 cxDest                   
    SInt32 cyDest                   
    VoidConstPtr bmpSrc             
    SInt32 xSrc                     
    SInt32 ySrc                     
    AEERasterOp rop = AEE_RO_COPY   
);
[ public ]
Void BitBlt(
    SInt32 xDest                    
    SInt32 yDest                    
    SInt32 cxDest                   
    SInt32 cyDest                   
    SFXBufferConstRef bmpSrc        
    SInt32 xSrc                     
    SInt32 ySrc                     
    AEERasterOp rop = AEE_RO_COPY   
);
[ public ]
Void BitBlt(
    SFXRectangleConstRef rect       
    VoidConstPtr bmpSrc             
    SFXGridConstRef gridSrc         
    AEERasterOp rop = AEE_RO_COPY   
);
[ public ]
Void BitBlt(
    SFXRectangleConstRef rect       
    SFXBufferConstRef bmpSrc        
    SFXGridConstRef gridSrc         
    AEERasterOp rop = AEE_RO_COPY   
);
[ public ]
Void BitBlt(
    SFXRectangleConstRef rect       
    SFBBitmapSmpConstRef bmpSrc     
    SFXGridConstRef gridSrc         
    AEERasterOp rop = AEE_RO_COPY   
);

Parameter

xDest

Specifies the X coordinates of the upper left corner of the destination rectangular area.

yDest

Specifies the Y coordinates of the upper left corner of the destination rectangular area.

cxDest

Specifies the width of the destination rectangle. If this is greater than the width of the source bitmap (bmpSrc), this parameter is taken to be equal to the width of the source bitmap.

cyDest

Specifies the height of the destination rectangle. If this is greater than the height of the source bitmap (bmpSrc), this parameter is taken to be equal to the height of the source bitmap.

bmpSrc

Pointer to IBitmap interface, IDIB interface, or Source Bitmap Structure. If it is Source Bitmap Structure, the data which the pointer is pointing at does not contains the AEE header. If it is BMP, the data may begins with BITMAPFILEHEADER.

xSrc

Specifies the X coordinate of the upper left corner of the source bitmap from where the bit-block transfer must begin.

ySrc

Specifies the Y coordinate of the upper left corner of the source bitmap from where the bit-block transfer must begin.

rop

Specifies the Raster operation that must be used while doing the bit-block transfer.

Description

This function performs a bit-block transfer of the data corresponding to a rectangle of pixels from the specified source bitmap into the given area in the destination bitmap. After calling this function, SFBDisplay::Update() must be called to update the screen. If there is a sequence of drawing operations being performed, it is sufficient to SFBDisplay::Update() once after all the drawing is done.

Reference

BREW API IDISPLAY_BitBlt | BREW API IBitmap | BREW API IDIB | SFBDisplay::Update | AEERasterOp


SFBDisplay::ClearScreen
Clear the current clipping rectangle, or the entire destination bitmap if no clipping rectangle set.
[ public ]
Void ClearScreen(Void);

Reference

BREW API IDISPLAY_ClearScreen


SFBDisplay::Clone
Create a new SFBDisplay instance, and copies the current settings from the primary (source) SFBDisplay instance to the new one.
[ public ]
SFCError Clone(
    SFBDisplaySmpPtr clone   // interface which will be filled with the address of the new instance
);
[ public ]
SFBDisplaySmp Clone(Void);

Reference

BREW API IDISPLAY_Clone


SFBDisplay::CreateDIBitmap
Create a new device-independent bitmap (DIB).
[ public ]
SFCError CreateDIBitmap(
    SFBDIBSmpPtr clone   // pointer to the new DIB Interface
    UInt08 depth         // number of bits used per pixel
    UInt16 width         // width in pixels of the new bitmap
    UInt16 height        // height in pixels of the new bitmap
);
[ public ]
SFBDIBSmp CreateDIBitmap(
    UInt08 depth           // number of bits used per pixel
    SFXSizeConstRef size   // size of the new bitmap
);

Reference

BREW API IDISPLAY_CreateDIBitmap | SFBBitmap | SFBDIB


SFBDisplay::DrawFrame
Draw complex frames based upon the color resolution of the system. It allows single and 3D frames to be drawn.
[ public ]
SInt32 DrawFrame(
    SFXRectanglePtr rect     // pointer to the source rectangle. 
                             // if this is null, this function just computes the adjustment value on each side based on the frame type and returns that value
    AEEFrameType frameType   // frame type
    RGBVAL fillType          // fill type for the inside of the frame
);
[ public ]
SInt32 DrawFrame(
    SFXRectanglePtr rect           // pointer to the source rectangle. 
                                   // if this is null, this function just computes the adjustment value on each side based on the frame type and returns that value
    AEEFrameType frameType         // frame type
    SFXRGBColorConstRef fillType   // fill type for the inside of the frame
);

Reference

BREW API IDISPLAY_DrawFrame | AEEFrameType


SFBDisplay::DrawHLine
Draw a horizontal line of the given length, starting from the given point. The line shall be Black in color.
[ public ]
Void DrawHLine(
    SInt16 x        // X coordinate of the starting point of the line
    SInt16 y        // Y coordinate of the starting point of the line
    SInt16 length   // length of the line
);
[ public ]
Void DrawHLine(
    SFXPixelConstRef pixel   // pixel of the starting point of the line
    SInt16 length            // length of the line
);

Reference

BREW API IDISPLAY_DrawHLine | SFBDisplay::DrawVLine


SFBDisplay::DrawRect
Draw the given rectangle using the specified color and flags.
[ public ]
Void DrawRect(
    SFXRectangleConstRef rect   // pointer to a AEERect structure that defines the coordinates of the rectangle to be drawn. 
                                // these coordinates are in terms of destination bitmap coordinates with the left,
                                // top of the destination being (0,0)
    RGBVAL frameColor           // this specifies the color to be used for drawing the frame (outer borders) 
                                // of the rectangle. This parameter is used 
                                // only if dwFlags contains the flag IDF_RECT_FRAME
    RGBVAL fillColor            // this specifies the color to be used for filling the rectangle. 
                                // this parameter is used only if dwFlags contains the flag IDF_RECT_FILL
    UInt32 flags                // specifies the flags to be used for drawing the rectangle. 
                                // this can be a logical OR of one or more of the following flags:
                                // IDF_RECT_FRAME : Draw the outer borders of the rectangle only.
                                // IDF_RECT_FILL : Fill the rectangle with clrFill color. 
                                // IDF_RECT_INVERT: Invert the contents of the specified rectangle. 
                                // when this flag is set, clrFrame and clrFill parameters won't matter
);
[ public ]
Void DrawRect(
    SFXRectangleConstRef rect        
    SFXRGBColorConstRef frameColor   
    SFXRGBColorConstRef fillColor    
    UInt32 flags                     
);

Reference

BREW API IDISPLAY_DrawRect | SFBDisplay::Update


SFBDisplay::DrawText
Draw the given text at the given location, using the given font and bounds the text to the clipping rectangle.
[ public ]
SFCError DrawText(
    AEEFont font                    // specifies the font that needs to be used for drawing the text
    WCharConstPtr text              // contains the String that needs to be drawn
    SInt32 textLength               // specifies the number of characters in pcText. 
                                    // if this is -1, the length will be automatically computed by this function
    SInt32 x                        // specifies the left edge of the rectangle into which text will be drawn. 
                                    // this parameter is ignored when a horizontal alignment flag is set
    SInt32 y                        // specifies the top edge of the rectangle into which text will be drawn. 
                                    // this parameter is ignored when a vertical alignment flag is set
    SFXRectangleConstPtr rect       // specifies the coordinates of the clipping rectangle. 
                                    // if this is null, the boundries of the destination bitmap are taken as the clipping rectangle. 
                                    // no text is drawn outside this clipping rectangle. 
                                    // if any IDF_RECT_XXXX flag is specified, this rect is also used as filling, and so forth
                                    // note: This is distinct from the clipping rectangle set with SFBDisplay::SetClipRect.
                                    // the text is clipped to the intersection of these two clipping rectangles. 
                                    // IDF_ALIGN_XXXX flags align the text relative to the rectangle specified with prcBackground only
    UInt32 flags = IDF_ALIGN_NONE   // specifies the flags that can be used for drawing the text. 
                                    // this can be a logical OR of one of the items selected from each of the entries below: 
                                    // . One of the horizontal alignment flags (IDF_ALIGN_LEFT, IDF_ALIGN_CENTER,IDF_ALIGN_RIGHT)
                                    // . One of the vertical alignment flags (IDF_ALIGN_TOP, IDF_ALIGN_MIDDLE,IDF_ALIGN_BOTTOM)
                                    // . One of the text format flags (IDF_TEXT_UNDERLINE, IDF_TEXT_INVERTED, IDF_TEXT_DASHED_UNDERLINE)
                                    // . One of the rect format flags (IDF_RECT_FRAME,IDF_RECT_FILL,IDF_RECT_INVERT) 
                                    // these flags works on the prcBackground rectangle, using the CLR_USER_BACKGROUND as the fill color 
                                    // and CLR_USER_FRAME as the frame color. 
                                    // if no alignment flags are specified, the position of the text is determined by parameter x and y
);
[ public ]
SFCError DrawText(
    AEEFont font                    
    WCharConstPtr text              
    SInt32 textLength               
    SInt32 x                        
    SInt32 y                        
    SFXRectangleConstRef rect       
    UInt32 flags = IDF_ALIGN_NONE   
);
[ public ]
SFCError DrawText(
    AEEFont font                    // specifies the font that needs to be used for drawing the text
    SFXWideStringConstRef text      // contains the String that needs to be drawn
    SInt32 textLength               // specifies the number of characters in pcText. 
                                    // if this is -1, the length will be automatically computed by this function
    SFXGridConstPtr grid            // specifies the origin of the rectangle into which text will be drawn. 
    SFXRectangleConstPtr rect       // specifies the coordinates of the clipping rectangle. 
                                    // if this is null, the boundries of the destination bitmap are taken as the clipping rectangle. 
                                    // no text is drawn outside this clipping rectangle. 
                                    // if any IDF_RECT_XXXX flag is specified, this rect is also used as filling, and so forth
                                    // note: This is distinct from the clipping rectangle set with SFBDisplay::SetClipRect.
                                    // the text is clipped to the intersection of these two clipping rectangles. 
                                    // IDF_ALIGN_XXXX flags align the text relative to the rectangle specified with prcBackground only
    UInt32 align = IDF_ALIGN_NONE   // specifies the flags that can be used for drawing the text. 
                                    // this can be a logical OR of one of the items selected from each of the entries below: 
                                    // . One of the horizontal alignment flags (IDF_ALIGN_LEFT, IDF_ALIGN_CENTER,IDF_ALIGN_RIGHT)
                                    // . One of the vertical alignment flags (IDF_ALIGN_TOP, IDF_ALIGN_MIDDLE,IDF_ALIGN_BOTTOM)
                                    // . One of the text format flags (IDF_TEXT_UNDERLINE, IDF_TEXT_INVERTED, IDF_TEXT_DASHED_UNDERLINE)
                                    // . One of the rect format flags (IDF_RECT_FRAME,IDF_RECT_FILL,IDF_RECT_INVERT) 
                                    // these flags works on the prcBackground rectangle, using the CLR_USER_BACKGROUND as the fill color 
                                    // and CLR_USER_FRAME as the frame color. 
                                    // if the grid argument is set, the alignment flags will be ignored
);
[ public ]
SFCError DrawText(
    AEEFont font                    
    SFXWideStringConstRef text      
    SInt32 textLength               
    SFXGridConstRef grid            
    SFXRectangleConstRef rect       
    UInt32 align = IDF_ALIGN_NONE   
);
[ public ]
SFCError DrawText(
    AEEFont font                    
    SFXWideStringConstRef text      
    SInt32 textLength               
    SFXGridConstRef grid            
    UInt32 align = IDF_ALIGN_NONE   
);
[ public ]
SFCError DrawText(
    AEEFont font                    
    SFXWideStringConstRef text      
    SInt32 textLength               
    SFXRectangleConstRef rect       
    UInt32 align = IDF_ALIGN_NONE   
);

Return Values

If success, it returns SFERR_NO_ERROR.

Description

The align argument will be ignored when the grid argument is set.

[Caution] Alignment flags

If the grid argument is set, the alignment flags(IDF_ALIGN_*** flags) will be ignored.

At this time, the text will be drawn not by the alignment flags of the horizontal allignment flags (IDF_ALIGN_LEFT, IDF_ALIGN_CENTER,IDF_ALIGN_RIGHT) or the vertical allignment flags (IDF_ALIGN_TOP, IDF_ALIGN_MIDDLE,IDF_ALIGN_BOTTOM) of the align argument. but at the position of the grid argument.

* The flags other than IDF_ALIGN_*** flags such as IDF_TEXT_UNDERLINE are effective.

Reference

SFBDisplay::DrawText | BREW API IDISPLAY_DrawText | BREW API IDISPLAY Flags | SFXGraphics::DrawMultipleTextLeft | SFXGraphics::DrawMultipleTextCenter | SFXGraphics::DrawSingleText


SFBDisplay::DrawVLine
Draw a vertical line of the given length, starting from the given point. The line shall be Black in color.
[ public ]
Void DrawVLine(
    SInt16 x        // X coordinate of the starting point of the line
    SInt16 y        // Y coordinate of the starting point of the line
    SInt16 length   // length of the line
);
[ public ]
Void DrawVLine(
    SFXPixelConstRef pixel   // plxel of the starting point of the line
    SInt16 length            // length of the line
);

Reference

BREW API IDISPLAY_DrawVLine | SFBDisplay::DrawHLine


SFBDisplay::EraseRect
Fill the given rectangle with the default background color.
[ public ]
Void EraseRect(
    SFXRectanglePtr rect   // a valid pointer to a rectangle to erase
);

Reference

BREW API IDISPLAY_EraseRect


SFBDisplay::EraseRgn
Fill the region enclosed by the given coordinates with the default background color.
[ public ]
Void EraseRgn(
    SInt16 x    // X coordinate of the top,left corner of the region
    SInt16 y    // Y coordinate of the top,left corner of the region
    UInt16 cx   // width of the region
    UInt16 cy   // height of the region
);
[ public ]
Void EraseRgn(
    SFXRectangleConstRef rect   // rectangle
);

Reference

BREW API IDISPLAY_EraseRgn


SFBDisplay::FillRect
Draw a filled rectangle with the specified color.
[ public ]
Void FillRect(
    SFXRectanglePtr rect   // a valid pointer to a rectangle that needs to be filled with the specified color
    RGBVAL fillColor       // specifies the color to be used to fill the rectangle
);
[ public ]
Void FillRect(
    SFXRectanglePtr rect            // a valid pointer to a rectangle that needs to be filled with the specified color
    SFXRGBColorConstRef fillColor   // specifies the color to be used to fill the rectangle
);

Reference

BREW API IDISPLAY_FillRect


SFBDisplay::FrameButton
Draw a 3D framed button based upon the color resolution of the system.
[ public ]
Void FrameButton(
    SFXRectanglePtr rect   // pointer to the source rectangle
    Bool pressed           // button pressed/raised indicator
    RGBVAL fillType        // fill type for the inside of the frame 
);
[ public ]
Void FrameButton(
    SFXRectanglePtr rect           // pointer to the source rectangle
    Bool pressed                   // button pressed/raised indicator
    SFXRGBColorConstRef fillType   // color for the inside of the frame
);

Reference

BREW API IDISPLAY_FrameButton


SFBDisplay::FrameRect
Draw the borders of a rectangle.
[ public ]
Void FrameRect(
    SFXRectanglePtr rect   // a valid pointer to a rectangle whose borders need to be drawn
);

Reference

BREW API IDISPLAY_FrameRect


SFBDisplay::FrameSolidRect
Draw the borders of a rectangle and fills it with a color.
[ public ]
Void FrameSolidRect(
    SFXRectanglePtr rect   // a valid pointer to a rectangle that needs to be drawn and filled
);

Reference

BREW API IDISPLAY_FrameSolidRect


SFBDisplay::GetClipRect
Return the current clipping rectangle.
[ public ]
Void GetClipRect(
    SFXRectanglePtr rect   // pointer to SFXRectangle to receive the current clip rectangle
);
[ public ]
SFXRectangle GetClipRect(Void);

Reference

BREW API IDISPLAY_GetClipRect | SFBDisplay::SetClipRect


SFBDisplay::GetDestination
Get the destination bitmap to which will be rendered.
[ public ]
SFBBitmapSmp GetDestination(Void);

Reference

BREW API IDISPLAY_GetDestination | SFBBitmap | SFBDisplay::SetDestination


SFBDisplay::GetDeviceBitmap
Retrieve the device (screen) bitmap.
[ public ]
SFCError GetDeviceBitmap(
    SFBBitmapSmpPtr clone   // pointer to interface for device bitmap
);
[ public ]
SFBBitmapSmp GetDeviceBitmap(Void);

Reference

BREW API IDISPLAY_GetDeviceBitmap


SFBDisplay::GetFontMetrics
Retrieve information about the specified font.
[ public ]
SInt32 GetFontMetrics(
    AEEFont font               // specifies the font type for which the Ascent and Descent information is to be retrieved
    SInt32Ptr ascent = null    // this must be either null or a pointer to an SInt32. 
                               // on function return, the int specified (if any) will contain the Ascent value for the specified font. 
                               // if it is null, there will be a null returned ,too
    SInt32Ptr descent = null   // this must be either null or a pointer to an SInt32. 
                               // on function return, the int specified (if any) will contain the Ascent value for the specified font. 
                               // if it is null, there will be a null returned ,too
);

Reference

BREW API IDISPLAY_GetFontMetrics


SFBDisplay::GetInstance
Get Instance of SFBDisplay Interface.
[ public, static ]
SFBDisplaySmp GetInstance(Void);

SFBDisplay::GetSymbol
Return the char corresponding to the specified symbol value.
[ public ]
WChar GetSymbol(
    AEESymbol symbol   // requested symbol
    AEEFont font       // requested font
);

Reference

BREW API IDISPLAY_GetSymbol


SFBDisplay::InvertRect
Invert the colors in the given rectangle.
[ public ]
Void InvertRect(
    SFXRectanglePtr rect   // a valid pointer to a rectangle to be inverted
);

Reference

BREW API IDISPLAY_InvertRect


SFBDisplay::IsEnabled
Query the enabled state of the display corresponding to the destination bitmap
[ public ]
Bool IsEnabled(Void);

Description

While the SFBDisplay is disabled, no drawing operations are allowed. BREW's drawing functions will have no effect. If an application has direct access to the device bitmap's pixel buffer through SFBDIB, it is important that the app refrain from modifying the pixel buffer while the display is disabled.

Version

Introduced BREW Client 2.1

Reference

BREW API IDISPLAY_IsEnabled | SFBDisplay::NotifyEnable


SFBDisplay::MakeDefault
Make this SFBDisplay the default.
[ public ]
Void MakeDefault(Void);

Version

Introduced BREW Client 2.1

Reference

BREW API IDISPLAY_MakeDefault


SFBDisplay::MeasureText
Measure the width of a given text if drawn using the specified font.
[ public ]
SInt32 MeasureText(
    AEEFont font         // specifies the font that needs to be used for measuring the width of the given text. 
                         // measure the width of a given text if drawn using this font
    WCharConstPtr text   // pointer to a zero-terminated string to be measured
);
[ public ]
SInt32 MeasureText(
    AEEFont font                 // specifies the font that needs to be used for measuring the width of the given text. 
                                 // measure the width of a given text if drawn using this font
    SFXWideStringConstRef text   // pointer to a zero-terminated string to be measured
);

Reference

BREW API IDISPLAY_MeasureText


SFBDisplay::MeasureTextEx
Measure the width of a given text if drawn using the specified font. The return value is the actual pixel width of the string.
[ public ]
SInt32 MeasureTextEx(
    AEEFont font         
    WCharConstPtr text   
    SInt32 textLength    
    SInt32 maxWidth      
    SInt32Ptr fits       
);
[ public ]
SInt32 MeasureTextEx(
    AEEFont font                 
    SFXWideStringConstRef text   
    SInt32 textLength            
    SInt32 maxWidth              
    SInt32Ptr fits               
);

Argument

font

Specifies the font that needs to be used for measuring the width of the given text. Measure the width of a given text if drawn using this font.

text

Pointer to characters to be measured.

textLength

Specifies the number of characters in "text". If this is -1, the length will be computed by treating pcText[] as a zero-terminated string.

maxWidth

Specifies the maximum available pixel width that can be used for drawing the text. If "maxWidth" is set to -1, then the nChars part of text is measured, and "*pnFits" returned will always be the entire text length. If "maxWidth" >= 0, then it represents the maximum available pixel width for the text to be rendered within; this function will compute the maximum number of characters which actually fit within this constraint and return this number of characters in "*pnFits" and the actual pixel width of these characters as the return value.

fits

This must be either null or a pointer to an int. On function return, the int specified (if any) will contain the number of characters that fit the given pixel width specified by "maxWidth". If "maxWidth" is -1, the integer will contain the length of the entire string "text".

Reference

BREW API IDISPLAY_MeasureTextEx


SFBDisplay::NewInstance
Create a new SFBDisplay instance.
[ public, static ]
SFBDisplaySmp NewInstance(
    AEECLSID clsid = AEECLSID_DISPLAYCLONE   
);
[ public, static ]
SFBDisplaySmp NewInstance(
    SFCErrorPtr exception = null   // Error
);
[ public, static ]
SFBDisplaySmp NewInstance(
    AEECLSID id                    // Class ID
    SFCErrorPtr exception = null   // Error
);

Description

static  SFBDisplaySmp  NewInstance(AEECLSID clsid = AEECLSID_DISPLAYCLONE);

is defined in BREW 2.1 environment.

static  SFBDisplaySmp  NewInstance(Void);

is defined in BREW 2.0 environment.


SFBDisplay::NotifyEnable
Register for a notification of a change to the display's enabled state.
[ public ]
SFCError NotifyEnable(
    SFXCallbackPtr callback   // callback structure
);

Version

Introduced BREW Client 2.1

Reference

BREW API IDISPLAY_NotifyEnable | SFBDisplay::IsEnabled


SFBDisplay::ResetClipRect
Reset the Clip Rectangle.
[ public ]
Void ResetClipRect(Void);

Reference

SFBDisplay::SetClipRect


SFBDisplay::ResetDestination
Reset destination bitmap which will be rendered of SFBDIsplay, and set it to corrent bitmap.
[ public ]
SFCError ResetDestination(Void);

Reference

SFBDisplay::SetDestination


SFBDisplay::SetAnnunciators
Turn the specified annunciators on (or off).
[ public ]
Void SetAnnunciators(
    UInt16 value   // the complete list of annunciators is:
                   // ANNUN_MMS To be used by MMS Applications
                   // ANNUN_MSG Voice mail 
                   // ANNUN_NET_MSG Net Message
                   // ANNUN_ALARMCLOCK Alarm Clock
                   // ANNUN_NET_LOCK Phone Locked
                   // ANNUN_STOPWATCH Stop Watch
                   // ANNUN_COUNTDOWN Count Down clock
                   // ANNUN_SILENCEALL Ringer Off
    UInt16 mask    // specifies that set of annunciators that this function is trying to enable or disable. 
                   // this is a logical OR of one or more of the annunciator flags defined above
);

Description

The support and behavior of this function is totally dependent on the specific handset.

Reference

BREW API IDISPLAY_SetAnnunciators


SFBDisplay::SetClipRect
Set the clipping rectangle.
[ public ]
Void SetClipRect(
    SFXRectangleConstRef rect   // the clipping rectangle to set
);

Reference

BREW API IDISPLAY_SetClipRect | SFBDisplay::GetClipRect


SFBDisplay::SetColor
Set and retrieves the color of the specified color item.
[ public ]
RGBVAL SetColor(
    AEEClrItem item    // specifies the color item whose color needs to be changed or retrieved
    RGBVAL itemColor   // specifies the new color to be associated with the item mentioned in "item" parameter
);
[ public ]
RGBVAL SetColor(
    AEEClrItem item                 // specifies the color item whose color needs to be changed or retrieved
    SFXRGBColorConstRef itemColor   // specifies the new color to be associated with the item mentioned in "item" parameter
);

Reference

BREW API IDISPLAY_SetColor | AEEClrItem


SFBDisplay::SetDestination
Set the destination bitmap to which will be rendered.
[ public ]
SFCError SetDestination(
    SFBBitmapSmpConstRef bmpDest   // SFBBitmap interface pointer that will be used for rendering, or null to set to device (screen) bitmap
);

Reference

BREW API IDISPLAY_SetDestination | SFBBitmap | SFBDisplay::GetDestination


SFBDisplay::SetFont
Set the Font to be used to draw the specified AEEFont.
[ public ]
SFBFontPtr SetFont(
    AEEFont font         // the font designator
    SFBFontPtr newFont   // SFBFont pointer
);

Description

Applications should take care to either Release the returned SFBFont, or, more correctly, to save off the old SFBFont for restoration when the app exits. The passed-in SFBFont newFont is not AddRef'd, nor is the returned SFBFont, as application and SFBDisplay are merely swapping pointers with already positive refcounts. For this reason, applications mustn't call Release() on newFont after passing it to SFBFontPtr SetFont(AEEFont font, SFBFontPtr newFont);

Example

// sample code to release font using SetFont method.

SFBFontPtr validFont;
// create Font.
...

// set cerated Font.
SFBFontPtr oldFont = display->SetFont(AEE_FONT_NORMAL, validFont);

...

// set old Font again
validFont = display->SetFont(AEE_FONT_NORMAL, oldFont);

// automatically release the Fomnt by Smart Point attaching.
SFBFontSmp tmpFont;
tmpFont.Attach(validFont);

// also can call Release() method with Smart pointer.

Reference

BREW API IDISPLAY_SetFont


SFBDisplay::SetPrefs
Change the display settings for the display associated with this IDisplay's destination bitmap.
[ public ]
SFCError SetPrefs(
    ACharConstPtr dispSettings   // Display settings string
    SInt32 dispSettingsLen       // Number of characters in dispSettings
);
[ public ]
SFCError SetPrefs(
    SFXAnsiStringConstRef dispSettings   // Display settings string
);

Return value

  • SUCCESS: SFERR_NO_ERROR
  • if the destination is not a device bitmap or the display does not support display settings: SFERR_UNSUPPORTED
  • if the application does not possess AEEPRIVID_DISPSETTINGS : EPRIVLEVEL

Version

This function is available in BREW 3.1.

Description

If the destination bitmap is not a device bitmap, this function does nothing.

Reference

BREW API IDISPLAY_SetPrefs


SFBDisplay::Update
Update the screen if the destination bitmap is the device bitmap.
[ public ]
Void Update(Void);

Reference

BREW API IDISPLAY_Update


SFBDisplay::UpdateEx
Update the screen if the destination bitmap is the device bitmap.
[ public ]
Void UpdateEx(
    Bool defer   // boolean flag to indicate whether the screen needs to be updated immediately or deferred
);

Reference

BREW API IDISPLAY_UpdateEx