15cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampepackage com.android.preload.ui; 25cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 35cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampeimport com.android.ddmlib.Client; 45cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampeimport java.io.File; 55cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampeimport java.util.List; 65cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampeimport javax.swing.Action; 75cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampeimport javax.swing.ListModel; 85cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampeimport javax.swing.table.TableModel; 95cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 105cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe/** 115cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe * UI abstraction for the tool. This allows a graphical mode, command line mode, 125cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe * or silent mode. 135cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe */ 145cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampepublic interface IUI { 155cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 165cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe void prepare(ListModel<Client> clientListModel, TableModel dataTableModel, 175cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe List<Action> actions); 185cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 195cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe void ready(); 205cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 213bf65c916ce65c06b0920ec4b8f68d3ef6c5e721Andreas Gampe boolean isSingleThreaded(); 223bf65c916ce65c06b0920ec4b8f68d3ef6c5e721Andreas Gampe 235cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe Client getSelectedClient(); 245cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 255cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe int getSelectedDataTableRow(); 265cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 275cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe void showWaitDialog(); 285cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 295cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe void updateWaitDialog(String s); 305cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 315cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe void hideWaitDialog(); 325cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 335cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe void showMessageDialog(String s); 345cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 355cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe boolean showConfirmDialog(String title, String message); 365cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 375cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe String showInputDialog(String message); 385cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 395cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe <T> T showChoiceDialog(String title, String message, T[] choices); 405cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 415cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe File showSaveDialog(); 425cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 435cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe File[] showOpenDialog(boolean multi); 445cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe 455cb8998363a16e667faee4eaa7e5040bce7e702bAndreas Gampe} 46