• Open Menu Close Menu
  • Apple
  • Shopping Bag
  • Apple
  • Mac
  • iPad
  • iPhone
  • Watch
  • TV
  • Music
  • Support
  • Search apple.com
  • Shopping Bag

Lists

Open Menu Close Menu
  • Terms and Conditions
  • Lists hosted on this site
  • Email the Postmaster
  • Tips for posting to public mailing lists
ERD2WCustomQueryBoolean uiStyle
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

ERD2WCustomQueryBoolean uiStyle


  • Subject: ERD2WCustomQueryBoolean uiStyle
  • From: Theodore Petrosky <email@hidden>
  • Date: Sat, 18 Feb 2012 08:01:43 -0800 (PST)

Based on what you suggested and the fact that my EO is using the integer booleans in the database here is what I came up with:

public void setValue(String newValue) throws Exception {

	int returnValue = 0;

	propertyKey =(String) valueForBinding("propertyKey");
	displayGroup = (WODisplayGroup)valueForBinding("displayGroup");

	if(newValue == null || newValue == "don't care" || newValue == "-- Select --") {
		displayGroup.queryMatch().takeValueForKey(null, propertyKey);
		displayGroup.queryOperator().takeValueForKey(null, propertyKey);
	} else {

		if (newValue.equalsIgnoreCase("true")) {
			returnValue = 1;
		} else if (newValue.equalsIgnoreCase("false")){
			returnValue = 0;
		}

		displayGroup.queryMatch().takeValueForKey(returnValue, propertyKey);
		displayGroup.queryOperator().takeValueForKey("=", propertyKey);

	}
    }


	public EOEnterpriseObject object;
	public String propertyKey;
	public Object item;
	public WODisplayGroup displayGroup;
	private static NSArray<String> list = new NSArray<String>(new String[] {"true", "false"});

	//NSLog.out.appendln("setValue in the boolean popup " + returnValue );

}

It works. Is there a better way? I guess if I were to do this 'correctly' I would figure out whether the incoming value is a string or int. In this case I guess I should rename my method:

TPSD2WQueryBooleanIntComponent

Ted

>
> Message: 2
> Date: Fri, 17 Feb 2012 12:35:31 -0800 (PST)
> From: Theodore Petrosky <email@hidden>
> To: email@hidden
> Cc: email@hidden
> Subject: Re: ERD2WCustomQueryBoolean uiStyle
> Message-ID:
>     <email@hidden>
> Content-Type: text/plain; charset=iso-8859-1
>
> Oh now the error message makes sense. you use 'true' for
> true. I am using 1 and 0 (int booleans). I will have to
> adjust this.
>
> Ted
>
> > >>
> > >> Message: 7
> > >> Date: Sun, 12 Feb 2012 08:09:00 -0600
> > >> From: James Cicenia <email@hidden>
> > >> To: WebObjects-Dev Mailing List List <email@hidden>
> > >> Subject: Re: ERD2WCustomQueryBoolean uiStyle
> > >> Message-ID: <email@hidden>
> > >> Content-Type: text/plain; charset="utf-8"
> > >>
> > >> Good question. A long time ago I couldn't find
> one,
> > so I
> > >> created my own and never looked again.
> > >>
> > >> HTH
> > >> James
> > >>
> > >>
> > >> binding:
> > >>
> > >> PopUpBoolean: WOPopUpButton {
> > >>     list = list;
> > >>     selection = value;
> > >>     noSelectionString = "--
> > Select --";
> > >>     item = item;
> > >> }
> > >>
> > >>
> > >> code:
> > >>
> > >>
> > >>
> > >> public class TOSD2WQueryBooleanComponent
> extends
> > >> ERDCustomQueryComponent
> > >> {
> > >>
> > >>     public
> > TOSD2WQueryBooleanComponent(WOContext
> > >> context)
> > >>     {
> > >>     
> >    super(context);
> > >>     }
> > >>
> > >>     public NSArray list()
> > >>     {
> > >>         return list;
> > >>     }
> > >>
> > >>     public Object value()
> > >>     {
> > >>     
> >    if(displayGroup != null
> > >> && displayGroup.queryMatch() != null)
> > >>         
> >    return
> > >>
> > displayGroup.queryMatch().objectForKey(propertyKey);
> > >>         else
> > >>         
> >    return null;
> > >>     }
> > >>
> > >>     public void setValue(String
> > newValue)
> > >>         throws
> > Exception
> > >>     {
> > >>         if(newValue
> > == "don't care")
> > >>         {
> > >>           
> > >>
> displayGroup.queryMatch().takeValueForKey(null,
> > >> propertyKey);
> > >>           
> > >>
> displayGroup.queryOperator().takeValueForKey(null,
> > >> propertyKey);
> > >>         } else
> > >>         {
> > >>           
> > >>
> > displayGroup.queryMatch().takeValueForKey(newValue,
> > >> propertyKey);
> > >>           
> > >>
> displayGroup.queryOperator().takeValueForKey("=",
> > >> propertyKey);
> > >>         }
> > >>     }
> > >>
> > >>     public EOEnterpriseObject
> > object;
> > >>     public String propertyKey;
> > >>     public Object item;
> > >>     public WODisplayGroup
> > displayGroup;
> > >>     private static NSArray list
> > = new NSArray(new
> > >> String[] {
> > >>         "true",
> > "false"
> > >>     });
> > >>
> > >> }
> > >>
> > >>
> > >> On Feb 11, 2012, at 11:40 PM, Theodore
> Petrosky
> > wrote:
> > >>
> > >>> Finally I got the query page rules
> working. It
> > seems
> > >> that I misspelled a propertyKey name.
> > >>> So, I can not figure out how to control
> the UI
> > style
> > >> of:
> > >>> ERD2WCustomQueryBoolean
> > >>>
> > >>> The default is radio buttons but I would
> love
> > to see a
> > >> popup.
> > >>>
> > >>> Ted
> > >>>
> > _______________________________________________


 _______________________________________________
Do not post admin requests to the list. They will be ignored.
Webobjects-dev mailing list      (email@hidden)
Help/Unsubscribe/Update your Subscription:

This email sent to email@hidden


  • Prev by Date: Re: New AjaxFramework and AjaxSortableList bug
  • Next by Date: WO Finalizer deadlock
  • Previous by thread: Re: ERD2WCustomQueryBoolean uiStyle
  • Next by thread: Re: Webobjects-dev Digest, Vol 9, Issue 120
  • Index(es):
    • Date
    • Thread