Robert Sesek [Thu, 2 Apr 2009 18:00:24 +0000 (14:00 -0400)]
Add an item to the Window menu to allow the inspector to be shown/hidden
* Source/AppDelegate.m+h:
(showInspectorWindow:): New method
(showBreakpointWindow:): Make this toggle window visibility rather than just always bring to front
* Source/DebuggerController.m+h: Create ivar for the inspector and synth the property
* English.lproj/Debugger.xib: Hook up the outlet
* English.lproj/MainMenu.xib: Add menu item
Robert Sesek [Thu, 2 Apr 2009 17:43:53 +0000 (13:43 -0400)]
Add a variable value inspector
* English.lproj/Debugger.xib: Needed to remove the "Content" binding to make this work. Added a foating HUD window.
Robert Sesek [Mon, 23 Feb 2009 20:03:54 +0000 (15:03 -0500)]
Update version to 1.2.1
* Info.plist
Robert Sesek [Mon, 23 Feb 2009 19:51:39 +0000 (14:51 -0500)]
Add the public key for Sparkle updates
* Info.plist: Add the key file entry
* dsa_pub.pem: New file
* MacGDBp.xcodeproj: Project updates for keyfile
Robert Sesek [Mon, 23 Feb 2009 19:51:07 +0000 (14:51 -0500)]
Update Sparkle to be a vanilla build now that we properly use CFBundleVersion
Robert Sesek [Fri, 20 Feb 2009 17:44:26 +0000 (12:44 -0500)]
Update the project to use Gitcrement versioning
* MacGDBp.xcodeproj
Robert Sesek [Sun, 15 Feb 2009 16:31:36 +0000 (11:31 -0500)]
Updated Sparkle to the latest bzr version
Robert Sesek [Sun, 15 Feb 2009 16:02:27 +0000 (11:02 -0500)]
Fixed a segfault crash that would occur if you stepped at the end of a script
* Source/GDBpConnection.m:
(stepIn): Update the status before creating the stack frame so we know if we're connected or not
(stepOut): ditto
(stepOver): ditto
Robert Sesek [Sun, 15 Feb 2009 15:49:03 +0000 (10:49 -0500)]
When writing the temporary file to use for highlighting, use NSUTF8StringEncoding rather than NSASCIIStringEncoding
* Source/BSSourceView.m:
(setString:asFile:)
Robert Sesek [Thu, 12 Feb 2009 15:07:30 +0000 (10:07 -0500)]
Don't include the final .0 in 1.2
* Info.plist
Robert Sesek [Tue, 10 Feb 2009 17:40:47 +0000 (12:40 -0500)]
Convert the run command to use the StackFrame system
* Source/GDBpConnection.m+h:
(run): Now returns a StackFrame object
(processData:): Return nil if the given data is nil
(createStackFrame): If we get an empty NSXMLDocument for the stack, return nil
(updateStatus): If the status is nil, the debugger is stopped
* Source/DebuggerController.m:
(run): Use the stack frame
* Source/SocketWrapper.m:
(receive): If the call to recv() returns -1 (error), return nil string
Robert Sesek [Mon, 9 Feb 2009 12:55:06 +0000 (07:55 -0500)]
Merge branch 'path-replacement'
Conflicts:
CHANGES
Source/AppDelegate.m
Robert Sesek [Fri, 6 Feb 2009 20:33:44 +0000 (15:33 -0500)]
The breakpoints window will now remember if it was opened or closed
* English.lproj/Breakpoints.xib: Bind the visible status to NSUserDefaults
* Source/AppDelegate.m:
(load): Add the default value for BreakpointsWindowVisible stdudef
* Source/BreakpointController.m:
(init): Only order the window back if BreakpointsWindowVisible is true
Robert Sesek [Fri, 6 Feb 2009 20:16:28 +0000 (15:16 -0500)]
Bumping the version number to 1.2.0
* Info.plist
Robert Sesek [Fri, 6 Feb 2009 20:13:29 +0000 (15:13 -0500)]
Add a changelog entry for the path replacements prefs
Robert Sesek [Fri, 6 Feb 2009 20:12:31 +0000 (15:12 -0500)]
Add a change to the changelog
Robert Sesek [Fri, 6 Feb 2009 06:31:09 +0000 (01:31 -0500)]
When sending breakpoints to Xdebug, use the [transformedPath]
* Source/GDBpConnection.m:
(addBreakpoint:): Use [transformedPath] instead of [file]
Robert Sesek [Fri, 6 Feb 2009 06:21:43 +0000 (01:21 -0500)]
Add the actual path replacement procedure and flip/rename the columns in the preferences
* English.lproj/Preferences.xib: Flip and rename the path columns
* Source/Breakpoint.m+h:
(transformedPath): New method
Robert Sesek [Fri, 6 Feb 2009 05:57:00 +0000 (00:57 -0500)]
Add a custom NSArrayController for the paths preferences so we can customize the default dictionary values
* English.lproj/Preferences.xib: Update the bindings
* Source/PreferencesPathsArrayController.h+m: New files
* MacGDBp.xcodeproj/project.pbxproj: Project updates for new files
Robert Sesek [Fri, 6 Feb 2009 05:32:10 +0000 (00:32 -0500)]
Add the path management bindings and array controller
* English.lproj/Preferences.xib: Hook up the interface using bindings and NSUserDefaultsController
* Source/AppDelegate.m:
(load): Add a default for the PathReplacements user defaults
Robert Sesek [Fri, 6 Feb 2009 01:35:30 +0000 (20:35 -0500)]
Design the paths replacement interface
* English.lproj/Preferences.xib: Design the paths panel
* Source/PreferencesController.m:
(showPreferencesWindow): Center the window before opening
Robert Sesek [Fri, 6 Feb 2009 01:26:05 +0000 (20:26 -0500)]
Implement preferences window resizing
* Source/PreferencesController.h: Add blankView ivar
* Source/PreferencesController.m: Create private interface for resizing
(init): Create the blankView
(dealloc): New method
(awakeFromNib): New method
(showGeneral:): Call the resize method
(showPaths:): ditto
(resizeWindowToSize:): New private method
Robert Sesek [Thu, 5 Feb 2009 20:44:24 +0000 (15:44 -0500)]
Add the paths replacement panel but don't implement anything in it
Robert Sesek [Thu, 5 Feb 2009 20:35:54 +0000 (15:35 -0500)]
Implement a toolbar for the preferences window
* Source/AppDelegate.m:
(showPreferences:): Don't call methods on the [prefs window] anymore, but [showPreferencesWindow]
* Source/PreferencesController.m+h: Add toolbar outlet ivars
(showPreferencesWindow): New method
(showGeneral:): New method
(toolbarSelectableItemIdentifiers:): New method
Robert Sesek [Thu, 5 Feb 2009 18:57:33 +0000 (13:57 -0500)]
Adding a CONTRIBUTORS file
Robert Sesek [Thu, 5 Feb 2009 18:47:45 +0000 (13:47 -0500)]
Word wrap CHANGES
Robert Sesek [Thu, 5 Feb 2009 18:43:12 +0000 (13:43 -0500)]
Show the variables in all contexts instead of just Locals. Fixes #147.
Patch partial from Nicola Ferruzzi.
* Source/StackFrame.m+h: Change "contexts" to "variables"
(initWithIndex:withFilename:withSource:atLine:inFunction:withContexts:): Renamed to be ...withVariables:
* Source/GDBpConnection.m:
(createStackFrame): Collect all the contexts into an array and send that to StackFrame
* English.lproj/Debugger.xib: Rebind to simply "variables"
Robert Sesek [Wed, 28 Jan 2009 17:16:50 +0000 (12:16 -0500)]
When the debugger connects, automatically step in to the first frame to make the debugger look active
* Source/DebuggerController.m+h:
(startDebugger): New method
* Source/GDBpConnection.m:
(socketDidAccept:): Call the -[startDebugger] method
Robert Sesek [Wed, 28 Jan 2009 17:16:15 +0000 (12:16 -0500)]
Updating the changelog for 1.2.0
* CHANGES
Robert Sesek [Thu, 22 Jan 2009 19:47:52 +0000 (14:47 -0500)]
Happy new year! Bump copyright.
Robert Sesek [Thu, 22 Jan 2009 19:04:17 +0000 (14:04 -0500)]
Highlighting of the currently debugged file will now get the source from Xdebug rather than reading local files
* Source/BSSourceView.m+h:
(setString:asFile:): New method that will highlight strings rather than files
(scrollToLine:): Change the sanity check to be based off of text in the textStorage, rather than if a file has been set
* Source/DebuggerController.m:
(updateSourceViewer): Use the new setString:asFile: instead of just setFile:
Robert Sesek [Thu, 22 Jan 2009 16:44:52 +0000 (11:44 -0500)]
Merge branch 'refactoring'
Conflicts:
English.lproj/Debugger.xib
Robert Sesek [Wed, 3 Dec 2008 07:13:11 +0000 (02:13 -0500)]
Fixed a bug where stepIn would remove the current stack frame if the file was the same but a function call was made
* Source/StackFrame.m:
(isShiftedFrame:): A frame is shifted if it is in the same file AND it is still in the same function
Robert Sesek [Tue, 2 Dec 2008 16:10:52 +0000 (11:10 -0500)]
Renaming registers to variables
Robert Sesek [Mon, 1 Dec 2008 23:56:01 +0000 (18:56 -0500)]
We need to keep variables expanded across changing stack positions
* Source/DebuggerController.m:
(setRegister:): Removed
(tableViewSelectionDidChange:): Call [expandRegisters]
(expandVariables): New private method
* Source/DebuggerController.h: Header updates
Robert Sesek [Mon, 1 Dec 2008 21:58:42 +0000 (16:58 -0500)]
Fix a couple display issues and a crash
* Source/DebuggerController.m:
(resetDisplays): Clear all the items in the stackController.stack
(updateSourceViewer): If the selection is empty, do not try to clear it. Also, tell the textView to repaint.
Robert Sesek [Mon, 1 Dec 2008 17:50:11 +0000 (12:50 -0500)]
Get the source code from the debugger engine in [GDBpConnection(Private) createStackFrame]
* Source/GDBpConnection.m:
(createStackFrame): Use the source GDBp command to get the source code for the stack frame
Robert Sesek [Mon, 1 Dec 2008 15:38:39 +0000 (10:38 -0500)]
Remove -[DebuggerController setStatus:]
* Source/DebuggerController.h: Header updates
* Source/DebuggerController.m:
(awakeFromNib): Set the window's title and remove the call to [setStatus:]
(setStatus:): Removed
(setError:): Remove call to [setStatus:]
* Source/GDBpConnection.m:
(initWithPort:session:): Set the status to "Connecting"
Robert Sesek [Mon, 1 Dec 2008 15:33:16 +0000 (10:33 -0500)]
Use automatic validation of UI items for the toolbar buttons, rather than manually enabling/disabling them
* Source/DebuggerController.h: Remove the outlets for the toolbar items
* Source/DebuggerController.m:
(validateUserInterfaceItem:): Validate the reconnect button
(setStatus:): Remove the block of code that sets button states
(updateStackViewer): ditto
* English.lproj/Debugger.xib: Remove the outlets and set all the toolbar items to autovalidate
Robert Sesek [Mon, 1 Dec 2008 15:27:16 +0000 (10:27 -0500)]
Call -[resetDisplays] when we reconnect
* Source/DebuggerController.m:
(reconnect:): Call resetDisplays
Robert Sesek [Mon, 1 Dec 2008 15:22:26 +0000 (10:22 -0500)]
Use bindings to set the register controller's contentArray
* English.lproj/Debugger.xib
Robert Sesek [Mon, 1 Dec 2008 15:17:12 +0000 (10:17 -0500)]
Remove all references of the window controller from GDBpConnection
* Source/GDBpConnection.h: Removed the windowController ivar and prop
* Source/GDBpConnection.m:
(initWithWindowController:port:session): Renamed to -[initWithPort:session:]
(dealloc): No more windowController
(socketDidAccept:): Change a -[refreshStatus] to an -[updateStatus]
(reconnect): Don't make a call on windowController
* Source/DebuggerController.m:
(init): Use the updated init method for GDBpConnection
Robert Sesek [Mon, 1 Dec 2008 15:13:41 +0000 (10:13 -0500)]
Remove the model-updating-controller register variable code
* Source/GDBpConnection.m:
(refreshStatus): Removed
(run): Call -[updateStatus] and not -[refreshStatus]
(stepIn): ditto
(stepOut): ditto
(stepOver): ditto
(updateStackTraceAndRegisters): Removed
(createStackFrame): Fetch the contexts and variables
* Source/GDBpConnection.h: Header updates
Robert Sesek [Mon, 1 Dec 2008 06:13:46 +0000 (01:13 -0500)]
Set the file column to truncate head, not truncate tail
* English.lproj/Debugger.xib
Robert Sesek [Mon, 1 Dec 2008 04:11:05 +0000 (23:11 -0500)]
One more instance of calling -[setStatus:] that needs to change
* Source/GDBpConnection.m:
(reconnect): Change the ivar rather than calling setStatus
Robert Sesek [Mon, 1 Dec 2008 04:06:34 +0000 (23:06 -0500)]
Rather than having GDBpConnection tell the window controller to change status, cache the status as an ivar and bind to it
* Source/GDBpConnection.h: Define the status ivar and make it a prop
* Source/GDBpConnection.m:
(refreshStatus): Remove most of the status-updating code
(updateStatus): New method to fetch and set the status ivar
* English.lproj/Debugger.xib: Bind the status text to GDBpConnection's new status ivar
Robert Sesek [Mon, 1 Dec 2008 03:49:17 +0000 (22:49 -0500)]
Use our new error system
* Source/GDBpConnection.m:
(processData:): Call -[errorEncountered]
Robert Sesek [Mon, 1 Dec 2008 03:40:18 +0000 (22:40 -0500)]
Create an error system that follows MVC
* Source/DebuggerController.m:
(init): Register ourselves as an observer for the error notif type
(handleConnectionError:): New method to handle the error notifs
* Source/GDBpConnection.h: Forward-declare kErrorOccurred
* Source/GDBpConnection.m:
(errorEncountered:): Post the notification
Robert Sesek [Mon, 1 Dec 2008 03:18:37 +0000 (22:18 -0500)]
Remove all of the old stack system
* Source/DebuggerController.h: Remove stackController2 and stack ivars
* Source/DebuggerController.m:
(validateUserInterfaceItem:): Update to use stackController.stack for -[count]
(resetDisplays): Remove the call to stackController2
(setStack): Removed
(stepIn:): Call -[updateStackViewer]
(stepOut:): ditto
(stepOver:): ditto
(updateSourceViewer): Use our new stackController
(updateStackViewer): New method
* Source/GDBpConnection.m:
(updateStackTraceAndRegisters): Remove the block of code that used to update the stack
Robert Sesek [Mon, 1 Dec 2008 02:57:23 +0000 (21:57 -0500)]
Update the bindings for the stack viewer to use our new StackController system
* English.lproj/Debugger.xib: Redo the bindings
* Source/DebuggerController.h: Add stackArrayController ivar
* Source/DebuggerController.m:
(awakeFromNib): Set the sort descriptors
(stepIn:): Rearrange the stackArrayController
(stepOut:): ditto
(stepOver): ditto
Robert Sesek [Mon, 1 Dec 2008 01:34:01 +0000 (20:34 -0500)]
The StackFrame index will always be 0 in -[GDBpConnection createStackFrame], so we need to advance it in -[StackController pop] and -[push:]
* Source/GDBpConnection.m:
(createStackFrame): Don't bother getting the "level" property, it will always be 0
* Source/StackController.m:
(pop): Decrease all of the frames' counter
(push:): Increase all of the frames' counter
Robert Sesek [Mon, 1 Dec 2008 01:27:18 +0000 (20:27 -0500)]
We need to pop the stack twice when stepOut is called
* Source/DebuggerController.m:
(stepOut): Pop the stack twice
Robert Sesek [Mon, 1 Dec 2008 01:19:28 +0000 (20:19 -0500)]
Start using our new StackFrame and StackController classes as struts
* Source/DebuggerController.h: Add the stackController ivar
* Source/DebuggerController.m:
(init): Initialize the stackController
(dealloc): Release stackController
(stepIn:): Pop and push the stackController appropriately
(stepOut:): ditto
(stepOver:): ditto
* Source/GDBpConnection.h: -[stepIn] -[stepOut] and -[stepOver] now all return StackFrame objects
* Source/GDBpConnection.m:
(stepIn): Generate and return the frame
(stepOut): ditto
(stepOver): ditto
(createStackFrame): New private method
* Source/StackController.m+h:
(peek): New method
* Source/StackFrame.m+h:
(isShiftedFrame:): New method
(description): Implemented
Robert Sesek [Mon, 1 Dec 2008 00:15:54 +0000 (19:15 -0500)]
Refactor the DebuggerController's "stackController" ivar to be named "stackController2"
Robert Sesek [Mon, 1 Dec 2008 00:09:23 +0000 (19:09 -0500)]
Add the StackController class
* Source/StackController.m+h: New files
* MacGDBp.xcodeproj: Project updates for new files
Robert Sesek [Sun, 30 Nov 2008 23:52:14 +0000 (18:52 -0500)]
Adding the StackFrame class
* Source/StackFrame.m+h: New files
* MacGDBp.xcodeproj: Project updates
Robert Sesek [Sat, 15 Nov 2008 17:20:51 +0000 (12:20 -0500)]
Reorganize the project files to separate connection from debugger classes
* MacGDBp.xcodeproj
Robert Sesek [Tue, 14 Oct 2008 01:47:23 +0000 (21:47 -0400)]
Update version number
* Info.plist
Robert Sesek [Mon, 13 Oct 2008 15:05:16 +0000 (11:05 -0400)]
Have the debugger and breakpoints windows remember their size and location
* English.lproj/Breakpoints.xib: Set autosave name
* English.lproj/Debugger.xib: ditto
* Source/DebuggerController.m:
(awakeFromNib): Do not call [window center] anymore
Robert Sesek [Mon, 13 Oct 2008 14:07:47 +0000 (10:07 -0400)]
Saved breakpoints (or any breakpoint) that had a file that does not exist would crash MacGDBp
* Source/BSSourceView.m:
(setFile:): If the file does not exist, simply display an empty string
(scrollToLine:): If the file does not exist, return
Robert Sesek [Wed, 20 Aug 2008 18:53:44 +0000 (14:53 -0400)]
Update the version to 1.1.1
* Info.plist
Robert Sesek [Wed, 20 Aug 2008 18:50:17 +0000 (14:50 -0400)]
Allow multiple selection and removal of breakpoints
* English.lproj/Breakpoints.xib: Allow multiple selection
* Source/BreakpointController.m:
(removeBreakpoint:): Remove the selection's entirety, instead of the first element
Robert Sesek [Wed, 20 Aug 2008 18:47:50 +0000 (14:47 -0400)]
Fix a bug where breakpoints would be recreated exponentially after their removal
* Source/BreakpointManager.m:
(removeBreakpointAt:inFile:): Need to call -[removeObject:] instead of -[addObject:]
Robert Sesek [Mon, 4 Aug 2008 17:00:11 +0000 (13:00 -0400)]
Add the bug numbers to the change log
* CHANGES
Ciarán Walsh [Tue, 15 Jul 2008 07:40:07 +0000 (08:40 +0100)]
Preferences should be set in +load rather than +initialize, as we can’t rely on AppDelegate receiving a message before any other objects (In this case, DebuggerController was being created first, leading to sockets without the correct default port number).
* Source/AppDelegate.m:
(initialize): Change to load
Robert Sesek [Fri, 1 Aug 2008 17:23:04 +0000 (13:23 -0400)]
Changing the version to be 1.1
* Info.plist
Robert Sesek [Fri, 1 Aug 2008 17:21:57 +0000 (13:21 -0400)]
Keep breakpoints in the preferences so they are restored at launch
* Source/BreakpointManager.m+h: Add a savedBreakpoints ivar to hold the dictionarys
(addBreakpoint:): Add the breakpoint to the NSUserDefaults
(removeBreakpointAt:inFile:): Remove the breakpoint from NSUserDefaults
Robert Sesek [Wed, 30 Jul 2008 16:21:36 +0000 (12:21 -0400)]
Add a CHANGES file to manage the change log
* CHANGES
Robert Sesek [Tue, 15 Jul 2008 14:47:18 +0000 (10:47 -0400)]
Fixing a memory leak
* Source/DebuggerController.m:
(gutterClickedAtLine:forFile:): The breakpoint (bp) sent to BreakpointManager is over-retained
Robert Sesek [Mon, 14 Jul 2008 19:13:34 +0000 (15:13 -0400)]
Check and see if stderr has any data on it when syntax highlighting. If so, only show plain text.
* Source/BSSourceView.m:
(initWithFrame): Register to be an observer of the file handle reader notification
(setFile:): Add another pipe for stderr, and read in background from it
(errorHighlightingFile:): New method to handle the notification
Robert Sesek [Mon, 14 Jul 2008 17:06:59 +0000 (13:06 -0400)]
Code formatting
Robert Sesek [Mon, 14 Jul 2008 16:16:31 +0000 (12:16 -0400)]
Renaming NSXMLElementAdditions(NSXMLElementAdditions) to be NSXMLElementAdditions(GDBpAdditions)
Robert Sesek [Mon, 14 Jul 2008 16:15:39 +0000 (12:15 -0400)]
Renaming BreakpointWindowController to BreakpointController
Robert Sesek [Mon, 14 Jul 2008 16:14:04 +0000 (12:14 -0400)]
Renaming DebuggerConnection to GDBpConnection
Robert Sesek [Mon, 14 Jul 2008 16:12:10 +0000 (12:12 -0400)]
Renaming DebuggerWindowController to DebuggerController
Robert Sesek [Mon, 14 Jul 2008 16:07:41 +0000 (12:07 -0400)]
Add IBOutlets for both DebuggerWindowController and BreakpointWindowController
* Source/AppDelegate.h: Add the IBOutlets
* English.lproj/MainMenu.xib: Hook up the IBOs
Robert Sesek [Mon, 14 Jul 2008 15:49:29 +0000 (11:49 -0400)]
-[SocketWrapper(Private) error:] would send message to a non-existent selector
* Source/SocketWrapper.m:
(error:): [errorEncountered:] has been replaced with [setError:]
Robert Sesek [Mon, 14 Jul 2008 15:44:20 +0000 (11:44 -0400)]
The subviews of BSSourceView were over-retained
* Source/BSSourceView.m:
(dealloc): Call [removeFromSuperview] on the subviews
Robert Sesek [Mon, 14 Jul 2008 13:12:02 +0000 (09:12 -0400)]
Update the version to 1.1 Beta 1
Robert Sesek [Mon, 14 Jul 2008 13:10:15 +0000 (09:10 -0400)]
Fix build errors. Properties cannot be synthesized if they are defined in a category
* Source/SocketWrapper.m
Robert Sesek [Mon, 14 Jul 2008 12:56:38 +0000 (08:56 -0400)]
Merge branch 'memory-fixes'
Robert Sesek [Sun, 13 Jul 2008 23:36:10 +0000 (19:36 -0400)]
Validate user interface items for the Debugger menu
* Source/DebuggerWindowController.m:
(init): Set self to be [self window]'s delegate
(validateUserInterfaceItem:): New method
Robert Sesek [Sun, 13 Jul 2008 16:43:38 +0000 (12:43 -0400)]
Fixing a bug in -[SocketWrapper receive] that could miss up to the last 8 bytes of a response
* Source/SocketWrapper.m:
(receive): A multi-packet response could be incomplete by a difference of 8 bytes because we didn't factor in packetLength when counting
Robert Sesek [Sun, 13 Jul 2008 15:29:26 +0000 (11:29 -0400)]
Add a call to NSAssert() to stop us if we receive incomplete packets from SocketWrapper
* Source/SocketWrapper.m:
(receive): Assert that the packet is a complete XML document
Ciarán Walsh [Wed, 25 Jun 2008 00:01:25 +0000 (01:01 +0100)]
A few miscellaneous memory management fixes
* Source/BSSourceView.m:
(setFile:): Autorelease the NSTask and release the NSAttributedString
* Source/BSSplitView.m:
(drawDividerInRect:): Release the NSGradient after drawing
* Source/Breakpoint.m:
(initWithDictionary:): Retain the file object
* Source/BreakpointManager.m:
(hasBreakpointAtLine:inFile:): Autorelease the object we send to [containsObject:]
Ciarán Walsh [Wed, 25 Jun 2008 00:00:43 +0000 (01:00 +0100)]
The -connect: method would leak memory when called more than once
* Source/SocketWrapper.m: Add a private prop for the hostname
(remoteHost): Removed through use of a prop
(connect:): Change from alloc'ing an NSString to creating an autorelease'd one
Ciarán Walsh [Tue, 24 Jun 2008 23:24:44 +0000 (00:24 +0100)]
A crash would occur in the event that -setFile: was called with the same path string object as is currently own
* Source/BSSourceView.m:
(setFile:)
Ciarán Walsh [Tue, 24 Jun 2008 23:23:15 +0000 (00:23 +0100)]
Sending messages to nil is always safe (a no-op)
* Source/BSSourceView.m:
(dealloc): Don't need to check and see if file is nil before [release]
Robert Sesek [Sun, 13 Jul 2008 23:45:10 +0000 (19:45 -0400)]
Merge branch 'menu-validation'
Conflicts:
English.lproj/MainMenu.xib: Took HEAD XIB and copied branch XIB's Debugger menu manually
Robert Sesek [Sun, 13 Jul 2008 23:36:10 +0000 (19:36 -0400)]
Validate user interface items for the Debugger menu
* Source/DebuggerWindowController.m:
(init): Set self to be [self window]'s delegate
(validateUserInterfaceItem:): New method
Robert Sesek [Sun, 13 Jul 2008 16:43:38 +0000 (12:43 -0400)]
Fixing a bug in -[SocketWrapper receive] that could miss up to the last 8 bytes of a response
* Source/SocketWrapper.m:
(receive): A multi-packet response could be incomplete by a difference of 8 bytes because we didn't factor in packetLength when counting
Robert Sesek [Sun, 13 Jul 2008 15:29:26 +0000 (11:29 -0400)]
Add a call to NSAssert() to stop us if we receive incomplete packets from SocketWrapper
* Source/SocketWrapper.m:
(receive): Assert that the packet is a complete XML document
Robert Sesek [Thu, 10 Jul 2008 11:41:52 +0000 (07:41 -0400)]
Adding the "Debugger" menu to the NIB file and hooking up the actions for them
* English.lproj/MainMenu.xib
Robert Sesek [Thu, 10 Jul 2008 11:34:35 +0000 (07:34 -0400)]
Tracking the Italian versin of Sparkle
* Sparkle.framework/Versions/A/Resources/it.lproj/: Add
Robert Sesek [Thu, 10 Jul 2008 11:29:11 +0000 (07:29 -0400)]
Add the Sparkle keys to Info.plist
* Info.plist
Robert Sesek [Thu, 10 Jul 2008 11:15:49 +0000 (07:15 -0400)]
Hook up the "Check for updates..." menu item
* English.lproj/MainMenu.xib
Robert Sesek [Thu, 10 Jul 2008 11:13:44 +0000 (07:13 -0400)]
Updating Sparkle to use a version that uses CFBundleShortVersionString for comparision instead of CFBundleVersion
* Sparkle.framework/
Robert Sesek [Wed, 9 Jul 2008 17:58:00 +0000 (13:58 -0400)]
Remove the old version checking system that we wrote ourselves
* Source/AppDelegate.m+h: Removed updater outlets
(applicationDidFinishLaunching:): Removed
(versionCheck:): Removed
(openUpdateInformation:): Removed
* English.lproj/MainMenu.xib: Removed the update window
Robert Sesek [Wed, 9 Jul 2008 17:54:08 +0000 (13:54 -0400)]
Add Sparkle framework and hook it up (except for the appcast URL)
* English.lproj/MainMenu.xib: Instantiate the SUUpdater
* MacGDBp.xcodeproj: Add a build phase and link against Sparkle.framework
* Sparkle.framewokr/: New files
Robert Sesek [Wed, 9 Jul 2008 17:45:02 +0000 (13:45 -0400)]
Instantiate the Debugger and Breakpoint controllers in the NIB rather than in code
* English.lproj/MainMenu.xib: Instantiate DebuggerWindowController and BreakpointWindowController
* Source/AppDelegate.m:
(applicationDidFinishLaunching:): Remove the two object init lines