]> src.bluestatic.org Git - macgdbp.git/log
macgdbp.git
14 years agoHappy new year!
Robert Sesek [Tue, 16 Feb 2010 16:43:48 +0000 (11:43 -0500)]
Happy new year!

14 years agoXcode project updates:
Robert Sesek [Tue, 16 Feb 2010 16:42:28 +0000 (11:42 -0500)]
Xcode project updates:
* Make Gitcrement less annoying to work with
* Xcode 3.2 updates

14 years ago* Create functionality to perform non-blocking writes using a write queue
Robert Sesek [Tue, 16 Feb 2010 16:36:54 +0000 (11:36 -0500)]
* Create functionality to perform non-blocking writes using a write queue
* Fix up the debugger step commands to use async communication

14 years agoRemove SocketWrapper and start using CFSocket with CFStreams in GDBpConnection. This...
Robert Sesek [Tue, 16 Feb 2010 15:54:07 +0000 (10:54 -0500)]
Remove SocketWrapper and start using CFSocket with CFStreams in GDBpConnection. This compiles but not much else.

14 years agoPrevent the Preferences window from jumping around when it opens by disabling
Robert Sesek [Mon, 1 Feb 2010 06:15:52 +0000 (01:15 -0500)]
Prevent the Preferences window from jumping around when it opens by disabling
the "Visible on Launch" property.

14 years agoRemove IDE key preference because this is a property from the engine, not the IDE.
Robert Sesek [Mon, 1 Feb 2010 06:10:56 +0000 (01:10 -0500)]
Remove IDE key preference because this is a property from the engine, not the IDE.

14 years agoRemove the |session| ivar from GDBpConnection. Use |transactionID| to keep
Robert Sesek [Mon, 1 Feb 2010 06:05:26 +0000 (01:05 -0500)]
Remove the |session| ivar from GDBpConnection. Use |transactionID| to keep
track of individual message transactions with the debugger engine.

15 years agoMake our project Xcode 3.1+ compatible.
Robert Sesek [Thu, 30 Jul 2009 11:48:57 +0000 (07:48 -0400)]
Make our project Xcode 3.1+ compatible.

15 years agoChange NSXMLElementAdditions to use UTF8 strings when converting, rather than ASCII.
Robert Sesek [Thu, 30 Jul 2009 11:28:32 +0000 (07:28 -0400)]
Change NSXMLElementAdditions to use UTF8 strings when converting, rather than ASCII.

15 years agoMake the transport logging an environmental setting.
Robert Sesek [Sun, 26 Jul 2009 16:23:32 +0000 (12:23 -0400)]
Make the transport logging an environmental setting.
To enable: `setenv TransportDebug YES`.

15 years agoIn |-debuggerDisconnected|, unmark the program counter line so it doesn't look like...
Robert Sesek [Wed, 22 Jul 2009 04:58:12 +0000 (00:58 -0400)]
In |-debuggerDisconnected|, unmark the program counter line so it doesn't look like we're connected.

15 years agoFix warnings about GDBpConnectionDelegate by including the header in DebuggerControll...
Robert Sesek [Wed, 22 Jul 2009 04:49:29 +0000 (00:49 -0400)]
Fix warnings about GDBpConnectionDelegate by including the header in DebuggerController.h.

15 years agoVersion to 1.4b.
Robert Sesek [Wed, 22 Jul 2009 04:40:12 +0000 (00:40 -0400)]
Version to 1.4b.

15 years ago* Add a preference to automatically reconnect. Fixes bug #165.
Robert Sesek [Wed, 22 Jul 2009 04:34:20 +0000 (00:34 -0400)]
* Add a preference to automatically reconnect. Fixes bug #165.
* Create a GDBpConnectionDelegate formal protocol.
  * No longer use notifications to pass errors from GDBpConnection to DebuggerController.
  * Add delegate methods for |-debuggerConnected| and |-debuggerDisconnected|.
* Move GDBpConnection's |-socketDidAccept| implementation into a helper so it can be run on the main thread.

15 years ago* Completely de-couple SocketWrapper from GDBpConnection by passing the port directly...
Robert Sesek [Wed, 22 Jul 2009 04:06:50 +0000 (00:06 -0400)]
* Completely de-couple SocketWrapper from GDBpConnection by passing the port directly to the ctor, rather than extracting it from the connection.
* Make SocketWrapperDelegate a formal protocl and GDBpConnection now conforms to it.
* Clean up delegate interface.

