You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@flex.apache.org by David Coleman <da...@hotmail.com> on 2012/04/10 19:23:23 UTC

combo box

Hi everyone.  Mike's most recent mail (mentioning that ComboBoxes have changed nearly every other release) made remember something that i have had sitting around in my personal files for some time.  It is a tweak to the combo box that allows you to have a blank item as the first item, allowing you to de-select the selected item and reset the combo to empty.  It has a configurable value (which defaults to -1) and a configurable label to show in the list (in case you want it to say "choose a city" or something else more context appropriate).

I'm attaching the file.  Maybe it is something worth considering.  It is a behavior that is definitely lacking when you compare flex to other form entry UI/UX approaches.  The ability to "cancel" your selection in a combo box is rather basic and I've always been mildly surprised that it has never been introduced.

Cheers!
David
 		 	   		  

Re: combo box

Posted by Cosma Colanicchia <co...@gmail.com>.
Ok, in my (brand new) github at [1] I tried to reimplement the thing,
refactoring the EmptyItemComboBox code into an IList implementation as
suggested by Alex.

I also quickly adapted the same simple test app that I attached to the
stackoverflow response to see the class in action [2].

[1] https://github.com/cosma/Apache-Flex-Personal-Whiteboard/blob/master/FixedElementsList.as

[2] https://github.com/cosma/Apache-Flex-Personal-Whiteboard/blob/master/FixedElementsListDemo.mxml


2012/4/10 Cosma Colanicchia <co...@gmail.com>:
> @Alex didn't know that MX components received this kind of upgrades in
> the 4.x branch, I thought they were in "maintenance mode" (exluding
> the work on spark skins for halo).
>
>
> 2012/4/10 Cosma Colanicchia <co...@gmail.com>:
>> The EmptyItemComboBox class posted by David Coleman looks similar to
>> some code I posted years ago on StackOverflow [1]. I added some
>> explanation and a snippet of code showing its usage there.
>>
>> I'm not particularly proud of this code, but didn't managed to find a
>> better way. The behavior approach seems interesting.
>>
>> [1] http://stackoverflow.com/questions/949180/null-in-flex-combobox
>>
>>
>> Cosma
>>
>>
>> 2012/4/10 Alex Harui <ah...@adobe.com>:
>>>
>>>
>>>
>>> On 4/10/12 12:17 PM, "Jeffry Houser" <je...@dot-com-it.com> wrote:
>>>
>>>>   I gave it a selectedValue property, a valueField property, and a
>>>> valueFunction property; similar--in concept--to how the selectedItem,
>>>> labelField, and labelFunction work.
>>>>
>>>>   Really the code is just a layer of abstraction for a loop.  If I were
>>>> to implement something like that in the framework, I'd probably to up to
>>>> List or ListBase as opposed to making it ComboBox specific.
>>>>
>>> And for the record, starting in Flex 4, MX Combobox had this function
>>> property [1].  It was not implemented in Spark.  But these days I am a fan
>>> of plugging in things like this.
>>>
>>> [1]
>>> http://help.adobe.com/en_US/FlashPlatform//reference/actionscript/3/mx/contr
>>> ols/listClasses/ListBase.html#selectedItemsCompareFunction
>>>
>>> --
>>> Alex Harui
>>> Flex SDK Team
>>> Adobe Systems, Inc.
>>> http://blogs.adobe.com/aharui
>>>

Re: combo box

Posted by Cosma Colanicchia <co...@gmail.com>.
@Alex didn't know that MX components received this kind of upgrades in
the 4.x branch, I thought they were in "maintenance mode" (exluding
the work on spark skins for halo).


2012/4/10 Cosma Colanicchia <co...@gmail.com>:
> The EmptyItemComboBox class posted by David Coleman looks similar to
> some code I posted years ago on StackOverflow [1]. I added some
> explanation and a snippet of code showing its usage there.
>
> I'm not particularly proud of this code, but didn't managed to find a
> better way. The behavior approach seems interesting.
>
> [1] http://stackoverflow.com/questions/949180/null-in-flex-combobox
>
>
> Cosma
>
>
> 2012/4/10 Alex Harui <ah...@adobe.com>:
>>
>>
>>
>> On 4/10/12 12:17 PM, "Jeffry Houser" <je...@dot-com-it.com> wrote:
>>
>>>   I gave it a selectedValue property, a valueField property, and a
>>> valueFunction property; similar--in concept--to how the selectedItem,
>>> labelField, and labelFunction work.
>>>
>>>   Really the code is just a layer of abstraction for a loop.  If I were
>>> to implement something like that in the framework, I'd probably to up to
>>> List or ListBase as opposed to making it ComboBox specific.
>>>
>> And for the record, starting in Flex 4, MX Combobox had this function
>> property [1].  It was not implemented in Spark.  But these days I am a fan
>> of plugging in things like this.
>>
>> [1]
>> http://help.adobe.com/en_US/FlashPlatform//reference/actionscript/3/mx/contr
>> ols/listClasses/ListBase.html#selectedItemsCompareFunction
>>
>> --
>> Alex Harui
>> Flex SDK Team
>> Adobe Systems, Inc.
>> http://blogs.adobe.com/aharui
>>

