aboutsummaryrefslogtreecommitdiffstats
path: root/ddms/app
diff options
context:
space:
mode:
authorPierre Zurek <pierrezurek@gmail.com>2011-02-12 00:04:48 +0100
committerPierre Zurek <pierrezurek@gmail.com>2011-03-22 02:15:12 +0100
commit9fd1167924dca792834cade14772e2be5a55b3d5 (patch)
tree2f7ec4018b12c23f4090ce0badd60204994cb3cf /ddms/app
parent54db46554cffd07979b13e344860e96ebe382b12 (diff)
downloadsdk-9fd1167924dca792834cade14772e2be5a55b3d5.zip
sdk-9fd1167924dca792834cade14772e2be5a55b3d5.tar.gz
sdk-9fd1167924dca792834cade14772e2be5a55b3d5.tar.bz2
Added a New Folder action in File Explorer.
This action allows the user to create a new folder if the current selection in the tree is a folder. It executes the "mkdir" command on the device. If an error occurs during execution, a popup is displayed. Change-Id: Id94485502849679ee9c753882b3e46f30e0edd1e
Diffstat (limited to 'ddms/app')
-rw-r--r--ddms/app/src/com/android/ddms/UIThread.java32
1 files changed, 25 insertions, 7 deletions
diff --git a/ddms/app/src/com/android/ddms/UIThread.java b/ddms/app/src/com/android/ddms/UIThread.java
index 2dc1cf0..ee4ea9d 100644
--- a/ddms/app/src/com/android/ddms/UIThread.java
+++ b/ddms/app/src/com/android/ddms/UIThread.java
@@ -17,19 +17,20 @@
package com.android.ddms;
import com.android.ddmlib.AndroidDebugBridge;
+import com.android.ddmlib.AndroidDebugBridge.IClientChangeListener;
import com.android.ddmlib.Client;
import com.android.ddmlib.ClientData;
-import com.android.ddmlib.IDevice;
-import com.android.ddmlib.Log;
-import com.android.ddmlib.SyncException;
-import com.android.ddmlib.SyncService;
-import com.android.ddmlib.AndroidDebugBridge.IClientChangeListener;
import com.android.ddmlib.ClientData.IHprofDumpHandler;
import com.android.ddmlib.ClientData.MethodProfilingStatus;
+import com.android.ddmlib.IDevice;
+import com.android.ddmlib.Log;
import com.android.ddmlib.Log.ILogOutput;
import com.android.ddmlib.Log.LogLevel;
+import com.android.ddmlib.SyncException;
+import com.android.ddmlib.SyncService;
import com.android.ddmuilib.AllocationPanel;
import com.android.ddmuilib.DevicePanel;
+import com.android.ddmuilib.DevicePanel.IUiSelectionListener;
import com.android.ddmuilib.EmulatorControlPanel;
import com.android.ddmuilib.HeapPanel;
import com.android.ddmuilib.ITableFocusListener;
@@ -40,7 +41,6 @@ import com.android.ddmuilib.ScreenShotDialog;
import com.android.ddmuilib.SysinfoPanel;
import com.android.ddmuilib.TablePanel;
import com.android.ddmuilib.ThreadPanel;
-import com.android.ddmuilib.DevicePanel.IUiSelectionListener;
import com.android.ddmuilib.actions.ToolItemAction;
import com.android.ddmuilib.explorer.DeviceExplorer;
import com.android.ddmuilib.handler.BaseFileHandler;
@@ -1508,9 +1508,19 @@ public class UIThread implements IUiSelectionListener, IClientChangeListener {
deleteAction.item.setText("Delete"); //$NON-NLS-1$
}
+ ToolItemAction createNewFolderAction = new ToolItemAction(toolBar, SWT.PUSH);
+ createNewFolderAction.item.setToolTipText("New Folder");
+ image = mDdmUiLibLoader.loadImage("add.png", mDisplay); //$NON-NLS-1$
+ if (image != null) {
+ createNewFolderAction.item.setImage(image);
+ } else {
+ // this is for debugging purpose when the icon is missing
+ createNewFolderAction.item.setText("New Folder"); //$NON-NLS-1$
+ }
+
// device explorer
mExplorer = new DeviceExplorer();
- mExplorer.setActions(pushAction, pullAction, deleteAction);
+ mExplorer.setActions(pushAction, pullAction, deleteAction, createNewFolderAction);
pullAction.item.addSelectionListener(new SelectionAdapter() {
@Override
@@ -1536,6 +1546,14 @@ public class UIThread implements IUiSelectionListener, IClientChangeListener {
});
deleteAction.setEnabled(false);
+ createNewFolderAction.item.addSelectionListener(new SelectionAdapter() {
+ @Override
+ public void widgetSelected(SelectionEvent e) {
+ mExplorer.createNewFolderInSelection();
+ }
+ });
+ createNewFolderAction.setEnabled(false);
+
Composite parent = new Composite(mExplorerShell, SWT.NONE);
parent.setLayoutData(new GridData(GridData.FILL_BOTH));