15 years agoAdd a tooltip to the "break on first line" preference.
Robert Sesek [Wed, 22 Jul 2009 03:37:32 +0000 (23:37 -0400)]
Add a tooltip to the "break on first line" preference.

15 years agoSwitch to using -[NSString stringWithUTF8String:] in SocketWrapper.
Robert Sesek [Wed, 22 Jul 2009 02:55:49 +0000 (22:55 -0400)]
Switch to using -[NSString stringWithUTF8String:] in SocketWrapper.

15 years agoMark one of the fixes as bug 157 1.3
Robert Sesek [Tue, 19 May 2009 04:37:01 +0000 (00:37 -0400)]
Mark one of the fixes as bug 157

15 years agoAdd a toolbar icon for the HUD window, which required making DebuggerController the...
Robert Sesek [Tue, 19 May 2009 03:14:54 +0000 (23:14 -0400)]
Add a toolbar icon for the HUD window, which required making DebuggerController the action handler.

* Icons/HUDIcon.png: New icon
* CONTRIBUTORS: Add credits for icon
* MacGDBp.xcodeproj/project.pbxproj: Project updates for icon
* Source/AppDelegate.h+m:
(showInspectorWindow:): Moved to...
* Source/DebuggerController.h+m:
(showInspectorWindow:): new from ^
* English.lproj/Debugger.xib: Add toolbar item
* English.lproj/MainMenu.xib: Change Window-->Inspector's target

15 years agoWe need to use UTF8 string encoding instead of ASCII because we're receiving XML...
Robert Sesek [Tue, 19 May 2009 01:58:11 +0000 (21:58 -0400)]
We need to use UTF8 string encoding instead of ASCII because we're receiving XML. Socket code should be perfect now.

* Source/SocketWrapper.m:
(receive)

15 years agoPut the debugger behavior settings above the Xdebug ones
Robert Sesek [Sun, 17 May 2009 14:11:33 +0000 (10:11 -0400)]
Put the debugger behavior settings above the Xdebug ones

* English.lproj/Preferences.xib

15 years agoRewrote -[SocketWrapper receive] so that we do not get any more partial/broken packet...
Robert Sesek [Sun, 17 May 2009 14:07:33 +0000 (10:07 -0400)]
Rewrote -[SocketWrapper receive] so that we do not get any more partial/broken packets, hopefully.

* Source/SocketWrapper.m:
(receive)

15 years agoMore fixes for paths with spaces. We can't use single quotes to pass path names,...
Robert Sesek [Sun, 17 May 2009 03:53:21 +0000 (23:53 -0400)]
More fixes for paths with spaces. We can't use single quotes to pass path names, so create a new method to escape them.

* Source/GDBpConnection.m:
(escapedURIPath): New private method that takes a path and returns a safe file:// URI
(addBreakpoint:): Use -[escapedURIPath:]
(createStackFrame:): Don't pass the escaped path to the frame, keep it internally

15 years agoDon't try to manage the stack using internal state anymore, simply grab it every...
Robert Sesek [Sun, 17 May 2009 03:29:33 +0000 (23:29 -0400)]
Don't try to manage the stack using internal state anymore, simply grab it every time from the engine

* Soure/DebuggerController.m:
(stepIn:): The GDBpConnection methods no longer return anything, get entire stack now
(stepOut:): ditto
(stepOver:): ditto
* Soure/GDBpConnection.h+m:
(run): Return void
(stepIn): ditto
(stepOut): ditto
(stepOver): ditto

15 years agoAdd a preference to disable automatic step-in upon connection
Robert Sesek [Sun, 17 May 2009 00:12:22 +0000 (20:12 -0400)]
Add a preference to disable automatic step-in upon connection

* English.lproj/Preferences.xib: Add checkbox to the general prefs
* Source/AppDelegate.m: Add NSUserDefaults default value
* Source/DebuggerController.m:
(startDebugger): Check pref before stepping

15 years agoFix a type mismatch compile error
Robert Sesek [Sun, 17 May 2009 00:10:59 +0000 (20:10 -0400)]
Fix a type mismatch compile error

