Professional UI Solutions
Site Map   /  Register


Please Log In to post a new message or reply to an existing one. If you are not registered, please register.

NOTE: Some forums may be read-only if you are not currently subscribed to our technical support services.

Forums » Prof-UIS Tech Support » UI Theme Sharing Collapse All
Subject Author Date
Jon Ort Jul 29, 2009 - 1:27 PM

We have several EXEs that are (to the user) all part of a single application.  We want to have a single option for setting the UI theme but all the applications need to share the setting.  For each application we have a unique registry key and use PaintManagerStateLoad.  What is the appropriate method to share a theme?  Should we call PaintManagerStateLoad with the same key or should be call PaintManagerStateLoad with a unique key and then make a call to InstallPaintManager with a specific manager class




Technical Support Jul 30, 2009 - 12:42 PM

The easiest way is to use the same registry location for paint manager states of all the applications. Changing the current theme in this case is a sequence of the following steps:

1) Changing the current in one of applications through g_PaintManager.InstallPaintManager( . . . ).

2) Saving the paint manager’s state in the same application through g_PaintManager.PaintManagerStateSave( . . . ).

3) Notifying all the other running apps to let them load the paint manager state by invoking g_PaintManager.PaintManagerStateLoad( . . . ). You can use any mechanism for notifying you apps: sending window messages to some windows, using EXE based com server with connection points (all apps should be subscribed to events of these server), using RPC or any other inter process communication.