Package com.ronald.gantengtimesheet.db

Examples of com.ronald.gantengtimesheet.db.RecordEntity


      @Override
      public void actionPerformed(ActionEvent e) {
        for (int row : getSelectedRows()) {
          int modelRow=convertRowIndexToModel(row);
          if (modelRow < 0) { continue; }
          final RecordEntity entity = model.data.get(modelRow);
          entity.delete();
        }
      }
    });
    popup.addPopupMenuListener(new PopupMenuListener() {
     
View Full Code Here


      String previous;
      @Override
      public void actionPerformed(ActionEvent e) {
        if (chkUpdate.isSelected()) {
          previous = txtDescription.getText();
          final RecordEntity recordEntity = TimesheetComponent.getInstance().getLastRowRecordEntity();
          if (recordEntity != null) {
            txtDescription.setText(recordEntity.getDescription());
          }
        } else {
          txtDescription.setText(previous);
        }
      }
    });
   
    btnStart.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        if (timer.isRunning()) {
          timer.stop();
        } else {
          timer.start();
        }
        String title = "";
        char mnemonic = ' ';
        if (timer.isRunning()) {
          title = "Pause";
          mnemonic = 'P';
        } else {
          title = "Continue";
          mnemonic = 'C';
        }
        btnStart.setText(title);
        btnStart.setMnemonic(mnemonic);
      }
    });

    btnReset.addActionListener(new ActionListener() {
      @Override
      public void actionPerformed(ActionEvent e) {
        timer.stop();
        elapsed = 0;
        updateLabel();
        btnStart.setText("Start");
        btnStart.setMnemonic('S');
      }
    });

    addWindowListener(new WindowAdapter() {
      @Override
      public void windowClosing(WindowEvent e) {
        // if elapsed time is 0, do not insert data into the table
        if (elapsed == 0) return;
       
        RecordEntity recordEntity;
        double previousDuration = 0;
        Double rate = null;
        if (chkUpdate.isSelected()) {
          // do an update
          recordEntity = TimesheetComponent.getInstance().getLastRowRecordEntity();
          if (recordEntity == null) {
            // insert it instead
            recordEntity = TimesheetComponent.getInstance().getNewRecordEntity();
          } else {
            previousDuration = recordEntity.getDuration();
            rate = recordEntity.getRate();
          }
        } else {
          // insert
          recordEntity = TimesheetComponent.getInstance().getNewRecordEntity();
        }
       
        if (rate == null) {
          rate = Config.getDefaultRate();
        }
       
        recordEntity.setDate(TimesheetComponent.getInstance().getSelectedDate());
        recordEntity.setDuration(previousDuration + (elapsed / 3600.0));
        recordEntity.setDescription(txtDescription.getText());
        recordEntity.setRate(rate);
        recordEntity.setUpdated(new Date());
        recordEntity.save();
      }
    });

    btnMinimize.addActionListener(new ActionListener() {
      @Override
View Full Code Here

    }

  @Override
    public Object getValueAt(int row, int column) {
    final Columns col = Columns.values()[column];
    final RecordEntity e = row < data.size() ? data.get(row) : null;
    if (e == null) {
      switch (col) {
        case NO: return null;
        case DURATION: {
          double sum=0.0;
          for (RecordEntity entity : data) {
            if (!entity.isNew()) {
              sum+=entity.getDuration();
            }
          }
          return sum;
        }
        case RATE: return null;
        case DESCRIPTION: return null;
      }
    } else {
      switch (col) {
        case NO: return row+1;
        case DURATION: return e.getDuration();
        case RATE: return e.getRate();
        case DESCRIPTION: return e.getDescription();
      }
      }
      return null;
    }
View Full Code Here

 

  @Override
    public void setValueAt(Object val, int row, int column) {
    final Columns col = Columns.values()[column];
    final RecordEntity e = data.get(row);
    switch(col) {
      case DURATION: {
        try {
          e.setDuration(Double.valueOf((String) val));
        } catch (NumberFormatException ex) {
          e.setDuration(null);
        }
        break;
      }
      case RATE: {
        try {
          e.setRate(Double.valueOf((String)val));
        } catch (NumberFormatException ex) {
          e.setRate(null);
        }
        break;
      }
      case DESCRIPTION: {
        e.setDescription((String) val);
        break;
      }
    }
   
    if (e.canSave()) {
      e.setDate(TimesheetComponent.getInstance().getSelectedDate());
      e.setUpdated(new Date());
      if (e.isNew()) {
        e.save();
        newRecord = new RecordEntity();
        data.add(newRecord);
      } else {
        e.save();
      }
    }
    }
View Full Code Here

    }
 
  public void reload() {
    List<RecordEntity> result = RecordEntityCollection.getInstance().getRecordEntities(TimesheetComponent.getInstance().getSelectedDate());
    if (!newRecord.isNew()) {
      newRecord = new RecordEntity();
    }
    result.add(newRecord); // add last row
    data = result;
  }
View Full Code Here

TOP

Related Classes of com.ronald.gantengtimesheet.db.RecordEntity

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.