Resources | developer.brewmp.com Resources | developer.brewmp.com

Developer

resources

OEMAppFrameWidget.c

OEMAppFrameWidget.c implements the IAppFrameWidget interface, which is used by the device bitmap object. In Brew MP, the IAppFrame interface is deprecated and is replaced by IAppFrameWidget.

There is one IAppFrameWidget instance per application per display. IAppFrameWidget classes are associated with displays via system resources with the AEEUID_AppFrameWidget identifier.

OEMs can modify OEMAppFrameWidget.c to control:

  • The size and position of the portion of the display that applications can use
  • The decoration of the area outside the region allocated to applications

    This area, or frame, may include an annunciator bar.

The object implementing IAppFrameWidget works much like an IWidget-based widget, though it does not implement IWidget. When IAppFrameWidget wants to draw on the display, it indicates that there is an invalid region that needs to be updated on the display by setting a signal that it has been given via IAppFrameWidget_SetInvalidationSignal(). The invalid region is then requested from it via IAppFrameWidget_GetInvalidRect() and it is asked to draw to a bitmap via Draw.

During initialization, and upon request from an application, IAppFrameWidget_SetFrame() is called. The implementation may choose to accept these requests or override them.

Source file location
platform\brewmp\system\brewcore\src\OEM\ishellbased