Coverage Report - palmed.ui.ConfirmationDialog

Classes in this Package Line Coverage Branch Coverage Complexity
ConfirmationDialog
0% 
0% 
2,5

 1  
 /**
 2  
  * Redistribution  and use  in source  and binary  forms, with  or without
 3  
  * modification, are permitted provided  that the following conditions are
 4  
  * met :
 5  
  *
 6  
  * . Redistributions  of  source  code  must  retain  the  above copyright
 7  
  *   notice, this list of conditions and the following disclaimer.
 8  
  *
 9  
  * . Redistributions in  binary form  must reproduce  the above  copyright
 10  
  *   notice, this list of conditions  and the following disclaimer in  the
 11  
  *   documentation and/or other materials provided with the distribution.
 12  
  *
 13  
  * . The name of the author may not be used to endorse or promote products
 14  
  *   derived from this software without specific prior written permission.
 15  
  *
 16  
  * THIS SOFTWARE IS  PROVIDED BY THE  AUTHOR ``AS IS''  AND ANY EXPRESS  OR
 17  
  * IMPLIED  WARRANTIES,  INCLUDING,  BUT   NOT  LIMITED  TO,  THE   IMPLIED
 18  
  * WARRANTIES OF MERCHANTABILITY AND  FITNESS FOR A PARTICULAR  PURPOSE ARE
 19  
  * DISCLAIMED.  IN NO  EVENT SHALL  THE AUTHOR  BE LIABLE  FOR ANY  DIRECT,
 20  
  * INDIRECT,  INCIDENTAL,  SPECIAL,  EXEMPLARY,  OR  CONSEQUENTIAL  DAMAGES
 21  
  * (INCLUDING,  BUT  NOT LIMITED  TO,  PROCUREMENT OF  SUBSTITUTE  GOODS OR
 22  
  * SERVICES;  LOSS  OF USE,  DATA,  OR PROFITS;  OR  BUSINESS INTERRUPTION)
 23  
  * HOWEVER CAUSED  AND ON  ANY THEORY  OF LIABILITY,  WHETHER IN  CONTRACT,
 24  
  * STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN
 25  
  * ANY  WAY  OUT OF  THE  USE OF  THIS  SOFTWARE, EVEN  IF  ADVISED OF  THE
 26  
  * POSSIBILITY OF SUCH DAMAGE.
 27  
  *
 28  
  * $Id: ConfirmationDialog.java 359 2005-12-23 14:26:53Z mat007 $
 29  
  */
 30  
 
 31  
 package palmed.ui;
 32  
 
 33  
 import javax.microedition.lcdui.Command;
 34  
 import javax.microedition.lcdui.CommandListener;
 35  
 import javax.microedition.lcdui.Displayable;
 36  
 
 37  
 /**
 38  
  * This dialog prompts the user for a yes/no choice.
 39  
  *
 40  
  * @author Mathieu Champlon
 41  
  * @version $Revision: 359 $ $Date: 2005-12-23 23:26:53 +0900 (ven., 23 déc. 2005) $
 42  
  */
 43  
 public final class ConfirmationDialog extends Dialog implements CommandListener
 44  
 {
 45  
     /**
 46  
      * The confirmation command.
 47  
      */
 48  0
     private final Command yesCommand_ = new Command( "Yes", Command.OK, 1 );
 49  
     /**
 50  
      * The cancelation command.
 51  
      */
 52  0
     private final Command noCommand_ = new Command( "No", Command.OK, 1 );
 53  
     /**
 54  
      * The listener.
 55  
      */
 56  
     private final IConfirmationListener listener_;
 57  
 
 58  
     /**
 59  
      * Create a confirmation dialog.
 60  
      *
 61  
      * @param title the form title
 62  
      * @param description the message describing why the user must confirm
 63  
      * @param question the question to ask
 64  
      * @param listener the listener to receive user decision callbacks
 65  
      */
 66  
     public ConfirmationDialog( final String title, final String description, final String question,
 67  
             final IConfirmationListener listener )
 68  
     {
 69  0
         super( title );
 70  0
         if( listener == null )
 71  0
             throw new IllegalArgumentException( "parameter 'listener' is null" );
 72  0
         appendMessage( description );
 73  0
         appendMessage( question );
 74  0
         addCommand( yesCommand_ );
 75  0
         addCommand( noCommand_ );
 76  0
         setCommandListener( this );
 77  0
         listener_ = listener;
 78  0
     }
 79  
 
 80  
     /**
 81  
      * {@inheritDoc}
 82  
      */
 83  
     public void commandAction( final Command command, final Displayable displayable )
 84  
     {
 85  0
         if( command == yesCommand_ )
 86  0
             listener_.accept();
 87  
         else
 88  0
             listener_.refuse();
 89  0
     }
 90  
 }