]> src.bluestatic.org Git - macgdbp.git/log
macgdbp.git
16 years agoAdding support to actually set breakpoints on the debuger side
Robert Sesek [Wed, 2 Apr 2008 21:26:36 +0000 (17:26 -0400)]
Adding support to actually set breakpoints on the debuger side

* Source/Breakpoint.h: New debuggerId ivar to keep track of the engine's tracking ID
* Source/Breakpoint.m: Synthesize ivar
* Source/DebuggerConnection.m/h:
([DebuggerConnection addBreakpoint:]): New method
([DebuggerConnection removeBreakpoint:]): New method
* Source/DebuggerWindowController.m:
([DebuggerWindowController gutterClickedAtLine:forFile:]): When adding a breakpoint, tell the engine to set it

16 years agoAdd support for removing a breakpoint
Robert Sesek [Wed, 2 Apr 2008 20:29:22 +0000 (16:29 -0400)]
Add support for removing a breakpoint

* Source/BSLineNumberView.m:
([BSLineNumberView drawRect:]): Remove an NSLog()
* Source/BreakpointManager.m:
([BreakpointManager removeBreakpointAt:inFile:]): New method
* Source/DebuggerWindowController.m:
([DebuggerWindowController gutterClickedAtLine:forFile:]): Add support for removing breakpoints

16 years agoChange the drawing of the marker to make it prettier
Robert Sesek [Wed, 2 Apr 2008 20:20:43 +0000 (16:20 -0400)]
Change the drawing of the marker to make it prettier

* Source/BSLineNumberView.m:
([BSLineNUmberView(Private) drawMarkerInRect:]): Make the mark darker and stroked

16 years agoAdd the functionality to draw markers
Robert Sesek [Wed, 2 Apr 2008 20:11:30 +0000 (16:11 -0400)]
Add the functionality to draw markers

* Source/BSLineNumberView.m:
([BSLineNumberView(Private) drawMarkerInRect:]): New method

16 years agoAdding a new class called BreakpointManager so we don't clutter up AppDelegate
Robert Sesek [Wed, 2 Apr 2008 18:55:06 +0000 (14:55 -0400)]
Adding a new class called BreakpointManager so we don't clutter up AppDelegate

* Source/AppDelegate.m/h: Removing the breakpoint code
* Source/BSLineNumberView.m:
([BSLineNumberView mouseDown:]): We need to add the lineNumberRange so we get an accurate number
* Source/DebuggerWindowController.m: Switching to BreakpointManager instead of AppDelegate for managing breakpoints
* Source/BreakpointManager.m/h: New files
* MacGDBp.xcodeproj: Project updates for BreakpointManager

16 years agoInitial breakpoint adding code
Robert Sesek [Wed, 2 Apr 2008 17:53:46 +0000 (13:53 -0400)]
Initial breakpoint adding code

* MacGDBp.xcodeproj: Project updates for Breakpoint.m/h
* Source/AppDelegate.h: Add a breakpoints ivar
* Source/AppDelegate.m:
([AppDelegate addBreakpoint:]): New method
([AppDelegate breakpointsForFile:]): New method
* Source/BSLineNumberView.h: Add a markers ivar
* Source/BSLineNumberView.m:
([BSLineNumberView drawRect:]): Add breakpoint-detecting code
* Source/DebuggerWindowController.m: Making this the delegate of BSSourceView
([DebuggerWindowController gutterClickedAtLine:forFile:]): Implementing delegate method

16 years agoWe now properly handle the mouseDown event in the gutter
Robert Sesek [Tue, 1 Apr 2008 04:33:22 +0000 (00:33 -0400)]
We now properly handle the mouseDown event in the gutter

* Source/BSLineNumberView.h: New property called lineNumberRange
* Source/BSLineNumberView.m: Synthesize lineNumberRange and set it to be empty in -[init]
([BSLineNumberView drawRect:]): Set lineNumberRange to be the range of visible lines in the source viewer
([BSLineNumberView mouseDown:]): Use the line number range to simplify the code of determining which line was clicked
* Source/BSSourceView.h: New property file to hold the filename; also create delegate category
* Source/BSSourceView.h: Synthesize file
([BSSourceView setFile:]): Sets the file property as well as setting the string of the textView object
* Source/DebuggerWindowController.m:
([DebuggerWindowController updateSourceViewer]): Use the new -[setFile:] method

16 years agoMerge branch 'master' into breakpoints
Robert Sesek [Thu, 13 Mar 2008 05:09:09 +0000 (01:09 -0400)]
Merge branch 'master' into breakpoints

16 years agoAllow the type to also display the class of object
Robert Sesek [Thu, 13 Mar 2008 05:07:48 +0000 (01:07 -0400)]
Allow the type to also display the class of object

* Source/NSXMLElementAdditions.m:
([NSXMLElement(NSXMLElementAdditions) type]): If the classname attribute is present, use it

16 years agoThe mouse down handler almost works, but our math is still off
Robert Sesek [Mon, 10 Mar 2008 20:39:38 +0000 (16:39 -0400)]
The mouse down handler almost works, but our math is still off

