Edit the Background Panel

You need to edit the background panel to make it respond to the custom Framework manager.

Open the background panel (XXX_BackgoundPane) in the Visual LANSA editor.

Display the Source tab and define your custom Framework manager (replace #CCC_CustomManager with the name of your custom Framework manager):

Define_Com Class(#CCC_CustomManager) Name(#CustomFrameworkManager) Reference(*DYNAMIC)

 

In the uInitialize event, set a reference to your custom Framework manager (replace #CCC_CustomManager with the name of your custom Framework manager):

#CustomFrameworkManager <= #AVFRAMEWORKMANAGER.avCustomManagerBaseReference *As #CCC_CustomManager

 

Then add two event routines to change the style and image on the background panel:

* -----------------------------------------------------------------------------------

Evtroutine Handling(#CustomFrameworkManager.ChangeBackgroundTextStyle) Tostyle(#ToStyle)

 

#CurrentContent.Style <= #ToStyle

 

#CurrentContent.Height := #ToStyle.FontSize + 2

 

Endroutine

 

* -----------------------------------------------------------------------------------

Evtroutine Handling(#CustomFrameworkManager.ChangeBackgroundImage) Imagename(#ImageName)

 

#Image.Image <= #SYS_APPLN.CreateBitmap( ("VLFONE/Images/Black/XLarge/" + #ImageName) )

 

Endroutine

 

* -----------------------------------------------------------------------------------

 

Lastly, if your background panel has a uTerminate method already add these lines to it:

* Drop any reference to the custom framework manager

#CustomFrameworkManager <= *null

 

Otherwise, add a uTerminate method like this:

Mthroutine Name(uTerminate) Options(*REDEFINE)

 

* Drop any reference to the custom framework manager

#CustomFrameworkManager <= *null

 

* Delegate to the ancestor component in case it wants to clean up anything

#COM_ANCESTOR.uTerminate

 

Endroutine

 

Compile the background panel.