Package com.github.gwtbootstrap.datepicker.client.ui

Examples of com.github.gwtbootstrap.datepicker.client.ui.DateBox


    final CheckBox    chkToday   = new CheckBox("Utilizza Data e Ora del Server");
   
    final TextBox     txtTemp    = new TextBox();
   
    final TextBox     txtLight   = new TextBox();
    final DateBox     tpkDate    = new DateBox();
    final TextBox    dtkHour    = new TextBox();
    final TextBox    dtkMin    = new TextBox();
    final TextBox    dtkSec    = new TextBox();
   
    // valori di default
    dtkHour.setText("0");
    dtkMin.setText("0");
    dtkSec.setText("0");

    // handler per impedire che l'utente inserisca Minuti e Secondi con formato errato
    KeyDownHandler   time   = new KeyDownHandler() {
      @Override
      public void onKeyDown(KeyDownEvent event) {
        // inputbox interessata
        TextBox input = (TextBox)(event.getSource());
        char carattere = (char)event.getNativeKeyCode();
         
        // il carattere inserito � un numero?
        if (Character.isDigit(carattere)){
        // effettuo il controllo sul contenuto solo se necessario
        if (!input.getText().isEmpty()){
            
          int limit;
          // l'ora pu� assumere valori 0-23, minuti/secondi 0-59
          if (input==dtkHour){
          limit = 23; }else{ limit = 59; }
         
          // ci stiamo allargando troppo, elimina il carattere!
          if (Integer.parseInt(input.getText()+carattere) > limit) {
          input.cancelKey(); }
          // se il testo inizia per '0' e contiene altri 2 caratteri allora eliminalo!
          if (input.getText().startsWith("0")){
          if (input.getText().length()==2){
          input.setText(Integer.toString(Integer.parseInt(input.getText())));}}
        }
           
        }else{
        // Il carattere inserito non � un numero? Eliminalo!
           
        // il controllo per il Backspace non pu� avvenire assieme a
        // quello del formato del carattere
        if(carattere != (char) KeyCodes.KEY_BACKSPACE &&
          carattere != (char) KeyCodes.KEY_TAB){input.cancelKey();}
        }

      }
    };
   
   
    KeyDownHandler   fDown   = new KeyDownHandler() {
      @Override
      public void onKeyDown(KeyDownEvent event) {
        // inputbox interessata
        TextBox input = (TextBox)(event.getSource());
        char carattere = (char)event.getNativeKeyCode();

        // controllo che il carattere inserito sia un numero/segno [-]/Backspace/Tab
        if (Character.isDigit(carattere)){
          // niente da fare qui
        }else if (carattere == (char) 109 || // carattere [ - ] in Opera e Firefox
              carattere == (char) 189){ // carattere [ - ] in MSIE, Safari e Chrome
          if (input == txtLight){
            input.cancelKey();
          }else{toCheck[curFocus] = true;}
        }else if (
              carattere == (char) 190){ // carattere [ . ]
          //toCheck = true;
        }else if (carattere == (char) KeyCodes.KEY_BACKSPACE){
          toCheck[curFocus] = true;
        }else if (carattere == (char) KeyCodes.KEY_TAB){
          // niente da fare qui, se ne occupa onBlur
        }else{
          input.cancelKey();
        }
      }
    };
   
    KeyUpHandler fUp = new KeyUpHandler(){
     
      @Override
      public void onKeyUp(KeyUpEvent event) {
       
        if(toCheck[curFocus]){
          rightDataPat((TextBox)(event.getSource()))
        }
      }
    };
   
    BlurHandler fBlur = new BlurHandler(){
     
      @Override
      public void onBlur(BlurEvent event) {
        rightDataPat((TextBox)(event.getSource()));
      }

    };
   
    FocusHandler fFocus = new FocusHandler(){

      @Override
      public void onFocus(FocusEvent event) {
        curFocus = (((TextBox)(event.getSource()) == txtLight) ? 0 : 1);
       
      }
     
    };
       
    // associo alle textbox gli handler necessari
    dtkHour.addKeyDownHandler(time);
    dtkMin.addKeyDownHandler(time);
    dtkSec.addKeyDownHandler(time);
   
    txtTemp.addKeyDownHandler(fDown);
    txtLight.addKeyDownHandler(fDown);
    txtTemp.addKeyUpHandler(fUp);
    txtLight.addKeyUpHandler(fUp);
    txtTemp.addBlurHandler(fBlur);
    txtLight.addBlurHandler(fBlur);
    txtTemp.addFocusHandler(fFocus);
    txtLight.addFocusHandler(fFocus);
   
    // messaggio durante l'invio dei dati al Server
    pendingPanel.setHorizontalAlignment(VerticalPanel.ALIGN_RIGHT);
    pendingPanel.add(pendingMessage);
   
    // elimino l'elemento HTML "Loading"
    DOM.removeChild(DOM.getElementById("jContainer"), DOM.getElementById("loading"));
   
    // definisco gli elementi da inserire nella pagina Web
    HorizontalPanel timehp = new HorizontalPanel();

    timehp.add(dtkHour);
    timehp.add(dtkMin);
    timehp.add(dtkSec);
   
    // Aggiungo gli elementi HTML alla pagina
    RootPanel.get("tempFieldContainer").add(txtTemp);
    RootPanel.get("lightFieldContainer").add(txtLight);
    RootPanel.get("dateFieldContainer").add(tpkDate);
   
    RootPanel.get("timeFieldContainer").add(timehp);
    RootPanel.get("chkFieldContainer").add(chkToday);
   
    tpkDate.setValue(new Date());
   
    RootPanel.get("sendButtonContainer").add(sendButton);

    // l'opzione di default prevede che la data e l'ora siano presi dal Server
    chkToday.setChecked(true);
    tpkDate.setEnabled(false);
    dtkHour.setEnabled(false);
    dtkMin.setEnabled(false);
    dtkSec.setEnabled(false);
   
    // Handler che si occupa di disabilitare i campi relativi all'orario
    // nel caso in cui si decida di utilizzare la data attuale
    chkToday.addClickHandler(new ClickHandler() {
      public void onClick(ClickEvent event) {
        tpkDate.setEnabled(!chkToday.isChecked());
        dtkHour.setEnabled(!chkToday.isChecked());
        dtkMin.setEnabled(!chkToday.isChecked());
        dtkSec.setEnabled(!chkToday.isChecked());
      }
    });