* Source/BSLineNumberView.m:
([BSLineNumberView mouseDown:])

16 years agoMaking progress on our -[mouseDown:] event handler, but it's not quite working
Robert Sesek [Mon, 10 Mar 2008 19:13:09 +0000 (15:13 -0400)]
Making progress on our -[mouseDown:] event handler, but it's not quite working

* Source/BSLineNumberView.m:
([BSLineNumberView mouseDown:]): New method
* Source/BSSourceView.h: New delegate prop-ivar
* Source/BSSourceView.m: Synthesizing the delegate ivar

16 years agoWe now highlight the break'd line
Robert Sesek [Sun, 9 Mar 2008 18:37:46 +0000 (14:37 -0400)]
We now highlight the break'd line

* Source/BSSourceView.h: New prop-ivar markedLine
* Source/BSSourceView.m: ditto
* Source/BSSourceViewTextView.m:
([BSSourceViewTextView drawRect:]): Highlight the line
* Source/DebuggerWindowContrller.m:
([DebuggerWindowController updateSourceViewer]): Call [sourceViewer setMarkedLine:]

16 years agoAdding a method to scroll to a given line in the BSSourceView
Robert Sesek [Sun, 9 Mar 2008 17:13:14 +0000 (13:13 -0400)]
Adding a method to scroll to a given line in the BSSourceView

* Source/BSSourceView.m:
([BSSourceView scrollToLine:]): New method that scrolls to a specific line in the NSTextView
* Source/BSSourceView.h: ditto
* Source/DebuggerWindowController.m:
([DebuggerWindowController updateSourceViewer]): Removing the scrolling logic that used to be here

16 years agoSet springs on the debugger window
Robert Sesek [Sun, 9 Mar 2008 16:54:14 +0000 (12:54 -0400)]
Set springs on the debugger window

* English.lproj/Debugger.xib

16 years agoWe now draw the line number in the the middle of the the line's height, which means...
Robert Sesek [Sun, 9 Mar 2008 16:50:16 +0000 (12:50 -0400)]
We now draw the line number in the the middle of the the line's height, which means that if the line number is a smaller size than the line text it will be centered instead of drawn at the top

* Source/BSLineNumberView.m:
([BSLineNumberView drawRect:])

16 years agoStroke the gutter at the top and bottom
Robert Sesek [Sun, 9 Mar 2008 16:36:24 +0000 (12:36 -0400)]
Stroke the gutter at the top and bottom

* Source/BSLineNumberView.m:
([BSLineNumberView drawRect:]): Draw a line at the top and bottom of the gutter view

16 years agoFixing a memory leak
Robert Sesek [Sun, 9 Mar 2008 15:03:30 +0000 (11:03 -0400)]
Fixing a memory leak

* Source/NSXMLElementAdditions.m:
([NSXMLElement(NSXMLElementAdditions) value]): base64_decode_alloc() calls malloc() but not free() so we need to do it ourselves

16 years agoAdd a bunch of new NSView classes (to form a meta-view BSSourceView) that adds a...
Robert Sesek [Sun, 9 Mar 2008 04:38:07 +0000 (23:38 -0500)]
Add a bunch of new NSView classes (to form a meta-view BSSourceView) that adds a line-numbered NSTextView embedded in a NSScrollView

* English.lproj/Debugger.xib: Use our BSSourceView instead of an NSTextView for the source viewer
* Source/BSLineNumberView.h: new file
* Source/BSLineNumberView.m: new file
* Source/BSSourceView.h: new file
* Source/BSSourceView.m: new file
* Source/BSSourceViewTextView.h: new file
* Source/BSSourceViewTextView.m: new file
* MacGDBp.xcodeproj: Project updates for all the new files
* Source/DebuggerWindowController.h: Switch to using a BSSourceView
* Source/DebuggerWindowController.m: ditto

16 years agoThe icons all had a bit of highlight hanging in the alpha, so removed all of it
Robert Sesek [Mon, 14 Jan 2008 19:06:24 +0000 (11:06 -0800)]
The icons all had a bit of highlight hanging in the alpha, so removed all of it

* Icons/Reconnect.png
* Icons/Run.png
* Icons/StepIn.png
* Icons/StepOut.png
* Icons/StepOver.png
* Toolbar Buttons.psd

16 years agoMake the register and stack tables have uniform column resizing
Robert Sesek [Fri, 11 Jan 2008 02:41:22 +0000 (18:41 -0800)]
Make the register and stack tables have uniform column resizing

* English.lproj/Debugger.xib

16 years agoConverting the rest of the NIBs to be XIBs simply for the sake of consistency
Robert Sesek [Fri, 11 Jan 2008 01:07:20 +0000 (17:07 -0800)]
Converting the rest of the NIBs to be XIBs simply for the sake of consistency

