AbstractDrawingPreview.java revision 2ecbfe8e93f8d8fce0adc47659b5d2f52cb68849
1d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi/* 2d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * Copyright (C) 2012 The Android Open Source Project 3d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * 4d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * Licensed under the Apache License, Version 2.0 (the "License"); you may not 5d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * use this file except in compliance with the License. You may obtain a copy of 6d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * the License at 7d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * 8d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * http://www.apache.org/licenses/LICENSE-2.0 9d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * 10d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * Unless required by applicable law or agreed to in writing, software 11d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * distributed under the License is distributed on an "AS IS" BASIS, WITHOUT 12d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 13d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * License for the specific language governing permissions and limitations under 14d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * the License. 15d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi */ 16d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi 17d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bipackage com.android.inputmethod.keyboard.internal; 18d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi 19d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Biimport android.graphics.Canvas; 20d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi 21d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Biimport com.android.inputmethod.keyboard.PointerTracker; 22d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi 23d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi/** 24d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * Abstract base class for previews that are drawn on PreviewPlacerView, e.g., 25d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * GestureFloatingPrevewText, GestureTrail, and SlidingKeyInputPreview. 26d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi */ 27d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bipublic abstract class AbstractDrawingPreview { 28d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi private boolean mPreviewEnabled; 29d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi 30d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi public void setPreviewEnabled(final boolean enabled) { 31d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi mPreviewEnabled = enabled; 32d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi } 33d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi 34d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi public boolean isPreviewEnabled() { 35d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi return mPreviewEnabled; 36d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi } 37d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi 38d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi /** 39d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * Draws the preview 40d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * @param canvas The canvas where the preview is drawn. 41d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi */ 422ecbfe8e93f8d8fce0adc47659b5d2f52cb68849Tadashi G. Takaoka public abstract void drawPreview(final Canvas canvas); 43d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi 44d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi /** 45d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * Set the position of the preview. 46d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi * @param pt The new location of the preview is based on the points in PointerTracker pt. 47d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi */ 48d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi public abstract void setPreviewPosition(final PointerTracker pt); 49d52730a2d7a6e98245719ce5c53bcf4b3a3ba1c9Xiaojun Bi} 50