Re: combo box

Posted by Cosma Colanicchia <co...@gmail.com>.
The EmptyItemComboBox class posted by David Coleman looks similar to
some code I posted years ago on StackOverflow [1]. I added some
explanation and a snippet of code showing its usage there.

I'm not particularly proud of this code, but didn't managed to find a
better way. The behavior approach seems interesting.

[1] http://stackoverflow.com/questions/949180/null-in-flex-combobox


Cosma


2012/4/10 Alex Harui <ah...@adobe.com>:
>
>
>
> On 4/10/12 12:17 PM, "Jeffry Houser" <je...@dot-com-it.com> wrote:
>
>>   I gave it a selectedValue property, a valueField property, and a
>> valueFunction property; similar--in concept--to how the selectedItem,
>> labelField, and labelFunction work.
>>
>>   Really the code is just a layer of abstraction for a loop.  If I were
>> to implement something like that in the framework, I'd probably to up to
>> List or ListBase as opposed to making it ComboBox specific.
>>
> And for the record, starting in Flex 4, MX Combobox had this function
> property [1].  It was not implemented in Spark.  But these days I am a fan
> of plugging in things like this.
>
> [1]
> http://help.adobe.com/en_US/FlashPlatform//reference/actionscript/3/mx/contr
> ols/listClasses/ListBase.html#selectedItemsCompareFunction
>
> --
> Alex Harui
> Flex SDK Team
> Adobe Systems, Inc.
> http://blogs.adobe.com/aharui
>

Re: combo box

Posted by Alex Harui <ah...@adobe.com>.


On 4/10/12 12:17 PM, "Jeffry Houser" <je...@dot-com-it.com> wrote:

>   I gave it a selectedValue property, a valueField property, and a
> valueFunction property; similar--in concept--to how the selectedItem,
> labelField, and labelFunction work.
> 
>   Really the code is just a layer of abstraction for a loop.  If I were
> to implement something like that in the framework, I'd probably to up to
> List or ListBase as opposed to making it ComboBox specific.
> 
And for the record, starting in Flex 4, MX Combobox had this function
property [1].  It was not implemented in Spark.  But these days I am a fan
of plugging in things like this.

[1] 
http://help.adobe.com/en_US/FlashPlatform//reference/actionscript/3/mx/contr
ols/listClasses/ListBase.html#selectedItemsCompareFunction

-- 
Alex Harui
Flex SDK Team
Adobe Systems, Inc.
http://blogs.adobe.com/aharui


Re: combo box

Posted by Jeffry Houser <je...@dot-com-it.com>.
On 4/10/2012 2:59 PM, Dany Dhondt wrote:
> Hi,
>
> Now there's a discussion about the comboBox, I'd like to address an issue. Sorry in advance if it had been addressed already.
>
> Using the component, one can set the selectedIndex or the selectedItem properties. There's no way to set a 'selectedValue' property.
> I've solved this by using a custom component based on what I found here.
> The issue is that when you have a dataProvider with a collection of objects, you should be able to set the selectedItem of the combobox based on one of the attributes of the object.
> When the object has a property named 'customObjectID', one should be able to set the comboBox 'valueField' to 'customObjectID' and then set the selectedValue property to whatever value the object's customObjectID is.
> Is there a possibility to add this feature to ComboBox?
  Yes, I've implemented that in the Flextras (MX) AutoCompleteComboBox.

  I gave it a selectedValue property, a valueField property, and a 
valueFunction property; similar--in concept--to how the selectedItem, 
labelField, and labelFunction work.

  Really the code is just a layer of abstraction for a loop.  If I were 
to implement something like that in the framework, I'd probably to up to 
List or ListBase as opposed to making it ComboBox specific.



