I have been guilty of this and have been using typeNames now. I've found that I need to set typeNames before calling super() in the constructor. I thought it was done afterwards, but if I set typeNames after calling super(), the typeName I set does not show up in the HTML produced.
Also, suppose I have this: A Menu with a label inside of it. People will want to change the background color of the menu and the color of the label's text. If I were doing this in plain HTML/JS/CSS, I would set a selector: .Menu .Label { color: blue; } but that's not supported in the Flash Player. So when I set up the typeName for the label inside of the Menu should I set it to: Menu_Label or MenuLabel or Menu-Label? And is using "." in a selector name a good idea? I would think the CSS processor in the browser would be confused between ".x.y" and ".x .y" which can also be written as ".x.y". Basically, we should have a consist naming pattern here. ‹peter On 2/23/18, 4:09 AM, "Gabe Harbs" <harbs.li...@gmail.com> wrote: >There¹s some edge cases which seem problematic. One example: >ComboBoxBiew has the following: > input = new TextInput(); > input.className = "ComboBoxTextInput"; > > button = new TextButton(); > button.className = >"opt_org-apache.royale-html-ComboBox_Button"; > >Input and button are both external to the view class, but are managed by >the view class. On the other hand, there is a chance that the user might >wan to style them. I¹m not sure whether className or typeNames is more >appropriate hereŠ > >Harbs > >> On Feb 23, 2018, at 11:03 AM, Gabe Harbs <harbs.li...@gmail.com> wrote: >> >> I¹ll help. >> >>> On Feb 23, 2018, at 10:50 AM, Alex Harui <aha...@adobe.com.INVALID> >>>wrote: >>> >>> Quick note before I shut down for the night. >>> >>> UIBase has both a typeNames and className property. TypeNames is used >>>to >>> emulate Flex-like type selectors in the CSS lookup. It should be set >>>in >>> the constructor and never set from outside the class. There are a few >>> classes in Basic and lots of classes in MDL that should be upgraded to >>>set >>> typeNames in the constructor. Subclasses can append to the base >>>class's >>> typeNames >>> >>> className is the opposite. It should never be set inside the >>>component's >>> class. It is for users of that component to set styles on the >>>component. >>> >>> Can we get a volunteer to clean this up? >>> >>> Thanks, >>> -Alex >>> >> >