18f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein/*
28f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein * Copyright (C) 2012 Google Inc.
38f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein * Licensed to The Android Open Source Project.
48f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein *
58f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein * Licensed under the Apache License, Version 2.0 (the "License");
68f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein * you may not use this file except in compliance with the License.
78f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein * You may obtain a copy of the License at
88f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein *
98f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein *      http://www.apache.org/licenses/LICENSE-2.0
108f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein *
118f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein * Unless required by applicable law or agreed to in writing, software
128f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein * distributed under the License is distributed on an "AS IS" BASIS,
138f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
148f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein * See the License for the specific language governing permissions and
158f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein * limitations under the License.
168f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein */
178f1c01e908d5986e8222dfd45ab82d6895b1ff3bAndrew Sapperstein
184aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sappersteinpackage com.android.mail.browse;
194aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein
204aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sappersteinpublic interface AttachmentViewInterface {
214aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein
224aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein    /**
234aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein     * View an attachment. The different attachment types handle this
244aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein     * action differently and so each view handles it in their
254aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein     * own manner.
264aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein     */
274aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein    public void viewAttachment();
284aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein
294aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein    /**
304aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein     * Allows the view to know when it should update its progress.
317bed4bc31a49a2297a38eb9d7b595fba1fa1f849Mark Wei     * @param showDeterminateProgress true if the the view should show a determinate
324aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein     * progress value
334aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein     */
344aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein    public void updateProgress(boolean showDeterminateProgress);
354aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein
364aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein    /**
374aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein     * Allows the view to do some view-specific status updating.
384aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein     * Called in {@link AttachmentActionHandler#updateStatus}.
394aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein     */
40532f48253d23ffcb974ab61856df131021dde02aAndrew Sapperstein    public void onUpdateStatus();
414aa1c1340556c646175c3d0b193be05876ad95a0Andrew Sapperstein}
42