* English.lproj/Connect.nib: Removed
* English.lproj/MainMenu.nib: Removed
* English.lproj/Connect.xib: New file
* English.lproj/MainMenu.xib: New file
* MacGDBp.xcodeproj: Project updates for removed NIBs and new XIBs, also put all the XIBs into a group for organization sake

16 years agoMerge branch 'ui-polish'
Robert Sesek [Fri, 11 Jan 2008 00:57:58 +0000 (16:57 -0800)]
Merge branch 'ui-polish'

16 years agoLightening all the toolbar icons, removing the shadows off the shapes, lightening...
Robert Sesek [Fri, 11 Jan 2008 00:57:38 +0000 (16:57 -0800)]
Lightening all the toolbar icons, removing the shadows off the shapes, lightening the drop shadow, and adding the reconnect icon

16 years agoAdding the Step Over and Run icons, as well as modifying the existing ones to be...
Robert Sesek [Fri, 11 Jan 2008 00:43:18 +0000 (16:43 -0800)]
Adding the Step Over and Run icons, as well as modifying the existing ones to be nicer

16 years agoWe were previously using, for the stack table, the index of the row to determine...
Robert Sesek [Fri, 11 Jan 2008 00:10:17 +0000 (16:10 -0800)]
We were previously using, for the stack table, the index of the row to determine which source file to show instead of the "level" column of the row, which means sorting the stack table would screw things up

* Source/DebuggerWindowController.m:
([DebuggerWindowController updateSourceViewer]): Switch to using the selected item's "level" rather than the selected row index

16 years agoMake sure that the source viewer is not editable
Robert Sesek [Fri, 11 Jan 2008 00:02:19 +0000 (16:02 -0800)]
Make sure that the source viewer is not editable

* Source/DebuggerWindowController.m:
([DebuggerWindowController awakeFromNib]):

16 years agoWe now properly draw the dimple in BSSplitView
Robert Sesek [Thu, 10 Jan 2008 09:14:25 +0000 (01:14 -0800)]
We now properly draw the dimple in BSSplitView

* Source/BSSplitView.m:
([BSSplitView drawDividerInRect:]): Use -[NSImage compositeToPoint:operation:] instead of -[drawInRect:]

16 years agoDraw the dimple (though it is upside-down because the Cartesian is flipped)
Robert Sesek [Thu, 10 Jan 2008 08:29:32 +0000 (00:29 -0800)]
Draw the dimple (though it is upside-down because the Cartesian is flipped)

* dimple.png: Dimple image
* MacGDBp.xcodeproj: Project updates for the image
* Source/BSSplitView.m:
([BSSplitView drawDividerInRect:]): Add the dimple drawing code

16 years agoInstead of using NSSplitView, use BSSplitView which is our custom implementation...
Robert Sesek [Thu, 10 Jan 2008 00:11:51 +0000 (16:11 -0800)]
Instead of using NSSplitView, use BSSplitView which is our custom implementation which draws a smaller, gradiated divider

* English.lproj/Debugger.xib: Switch to using a custom class for our two SplitView's
* Source/BSSplitView.h: New file
* Source/BSSplitView.m: ditto
* MacGDBp.xcodeproj: Project updates for new files

16 years agoAdding some icons for the toolbar buttons (only Step In and Step Out)
Robert Sesek [Wed, 9 Jan 2008 23:26:52 +0000 (15:26 -0800)]
Adding some icons for the toolbar buttons (only Step In and Step Out)

* English.lproj/Debugger.xib: Set the icons for the two buttons
* Icons/StepIn.png: New file
* Icons/StepOut.png: ditto
* MacGDBp.xcodeproj: Project updates to add the icons to the resources
* Toolbar Buttons.psd: Original file for the icons

16 years agoPolishing up the layout even more by removing some of the nasty double-border stuff
Robert Sesek [Wed, 9 Jan 2008 23:05:46 +0000 (15:05 -0800)]
Polishing up the layout even more by removing some of the nasty double-border stuff

* English.lproj/Debugger.xib

16 years agoSet springs on the split view and status text
Robert Sesek [Wed, 9 Jan 2008 09:34:03 +0000 (01:34 -0800)]
Set springs on the split view and status text

* English.lproj/Debugger.xib

16 years agoMaking the split views go all the way to the edge, like in Xcode. Also, swap the...
Robert Sesek [Wed, 9 Jan 2008 09:31:58 +0000 (01:31 -0800)]
Making the split views go all the way to the edge, like in Xcode. Also, swap the registers/stack with the source view

* English.lproj/Debugger.xib

16 years agoUse an NSToolbar for the debugger controls instead of NSButtons
Robert Sesek [Wed, 9 Jan 2008 09:22:09 +0000 (01:22 -0800)]
Use an NSToolbar for the debugger controls instead of NSButtons

* English.lproj/Debugger.nib: Removed because the designable NSToolbar requires an XIB
* English.lproj/Debugger.xib: Coverted old NIB
* MacGDBp.xcodeproj: Project updates for the nib->xib conversion
* Source/DebuggerWindowController.h: Changing the buttons to be of type NSButton to NSToolbarItem