View Full Code Here


      String        temperatura  =  ((TextBox) RootPanel.get("tempFieldContainer").getWidget(0)).getText();
      String        luce    =  ((TextBox) RootPanel.get("lightFieldContainer").getWidget(0)).getText();
      HorizontalPanel   time    =   (HorizontalPanel) RootPanel.get("timeFieldContainer").getWidget(0);
     
      // campo data (Giorno, Mese, Anno)
      DateBox    data  =   (DateBox)(RootPanel.get("dateFieldContainer").getWidget(0));
     
      // dati relativi a Ora, Minuti e Secondi
      TextBox   hh    =  (TextBox)(time.getWidget(0));
      TextBox    mm    =   (TextBox)(time.getWidget(1));
      TextBox    ss    =  (TextBox)(time.getWidget(2));
      CheckBox   check   =   (CheckBox) RootPanel.get("chkFieldContainer").getWidget(0);
      String    sTime;
     
      // contenitori di Luce e Temperatura
      float fl = 0;
      float ft = 0;
     
      try {
        fl=Float.parseFloat(luce);
        ft=Float.parseFloat(temperatura);
        if (fl<0)throw new Exception();
       
        // recupero l'ora impostata o quella corrente?
        if(!check.isChecked()){
        if(Integer.parseInt(hh.getValue())==0 &&
        Integer.parseInt(mm.getValue())==0 &&
        Integer.parseInt(ss.getValue())==0){throw new Exception();}

        // cambio formato data (es. con formato Standard: Wed Jun 26 17:41:38 CEST 2013)
        DateTimeFormat format = DateTimeFormat.getFormat("dd/MM/yyyy");
       
        // la stringa sTime sar� nulla nel caso in cui si decida di recuperare il momento dell'inserimento
        // dal Server, altrimenti avr� un formato simile al DateTime
        sTime = "&"+format.format(data.getValue())+"&"+hh.getText()+":"+mm.getText()+":"+ss.getText();
        }else{
        // il server si occupa di effettuare un controllo sul formato di sTime: nel caso in cui il suo
        // formato non sia 'HH:mm:ss' l'orario di inserimento viene preso da quello attuale del Server
          sTime = "";
        }
View Full Code Here

   
  }

  public  static void CreateDate(HorizontalPanel date) {

    DateBox  db = new DateBox();
    db.setValue(null);
    date.add(db);
   
  }
View Full Code Here

   * Restituisce il valore della data.
   * @return
   */
  private String getDate(int i) {

    DateBox cdate = (DateBox) ((HorizontalPanel)date_hp.getWidget(1+3*i)).getWidget(0);
    Date    date  = cdate.getValue();
    if (date==null)
      return null;
    else
      return DateTimeFormat.getFormat("dd/MM/yyyy").format(date);
  }
View Full Code Here

TOP

Related Classes of com.github.gwtbootstrap.datepicker.client.ui.DateBox

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.