Hi Janak,

Thanks. But I need to know the state of the ULCMandatoryAndEnabler. I have a dialog with mandatory fields and OkButton is enabled if all mandatory fields are filled and at least one field in dialog has changed. Cancel action fires a question alert for Save/Don't save/Cancel. If OkButton is not enabled, Save is not possible. How to know that OkButton is enabled?

Here is my code:

private ULCDialog fDialog;
private ULCTextField fAdress;
private ULCTextField fCity;
private ULCTextField fZip;
private ULCTextField fCountry;
private ULCButton fOkButton;
private ULCButton fCancelButton;

private void configureEnabler() {
   // Ok Button: ULCHasChangedEnabler + ULCMandatoryAndEnabler
   fHasChangedEnabler = new ULCHasChangedEnabler();
   fHasChangedEnabler.add(fAdress);
   fHasChangedEnabler.add(fCity);
   fHasChangedEnabler.add(fZip);
   fHasChangedEnabler.add(fCountry);
   fHasChangedEnabler.reset();
fMandatoryAndEnabler = new ULCMandatoryAndEnabler();
   fMandatoryAndEnabler.setHighLightColor(new Color(255,194,194));
   fMandatoryAndEnabler.add(fAdress);
   fMandatoryAndEnabler.add(fCity);
   fMandatoryAndEnabler.add(fHasChangedEnabler);

   fOkButton.setEnabler(fMandatoryAndEnabler);
}

public boolean isOkButtonEnabling() {
   // how to know that the OkButton is enabling ?
   // => all mandatory fields are filled and at least one field has changed
   // return fHasChangedEnabler.isEnabling() isn't right
   return false;
}

public IAction createOkAction() {
   return new AbstractAction() {
       public void actionPerformed(ActionEvent event) {
           save();
       }
   };
}

public IAction createCancelAction() {
   return new AbstractAction() {
       public void actionPerformed(ActionEvent event) {
           if (isOkButtonEnabling()) {
               // ULCAlert for Save/Don't save/Cancel
           } else {
               // ULCAlert for Don't save/Cancel
           }
       }
   };
}


Regards
Vladimir Turek



Janak Mulani napsal(a):
Hi Vladimir,

There is a method ULCHasChangedEnabler#isEnabling().

It returns the current state of the enabler.

The state is updated in the next roundtrip initiated from the client.

Thanks and regards,

Janak

-----Original Message-----
From: [EMAIL PROTECTED]
[mailto:[EMAIL PROTECTED] Behalf Of Vladimír Turek
Sent: Thursday, February 15, 2007 11:32 AM
To: [email protected]
Subject: [ULC-developer] Current state of a ULCMandatoryAndEnabler


Hello.

I need to know the current state of a ULCMandatoryAndEnabler. In API
isn't a method like ULCHasChangedEnabler.isEnabling.

Do you have any suggestion?

Regards

Vladimir Turek


_______________________________________________
ULC-developer mailing list
[email protected]
http://lists.canoo.com/mailman/listinfo/ulc-developer

_______________________________________________
ULC-developer mailing list
[email protected]
http://lists.canoo.com/mailman/listinfo/ulc-developer

Reply via email to