public void onDragOver(DragObject d) {
    final DragView dragView = d.dragView;
    final int scrollOffset = mScrollView.getScrollY();
    final float[] r = getDragViewVisualCenter(d.x, d.y, d.xOffset, d.yOffset, dragView, null);
    r[0] -= getPaddingLeft();
    r[1] -= getPaddingTop();

    final long downTime = SystemClock.uptimeMillis();
    final MotionEvent translatedEv =
        MotionEvent.obtain(downTime, downTime, MotionEvent.ACTION_MOVE, d.x, d.y, 0);

    if (!mAutoScrollHelper.isEnabled()) {
      mAutoScrollHelper.setEnabled(true);
    }

    final boolean handled = mAutoScrollHelper.onTouch(this, translatedEv);
    translatedEv.recycle();

    if (handled) {
      mReorderAlarm.cancelAlarm();
    } else {
      mTargetCell =
          mContent.findNearestArea((int) r[0], (int) r[1] + scrollOffset, 1, 1, mTargetCell);
      if (isLayoutRtl()) {
        mTargetCell[0] = mContent.getCountX() - mTargetCell[0] - 1;
      }
      if (mTargetCell[0] != mPreviousTargetCell[0] || mTargetCell[1] != mPreviousTargetCell[1]) {
        mReorderAlarm.cancelAlarm();
        mReorderAlarm.setOnAlarmListener(mReorderAlarmListener);
        mReorderAlarm.setAlarm(REORDER_DELAY);
        mPreviousTargetCell[0] = mTargetCell[0];
        mPreviousTargetCell[1] = mTargetCell[1];
      }
    }
  }
示例#2
0
 public void saveEvent(View view) throws IOException {
   String eventName = ((EditText) findViewById(R.id.eventName)).getText().toString();
   TextView tv = (TextView) findViewById(R.id.errorField);
   if (eventName.equals("")) {
     tv.setText("You must specify an Event name.");
   } else if (!startTimeSet) {
     tv.setText("You must specify a start time.");
   } else if (!endTimeSet) {
     tv.setText("You must specify an end time.");
   } else if (!startDateSet) {
     tv.setText("You must specify a start date.");
   } else if (!endDateSet) {
     tv.setText("You must specify an end date.");
   } else if (newEvent.getEndTime() - newEvent.getStartTime() < 0) {
     tv.setText("End time must be after start time.");
   } else {
     newEvent.setName(eventName);
     DBHelper db = new DBHelper(this);
     if (!db.createEvent(
         newEvent.getName(), newEvent.getStartTimeInMillis(), newEvent.getEndTimeInMillis())) {
       tv.setText("An Event with that name already exists.");
       return;
     }
     Toast.makeText(this, "Event Created", Toast.LENGTH_LONG).show();
     Alarm a = new Alarm();
     a.setAlarm(this, newEvent.getName(), newEvent.getStartTimeInMillis());
     Intent intent = new Intent(this, MainActivity.class);
     startActivity(intent);
   }
 }
示例#3
0
 public void onDragExit(DragObject d) {
   // We only close the folder if this is a true drag exit, ie. not because a drop
   // has occurred above the folder.
   if (!d.dragComplete) {
     mOnExitAlarm.setOnAlarmListener(mOnExitAlarmListener);
     mOnExitAlarm.setAlarm(ON_EXIT_CLOSE_DELAY);
   }
   mReorderAlarm.cancelAlarm();
 }
 public void onDragExit(DragObject d) {
   // Exiting folder; stop the auto scroller.
   mAutoScrollHelper.setEnabled(false);
   // We only close the folder if this is a true drag exit, ie. not because
   // a drop has occurred above the folder.
   if (!d.dragComplete) {
     mOnExitAlarm.setOnAlarmListener(mOnExitAlarmListener);
     mOnExitAlarm.setAlarm(ON_EXIT_CLOSE_DELAY);
   }
   mReorderAlarm.cancelAlarm();
 }
示例#5
0
  public void onDragOver(DragObject d) {
    float[] r = getDragViewVisualCenter(d.x, d.y, d.xOffset, d.yOffset, d.dragView, null);
    mTargetCell = mContent.findNearestArea((int) r[0], (int) r[1], 1, 1, mTargetCell);

    if (mTargetCell[0] != mPreviousTargetCell[0] || mTargetCell[1] != mPreviousTargetCell[1]) {
      mReorderAlarm.cancelAlarm();
      mReorderAlarm.setOnAlarmListener(mReorderAlarmListener);
      mReorderAlarm.setAlarm(150);
      mPreviousTargetCell[0] = mTargetCell[0];
      mPreviousTargetCell[1] = mTargetCell[1];
    }
  }