# Debugging options for the org.eclipse.gmf.runtime.common.ui plug-in

# Turn on general debugging for the org.eclipse.gmf.runtime.common.ui plug-in
org.eclipse.gmf.runtime.common.ui/debug=true

# Trace when exceptions are caught
org.eclipse.gmf.runtime.common.ui/debug/exceptions/catching=false
# Trace when exceptions are thrown
org.eclipse.gmf.runtime.common.ui/debug/exceptions/throwing=false

# Trace when methods are entered
org.eclipse.gmf.runtime.common.ui/debug/methods/entering=false
# Trace when methods are exited
org.eclipse.gmf.runtime.common.ui/debug/methods/exiting=false

# Trace information related to action administration
org.eclipse.gmf.runtime.common.ui/debug/actions/admin=false
# Trace when actions are run
org.eclipse.gmf.runtime.common.ui/debug/actions/run=false
# Trace when actions are repeated
org.eclipse.gmf.runtime.common.ui/debug/actions/repeat=false
# Trace resource management
org.eclipse.gmf.runtime.common.ui/debug/resource/tracing=false

# Trace information related to service configuration
org.eclipse.gmf.runtime.common.core/debug/services/config=false