-- 
Jeffry Houser
Technical Entrepreneur
203-379-0773
--
http://www.flextras.com?c=104
UI Flex Components: Tested! Supported! Ready!
--
http://www.theflexshow.com
http://www.jeffryhouser.com
http://www.asktheflexpert.com
--
Part of the DotComIt Brain Trust


Re: combo box

Posted by Dany Dhondt <ar...@mac.com>.
Hi,

Now there's a discussion about the comboBox, I'd like to address an issue. Sorry in advance if it had been addressed already.

Using the component, one can set the selectedIndex or the selectedItem properties. There's no way to set a 'selectedValue' property.
I've solved this by using a custom component based on what I found here.
The issue is that when you have a dataProvider with a collection of objects, you should be able to set the selectedItem of the combobox based on one of the attributes of the object.
When the object has a property named 'customObjectID', one should be able to set the comboBox 'valueField' to 'customObjectID' and then set the selectedValue property to whatever value the object's customObjectID is.
Is there a possibility to add this feature to ComboBox?

-Dany

Op 10-apr.-2012, om 20:27 heeft Alex Harui het volgende geschreven:

> 
> 
> 
> On 4/10/12 10:59 AM, "David Coleman" <da...@hotmail.com> wrote:
> 
>> 
>> Wow, what a great idea... maybe we can merge both of our ideas into a single
>> better component!
>> 
> Possibly.  In theory, you can grab code off my blog and just use it,
> although the licensing is not explicit.  I've been planning to get a ruling
> from Adobe legal later after we get past the other issues.
> 
> In the meantime, there can be an discussion as to whether there should be a
> different flavor of Combobox for this case as you proposed or whether it is
> good enough to simply use custom data providers, or even whether ComboBox
> should be enhanced to handle this scenario.
> 
> -- 
> Alex Harui
> Flex SDK Team
> Adobe Systems, Inc.
> http://blogs.adobe.com/aharui
> 


Re: combo box

Posted by Alex Harui <ah...@adobe.com>.


On 4/10/12 10:59 AM, "David Coleman" <da...@hotmail.com> wrote:

> 
> Wow, what a great idea... maybe we can merge both of our ideas into a single
> better component!
> 
Possibly.  In theory, you can grab code off my blog and just use it,
although the licensing is not explicit.  I've been planning to get a ruling
from Adobe legal later after we get past the other issues.

In the meantime, there can be an discussion as to whether there should be a
different flavor of Combobox for this case as you proposed or whether it is
good enough to simply use custom data providers, or even whether ComboBox
should be enhanced to handle this scenario.

-- 
Alex Harui
Flex SDK Team
Adobe Systems, Inc.
http://blogs.adobe.com/aharui


RE: combo box

Posted by David Coleman <da...@hotmail.com>.
Wow, what a great idea... maybe we can merge both of our ideas into a single better component!

> From: aharui@adobe.com
> To: flex-dev@incubator.apache.org
> Date: Tue, 10 Apr 2012 10:56:33 -0700
> Subject: Re: combo box
> 
> 
> 
> 
> On 4/10/12 10:45 AM, "David Coleman" <da...@hotmail.com> wrote:
> 
> > 
> > sure give me a few days to dedicate some time to this example, I'm up to my
> > eyeballs in work for the next 48 or so!
> > 
> > my github user is davidcoleman007 and I'll share something asap!
> > 
> 
> Interesting.  Several years back I proposed doing this by appending to the
> dataprovider. See:
>  
> http://blogs.adobe.com/aharui/2008/03/custom_ilists_combobox_prompts.html
> 
> -- 
> Alex Harui
> Flex SDK Team
> Adobe Systems, Inc.
> http://blogs.adobe.com/aharui
> 
 		 	   		  

Re: combo box

Posted by Alex Harui <ah...@adobe.com>.


On 4/10/12 10:45 AM, "David Coleman" <da...@hotmail.com> wrote:

> 
> sure give me a few days to dedicate some time to this example, I'm up to my
> eyeballs in work for the next 48 or so!
> 
> my github user is davidcoleman007 and I'll share something asap!
> 

Interesting.  Several years back I proposed doing this by appending to the
dataprovider. See:
 
http://blogs.adobe.com/aharui/2008/03/custom_ilists_combobox_prompts.html

-- 
Alex Harui
Flex SDK Team
Adobe Systems, Inc.
http://blogs.adobe.com/aharui


RE: combo box

Posted by David Coleman <da...@hotmail.com>.
sure give me a few days to dedicate some time to this example, I'm up to my eyeballs in work for the next 48 or so!

