1209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang/*
2209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang * Copyright (C) 2011 The Android Open Source Project
3209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang *
4209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang * Licensed under the Apache License, Version 2.0 (the "License");
5209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang * you may not use this file except in compliance with the License.
6209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang * You may obtain a copy of the License at
7209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang *
8209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang *      http://www.apache.org/licenses/LICENSE-2.0
9209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang *
10209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang * Unless required by applicable law or agreed to in writing, software
11209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang * distributed under the License is distributed on an "AS IS" BASIS,
12209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang * See the License for the specific language governing permissions and
14209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang * limitations under the License.
15209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang */
16209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
17209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Changpackage com.android.gallery3d.app;
18209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
19209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Changimport android.view.View;
20209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
21209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Changpublic interface ControllerOverlay {
22209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
23209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  interface Listener {
24209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang    void onPlayPause();
25209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang    void onSeekStart();
26209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang    void onSeekMove(int time);
273f1f1baf3a674927e25cd5cd885fb372796bd3a0Teng-Hui Zhu    void onSeekEnd(int time, int trimStartTime, int trimEndTime);
28209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang    void onShown();
29209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang    void onHidden();
30209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang    void onReplay();
31209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  }
32209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
33209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  void setListener(Listener listener);
34209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
35209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  void setCanReplay(boolean canReplay);
36209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
37209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  /**
38209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang   * @return The overlay view that should be added to the player.
39209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang   */
40209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  View getView();
41209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
42209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  void show();
43209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
44209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  void showPlaying();
45209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
46209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  void showPaused();
47209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
48209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  void showEnded();
49209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
50209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  void showLoading();
51209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
52209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang  void showErrorMessage(String message);
53209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang
543f1f1baf3a674927e25cd5cd885fb372796bd3a0Teng-Hui Zhu  void setTimes(int currentTime, int totalTime,
553f1f1baf3a674927e25cd5cd885fb372796bd3a0Teng-Hui Zhu          int trimStartTime, int trimEndTime);
56209a9163d4e8cee0bfe162ae598ef40e6051479cChih-Chung Chang}
57