Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
[cdt-patch] Support of update ('Refresh', 'Auto-Refresh) actions

Index: ChangeLog
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.core/ChangeLog,v
retrieving revision 1.126
diff -u -r1.126 ChangeLog
--- ChangeLog 10 Feb 2003 19:29:43 -0000 1.126
+++ ChangeLog 10 Feb 2003 23:31:17 -0000
@@ -1,4 +1,10 @@
 2003-02-10 Mikhail Khodjaiants
+ Support of update ('Refresh', 'Auto-Refresh) actions.
+ * ICUpdateManager.java: new
+ * ICSharedLibraryManager.java
+ * CSharedLibraryManager.java
+
+2003-02-10 Mikhail Khodjaiants
  Disable the address breakpoints to prevent the debugger to insert them prematurely.
  * CDebugTarget.java
 
Index: src/org/eclipse/cdt/debug/core/ICSharedLibraryManager.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/core/ICSharedLibraryManager.java,v
retrieving revision 1.2
diff -u -r1.2 ICSharedLibraryManager.java
--- src/org/eclipse/cdt/debug/core/ICSharedLibraryManager.java 31 Jan 2003 22:38:13 -0000 1.2
+++ src/org/eclipse/cdt/debug/core/ICSharedLibraryManager.java 10 Feb 2003 23:31:17 -0000
@@ -13,7 +13,7 @@
  *
  * @since: Jan 15, 2003
  */
-public interface ICSharedLibraryManager extends IAdaptable
+public interface ICSharedLibraryManager extends ICUpdateManager, IAdaptable
 {
  ICSharedLibrary[] getSharedLibraries();
 
Index: src/org/eclipse/cdt/debug/core/ICUpdateManager.java
===================================================================
RCS file: src/org/eclipse/cdt/debug/core/ICUpdateManager.java
diff -N src/org/eclipse/cdt/debug/core/ICUpdateManager.java
--- /dev/null 1 Jan 1970 00:00:00 -0000
+++ src/org/eclipse/cdt/debug/core/ICUpdateManager.java 10 Feb 2003 23:31:17 -0000
@@ -0,0 +1,24 @@
+/*
+ *(c) Copyright QNX Software Systems Ltd. 2002.
+ * All Rights Reserved.
+ *
+ */
+package org.eclipse.cdt.debug.core;
+
+import org.eclipse.debug.core.DebugException;
+
+/**
+ * Enter type comment.
+ *
+ * @since: Feb 10, 2003
+ */
+public interface ICUpdateManager
+{
+ void setAutoModeEnabled( boolean enable );
+
+ boolean getAutoModeEnabled();
+
+ void update() throws DebugException;

+ boolean canUpdate();
+}
Index: src/org/eclipse/cdt/debug/internal/core/CSharedLibraryManager.java
===================================================================
RCS file: /home/tools/org.eclipse.cdt.debug.core/src/org/eclipse/cdt/debug/internal/core/CSharedLibraryManager.java,v
retrieving revision 1.2
diff -u -r1.2 CSharedLibraryManager.java
--- src/org/eclipse/cdt/debug/internal/core/CSharedLibraryManager.java 21 Jan 2003 19:37:27 -0000 1.2
+++ src/org/eclipse/cdt/debug/internal/core/CSharedLibraryManager.java 10 Feb 2003 23:31:17 -0000
@@ -9,11 +9,15 @@
 import java.util.Iterator;
 
 import org.eclipse.cdt.debug.core.ICSharedLibraryManager;
+import org.eclipse.cdt.debug.core.ICUpdateManager;
+import org.eclipse.cdt.debug.core.cdi.CDIException;
+import org.eclipse.cdt.debug.core.cdi.ICDISharedLibraryManager;
 import org.eclipse.cdt.debug.core.cdi.model.ICDISharedLibrary;
 import org.eclipse.cdt.debug.core.model.ICSharedLibrary;
 import org.eclipse.cdt.debug.internal.core.model.CDebugTarget;
 import org.eclipse.cdt.debug.internal.core.model.CSharedLibrary;
 import org.eclipse.debug.core.DebugEvent;
+import org.eclipse.debug.core.DebugException;
 import org.eclipse.debug.core.model.IDebugTarget;
 
 /**
@@ -98,6 +102,10 @@
   */
  public Object getAdapter( Class adapter )
  {
+  if ( adapter.equals( ICUpdateManager.class ) )
+  {
+   return this;
+  }
   if ( adapter.equals( ICSharedLibraryManager.class ) )
   {
    return this;
@@ -134,4 +142,66 @@
   }
   return null;
  } 
+
+ /* (non-Javadoc)
+  * @see org.eclipse.cdt.debug.core.ICUpdateManager#getAutoModeEnabled()
+  */
+ public boolean getAutoModeEnabled()
+ {
+  if ( getCDIManager() != null )
+  {
+   return getCDIManager().isAutoUpdate();
+  }
+  return false;
+ }
+
+ /* (non-Javadoc)
+  * @see org.eclipse.cdt.debug.core.ICUpdateManager#setAutoModeEnabled(boolean)
+  */
+ public void setAutoModeEnabled( boolean enable )
+ {
+  if ( getCDIManager() != null )
+  {
+   getCDIManager().setAutoUpdate( enable );
+  }
+ }
+
+ /* (non-Javadoc)
+  * @see org.eclipse.cdt.debug.core.ICUpdateManager#update()
+  */
+ public void update() throws DebugException
+ {
+  if ( getCDIManager() != null )
+  {
+   try
+   {
+    getCDIManager().update();
+   }
+   catch( CDIException e )
+   {
+    ((CDebugTarget)getDebugTarget()).targetRequestFailed( e.toString(), null );
+   }
+  }
+ }

+ private ICDISharedLibraryManager getCDIManager()
+ {
+  if ( getDebugTarget() != null )
+  {
+   return ((CDebugTarget)getDebugTarget()).getCDISession().getSharedLibraryManager();
+  }
+  return null;
+ }
+
+ /* (non-Javadoc)
+  * @see org.eclipse.cdt.debug.core.ICUpdateManager#canUpdate()
+  */
+ public boolean canUpdate()
+ {
+  if ( getDebugTarget() != null )
+  {
+   return getDebugTarget().isSuspended();
+  }
+  return false;
+ }
 }

Back to the top