my github user is davidcoleman007 and I'll share something asap!

> From: flex@tink.ws
> To: flex-dev@incubator.apache.org
> Subject: Re: combo box
> Date: Tue, 10 Apr 2012 18:43:10 +0100
> 
> On 10 Apr 2012, at 18:40, David Coleman wrote:
> 
> >
> > Yes and no.  with this you can set the actual emptyItemValue to be  
> > whatever you want.  For instance if you have some complex set of  
> > dto's etc, you can set the emptyItemValue to be an actual object and  
> > have it be able to work more seamlessly with other parts of the  
> > logic.  There are quite a few edge cases where you might want to  
> > distinguish the empty item by some value other than -1, but still  
> > represent the selectedIndex as -1 for compatibility with the  
> > framework.
> 
> Just so everyone fully understands (including myself) it would be good  
> to see an example of what your after, and then an example of your  
> implementation, hosted on github or something for the time being.
> 
> Tink	   		
> 
 		 	   		  

Re: combo box

Posted by Tink <fl...@tink.ws>.
On 10 Apr 2012, at 18:40, David Coleman wrote:

>
> Yes and no.  with this you can set the actual emptyItemValue to be  
> whatever you want.  For instance if you have some complex set of  
> dto's etc, you can set the emptyItemValue to be an actual object and  
> have it be able to work more seamlessly with other parts of the  
> logic.  There are quite a few edge cases where you might want to  
> distinguish the empty item by some value other than -1, but still  
> represent the selectedIndex as -1 for compatibility with the  
> framework.

Just so everyone fully understands (including myself) it would be good  
to see an example of what your after, and then an example of your  
implementation, hosted on github or something for the time being.

Tink	   		


RE: combo box

Posted by David Coleman <da...@hotmail.com>.
Yes and no.  with this you can set the actual emptyItemValue to be whatever you want.  For instance if you have some complex set of dto's etc, you can set the emptyItemValue to be an actual object and have it be able to work more seamlessly with other parts of the logic.  There are quite a few edge cases where you might want to distinguish the empty item by some value other than -1, but still represent the selectedIndex as -1 for compatibility with the framework.

