King Dork,

It's all composition mon...

The developer of the component creates an API. This is the front or
interface of your component. There are really two main api's to a component,
the public and we will say protected(developer).

There are many ways to open up certain parts of a component to be styleable.
My guess is this.

A public style api needs to be defined in such a way that you don't end up
exposing all of the sub components to those that might actually harm your
algorithms(somethings need to be private). So the solution is simple but
unfortunately all component have not had this implemented yet.

Create a styleName for the sub component.

Like in Container, we have verticalScrollBarStyleName. So on and so forth.
This doesn't solve your problem of filters on a subcomponent.

It really comes down to all possibilities cannot be predicted by a component
developer. You have to draw the line somewhere to protect your assssets. ;-)

As far as your accordion header problem,

The accordion header is an itemRenderer. So to solve your problem quickly. I
would either subclass the AccordionHeader and create a new header or
subclass UIComponent and implement IDataRenderer.

Remember, like I showed you last month. ;-) hahaha

Use the headerRenderer:IFactory <../core/IFactory.html>  [read-write], the
force flows strong in it.

Peace, Mike



On 12/14/06, dorkie dork from dorktown <[EMAIL PROTECTED]>
wrote:

  I posted this in flex coders but its something component developers
should know. How does someone manipulate the properties and styles of a sub
component? Like the ComboBox contains a Label inside it. Does a component
developer have to provide getters and setters for each sub component
property he wants to expose to MXML?

For example, I've been having trouble trying to find a way to add a filter
effect to the label component that is inside the Accordion header.


dorkie tinkering dork from dorktown



--
Teoti Graphix
http://www.teotigraphix.com

Blog - Flex2Components
http://www.flex2components.com

You can find more by solving the problem then by 'asking the question'.

Reply via email to