16 years agoThe reconnect functionality now works
Robert Sesek [Wed, 9 Jan 2008 09:05:22 +0000 (01:05 -0800)]
The reconnect functionality now works

* Source/DebuggerConnection.h:
* Source/DebuggerConnection.m:
([DebuggerConnection reconnect]): New method that communicates the reconnect to the debugger
([Debuggerconnection refreshStatus]): If the status is "stopped", we are no longer connected
* Source/DebuggerWindowController.h:
* Source/DebuggerWindowController.m:
([DebuggerWindowController resetDisplays]): New method to set all the display information to be blank
([DebuggerWindowController reconnect:]): Forward the message to reconnect to the DebuggerConnection

16 years agoMerge branch 'leopard'
Robert Sesek [Sun, 6 Jan 2008 01:17:02 +0000 (17:17 -0800)]
Merge branch 'leopard'

16 years agoThe registers now have memory and stay expanded
Robert Sesek [Sun, 6 Jan 2008 01:14:00 +0000 (17:14 -0800)]
The registers now have memory and stay expanded

* Source/DebuggerWindowController.h: expandedRegisters is now an NSMutableSet
* Source/DebuggerWindowController.m:
([DebuggerWindowController initWithPort:session:]): Change allocated type of expandedRegisters
([DebuggerWindowController setRegister:]): Finished logic for expanding remembered registers
([DebuggerWindowController outlineViewItemDidExpand:]): Use the "fullname" attribute to get the full variable name so scope is accounted for in expanded memory
([DebuggerWindowController outlineViewItemDidCollapse:]): ditto
* Source/NSXMLElementAdditions.h:
* Source/NSXMLElementAdditions.m:
([NSXMLElement(NSXMLElementAdditions) fullname]): New method

16 years agoWe now properly fetch registers who need to have more data attached
Robert Sesek [Sun, 6 Jan 2008 00:50:56 +0000 (16:50 -0800)]
We now properly fetch registers who need to have more data attached

* Source/DebuggerWindowController.m:
([DebuggerWindowController addChildren:toNode:]): Don't attach nodes through the controller, but rather through the XMLElement (via the node's -[representedObject])

16 years agoRemoving the notification-delegate system that SocketWrapper used because it wasn...
Robert Sesek [Sat, 5 Jan 2008 23:55:52 +0000 (15:55 -0800)]
Removing the notification-delegate system that SocketWrapper used because it wasn't necessary because the only action that can block the UI is -[connect]

Changes:
-[SocketWrapper receive] now returns the data directly, cleaning up the DebuggerConnection class a lot
-[SocketWrapper send] returns BOOL depending on the success of the send

16 years agoIn SocketWraper, don't use the notification posting system to send errors to the...
Robert Sesek [Sat, 5 Jan 2008 23:09:16 +0000 (15:09 -0800)]
In SocketWraper, don't use the notification posting system to send errors to the delegate, instead just use performSelectorOnMainThread:withObject:waitUntilDone: on the delegate object. Also, -[NSObject(SocketWrapperDelegate) errorEncountered:] now just takes a string.

16 years agoSynthesize new properties for class cross-referencing and SocketWrapper now init...
Robert Sesek [Sat, 5 Jan 2008 22:54:50 +0000 (14:54 -0800)]
Synthesize new properties for class cross-referencing and SocketWrapper now init's with a DebuggerConnection

* Source/DebuggerConnection.h: New property for the DebuggerWindowController
* Source/DebuggerConnection.m: Synthesize new property and changed SocketWrapper's initializer
* Source/DebuggerWindowController.h: New property for DebuggerConnection
* Source/DebuggerWindowController.m: ditto
* Source/SocketWrapper.h: The init method now takes a DebuggerConnection (and stores it) instead of a port
* Source/SocketWrapper.m: ditto

16 years agoAdding 2008 to the copyright year in the Info.plist and InfoPlist.strings files
Robert Sesek [Sat, 5 Jan 2008 22:42:34 +0000 (14:42 -0800)]
Adding 2008 to the copyright year in the Info.plist and InfoPlist.strings files

16 years agoHappy new year!
Robert Sesek [Sat, 5 Jan 2008 22:41:17 +0000 (14:41 -0800)]
Happy new year!

16 years agoUse garbage collection and add -[SocketWrapper close] to close down the socket and...
Robert Sesek [Sat, 5 Jan 2008 22:40:05 +0000 (14:40 -0800)]
Use garbage collection and add -[SocketWrapper close] to close down the socket and not do it in -[finalize]

16 years agoMerge branch 'refactoring' into leopard
Robert Sesek [Sat, 5 Jan 2008 22:10:46 +0000 (14:10 -0800)]
Merge branch 'refactoring' into leopard

16 years agoFinish the refactoring in the previous commit and now the window title is properly set
Robert Sesek [Sat, 5 Jan 2008 22:07:07 +0000 (14:07 -0800)]
Finish the refactoring in the previous commit and now the window title is properly set