> Date: Tue, 10 Apr 2012 10:36:09 -0700
> Subject: Re: combo box
> From: s9tpepper@apache.org
> To: flex-dev@incubator.apache.org
> 
> On Tue, Apr 10, 2012 at 10:32 AM, David Coleman <
> david_coleman_007@hotmail.com> wrote:
> 
> >
> > hmmmm it seems the listsrv ate my file.  :-(
> >
> > here, I'll paste it in.  And BTW: it is for spark.
> >
> > ...
> 
> 
> Hey David,
> 
> http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/components/ComboBox.html#prompt
> 
> That's the property I was talking about, on s:ComboBox. If you set the
> comboBox.prompt the text  you set will display when comboBox.selectedIndex
> = -1. Is that not the behavior you're looking for?
> 
> 
> -- 
> Omar Gonzalez
> s9tpepper@apache.org
 		 	   		  

Re: combo box

Posted by Omar Gonzalez <s9...@apache.org>.
On Tue, Apr 10, 2012 at 10:32 AM, David Coleman <
david_coleman_007@hotmail.com> wrote:

>
> hmmmm it seems the listsrv ate my file.  :-(
>
> here, I'll paste it in.  And BTW: it is for spark.
>
> ...


Hey David,

http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/spark/components/ComboBox.html#prompt

That's the property I was talking about, on s:ComboBox. If you set the
comboBox.prompt the text  you set will display when comboBox.selectedIndex
= -1. Is that not the behavior you're looking for?


-- 
Omar Gonzalez
s9tpepper@apache.org

RE: combo box

Posted by David Coleman <da...@hotmail.com>.
hmmmm it seems the listsrv ate my file.  :-(

here, I'll paste it in.  And BTW: it is for spark.


package spark.components
{
    import flash.events.Event;

    import mx.collections.ArrayCollection;
    import mx.collections.IList;
    import mx.events.CollectionEvent;

    public class EmptyItemComboBox extends ComboBox {
        
        protected var _emptyItem:Object = new Object();
        protected var _originalDataProvider:IList = null;
        private var _enableEmptyItem:Boolean = true;
        private var _emptyItemValue:* = -1;
        private var _emptyItemLabel:String = "";
        public function EmptyItemComboBox() {
            super();
            _emptyItem.label = _emptyItemLabel;
            _emptyItem.value = _emptyItemValue;
            addEmptyItem();
            addEventListener(Event.CHANGE, onChange);
        }
        
        private function onChange(event:Event):void {
            dispatchEvent(new Event("isEmptySelectedChanged"));
        }
        
        [Bindable]
        public function get emptyItem():Object {
            return _emptyItem;
        }
        
        public function set emptyItem(value:Object):void {
            if (_emptyItem != value) {
                clearEmptyItem();
                _emptyItem = value;
                addEmptyItem();
            }
        }
        
        [Bindable(event="isEmptySelectedChanged")]
        public function get isEmptySelected():Boolean {
            return (selectedItem == null || (_emptyItem != null && selectedItem == _emptyItem));
        }
        
        override public function set selectedItem(value:*):void {
            if (value == null && emptyItem != null) {
                super.selectedItem = emptyItem;
            } else    if (value != selectedItem) {
                super.selectedItem = value;
            }
            dispatchEvent(new Event("isEmptySelectedChanged"));
        }
        
        override public function set dataProvider(value:IList):void {
            if (_originalDataProvider != null) {
                _originalDataProvider.removeEventListener(
                    CollectionEvent.COLLECTION_CHANGE,
                    onOriginalCollectionChange);
            }
            super.dataProvider = value;
            _originalDataProvider = (dataProvider as IList);
            if(value) {
                _originalDataProvider.addEventListener(
                    CollectionEvent.COLLECTION_CHANGE,
                    onOriginalCollectionChange
                );
                if(_enableEmptyItem) {
                    addEmptyItem();
                }
            }
        }
        
        private function clearEmptyItem():void {
            if (emptyItem != null && dataProvider != null 
                && dataProvider is IList) {
                var dp:IList = dataProvider as IList;
                var idx:int = dp.getItemIndex(_emptyItem);
                if (idx >=0) {
                    dp.removeItemAt(idx);    
                }
            }
            dispatchEvent(new Event("isEmptySelectedChanged"));
        }
        
        private function addEmptyItem():void {
            if(_enableEmptyItem) {
                if (emptyItem != null) {
                    if (dataProvider != null && dataProvider is IList && dataProvider.length) {
                        var dp:IList = dataProvider as IList;
                        var idx:int = dp.getItemIndex(_emptyItem);
                        if (idx == -1) {
                            var newDp:ArrayCollection = new ArrayCollection(dp.toArray().concat());
                            newDp.addItemAt(_emptyItem, 0);
                            super.dataProvider = newDp;
                            typicalItem = newDp.getItemAt(1);
                        }
                    }
                }
            }
            dispatchEvent(new Event("isEmptySelectedChanged"));
        }
        
        private function onOriginalCollectionChange(event:CollectionEvent):void {
            if (_emptyItem != null) {
                dataProvider = _originalDataProvider;
                addEmptyItem();
            }
        }
        
        override protected function commitProperties():void {
            try {
                super.commitProperties();
            } catch(dirtyFix:Error) {
                trace("AIIIIIII KERNEL PANIC!!!  FIX ME!!!!!!!!!!!!!!!!!!!");
            }
        }

        public function get enableEmptyItem():Boolean {
            return _enableEmptyItem;
        }

        public function set enableEmptyItem(value:Boolean):void {
            _enableEmptyItem = value;
        }

        public function get emptyItemValue():* {
            return _emptyItemValue;
        }

        public function set emptyItemValue(value:*):void {
            _emptyItemValue = value;
            _emptyItem.value = value;
        }

        public function get emptyItemLabel():String {
            return _emptyItemLabel;
        }

        public function set emptyItemLabel(value:String):void {
            _emptyItemLabel = value;
            _emptyItem.label = value;
            clearEmptyItem();
            addEmptyItem();
//            LogObj(emptyItem);
        }


    }
}


> Date: Tue, 10 Apr 2012 10:30:53 -0700
> Subject: Re: combo box
> From: s9tpepper@apache.org
> To: flex-dev@incubator.apache.org
> 
> On Tue, Apr 10, 2012 at 10:23 AM, David Coleman <
> david_coleman_007@hotmail.com> wrote:
> 
> >  Hi everyone.  Mike's most recent mail (mentioning that ComboBoxes have
> > changed nearly every other release) made remember something that i have had
> > sitting around in my personal files for some time.  It is a tweak to the
> > combo box that allows you to have a blank item as the first item, allowing
> > you to de-select the selected item and reset the combo to empty.  It has a
> > configurable value (which defaults to -1) and a configurable label to show
> > in the list (in case you want it to say "choose a city" or something else
> > more context appropriate).
> >
> > I'm attaching the file.  Maybe it is something worth considering.  It is a
> > behavior that is definitely lacking when you compare flex to other form
> > entry UI/UX approaches.  The ability to "cancel" your selection in a combo
> > box is rather basic and I've always been mildly surprised that it has never
> > been introduced.
> >
> > Cheers!
> > David
> >
> 
> Hi David,
> 
> First of all welcome to the group! I don't see your file attachment, but
> just wanted to ask is that for an MX component or Spark? Reason I ask is I
> believe there is a prompt property on the Spark component to set a message,
> or make it blank, when selectedIndex equals -1. Just throwing that out
> there...
> 
> -- 
> Omar Gonzalez
> s9tpepper@apache.org
 		 	   		  

Re: combo box

Posted by Omar Gonzalez <s9...@apache.org>.
On Tue, Apr 10, 2012 at 10:23 AM, David Coleman <
david_coleman_007@hotmail.com> wrote:

>  Hi everyone.  Mike's most recent mail (mentioning that ComboBoxes have
> changed nearly every other release) made remember something that i have had
> sitting around in my personal files for some time.  It is a tweak to the
> combo box that allows you to have a blank item as the first item, allowing
> you to de-select the selected item and reset the combo to empty.  It has a
> configurable value (which defaults to -1) and a configurable label to show
> in the list (in case you want it to say "choose a city" or something else
> more context appropriate).
>
> I'm attaching the file.  Maybe it is something worth considering.  It is a
> behavior that is definitely lacking when you compare flex to other form
> entry UI/UX approaches.  The ability to "cancel" your selection in a combo
> box is rather basic and I've always been mildly surprised that it has never
> been introduced.
>
> Cheers!
> David
>

Hi David,

First of all welcome to the group! I don't see your file attachment, but
just wanted to ask is that for an MX component or Spark? Reason I ask is I
believe there is a prompt property on the Spark component to set a message,
or make it blank, when selectedIndex equals -1. Just throwing that out
there...

-- 
Omar Gonzalez
s9tpepper@apache.org

Re: combo box

Posted by Jeffry Houser <je...@dot-com-it.com>.

On 4/10/2012 1:30 PM, John Cunliffe wrote:
> Great thinking. Personally I would love seeing something like the flexlib
> library being revived. Anybody else?
> John

  I'm not sure about FlexLib; since most of those components were 
pre-spark.  However, I think there is a lot of potential to create Spark 
versions of a lot of the FlexLib components.

   I wish I could devote a year or so to doing nothing, but that, but 
alas consulting clients have to be given some priority.  .


-- 
Jeffry Houser
Technical Entrepreneur
203-379-0773
--
http://www.flextras.com?c=104
UI Flex Components: Tested! Supported! Ready!
--
http://www.theflexshow.com
http://www.jeffryhouser.com
http://www.asktheflexpert.com
--
Part of the DotComIt Brain Trust


Re: combo box

Posted by Omar Gonzalez <s9...@apache.org>.
On Tue, Apr 10, 2012 at 10:30 AM, John Cunliffe <ma...@gmail.com> wrote:

> Great thinking. Personally I would love seeing something like the flexlib
> library being revived. Anybody else?
> John


Honestly, I'd rather see the developers of those components start to
contribute components to the Apache Flex SDK. ;)


-- 
Omar Gonzalez
s9tpepper@apache.org

Re: combo box

Posted by John Cunliffe <ma...@gmail.com>.
Great thinking. Personally I would love seeing something like the flexlib
library being revived. Anybody else?
John

On Tue, Apr 10, 2012 at 7:23 PM, David Coleman <
david_coleman_007@hotmail.com> wrote:

>  Hi everyone.  Mike's most recent mail (mentioning that ComboBoxes have
> changed nearly every other release) made remember something that i have had
> sitting around in my personal files for some time.  It is a tweak to the
> combo box that allows you to have a blank item as the first item, allowing
> you to de-select the selected item and reset the combo to empty.  It has a
> configurable value (which defaults to -1) and a configurable label to show
> in the list (in case you want it to say "choose a city" or something else
> more context appropriate).
>
> I'm attaching the file.  Maybe it is something worth considering.  It is a
> behavior that is definitely lacking when you compare flex to other form
> entry UI/UX approaches.  The ability to "cancel" your selection in a combo
> box is rather basic and I've always been mildly surprised that it has never
> been introduced.
>
> Cheers!
> David
>