I'd create a model for my input component, which also contains the
errorstring and bind the ui component to it.

Cheers,
Ralf.

On 9/9/06, Tim Hoff <[EMAIL PROTECTED]> wrote:
> Not really so stupid. The default way would be to set the
> errorString of the control:
>
> myTextInput.errorString = "Enter something here dummy!";
>
> This will automatically add the red border and display the red error
> message when the cursor is over the control. To remove the border
> and the message, simply clear the errorString.
>
> myTextInput.errorString = "";
>
> Bjorn, why so harsh? We all have to start somewhere.
>
> -TH
> --- In [email protected], "bjorn.schultheiss"
> <[EMAIL PROTECTED]> wrote:
> >
> > You are correct,
> >
> > It is a bit of a stupid question.
> >
> > TextField.setStyle('borderColor', 0xFF0000);
> >
> > TextField.setStyle('borderThickness', 2);
> >
> > Alert.show('FIX THIS FORM');
> >
> > TextField.toolTip
> >
> > There are a heap of different ways....
> >
> > Personal Implementation
> >
> > --- In [email protected], "Douglas Knudsen"
> > <douglasknudsen@> wrote:
> > >
> > > ok, stupid question, this is a great example, but how do you get
> this to
> > > utilise all those fancy vaildation messages in the Flex SDK.  I'm
> > talking
> > > about the ones that change the control to red borders and the
> > fly-out error
> > > message.
> > >
> > > DK
> > >
> > > On 9/8/06, grahampengelly <graham@> wrote:
> > > >
> > > > Hi Bjorn
> > > >
> > > > Thanks for taking the time to throw some code into the
> discussion. The
> > > > solution I ended up implementing was similar to the one you
> > suggest. In my
> > > > case the validation was simple, the user either supplies a
> number
> > of answers
> > > > to a question that is between the minimum and maximum allowed
> or
> > they don't.
> > > > My point here is that the validation message to the user is
> more
> > or less
> > > > predefined.
> > > >
> > > > In a more complicated scenario, say a name and address form,
> it would
> > > > appear the model would get messy. Just the name field might
> have
> > required,
> > > > min  max length and [a-z][A-Z] validation rules. Which of these
> > rules is
> > > > broken and on what field would need to be passed back to the
> view
> > if you
> > > > say, wanted to display an instruction to the user or color the
> > appropriate
> > > > textfield. Having engaged in this discussion I think I have now
> > come to a
> > > > solution for scenarios like this that would maintain the
> intent of
> > the MVC
> > > > pattern.
> > > >
> > > > On the model you would maintain a collection of objects such
> as this:
> > > >
> > > >     public class ValidationFailedInfo
> > > >     {
> > > >         private var _propertyName:String;
> > > >         private var _message:String;
> > > >
> > > >         public function get propertyName():String
> > > >         {
> > > >             return _propertyName;
> > > >         }
> > > >
> > > >         public function get message():String
> > > >         {
> > > >             return _message;
> > > >         }
> > > >
> > > >         public function ValidationFailedInfo(message:String,
> > > > propertyName:String)
> > > >         {
> > > >             _message = message;
> > > >             _propertyName = propertyName;
> > > >         }
> > > >     }
> > > >
> > > > That would be populated/cleared by a validate() function (not
> > shown but it
> > > > just applies your rules to the properties of the model). You
> would
> > also have
> > > > a method such as:
> > > >
> > > >         public function
> > GetValidationMessages(propertyName:String):Array
> > > >         {
> > > >             validate();
> > > >             var  messageArr:Array = new Array();
> > > >             var currValInfo:ValidationFailedInfo = null;
> > > >             for(var x:int = 0; x<_validationInfoList.length;
> x++)
> > > >             {
> > > >                 curValInfo =
> > ValidationFailedInfo(_validationInfoList[x]);
> > > >                 if(currValInfo.propertyName == propertyName)
> > > >                 {
> > > >                     messageArr.push(currValInfo.message);
> > > >                 }
> > > >             }
> > > >             return messageArr;
> > > >         }
> > > >
> > > > You could use this to determine whether each field is valid
> and if
> > not why
> > > > not. All of the validation rules would remain in the model as
> > would the
> > > > message strings that you return. If for example your
> application
> > supports 10
> > > > languages, storing all of the language logic in the view would
> be a
> > > > maintenance nightmare wheras this would allow all of that to
> stay
> > in the
> > > > model.
> > > >
> > > > Thanks for all of your contributions. Can I also take the
> > opportunity to
> > > > say that this is the most welcoming and active group that I
> have
> > > > participated in... Keep it up [image: :D]
> > > >
> > > > Graham
> > > >
> > > > --- In [email protected], "Bjorn Schultheiss"
> > <bjorn.schultheiss@>
> > > > wrote:
> > > > >
> > > > > Gladly,
> > > > >
> > > > > simple example.
> > > > >
> > > > > // view
> > > > > <mx:Button label="submit" enabled="{model.formValidated}" />
> > > > >
> > > > > // model data Object
> > > > > public function set username(value:String):void
> > > > > {
> > > > > _username = value;
> > > > > validateForm()
> > > > > }
> > > > >
> > > > > private function validateForm():void
> > > > > {
> > > > > if (_username != undefined)
> > > > > formValidated = true;
> > > > > }
> > > > >
> > > > > This is code i've just typed, but the principle remains the
> same.
> > > > > Data drives the view via dataBinding. There are alternatives
> to
> > the way
> > > > you
> > > > > would structure your models and views but the principle
> remains the
> > > > same.
> > > > >
> > > > >
> > > > > Regards,
> > > > >
> > > > > Bjorn Schultheiss
> > > > > Senior Flash Developer
> > > > > QDC Technologies
> > > > >
> > > > >
> > > > > _____
> > > > >
> > > > > From: [email protected]
> > [mailto:[EMAIL PROTECTED] On
> > > > > Behalf Of grahampengelly
> > > > > Sent: Friday, 8 September 2006 12:24 PM
> > > > > To: [email protected]
> > > > > Subject: [flexcoders] Re: Cairngorm... Where should this go?
> > > > >
> > > > >
> > > > >
> > > > > Thanks all for the discussion...
> > > > >
> > > > > So it seems the consensus is the validation, from a pattern
> > purist point
> > > > of
> > > > > view should sit in the model. Someone suggested a
> model.isDataValid
> > > > > property... This gives us an indication but how should we be
> > > > communicating
> > > > > back to the view which data it is that is invalid and what
> is it
> > that is
> > > > > invalid about it? Should the model dispatch a data invalid
> event
> > that
> > > > the
> > > > > view acts upon or a checkValid function that returns the data
> > required
> > > > to
> > > > > act?
> > > > >
> > > > > I know this is very much academic, particularly as since
> posting
> > > > originally,
> > > > > I have implemented my validation that works perfectly well. I
> > would be
> > > > > interested to hear Bjorn how you get your validation
> information
> > back
> > > > out of
> > > > > the model to display it in the view.
> > > > >
> > > > > Cheers...
> > > > >
> > > > > Graham
> > > > > Blog <http://goingspare.wordpress.com>
> > > > >
> > > > > --- In [email protected], "Bjorn Schultheiss"
> > > > > bjorn.schultheiss@ wrote:
> > > > > >
> > > > > > I'm going to fly kick this thread quickly.
> > > > > > Validation relates to model, quite simply.
> > > > > >
> > > > > >
> > > > > > Regards,
> > > > > >
> > > > > > Bjorn Schultheiss
> > > > > > Senior Flash Developer
> > > > > > QDC Technologies
> > > > > >
> > > > > >
> > > > > > _____
> > > > > >
> > > > > > From: [email protected]
> > [mailto:[EMAIL PROTECTED]
> > > > On
> > > > > > Behalf Of lostinrecursion
> > > > > > Sent: Friday, 8 September 2006 6:28 AM
> > > > > > To: [email protected]
> > > > > > Subject: [flexcoders] Re: Cairngorm... Where should this
> go?
> > > > > >
> > > > > >
> > > > > >
> > > > > > Sorry but I have to interject on this. Intsrestingly
> enough I
> > asked a
> > > > > > similar question some days ago and did not receive a
> response
> > from a
> > > > > > design pettern perspective, but from a "what works"
> > perspective. I am
> > > > > > actually 85% of the tim all about what works, so not there
> is
> > anything
> > > > > > wrong with it. But, I would like to hear some other
> rhoughts on it
> > > > > > since Validation is integral to just about every RIA that
> > accepts data
> > > > > > on the planet.
> > > > > >
> > > > > > In MVC, the Validators seem to be more of a middle ground
> > issue. Since
> > > > > > the Model contains the business logic and is fed data to
> > process and
> > > > > > the controller merely acts as waystation back and forth
> from
> > view to
> > > > > > model, it would seem to me that there should almost be
> another
> > letter
> > > > > > in MVC since validation doesn't really fit anywhere.
> > > > > >
> > > > > > However, it would seem to me that a Validation function
> would be
> > > > > > placed in the model itself. Since the view should only
> query
> > the model
> > > > > > to get its current state and accept the user input, it
> seems
> > it should
> > > > > > not be in the View to promote modularity.
> {myModel.dataIsValid ==
> > > > true}
> > > > > >
> > > > > > Because what if you wanted to add another View to the
> > application??
> > > > > > (As the OP mentioned) Seems to me like it would be
> malformed
> > in the
> > > > View.
> > > > > >
> > > > > > Hmmmm... Perhaps MVCV - ;)
> > > > > >
> > > > >
> > > >
> > > >
> > >
> > >
> > >
> > > --
> > > Douglas Knudsen
> > > http://www.cubicleman.com
> > > this is my signature, like it?
> > >
> >
>
>
>
>
>
>
>
> --
> Flexcoders Mailing List
> FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
> Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com
> Yahoo! Groups Links
>
>
>
>
>
>
>
>
>
>


-- 
Ralf Bokelberg <[EMAIL PROTECTED]>
Flex & Flash Consultant based in Cologne/Germany


--
Flexcoders Mailing List
FAQ: http://groups.yahoo.com/group/flexcoders/files/flexcodersFAQ.txt
Search Archives: http://www.mail-archive.com/flexcoders%40yahoogroups.com 
Yahoo! Groups Links

<*> To visit your group on the web, go to:
    http://groups.yahoo.com/group/flexcoders/

<*> Your email settings:
    Individual Email | Traditional

<*> To change settings online go to:
    http://groups.yahoo.com/group/flexcoders/join
    (Yahoo! ID required)

<*> To change settings via email:
    mailto:[EMAIL PROTECTED] 
    mailto:[EMAIL PROTECTED]

<*> To unsubscribe from this group, send an email to:
    [EMAIL PROTECTED]

<*> Your use of Yahoo! Groups is subject to:
    http://docs.yahoo.com/info/terms/
 


Reply via email to