* Source/DebuggerConnection.h: Removed the definition for -[windowDidClose]
* Source/DebuggerConnection.m:
([DebuggerConnection initWithWindowController:port:session:]): Don't set the status in this method because the nib isn't awake yet
* Source/DebuggerWindowController.m:
([DebuggerWindowController initWithPort:session:]): Make self key and front
([DebuggerWindowController awakeFromNib]): Set the default status to be "Connecting"
([DebuggerWindowController windowWillClose:]): Removed

16 years agoWe no longer use DebuggerConnection to manage the DebuggerWindowController, but now...
Robert Sesek [Sat, 5 Jan 2008 21:54:55 +0000 (13:54 -0800)]
We no longer use DebuggerConnection to manage the DebuggerWindowController, but now it's vice versa

Benefits:
- There was a problem that when we quit we would crash, because on window closing, the WindowController would tell the connection to shutdown, but because AppDelegate cleaned up before the WindowController, it would crash when sending the message.
- An array of connections no longer needs to be managed because the WindowController stores all the pointers, so when it closes things are deallocated properly

16 years agoInstead of storing the pionter to the expanded item, save the variable name because...
Robert Sesek [Fri, 4 Jan 2008 22:29:48 +0000 (14:29 -0800)]
Instead of storing the pionter to the expanded item, save the variable name because we replace the entire register

16 years agoReadd a space after a colon
Robert Sesek [Fri, 4 Jan 2008 22:25:52 +0000 (14:25 -0800)]
Readd a space after a colon

16 years agoReadd a space after a colon
Robert Sesek [Fri, 4 Jan 2008 22:25:52 +0000 (14:25 -0800)]
Readd a space after a colon

16 years agoReworking the code to use NSTreeNode instead of the hidden proxy objects
Robert Sesek [Fri, 4 Jan 2008 22:08:37 +0000 (14:08 -0800)]
Reworking the code to use NSTreeNode instead of the hidden proxy objects

16 years agoWe don't need the 10.5 SDK on the refactoring branch
Robert Sesek [Fri, 4 Jan 2008 20:33:57 +0000 (12:33 -0800)]
We don't need the 10.5 SDK on the refactoring branch

