/** * Copyright 2010 Google Inc. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in compliance with the License. * You may obtain a copy of the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. * See the License for the specific language governing permissions and * limitations under the License. * */ package org.waveprotocol.wave.client.wavepanel.impl.edit; import org.waveprotocol.wave.client.wavepanel.view.BlipView; import org.waveprotocol.wave.client.wavepanel.view.ThreadView; /** * Defines the UI actions that can be performed as part of the editing feature. * This includes editing, replying, and deleting blips in a conversation. * */ public interface Actions { enum Action { /** Starts an edit session on the focused blip. */ EDIT_BLIP, /** Creates a reply thread on the focused blip. */ REPLY_TO_BLIP, /** Continues the thread of the focused blip. */ CONTINUE_THREAD, /** Deletes the focused blip. */ DELETE_BLIP, /** Deletes the thread of the focused blip. */ DELETE_THREAD, } /** * Starts editing a blip. */ void startEditing(BlipView blipUi); /** * Stops editing a blip. */ void stopEditing(); /** * Replies to a blip. */ void reply(BlipView blipUi); /** * Adds a continuation to a thread. */ void addContinuation(ThreadView threadUi); /** * Deletes a blip. */ void delete(BlipView blipUi); /** * Deletes a thread. */ void delete(ThreadView threadUi); /** * Pops up a link info for the blip. */ void popupLink(BlipView blipUi); }