2012-10-19  cabernal  <cabernal@redhat.com>

	* plugin.properties: Add tool information definition.
	* plugin.xml: Add tool information to launch provider.
2012-10-10  cabernal  <cabernal@redhat.com>

	* plugin.properties: Add tool description definition.
	* plugin.xml: Add tool description to launch provider.
2012-09-28  Jeff Johnston  <jjohnstn@redhat.com>

	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/CachegrindLaunchConfigurationTabGroup.java: New file.
	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/CachegrindLaunchShortcut.java: New file.
	* META-INF/MANIFEST.MF: Add needed imports. 
	* plugin.properties: Add cachegrind profiling name.
	* plugin.xml: Add extension to support cachegrind as memory profiler.
	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/CachegrindToolPage.java (setDefaults): Add setting of
	tool attribute. 
	
2010-08-06  Elliott Baron  <ebaron@fedoraproject.org>

	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/CachegrindLaunchDelegate.java (initializeView): Check that outputs are not null.

2010-08-03  Elliott Baron  <ebaron@fedoraproject.org>

	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/CollapseAction.java: New file.
	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/ExpandAction.java: New file.
	* META-INF/MANIFEST.MF: Remove internal dependencies.
	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/CachegrindLaunchDelegate.java (parseOutput): API change. 
	(getCommandArray): Likewise.
	(initializeView): Likewise.
	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/CachegrindParser.java (parse): Superclass moved to static utils class. 
	(parseData): Likewise.
	(parseDescription): Likewise.
	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/CachegrindPlugin.java: Remove internals use. 
	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/CachegrindToolPage.java (setValgrindVersion): API change. 
	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/CachegrindViewPart.java: Remove internals use.

2010-07-26  Elliott Baron  <ebaron@fedoraproject.org>

	* META-INF/MANIFEST.MF: Bump version to 0.7.0.
	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/CachegrindLaunchDelegate.java: Remove dependence on
	internal Valgrind launch delegate.

2009-08-11  Elliott Baron  <ebaron@redhat.com>

	* src/org/eclipse/linuxtools/valgrind/cachegrind: Removed.
	* META-INF/MANIFEST.MF: Bump version to 0.3.0.	

2009-08-07  Andrew Overholt  <overholt@redhat.com>

	Bug #285861

	* plugin.properties: Change Provider to Eclipse.

2009-07-30  Elliott Baron  <ebaron@redhat.com>

	* src/org/eclipse/linuxtools/valgrind/cachegrind: Removed.
	* src/org/eclipse/linuxtools/valgrind/cachegrind/model: Removed.
	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind: New package.
	* src/org/eclipse/linuxtools/internal/valgrind/cachegrind/model: New package.  
	* .project: Enabled API analysis.
	* META-INF/MANIFEST.MF: Export internal packages.
	* plugin.xml: Update class references.

2009-06-23  Elliott Baron  <ebaron@redhat.com>

	* CachegrindToolPage.java (getD1LineSizeSpinner): Created getter.
	(getI1SizeSpinner): Likewise.
	(getBranchButton): Likewise.
	(getI1AssocSpinner): Likewise.
	(getD1Button): Likewise.
	(getD1AssocSpinner): Likewise.
	(getL2Button): Likewise.
	(getL2LineSizeSpinner): Likewise.
	(getL2AssocSpinner): Likewise.
	(getD1SizeSpinner): Likewise.
	(getL2SizeSpinner): Likewise.
	(getI1Button): Likewise.
	(getCacheButton): Likewise.
	(getI1LineSizeSpinner): Likewise.

2009-04-30  Elliott Baron  <ebaron@redhat.com>

	* CachegrindParser.java: Pull up constants.

2009-04-23  Elliott Baron  <ebaron@redhat.com>

	* CachegrindViewPart.java (.widgetSelected): Default sorting now ascending.

2009-04-21  Elliott Baron  <ebaron@redhat.com>

	* plugin.properties: Add "(Incubation)" to Plugin name. 

2009-04-03  Elliott Baron  <ebaron@redhat.com>

	* META-INF/MANIFEST.MF: 0.2.0 version.

2009-03-31  Elliott Baron  <ebaron@redhat.com>

	* CachegrindViewPart.java (createPartControl): Added expand/collapse actions.

2009-03-17  Elliott Baron  <ebaron@redhat.com>

	* CachegrindLaunchDelegate.java (handleLaunch): Bounds checking on number of output files.
	* CachegrindToolPage.java (checkL2Enablement): Change visibility to protected.
	(checkD1Enablement): Likewise.
	(checkI1Enablement): Likewise.
	* CachegrindViewPart.java (getDoubleClickListener): New getter.

2009-03-16  Elliott Baron  <ebaron@redhat.com>

	* CachegrindParser.java (parse): Explicitly close file.
	* CachegrindLine.java (getModel): Return null.
	* CachegrindOutput.java (getModel): Return null.
	* ICachegrindElement.java: Added getModel to interface.
	* CachegrindLabelProvider.java: New file.
	* CachegrindViewPart.java (getViewer): Getter for TreeViewer.
	(CachegrindTreeContentProvider): Extracted.

2009-03-13  Andrew Overholt  <overholt@redhat.com>

	* build.properties: Add icons to binary build.

2009-03-11  Elliott Baron  <ebaron@redhat.com>

	* CachegrindToolPage.java (createControl): Added vertical spacer.

2009-02-25  Elliott Baron  <ebaron@redhat.com>

	* CachegrindLaunchDelegate.java (handleLaunch): Renamed method.

2009-02-20  Elliott Baron  <ebaron@redhat.com>

	* CachegrindParser.java (parse): Removed Arrays.copyOf().
	* model/CachegrindOutput.java (getEvents): Replaced Arrays.copyOfRange().
	(getParent): Likewise.
	(getSummary): Likewise.

2009-02-12  Elliott Baron  <ebaron@redhat.com>

	* CachegrindCommandConstants.java: New file.
	* CachegrindLaunchConstants.java: New file.
	* CachegrindLaunchDelegate.java: Better output directory path handling, command line 
	arguments extracted to CachegrindCommandConstants.
	* CachegrindToolPage.java: Launch config constants extracted to CachegrindLaunchConstants.

2009-01-22  Elliott Baron  <ebaron@redhat.com>

	* CachegrindViewPart: Added sorting to TreeViewer, full event names
	to tooltip, improvements to LabelProvider for C++, double-click event
	spawing editor on file, function or line.
	* ICachegrindElement: Extend Comparable<T> for sorting by first column.
	* CachegrindFile: Likewise, added getName().
	* CachegrindLine: Likewise.
	* CachegrindOutput: Likewise.
	* CachegrindFunction: Likewise, vastly improved handling of CModel
	with C++ classes.
	* META-INF/MANIFEST.MF: New dependency org.eclipse.cdt.core.model.util.