16 years agoRenaming the status ivar to be statusmsg so that -[DebuggerWindowController setStatus...
Robert Sesek [Fri, 4 Jan 2008 20:32:10 +0000 (12:32 -0800)]
Renaming the status ivar to be statusmsg so that -[DebuggerWindowController setStatus:] doesn't get called when connecting the nib

16 years agoRefactoring _reconnectButton
Robert Sesek [Fri, 4 Jan 2008 20:18:17 +0000 (12:18 -0800)]
Refactoring _reconnectButton

16 years agoRefactoring _runButton
Robert Sesek [Fri, 4 Jan 2008 20:17:05 +0000 (12:17 -0800)]
Refactoring _runButton

16 years agoRefactoring _stepOutButton
Robert Sesek [Fri, 4 Jan 2008 20:15:45 +0000 (12:15 -0800)]
Refactoring _stepOutButton

16 years agoRefactoring _stepOverButton
Robert Sesek [Fri, 4 Jan 2008 20:12:23 +0000 (12:12 -0800)]
Refactoring _stepOverButton

16 years agoRefactoring _stepInButton
Robert Sesek [Fri, 4 Jan 2008 20:09:36 +0000 (12:09 -0800)]
Refactoring _stepInButton

16 years agoRefactoring _sourceViewerScroller
Robert Sesek [Fri, 4 Jan 2008 20:09:03 +0000 (12:09 -0800)]
Refactoring _sourceViewerScroller

16 years agoRefactoring _sourceViewer
Robert Sesek [Fri, 4 Jan 2008 20:08:22 +0000 (12:08 -0800)]
Refactoring _sourceViewer

16 years agoRefactoring _error
Robert Sesek [Fri, 4 Jan 2008 20:07:50 +0000 (12:07 -0800)]
Refactoring _error

16 years agoRefactoring _status
Robert Sesek [Fri, 4 Jan 2008 20:04:45 +0000 (12:04 -0800)]
Refactoring _status

16 years agoRefactoring _expandedRegisters
Robert Sesek [Fri, 4 Jan 2008 20:02:33 +0000 (12:02 -0800)]
Refactoring _expandedRegisters

16 years agoRefactoring _registerView
Robert Sesek [Fri, 4 Jan 2008 20:02:02 +0000 (12:02 -0800)]
Refactoring _registerView

16 years agoRefactoring _registerController
Robert Sesek [Fri, 4 Jan 2008 20:01:29 +0000 (12:01 -0800)]
Refactoring _registerController

16 years agoRefactoring _stack
Robert Sesek [Fri, 4 Jan 2008 20:00:42 +0000 (12:00 -0800)]
Refactoring _stack

16 years agoRefactoring _stackController
Robert Sesek [Fri, 4 Jan 2008 19:58:03 +0000 (11:58 -0800)]
Refactoring _stackController

16 years agoRefactoring _connection ivar
Robert Sesek [Fri, 4 Jan 2008 19:56:55 +0000 (11:56 -0800)]
Refactoring _connection ivar

16 years agoReverting portion of 48022096ee56de046900df9d3fedafe3e650c87b in DebuggerWindowContro...
Robert Sesek [Fri, 4 Jan 2008 19:44:24 +0000 (11:44 -0800)]
Reverting portion of 48022096ee56de046900df9d3fedafe3e650c87b in DebuggerWindowController.m/h and Debugger.nib

16 years agoFix some variable hiding that was caused by our refactoring. Unfortunately, our code...
Robert Sesek [Fri, 4 Jan 2008 10:37:00 +0000 (02:37 -0800)]
Fix some variable hiding that was caused by our refactoring. Unfortunately, our code still hangs when we try to connect.

16 years agoWe can't have an instance variable match the name of a C function because then we...
Robert Sesek [Fri, 4 Jan 2008 10:24:40 +0000 (02:24 -0800)]
We can't have an instance variable match the name of a C function because then we don't compile

* Source/SocketWrapper.h: ivar socket is now sock
* Source/SocketWrapper.m:
([SocketWrapper connect:]): We're now happy because socket() can be called without ambiguity between self->socket

16 years agoUntested refactoring is the best! Renaming all of the instance variables to not start...
Robert Sesek [Fri, 4 Jan 2008 10:21:51 +0000 (02:21 -0800)]
Untested refactoring is the best! Renaming all of the instance variables to not start with underscores, because it's just plain old annoying.

16 years agoRemoving the extra spacing after colons in function arguments
Robert Sesek [Fri, 4 Jan 2008 10:03:38 +0000 (02:03 -0800)]
Removing the extra spacing after colons in function arguments

16 years agoAdd some test code to see how Leopard behaves
Robert Sesek [Fri, 4 Jan 2008 09:50:27 +0000 (01:50 -0800)]
Add some test code to see how Leopard behaves

* MacGDBp.xcodeproj: Change to the 10.5 SDK
* Source/DebuggerWindowController.m: Play with the new and improved NSTreeController

16 years agoUpdate MacGDBp.xcodeproj/.gitignore for Xcode v3
Robert Sesek [Fri, 4 Jan 2008 09:44:14 +0000 (01:44 -0800)]
Update MacGDBp.xcodeproj/.gitignore for Xcode v3

17 years agoMinor upgrades to the project due to Xcode 3.0
Robert Sesek [Sat, 27 Oct 2007 23:30:04 +0000 (19:30 -0400)]
Minor upgrades to the project due to Xcode 3.0

17 years agoChanging the version number from alpha to Beta 1
Robert Sesek [Sat, 25 Aug 2007 06:11:11 +0000 (23:11 -0700)]
Changing the version number from alpha to Beta 1

* Info.plist

17 years agoRemoving another NSLog when the stack's selection changes
Robert Sesek [Sat, 25 Aug 2007 05:38:26 +0000 (22:38 -0700)]
Removing another NSLog when the stack's selection changes

* Source/DebuggerWindowController.m
([DebuggerWindowController tableViewSelectionDidChange:])

17 years agoImproving the way we handle updating the stack and registers. Instead of updating...
Robert Sesek [Sat, 25 Aug 2007 05:36:12 +0000 (22:36 -0700)]
Improving the way we handle updating the stack and registers. Instead of updating them after we send step/run commands, only update the stacks and registers if the status (in updateStatus:) is on "break"

* Source/DebuggerConnection.m

17 years agoRemoving a puts statement from the shell script that creates the build version
Robert Sesek [Sat, 25 Aug 2007 05:09:59 +0000 (22:09 -0700)]
Removing a puts statement from the shell script that creates the build version

* MacGDBp.xcodeproj

17 years agoRemoving the NSLog that was being called everytime we sent a command
Robert Sesek [Sat, 25 Aug 2007 05:00:15 +0000 (22:00 -0700)]
Removing the NSLog that was being called everytime we sent a command

* Source/DebuggerConnection.m
([DebuggerConnection dataSent:])

17 years agoRenaming the "Refresh" butto to be "Re-Connect" and hooking it up (though it does...
Robert Sesek [Sat, 11 Aug 2007 23:21:03 +0000 (16:21 -0700)]
Renaming the "Refresh" butto to be "Re-Connect" and hooking it up (though it does nothing at the moment)

* English.lproj/Debugger.nib: Renaming the "Run" button and hooking it up to DebuggerWindowController
* Source/DebuggerWindowController.m|h: Adding a _reconnectButton outlet and a reconnect: action
([DebuggerWindowController reconnect:]): New method

17 years agoAllow the connection socket to be reused in SocketWrapper
Robert Sesek [Sat, 11 Aug 2007 22:57:23 +0000 (15:57 -0700)]
Allow the connection socket to be reused in SocketWrapper

* Source/SocketWrapper.m:
([SocketWrapper connect:]): Allow the socketOpen to reuse addresses, making the bind errors less common

17 years agoIn the dataReceived: method if an error is in the response, set the error on the...
Robert Sesek [Sat, 11 Aug 2007 22:52:36 +0000 (15:52 -0700)]
In the dataReceived: method if an error is in the response, set the error on the window

* Source/DebuggerConnection.m:
([DebuggerConnection dataReceived:deliverTo:]): If the response XML contains an error tag, set the error of the window to be the error message

17 years agoChaning all the delivery methods to accept NSXMLDocument instead of NSData and changi...
Robert Sesek [Sat, 11 Aug 2007 22:33:24 +0000 (15:33 -0700)]
Chaning all the delivery methods to accept NSXMLDocument instead of NSData and changing dataReceived: to create the NSXMLDocument

* Source/DebuggerConnection.m

17 years agoWe previously were leaking all over the place due to improper use of memory managemen...
Robert Sesek [Sat, 11 Aug 2007 19:54:55 +0000 (12:54 -0700)]
We previously were leaking all over the place due to improper use of memory management techniques and circular references

* English.lproj/Debugger.nib: Setting DebuggerWindowController as the window's delgate
* Source/AppDelegate.h: Adding a connections ivar
* Source/AppDelegate.m:
([AppDelegate init]): New method to initialize the connections array
([AppDelegate applicationWillTerminate:]): Frees the connections array
([AppDelegate registerConnection:]): New method to register a DebuggerConnection
([AppDelegate unregisterConnection:]): Unregisters a DebuggerConnection
* Source/ConnectWindowController.m:
([ConnectWindowController connect:]): We weren't properly release'ing the connection, so now we register it with the delegate and release it in the connect method
* Source/DeubggerConnection.h: Added a windowDidClose method so that the window controller can forward the message
* Source/DebuggerConnection.m:
([DebuggerConnection windowDidClose]): New method to forward the windowWillClose notification
([DebuggerConnection initWithPort:session:]): We no longer have to register for NSApplicationWillTerminate
([DebuggerConnection applicationWillTerminate:]): Removed
([DebuggerConnection dealloc]): Release _windowController
* Source/DebuggerWindowController.m:
([DebuggerWindowController initWithConnection:]): No longer retain the connection as it creates a circular ref
([DebuggerWindowController windowWillClose:]): Use this delegate method to buble the notification to the controller
([DebuggerWindowController dealloc]): Since we don't retain _connection, don't release it
* Source/SocketWrapper.m:
([SocketWrapper dealloc]): Remove ourselves as a notification observer so we don't have a nil reference

17 years agoWe now remember which items in the register have been expanded so they stay open
Robert Sesek [Mon, 6 Aug 2007 16:57:57 +0000 (09:57 -0700)]
We now remember which items in the register have been expanded so they stay open

* Source/DebuggerWindowController.h: Adding an _registerView outlet and an _expandedRegisters array
* Source/DebuggerWindowController.m:
([DebuggerWindowController initWithConnection:]): Initialize _expandedRegisters
([DebuggerWindowController dealloc]): Release _expandedRegisters
([DebuggerWindowController setRegister:]): When we set the register, go through all the items and see if any of them should be expanded
([DebuggerWindowController outlineViewItemDidExpand:]): Add the expanded object to _expandedRegisters
([DebuggerWindowController outlineViewItemDidCollapse:]): Remove the object from _expandedRegisters
* English.lproj/Debugger.nib: Hooking up the _registerView outlet

17 years agoWorking around an extremely annoying apple bug in NSTreeController and an NSOutlineVi...
Robert Sesek [Sun, 5 Aug 2007 21:04:34 +0000 (14:04 -0700)]
Working around an extremely annoying apple bug in NSTreeController and an NSOutlineView. When the contentArray is bound on an NSTreeController, the observing can go haywire and just crash randomly.

* English.lproj/Debugger.nib: Unbinding RegisterController's content array
* Source/DebuggerConnection.m:
([DebuggerConnection registerRecieved:]): Sending [_windowController setRegister:] the entire document instead of the rootElement
* Source/DebuggerWindowController.h: Removed _register ivar and changed setRegister: to take an NSXMLDocument
* Source/DebuggerWindowController.m:
([DebuggerWindowController setRegister:]): Instead of changing a property and letting KVO do the work (and subsequently and randomly crash), force the controller to have new content

17 years agoCasting to remove a warning
Robert Sesek [Sun, 5 Aug 2007 20:20:34 +0000 (13:20 -0700)]
Casting to remove a warning

* Source/DebuggerConnection.m:
([DebuggerConnection propertyRecieved:]): Casting parent to be an NSXMLElement because childAtIndex returns an NSXMLNode

17 years agoMaking the buttons change their enabled state depending on where we are in debugging
Robert Sesek [Sun, 5 Aug 2007 19:55:34 +0000 (12:55 -0700)]
Making the buttons change their enabled state depending on where we are in debugging

* Source/DebuggerWindowController.m:
([DebuggerWindowController setStatus:]): Disable all the buttons and reenable "step in" and "run" if we're connected
([DebuggerWindowController setStack:]): Enable the step in/out/over and run buttons appropriately

17 years agoHooking up the step in/out/over and run buttons to the nib
Robert Sesek [Sun, 5 Aug 2007 19:32:52 +0000 (12:32 -0700)]
Hooking up the step in/out/over and run buttons to the nib

* Source/DebuggerWindowController.h: Making outlets for all of the buttons
* English.lproj/Debugger.nib: Hooking up the outlets to the interface

17 years agoAdding a method to check and see if the connection we have is valid
Robert Sesek [Sun, 5 Aug 2007 19:29:02 +0000 (12:29 -0700)]
Adding a method to check and see if the connection we have is valid

* Source/DebuggerConnection.m|h:
([DebuggerConnection isConnected]): New method

17 years agoAdding an Apple radar number for where we have to use _NSArrayControllerTreeNode
Robert Sesek [Sun, 5 Aug 2007 08:32:07 +0000 (01:32 -0700)]
Adding an Apple radar number for where we have to use _NSArrayControllerTreeNode

* Source/DebuggerWindowController.m:
([DebuggerWindowController outlineViewItemDidExpand:])
([DebuggerWindowController addChildren:toNode:])

17 years agoCommenting out the data received NSLog()
Robert Sesek [Sun, 5 Aug 2007 08:12:18 +0000 (01:12 -0700)]
Commenting out the data received NSLog()

* Source/SocketWrapper.m:
([SocketWrapper receive:])

17 years agoThe depth fetching of child nodes now works and are properly inserted into the regist...
Robert Sesek [Sun, 5 Aug 2007 08:06:15 +0000 (01:06 -0700)]
The depth fetching of child nodes now works and are properly inserted into the register tree

* Source/DebuggerConnection.h: Changing _depthFetchElement to type id for the mysterious _NSArrayControllerTreeNode type
* Source/DebuggerConnection.m:
([DebuggerConnection propertyReceived:]): Get all the children from the property and then detach them so they can be injected into the tree
* Source/DebuggerWindowController.h: Added a _registerController outlet
* Source/DebuggerWindowController.m:
([DebuggerWindowController addChildren:toNode:]): New method that adds detached children to the specified _NSArrayControllerTreeNod using it's index set
([DebuggerWindowController outlineViewItemDidExpand:]): Change from using an NSXMLElement to the internal TreeNode
* English.lproj/Debugger.nib: Hook up the RegisterController to the outlet

17 years agoFixing a compiler error for a missing variable
Robert Sesek [Sun, 5 Aug 2007 07:25:22 +0000 (00:25 -0700)]
Fixing a compiler error for a missing variable

* Source/DebuggerConnection.m:
([DebuggerConnection getProperty:forElement:]): We were still referencing a depth variable when we removed it

17 years agoWe now get the property when we go past the currently-fetched depth but we do not...
Robert Sesek [Sun, 5 Aug 2007 07:24:05 +0000 (00:24 -0700)]
We now get the property when we go past the currently-fetched depth but we do not have the display updating yet

* Source/DebuggerConnection.h: New ivar _depthFetchElement to record the element that requested more registers
* Source/DebuggerConnection.m:
([DebuggerConnection dataReceived:deliverTo:]): Removed an NSLog()
([DebuggerConnection getProperty:forElement:]): New method that gets a specified property for a specific element
([DebuggerConnection propertyReceived:]): Recived data delivery handler for getProperty:forElement:
* Source/DebuggerWindowController.m:
([DebuggerWindowController outlineViewItemDidExpand:]): Call the getProperty:forElement: method to get deeper properties
* English.lproj/Debugger.nib: Set the delegate of the NSOutlineView to be the first responder

17 years agoMoving the depth checker from NSXMLElementAdditions.m to be in DebuggerWindowController
Robert Sesek [Sun, 5 Aug 2007 06:46:07 +0000 (23:46 -0700)]
Moving the depth checker from NSXMLElementAdditions.m to be in DebuggerWindowController

* Source/NSXMLElementAdditions.m:
([NSXMLElement isLeaf]): Moved the checking to see if we need to fetch more
* Source/NSXMLElementAdditions.h: New header file for linking
* Source/DebuggerWindowController.m:
([DebuggerWindowController outlineViewItemDidExpand:]): New method that handles the depth checking
* MacGDBp.xcodeproj: Project changes for NSXMLElementAdditions.h

17 years agoAdding support for base64 encoded string values
Robert Sesek [Sun, 5 Aug 2007 05:49:09 +0000 (22:49 -0700)]
Adding support for base64 encoded string values

* Source/base64.c|h: New file from external source
* Source/NSXMLElementAdditions.m:
([NSXMLElement value]): Decode data using the new base64 functions
* MacGDBp.xcodeproj: Adding the base64.c|h files to the project

17 years agoMerge branch 'master' into register-feature
Robert Sesek [Sun, 5 Aug 2007 03:23:03 +0000 (20:23 -0700)]
Merge branch 'master' into register-feature

Conflicts:

MacGDBp.xcodeproj/project.pbxproj