* Source/GDBpConnection.h: Change NSArray to StackFrame for -[run]

15 years agoMerge branch 'bug-157'
Robert Sesek [Sat, 16 May 2009 19:10:53 +0000 (15:10 -0400)]
Merge branch 'bug-157'

Conflicts:
Source/DebuggerController.m
Source/GDBpConnection.m

15 years agoMerge branch 'cosmetics'
Robert Sesek [Sat, 16 May 2009 19:06:20 +0000 (15:06 -0400)]
Merge branch 'cosmetics'

Conflicts:
CHANGES
Source/GDBpConnection.m

15 years agoFactored out the stack reloading code
Robert Sesek [Sat, 16 May 2009 19:02:15 +0000 (15:02 -0400)]
Factored out the stack reloading code

* Source/DebuggerController.m:
(reloadStack): New private method to fetch and insert new stack
(run): Use reloadStack
* Source/GDBpConnection.m+h:
(getCurrentStack): New method to get the stack and create all the stack frames
(run): Return only the current stack frame instead of a whole stack

15 years agoAdd NSLog()s around the send/receive stuff so we can track activity with Xdebug
Robert Sesek [Sun, 10 May 2009 14:46:16 +0000 (10:46 -0400)]
Add NSLog()s around the send/receive stuff so we can track activity with Xdebug

* MacGDBp.xcodeproj: In debug mode, define BLU_DEBUG as a C flag
* Source/GDBpConnection.m:
(createCommand:)
(processData:)

15 years agoWhen getting the source, we need to escape the '%20' space character so the source...
Robert Sesek [Sun, 10 May 2009 14:44:53 +0000 (10:44 -0400)]
When getting the source, we need to escape the '%20' space character so the source displays properly

* Source/GDBpConnection.m:
(createStackFrame)

15 years agoBreakpoints with a space in the filename would not be set.
Robert Sesek [Sun, 10 May 2009 14:32:26 +0000 (10:32 -0400)]
Breakpoints with a space in the filename would not be set.

* Source/GDBpConnection.m:
(addBreakpoint:): Quote the breakpoint path before sending the GDBp command

15 years agoMake the asterisk attached to the type, rather than the variable.
Robert Sesek [Sun, 10 May 2009 14:08:37 +0000 (10:08 -0400)]
Make the asterisk attached to the type, rather than the variable.

15 years agoFix the run command by having it obliterate the current stack and set a new one
Robert Sesek [Sat, 4 Apr 2009 20:25:57 +0000 (16:25 -0400)]
Fix the run command by having it obliterate the current stack and set a new one

* Source/GDBpConnection.h+m:
(run): Now returns an NSArray of the new stack frames
(createStackFrame): Sets the StackFrame's index to be the depth
* Source/DebuggerController.m:
(run:): Set the new stack and refresh the source viewer

