scheme and imagesets

For help with anything that CEGUI doesn't offer straight out-of-the-box, e.g.:
- Implementation of new features, such as new Core classes, widgets, WindowRenderers, etc. ...
- Modification of any existing features for specific purposes
- Integration of CEGUI in new engines or frameworks and writing of new plugins (Renderer, Parser, ...) or modules

Moderators: CEGUI MVP, CEGUI Team

User avatar
apperenticegp
Just popping in
Just popping in
Posts: 7
Joined: Fri Jul 15, 2005 23:54

scheme and imagesets

Postby apperenticegp » Sun Sep 04, 2005 09:38

Hello everyone. While studying the scheme and imageset files for the TaharezLook theme, I can't find the direct relation of contents of the two files. For example, in an entry of the TaharezLook.scheme file:

<WindowSet Filename="CEGUITaharezLook">
<WindowFactory Name="TaharezLook/AlternateProgressBar" />
:
:

There is an item for the Alternate Progress bar widget. Allright, when I want to reference the image file on associated with it on the TaharezLook.imageset file, I can't pinpoint it. There are several entries such as:

<Image Name="ProgressBarLeft" XPos="71" YPos="74" Width="7" Height="12" />
<Image Name="ProgressBarMiddle" XPos="80" YPos="74" Width="6" Height="12" />
<Image Name="ProgressBarRight" XPos="88" YPos="74" Width="6" Height="12" />
<Image Name="ProgressBarDimSegment" XPos="96" YPos="74" Width="8" Height="12" />
<Image Name="ProgressBarLitSegment" XPos="106" YPos="74" Width="8" Height="12" />
:
:

And

:
:
<Image Name="VertScrollTop" XPos="182" YPos="2" Width="20" Height="8" />
<Image Name="VertScrollMiddle" XPos="182" YPos="12" Width="20" Height="8" />
<Image Name="VertScrollBottom" XPos="182" YPos="22" Width="20" Height="8" />
<Image Name="VertScrollBarSegment" XPos="206" YPos="2" Width="4" Height="10" />
<Image Name="VertScrollThumbNormal" XPos="214" YPos="2" Width="8" Height="24" />
<Image Name="VertScrollThumbHover" XPos="224" YPos="2" Width="8" Height="24" />
<Image Name="VertScrollUpNormal" XPos="196" YPos="32" Width="12" Height="12" />
<Image Name="VertScrollDownNormal" XPos="182" YPos="32" Width="12" Height="12" />
<Image Name="VertScrollUpHover" XPos="196" YPos="46" Width="12" Height="12" />
<Image Name="VertScrollDownHover" XPos="182" YPos="46" Width="12" Height="12" />
:
:

Can someone clarify the relation of the entries of the two files? How do I find the imageset entries associated per windowfactory? I want to start making gui's with Crazy Eddie but I don't know where to reference stuff properly.

Also, if I'm going to use the TaharezLook theme, do I need to specify images for all of the entries contained in an imageset?

Advance thanks.

User avatar
malachy1681
Just popping in
Just popping in
Posts: 19
Joined: Thu Sep 01, 2005 05:29
Contact:

Re: scheme and imagesets

Postby malachy1681 » Sun Sep 04, 2005 13:14

Okay, lets say you want to find the imageset ID's for the AlternateProgessBar in TaharezLook; just open the .cpp source file for that widget, which in this case is TLAlternateProgessBar.cpp. Then just scroll down to the 'Constants' section. You should see the following:

Code: Select all

/*************************************************************************
   Constants
*************************************************************************/
// type name for this widget
const utf8   TLAlternateProgressBar::WidgetTypeName[]         = "TaharezLook/AlternateProgressBar";

// Progress bar image names
const utf8   TLAlternateProgressBar::ImagesetName[]            = "TaharezLook";
const utf8   TLAlternateProgressBar::ContainerLeftImageName[]   = "AltProgressLeft";
const utf8   TLAlternateProgressBar::ContainerMiddleImageName[]   = "AltProgressMiddle";
const utf8   TLAlternateProgressBar::ContainerRightImageName[]   = "AltProgressRight";
const utf8   TLAlternateProgressBar::QuartersMarkImageName[]      = "AltProgressQuarter";
const utf8   TLAlternateProgressBar::HalvesMarkImageName[]      = "AltProgressHalf";
const utf8   TLAlternateProgressBar::Light1ImageName[]         = "AltProgressLight1";
const utf8   TLAlternateProgressBar::Light2ImageName[]         = "AltProgressLight2";
const utf8   TLAlternateProgressBar::Light3ImageName[]         = "AltProgressLight3";
const utf8   TLAlternateProgressBar::Light4ImageName[]         = "AltProgressLight4";
const utf8   TLAlternateProgressBar::Light5ImageName[]         = "AltProgressLight5";
const utf8   TLAlternateProgressBar::Light6ImageName[]         = "AltProgressLight6";
const utf8   TLAlternateProgressBar::Light7ImageName[]         = "AltProgressLight7";
const utf8   TLAlternateProgressBar::Light8ImageName[]         = "AltProgressLight8";
const utf8   TLAlternateProgressBar::Light9ImageName[]         = "AltProgressLight9";
const utf8   TLAlternateProgressBar::Light10ImageName[]         = "AltProgressLight10";


And voila! You have all the imageset ID's associated with this widget. :D

And for the second question, no. You only need to define images for the widgets that are actually referenced by your application.

User avatar
CrazyEddie
CEGUI Project Lead
Posts: 6760
Joined: Wed Jan 12, 2005 12:06
Location: England
Contact:

Re: scheme and imagesets

Postby CrazyEddie » Sun Sep 04, 2005 13:45

The images are all hard coded into the look modules. And yes you need to supply them all - or at least images for the components that you'll be using.

The new falagard system supports xml based skinning, which is much better. We have xml based versions of both the old 'looks' which are far easier to customise.


Return to “Modifications / Integrations / Customisations”

Who is online

Users browsing this forum: No registered users and 7 guests