/******************************************************************************* * Copyright (c) 2012-2017 Codenvy, S.A. * All rights reserved. This program and the accompanying materials * are made available under the terms of the Eclipse Public License v1.0 * which accompanies this distribution, and is available at * http://www.eclipse.org/legal/epl-v10.html * * Contributors: * Codenvy, S.A. - initial API and implementation *******************************************************************************/ package org.eclipse.che.ide.hotkeys.dialog; import com.google.inject.ImplementedBy; import org.eclipse.che.ide.api.hotkeys.HotKeyItem; import org.eclipse.che.ide.api.keybinding.Scheme; import org.eclipse.che.ide.api.mvp.View; import java.util.List; import java.util.Map; /** * This representation of widget that provides an ability to show hotKeys list for IDE and editor. * * @author Alexander Andrienko * @author Artem Zatsarynnyi * @author @author <a href="mailto:ak@nuxeo.com">Arnaud Kervern</a> */ @ImplementedBy(HotKeysDialogViewImpl.class) public interface HotKeysDialogView extends View<HotKeysDialogView.ActionDelegate> { /** Reset filter input and Show dialog. */ void show(); /** Clear and Render keybinding combination. */ void renderKeybindings(); /** Hide dialog. */ void hide(); /** * Set keybindings map for displaying. * * @param data * map which binds categories keybindings and their keybindings */ void setData(Map<String, List<HotKeyItem>> data); void setSchemes(String select, List<Scheme> schemes); /** Value of selected scheme in the ListBox field */ String getSelectedScheme(); interface ActionDelegate { /** Show list hotKeys. */ void showHotKeys(); /** Perform some action in response to user's clicking 'Save' button. */ void onSaveClicked(); /** Perform some action in response to user's clicking 'Close' button. */ void onCloseClicked(); /** Will be called when 'Print' button clicked. */ void onPrintClicked(); /** * Filter keybindings by filtered text in the description and keybindings. * * @param filteredText * text for filter keybindings */ void onFilterValueChanged(String filteredText); /** Perform some action in response to scheme selection change */ void onSchemeSelectionChanged(); } }