15 years agoChange -[createStackFrame] to take a depth and create private -[createCurrentStackFra...
Robert Sesek [Sat, 4 Apr 2009 19:28:59 +0000 (15:28 -0400)]
Change -[createStackFrame] to take a depth and create private -[createCurrentStackFrame] to call it with depth 0

* Source/GDBpConnection.m:
(createStackFrame:): Take a new depth argument
(createCurrentStackFrame): New method to call above with 0

15 years agoSet the version to be 1.3
Robert Sesek [Mon, 4 May 2009 16:38:19 +0000 (12:38 -0400)]
Set the version to be 1.3

* Info.plist

15 years agoSet the SourceView.file to nil and tell the stack NSArrayController to rearrange
Robert Sesek [Fri, 1 May 2009 21:49:30 +0000 (17:49 -0400)]
Set the SourceView.file to nil and tell the stack NSArrayController to rearrange

* Source/DebuggerController.m:
(resetDisplays)

15 years agoMake -[GDBpConnection(Private) createCommand:] take a variable number of arguments...
Robert Sesek [Sat, 4 Apr 2009 19:17:38 +0000 (15:17 -0400)]
Make -[GDBpConnection(Private) createCommand:] take a variable number of arguments to parse

* Source/GDBpConnection.m:
(createCommand:)

15 years agoBefore setting selectedVariable, we need to make sure there is a selection!
Robert Sesek [Sat, 4 Apr 2009 03:50:50 +0000 (23:50 -0400)]
Before setting selectedVariable, we need to make sure there is a selection!

* Source/DebuggerController.m:
(stepIn:)
(stepOut:)
(stepOver:)

15 years agoRetain the selection in the variable list when stepping through code
Robert Sesek [Sat, 4 Apr 2009 03:31:24 +0000 (23:31 -0400)]
Retain the selection in the variable list when stepping through code

* Source/DebuggerController.h: Add the selectedVariable ivar
* Source/DebuggerController.m:
(stepIn:): Save selected variable
(stepOut:): ditto
(stepOver:): ditto
(expandVariables): When looping over variables to expand, also reset the selection

15 years agoNSLog() when Xdebug returns us an error
Robert Sesek [Sat, 4 Apr 2009 03:07:58 +0000 (23:07 -0400)]
NSLog() when Xdebug returns us an error

* Source/GDBpConnection.m:
(processData:)

15 years agoNot all breakpoint markers would be displayed in the active code debugger
Robert Sesek [Thu, 2 Apr 2009 19:08:58 +0000 (15:08 -0400)]
Not all breakpoint markers would be displayed in the active code debugger

* Source/DebuggerController.m:
(updateSourceViewer): Get all the breakpoints for the file and set the markers

15 years agoUpdate the changelog
Robert Sesek [Thu, 2 Apr 2009 18:50:53 +0000 (14:50 -0400)]
Update the changelog

15 years agoHave the inspector remember its visibility
Robert Sesek [Thu, 2 Apr 2009 18:35:58 +0000 (14:35 -0400)]
Have the inspector remember its visibility

* Source/AppDelegate.m:
(load): Set the default value
* Source/DebuggerController.m:
(init): Show/hide the inspector based on prefs
* English.lproj/Debugger.xib: Bind the inspector's visibility

15 years agoWhen toggling the breakpoints window, we also need to check to make sure if it's...
Robert Sesek [Thu, 2 Apr 2009 18:34:49 +0000 (14:34 -0400)]
When toggling the breakpoints window, we also need to check to make sure if it's visible but not key

* Source/AppDelegate.m:
(showBreakpointWindow:): If the window is visible but not key, order it front

15 years agoAdd an item to the Window menu to allow the inspector to be shown/hidden
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

15 years agoAdd a variable value inspector
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.

15 years agoUpdate version to 1.2.1 1.2.1
Robert Sesek [Mon, 23 Feb 2009 20:03:54 +0000 (15:03 -0500)]
Update version to 1.2.1

* Info.plist

15 years agoAdd the public key for Sparkle updates
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

15 years agoUpdate Sparkle to be a vanilla build now that we properly use CFBundleVersion
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

15 years agoUpdate the project to use Gitcrement versioning
Robert Sesek [Fri, 20 Feb 2009 17:44:26 +0000 (12:44 -0500)]
Update the project to use Gitcrement versioning

* MacGDBp.xcodeproj

15 years agoUpdated Sparkle to the latest bzr version
Robert Sesek [Sun, 15 Feb 2009 16:31:36 +0000 (11:31 -0500)]
Updated Sparkle to the latest bzr version

15 years agoFixed a segfault crash that would occur if you stepped at the end of a script
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

15 years agoWhen writing the temporary file to use for highlighting, use NSUTF8StringEncoding...
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:)

15 years agoDon't include the final .0 in 1.2 1.2
Robert Sesek [Thu, 12 Feb 2009 15:07:30 +0000 (10:07 -0500)]
Don't include the final .0 in 1.2

* Info.plist

15 years agoConvert the run command to use the StackFrame system
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

15 years agoMerge branch 'path-replacement'
Robert Sesek [Mon, 9 Feb 2009 12:55:06 +0000 (07:55 -0500)]
Merge branch 'path-replacement'

Conflicts:
CHANGES
Source/AppDelegate.m

15 years agoThe breakpoints window will now remember if it was opened or closed
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

15 years agoBumping the version number to 1.2.0
Robert Sesek [Fri, 6 Feb 2009 20:16:28 +0000 (15:16 -0500)]
Bumping the version number to 1.2.0

* Info.plist

15 years agoAdd a changelog entry for the path replacements prefs
Robert Sesek [Fri, 6 Feb 2009 20:13:29 +0000 (15:13 -0500)]
Add a changelog entry for the path replacements prefs

