Home > Products > SophiaFramework UNIVERSE > Tutorial > Cartoon > - 4 / 6 -

BREW Cartoon - 4 / 6 -

Drawing Bitmaps

Resource file

Generate resource file containing images.

Load image

Function to load a image, and throw back pointer.

//  Load the corresponding bitmap from the resource
// index stands for picture numbers ( 1 to 4)
SFBBitmapSmp Cartoon::LoadBitmap(SIntN index)
{
    if (1 <= index && index <= 4) {
        SFBShellSmp shell = SFBShell::GetInstance();
        
        // Load image and throw back pointer
        return shell->LoadResBitmap(CARTOON_RES_FILE, IDR_PICT1 + index - 1);
    }
    else {
        return SFBBitmapSmp(NULL);
    }
}

Using this function :

// Declare member variable
class Cartoon : public SFRApplication {
    // Retain bitmap to display
    SFBBitmapSmp m_bitmap;
    ...

}

// Key handler
HANDLER_IMPLEMENT_BOOLEVENT(Cartoon, OnKey, event)
{
    ...
    m_bitmap = LoadBitmap(m_pict_index); // Load bitmap
    ...
}

Display bitmap

Use SFXGraphics::DrawBitmap function to display the loaded bitmap.

// Drawing handler
HANDLER_IMPLEMENT_VOIDRENDER(Cartoon, OnRenderContent, graphics) {
    ...
    graphics->DrawBitmap(m_bitmap, SFXGrid(10, 10)); 
    // SFXGrid is a shape class for declaring coordinates
    ...
}

Resource File

The resource file includes images and strings used in the application.

Using the Resource Editor

To handle resources, use the "BREW resource editor" attached to BREW SDK.



  1. Boot up BREW Resource Editor, [Resource] -> [New Object]
  2. Input the image to use as resource in the [Image file path]
  3. Input name of the resource.
    (This name is used as a macro to refer this resource from the application, the first name is IDR_PICT1)
  4. Repeat 2 and 3, until all 4 images are registered
  5. Save this resource file as "Cartoon" by going [File] -> [Save as]
  6. [Generate] -> [Compile Resource Script] to generate cartoon.bar and cartoon.brh file.]
  7. Include cartoon.brh file in the source code.
// cartoon.brh
#ifndef CARTOON_BRH
#define CARTOON_BRH

// WARNING: DO NOT MODIFY THIS FILE
// AUTO-GENERATED BY BREW Resource Editor

#define CARTOON_RES_FILE "cartoon.bar"

#define IDI_PICT1               5001
#define IDI_PICT2               5002
#define IDI_PICT3               5003
#define IDI_PICT4               5004

#endif  // CARTOON_BRH

Go back  1   2   3   4   5   Apdx   Next page