2010-06-02  Roland Grunberg  <rgrunber@redhat.com>

	* build.properties: Externalize some strings in the Manifest.
	* META-INF/MANIFEST.MF: See above
	* plugin.properties: See above
	* plugin.xml: See above

2010-06-01  Roland Grunberg  <rgrunber@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/messages.properties: Externalize string.
	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java'
		(finishLaunch): Display error message pop-up when stap may not be on the system path
		or installed.

2010-04-13  Roland Grunberg  <rgrunber@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java:
		Clean up code.

2010-03-05  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Stop passsing a useless argument to finishLaunch

2010-03-02  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java (launch): Toss out a message dialog if output path is broken.

2010-02-26  Roland Grunberg  <rgrunber@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchShortcut.java:
		Cleanup code.

2010-02-23  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Change cancellation language/checks
	* src/org/eclipse/linuxtools/callgraph/launch/LaunchStapGraph.java: Add tid to marker functions

2009-12-22  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Only display error popup if there is something to say -- use isErrorRecognized instead of message length.
																								

2009-12-17  rgrunber  <rgrunber@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/messages.properties: Externalize Strings and cleanup.
	* src/org/eclipse/linuxtools/callgraph/launch/LaunchStapGraph.java: 
	* src/org/eclipse/linuxtools/callgraph/launch/LaunchWizard.java: 
	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchShortcut.java: 
	
	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java 
		(finishLaunch): Create error dialog when launch fails and specify the potential problem.
		Simplify error message logic.

2009-12-15  Roland Grunberg  <rgrunber@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapOptionsTab.java: Prevent Preprocessor Directives textbox from auto-resizing at will.

2009-12-14  Roland Grunberg  <rgrunber@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: 
		Refactor BufferedWriter logic to reflect the static only methods.

2009-12-09  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java (generateCommand): Tweaks for threading. Force command generation every time (otherwise may skip for bad reasons)
	* src/org/eclipse/linuxtools/callgraph/launch/LaunchStapGraph.java (launch): Enable threading, make process probes accept tid() argument

2009-12-08  Roland Grunberg  <rgrunber@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/messages.properties: Clean up unused externalized strings
	* src/org/eclipse/linuxtools/callgraph/launch/LaunchStapGraph.java: Use '?' at the end of probe point for silent failure if any.
	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Comment out potentially obsolete code.
	

2009-12-08  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Externalize strings and cleanup of the finishLaunch function
	Rename 'command' to 'stap' -- variable name was confusing

2009-12-06  rgrunber  <rgrunber@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java
		(finishLaunch): Write to error log when stap command does not exist.

2009-11-28  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchShortcut.java (finishLaunch): Set LaunchConfigurationConstants.SECONDARY_VIEW_ID using an overrideable function (defaults to returning "")
	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Set the parser's secondary view id. 

2009-11-27  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Add capacity to use the new command option in the CommandGenerator.

2009-11-26  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchShortcut.java: Provide default implementation of launch in SystemTapLaunchShortcut.
	Fix naming of basic configurations. Add call to PluginConstants.DEFAULT_PARSER_ID instead of hard-coding.
	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Make use of the generateCommand abstract function in ProfileLaunchDelegate

2009-11-23  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Use the new ProfileLaunchConfiguration.
	Correct binaryArguments being passed into the final error message

2009-11-20  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/LaunchStapGraph.java (launch): Remove redundant check for projectName == null

2009-11-18  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchShortcut.java: Make setParserID non-abstract. Default implementation returns the id of the SystemTap Text View. Create error message. 

2009-11-17  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchShortcut.java: Have parser default to text parser if not selected

2009-11-16  Roland Grunberg  <rgrunber@redhat.com>

	* META-INF/MANIFEST.MF: Add Eclipse to Provider field.

2009-11-16  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Reflect change to static methods in SystemTapCommandGenerator

2009-11-12  Roland Grunberg  <rgrunber@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java:
		Number of errors can be taken from the number of functions that have been matched, in the error handler

2009-11-12  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java (StreamListener.streamAppended): Add a return if text is less than 1 character

2009-11-12  Roland Grunberg  <rgrunber@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: (finishLaunch):
		Use appendToLog when writing header string to the log contents.
		
2009-11-12  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/ListTreeContentProvider.java (getElements): Use validElement in SystemTapLaunchShortcut
	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchShortcut.java: Rename validFile --> validElement 
	Add method validFile(ICElement e): this function will return true if the given element is a .c, .cpp or .h file.
	(validFile): Fix remaining manual check for file ending.
	* src/org/eclipse/linuxtools/callgraph/launch/LaunchWizard.java (.widgetSelected): Remove dependency on ShellOpener, use Display.asyncExec() instead.

2009-11-11  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Mild code cleanup, commenting

2009-11-10  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/RuledTreeSelectionDialog.java: Delete unnecessary TODO

2009-11-09  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/ConfigurationOptionsSetter.java: Use StringBuilder instead of String
	* META-INF/MANIFEST.MF: Change to reflect rename of Activator
	* src/org/eclipse/linuxtools/callgraph/launch/CallgraphLaunchPlugin.java: RENAME: Activator --> CallgraphLaunchPlugin

2009-11-06  Charley Wang  <chwang@redhat.com>

	* src/org/eclipse/linuxtools/callgraph/launch/ConfigurationOptionsSetter.java: Remove unused Options setting function
	* src/org/eclipse/linuxtools/callgraph/launch/: Removed the ASTTranslationVisitor, which is never used.
	* src/org/eclipse/linuxtools/callgraph/launch/SystemTapLaunchConfigurationDelegate.java: Delete unused functions, add javadoc comments to other functions.