15 years agoAdd a change to the changelog
Robert Sesek [Fri, 6 Feb 2009 20:12:31 +0000 (15:12 -0500)]
Add a change to the changelog

15 years agoWhen sending breakpoints to Xdebug, use the [transformedPath]
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]

15 years agoAdd the actual path replacement procedure and flip/rename the columns in the preferences
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

15 years agoAdd a custom NSArrayController for the paths preferences so we can customize the...
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

15 years agoAdd the path management bindings and array controller
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

15 years agoDesign the paths replacement interface
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

15 years agoImplement preferences window resizing
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

15 years agoAdd the paths replacement panel but don't implement anything in it
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

15 years agoImplement a toolbar for the preferences window
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

15 years agoAdding a CONTRIBUTORS file
Robert Sesek [Thu, 5 Feb 2009 18:57:33 +0000 (13:57 -0500)]
Adding a CONTRIBUTORS file

15 years agoWord wrap CHANGES
Robert Sesek [Thu, 5 Feb 2009 18:47:45 +0000 (13:47 -0500)]
Word wrap CHANGES

15 years agoShow the variables in all contexts instead of just Locals. Fixes #147.
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"

15 years agoWhen the debugger connects, automatically step in to the first frame to make the...
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

15 years agoUpdating the changelog for 1.2.0
Robert Sesek [Wed, 28 Jan 2009 17:16:15 +0000 (12:16 -0500)]
Updating the changelog for 1.2.0

* CHANGES

15 years agoHappy new year! Bump copyright.
Robert Sesek [Thu, 22 Jan 2009 19:47:52 +0000 (14:47 -0500)]
Happy new year! Bump copyright.

15 years agoHighlighting of the currently debugged file will now get the source from Xdebug rathe...
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:

15 years agoMerge branch 'refactoring'
Robert Sesek [Thu, 22 Jan 2009 16:44:52 +0000 (11:44 -0500)]
Merge branch 'refactoring'

Conflicts:
English.lproj/Debugger.xib

15 years agoFixed a bug where stepIn would remove the current stack frame if the file was the...
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

15 years agoRenaming registers to variables
Robert Sesek [Tue, 2 Dec 2008 16:10:52 +0000 (11:10 -0500)]
Renaming registers to variables

15 years agoWe need to keep variables expanded across changing stack positions
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

15 years agoFix a couple display issues and a crash
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.

15 years agoGet the source code from the debugger engine in [GDBpConnection(Private) createStackF...
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

15 years agoRemove -[DebuggerController setStatus:]
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"

15 years agoUse automatic validation of UI items for the toolbar buttons, rather than manually...
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

15 years agoCall -[resetDisplays] when we reconnect
Robert Sesek [Mon, 1 Dec 2008 15:27:16 +0000 (10:27 -0500)]
Call -[resetDisplays] when we reconnect

* Source/DebuggerController.m:
(reconnect:): Call resetDisplays

15 years agoUse bindings to set the register controller's contentArray
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

15 years agoRemove all references of the window controller from GDBpConnection
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

15 years agoRemove the model-updating-controller register variable code
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

15 years agoSet the file column to truncate head, not truncate tail
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

15 years agoOne more instance of calling -[setStatus:] that needs to change
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

15 years agoRather than having GDBpConnection tell the window controller to change status, cache...
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

15 years agoUse our new error system
Robert Sesek [Mon, 1 Dec 2008 03:49:17 +0000 (22:49 -0500)]
Use our new error system

* Source/GDBpConnection.m:
(processData:): Call -[errorEncountered]

15 years agoCreate an error system that follows MVC
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

15 years agoRemove all of the old stack system
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

15 years agoUpdate the bindings for the stack viewer to use our new StackController system
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

15 years agoThe StackFrame index will always be 0 in -[GDBpConnection createStackFrame], so we...
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

15 years agoWe need to pop the stack twice when stepOut is called
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

15 years agoStart using our new StackFrame and StackController classes as struts
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

15 years agoRefactor the DebuggerController's "stackController" ivar to be named "stackController2"
Robert Sesek [Mon, 1 Dec 2008 00:15:54 +0000 (19:15 -0500)]
Refactor the DebuggerController's "stackController" ivar to be named "stackController2"

15 years agoAdd the StackController class
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