macgdbp.git
15 years agoCenter the version check window (when it pops up) and the main window 1.0
Robert Sesek [Tue, 17 Jun 2008 13:27:21 +0000 (09:27 -0400)]
Center the version check window (when it pops up) and the main window

* Source/AppDelegate.m:
(versionCheck:)
* Source/DebuggerWindowController.m:
(awakeFromNib)

15 years agoHave the help menu go to our website instead of saying no help avaliable
Robert Sesek [Tue, 17 Jun 2008 13:21:40 +0000 (09:21 -0400)]
Have the help menu go to our website instead of saying no help avaliable

* Source/AppDelegate.m+h:
(openHelpPage:): New method
* English.lproj/MainMenu.xib: Change the IBA for the help action

15 years agoAdding a *real* version checking system
Robert Sesek [Mon, 16 Jun 2008 23:51:40 +0000 (19:51 -0400)]
Adding a *real* version checking system

* English.lproj/MainMenu.xib: Adding the version update window
* Source/AppDelegate.h: Adding IBOs for the updater window and the update information string
* Source/AppDelegate.m:
(init): Run the version check method
(versionCheck:): New method
(openUpdateInformation:): New method

15 years agoThis is going to be v1.0
Robert Sesek [Thu, 12 Jun 2008 16:24:07 +0000 (12:24 -0400)]
This is going to be v1.0

* Info.plist

15 years agoAfter we establish a connection, we need to resend any offline breakpoints
Robert Sesek [Thu, 12 Jun 2008 16:20:08 +0000 (12:20 -0400)]
After we establish a connection, we need to resend any offline breakpoints

* Source/DebuggerConnection.m:
(socketDidAccept:)

15 years agoProtect against array out of bounds exceptions when removing breakpoints
Robert Sesek [Thu, 12 Jun 2008 16:19:30 +0000 (12:19 -0400)]
Protect against array out of bounds exceptions when removing breakpoints

* Source/BreakpointWindowController.m:
(removeBreakpoint:): If there are no selected objects in the NS-AC, don't try to remove breakpoints

15 years agoChange the font size of the breakpoint NS-TV to be size 11
Robert Sesek [Thu, 12 Jun 2008 15:36:45 +0000 (11:36 -0400)]
Change the font size of the breakpoint NS-TV to be size 11

* English.lproj/Breakpoints.xib

15 years agoThe breakpoint manager now works -- breakpoints can be set from the main debugger...
Robert Sesek [Thu, 12 Jun 2008 15:31:53 +0000 (11:31 -0400)]
The breakpoint manager now works -- breakpoints can be set from the main debugger or the manager

* English.lproj/Breakpoints.xib: Set the NSTableView's delegate to be File's Owner and disconnect the content IBO to the NS-AC
* Source/BreakpointManager.m:
(updateDisplaysForfile:): New private method
(addBreakpoint:): Call [updateDisplaysForfile:]
(removeBreakpointAt:inFile:): ditto
* BreakpointWindowController.m+h: Add props and synth them for sourceView and arrayController ivars
(removeBreakpoint:): Fill out method stub
(tableViewSelectionDidChange:): Implement delegate method
* DebuggerWindowController.m+h: Add prop/synth for sourceViewer ivar

15 years agoFixing a bug where if the register depth was too deep, more properties would not...
Robert Sesek [Thu, 12 Jun 2008 13:51:57 +0000 (09:51 -0400)]
Fixing a bug where if the register depth was too deep, more properties would not be fetched/inserted correctly

* Source/AppDelegate.m+h: Add and synthesize props for debugger and breakpoint ivars
* Source/DebuggerConnection.m+h:
(getProperty:forNode:): Renamed [getProperty:] and now return an NSArray rather than attaching to a node
* Source/DebuggerWindowController.m+h:
(addChildren:toNode:): Removed
(outlineViewItemDidExpand:): Don't have to do extra fetch work here because it will now be done in the model
* Source/NSXMLElementAdditions.m+h:
(subnodes): New method that does the same thing as [children] but intelligently fetches more depth
* English.lproj/Debugger.xib: Tell the regiser NSTreeController to use [subnodes] instead of [children]

15 years agoAnother instance where [BSLineNumberView setMarkers:] takes a set and not an NSArray
Robert Sesek [Wed, 11 Jun 2008 20:56:29 +0000 (16:56 -0400)]
Another instance where [BSLineNumberView setMarkers:] takes a set and not an NSArray

* Source/BreakpointWindowController.m:
(gutterClickedAtLine:forFile:)

15 years agoTrying to use mutableChildNodes and appending mock-NSTreeNode objects
Robert Sesek [Wed, 11 Jun 2008 19:33:40 +0000 (15:33 -0400)]
Trying to use mutableChildNodes and appending mock-NSTreeNode objects

15 years agoIndex path by appending IP with a counter
Robert Sesek [Wed, 11 Jun 2008 17:57:22 +0000 (13:57 -0400)]
Index path by appending IP with a counter

15 years agoIndex path by appending 0 to the IP
Robert Sesek [Wed, 11 Jun 2008 17:55:44 +0000 (13:55 -0400)]
Index path by appending 0 to the IP

15 years ago[BSLineNumberView setMarkers:] takes an NSSet and not an NSArray
Robert Sesek [Wed, 11 Jun 2008 14:30:04 +0000 (10:30 -0400)]
[BSLineNumberView setMarkers:] takes an NSSet and not an NSArray

* Source/DebuggerWindowController.m:
(gutterClickedAtLine:forFile:): Create an NSSet from the NSArray

15 years agoSet the "Automatically Rearranges Content" and "Prepares Content" flags on the Breakp...
Robert Sesek [Wed, 11 Jun 2008 14:26:54 +0000 (10:26 -0400)]
Set the "Automatically Rearranges Content" and "Prepares Content" flags on the Breakpoints.xib NSArrayController

* English.lproj/Breakpoints.xib

15 years agoIn DebuggerConnection, we need to protect against setting breakpoints with no active...
Robert Sesek [Wed, 11 Jun 2008 14:11:17 +0000 (10:11 -0400)]
In DebuggerConnection, we need to protect against setting breakpoints with no active connection

* Source/DebuggerConnection.m:
(addBreakpoint:)
(removeBreakpoint:)

15 years agoSet the BSSourceView's delegate in Breakpoints.xib
Robert Sesek [Wed, 11 Jun 2008 13:51:36 +0000 (09:51 -0400)]
Set the BSSourceView's delegate in Breakpoints.xib

* English.lproj/Breakpoints.xib

15 years agoHave the BreakpointManager tell the DebuggerConnection about breakpoints, rather...
Robert Sesek [Wed, 11 Jun 2008 13:46:12 +0000 (09:46 -0400)]
Have the BreakpointManager tell the DebuggerConnection about breakpoints, rather than controllers

* Source/BreakpointManager.m:
(addBreakpoint:)
(removeBreakpointAt:inFile:)
* Source/DebuggerWindowController.m:
(gutterClickedAtLine:forFile:)

15 years agoAuto-hide the scrollbars in BSSourceView
Robert Sesek [Tue, 10 Jun 2008 18:33:58 +0000 (14:33 -0400)]
Auto-hide the scrollbars in BSSourceView

* Source/BSSourceView.m:
(setupViews)

15 years agoAutomatically hide scrollbars on the NSTableView of breakpoints
Robert Sesek [Tue, 10 Jun 2008 18:26:24 +0000 (14:26 -0400)]
Automatically hide scrollbars on the NSTableView of breakpoints

* English.lproj/Breakpoints.xib

15 years agoSet the BreakpointManager's connection to the DebuggerConnection instance
Robert Sesek [Tue, 10 Jun 2008 18:21:05 +0000 (14:21 -0400)]
Set the BreakpointManager's connection to the DebuggerConnection instance

* Source/DebuggerConnection.m:
(initWithWindowController:port:session): Set the connection to be self

15 years agoAdd a prop for DebuggerConnection and change the breakpoints ivar to a prop
Robert Sesek [Tue, 10 Jun 2008 18:04:59 +0000 (14:04 -0400)]
Add a prop for DebuggerConnection and change the breakpoints ivar to a prop

* Source/BreakpointManager.m+h

15 years agoHooking up the BSSourceView outlet and implement delegates
Robert Sesek [Tue, 10 Jun 2008 17:59:53 +0000 (13:59 -0400)]
Hooking up the BSSourceView outlet and implement delegates

* English.lproj/Breakpoints.xib: Hook up outlet
* Source/BreakpointWindowController.h: Add the ivar
* Source/BreakpointWindowController.m:
(addBreakpoint:): Show the NSOpenPanel to select a file
(gutterClickedAtLine:forFile:): New method

15 years agoHooking up a NSArrayController to manage the breakpoints
Robert Sesek [Tue, 10 Jun 2008 16:35:14 +0000 (12:35 -0400)]
Hooking up a NSArrayController to manage the breakpoints

* English.lproj/Breakpoints.xib
* Source/BreakpointWindowController.h: Add an ivar for the NSAC

15 years agoAdding IBAs to Breakpoints.xib and the BWC
Robert Sesek [Tue, 10 Jun 2008 16:11:21 +0000 (12:11 -0400)]
Adding IBAs to Breakpoints.xib and the BWC

* English.lproj/Breakpoints.xib: Adding actions for the +/- buttons
* Source/BreakpointWindowController.m+h: Adding the code complements for the IBAs

15 years agoRewrite BreakpointManager to use NSArray instead a faux hashtable using a NSDictionary
Robert Sesek [Tue, 10 Jun 2008 15:58:11 +0000 (11:58 -0400)]
Rewrite BreakpointManager to use NSArray instead a faux hashtable using a NSDictionary

* Source/Breakpoint.m+h

15 years agoAdd an ivar for the BreakpointManager in the BreakpointWindowController
Robert Sesek [Tue, 10 Jun 2008 15:30:11 +0000 (11:30 -0400)]
Add an ivar for the BreakpointManager in the BreakpointWindowController

* Source/BreakpointWindowController.h: Add the ivar manager
* Source/BreakpointWindowController.m:
(init:): Set the ivar to the sharedManager

15 years agoFixing some UI quirks in the breakpoints window
Robert Sesek [Mon, 9 Jun 2008 20:40:30 +0000 (16:40 -0400)]
Fixing some UI quirks in the breakpoints window

* English.lproj/Breakpoints.xib

15 years agoFinishing hooking up the XIB
Robert Sesek [Mon, 9 Jun 2008 20:35:40 +0000 (16:35 -0400)]
Finishing hooking up the XIB

* English.lproj/Breakpoints.xib: Set File's Owner to be BreakpointWindowController and set the window IBO
* Source/BreakpointWindowController.m:
(init): Adding a comment

15 years agoWe need an instance of BreakpointWindowController in AppDelegate
Robert Sesek [Mon, 9 Jun 2008 19:55:03 +0000 (15:55 -0400)]
We need an instance of BreakpointWindowController in AppDelegate

* Source/AppDelegate.m:
(applicationDidFinishLaunching:): Init BreakpointWindowController to breakpoints
* Source/BreakpointWindowController.m:
(init): Add an init method

15 years agoAdding a breakpoints NSWindowController for Breakpoints.xib
Robert Sesek [Mon, 9 Jun 2008 19:51:01 +0000 (15:51 -0400)]
Adding a breakpoints NSWindowController for Breakpoints.xib

* Source/BreakpointWindowController.m+h: New files
* MacGDBp.xcodeproj: Project updates for BreakpointWindowController
* Source/AppDelegate.m+h:
(showBreakpointWindow:): New method
* English.lproj/MainMenu.xib: Add a

15 years agoAdding Breakpoints.xib for the breakpoints manager
Robert Sesek [Mon, 9 Jun 2008 19:43:39 +0000 (15:43 -0400)]
Adding Breakpoints.xib for the breakpoints manager

* English.lproj/Breakpoints.xib: New file
* MacGDBp.xcodeproj: Project updates for the new XIB

15 years agoWe aren't going to store breakpoints in NSUserDefaults
Robert Sesek [Fri, 6 Jun 2008 18:22:34 +0000 (14:22 -0400)]
We aren't going to store breakpoints in NSUserDefaults

* Source/BreakpointManager.m:
(init): Removed the NSUserDefaults loading
(addBreakpoint:): Don't add it to NSUserDefaults
(removeBreakpoint:): ditto

15 years agoAdding NSDictionary archiving and unarchiving abilities to Breakpoint
Robert Sesek [Fri, 6 Jun 2008 18:08:02 +0000 (14:08 -0400)]
Adding NSDictionary archiving and unarchiving abilities to Breakpoint

* Source/Breakpoint.m+h:
(initWithDictionary:): New method
(dictionary): New method

15 years agoReorganizing the project source files into groups
Robert Sesek [Fri, 6 Jun 2008 17:58:17 +0000 (13:58 -0400)]
Reorganizing the project source files into groups

* MacGDBp.xcodeproj

15 years agoWhen calling -[SocketWrapper remoteHost], we don't want to continually query the...
Robert Sesek [Thu, 5 Jun 2008 01:39:16 +0000 (21:39 -0400)]
When calling -[SocketWrapper remoteHost], we don't want to continually query the hostname

* Source/SocketWrapper.h: Adding a hostname ivar
* Source/SocketWrapper.m:
(remoteHost): Just return the hostname ivar
(connect:): Query the hostname and store it in the hostname ivar

15 years agoSending the "run" command was balanced with a receive command
Robert Sesek [Thu, 5 Jun 2008 01:29:54 +0000 (21:29 -0400)]
Sending the "run" command was balanced with a receive command

* Source/DebuggerConnection.m:
(run): Message the socket to -[receive]

15 years agoComment out the saving of breakpoints to NSUserDefaults because it's generating a...
Robert Sesek [Thu, 5 Jun 2008 01:28:10 +0000 (21:28 -0400)]
Comment out the saving of breakpoints to NSUserDefaults because it's generating a lot of noise

* Source/BreakpointManager:
(addBreakpoint:)
(removeBreakpointAt:inFile:)

15 years agoMake the stack text be the same size as the register text
Robert Sesek [Wed, 4 Jun 2008 20:15:51 +0000 (16:15 -0400)]
Make the stack text be the same size as the register text

* English.lproj/Debugger.xib

15 years agoWe don't want the NULL byte at the end of the NSString when we call -receive:
Robert Sesek [Wed, 4 Jun 2008 19:27:42 +0000 (15:27 -0400)]
We don't want the NULL byte at the end of the NSString when we call -receive:

* Source/SocketWrapper.m:
([receive]): Substring to the last byte

15 years agoInstead of using NSData for [SocketWrapper receive], use NSString
Robert Sesek [Wed, 4 Jun 2008 19:18:52 +0000 (15:18 -0400)]
Instead of using NSData for [SocketWrapper receive], use NSString

* Source/DebuggerConnection.m:
([processData:]): Use NSString instead of NSData
* Source/SocketWrapper.m+h:
([receive]): Return an NSString

15 years agoPutting GC back on because we really need it
Robert Sesek [Wed, 4 Jun 2008 16:17:32 +0000 (12:17 -0400)]
Putting GC back on because we really need it

15 years agoForgot to turn off GC in debug mode
Robert Sesek [Wed, 4 Jun 2008 15:16:22 +0000 (11:16 -0400)]
Forgot to turn off GC in debug mode

* MacGDBp.xcodeproj

15 years agoAdd better error checking for malformed XML
Robert Sesek [Wed, 28 May 2008 20:27:14 +0000 (16:27 -0400)]
Add better error checking for malformed XML

* Source/DebuggerConnection.m:
(-[processData:]): If there's an XML error, print a LOT of info about it

15 years agoTrying to add some bounds checking so we don't get unhandled exceptions
Robert Sesek [Wed, 28 May 2008 18:29:14 +0000 (14:29 -0400)]
Trying to add some bounds checking so we don't get unhandled exceptions

* Source/DebuggerConnection.m:
(-[processData:]): Try to catch malformed data
* Source/DebuggerWindowController.m:
(-[updateSourceViewer]): Don't proceed if there is no stack

15 years agoDon't try to load empty files (like when we're in eval())
Robert Sesek [Wed, 28 May 2008 16:19:42 +0000 (12:19 -0400)]
Don't try to load empty files (like when we're in eval())

* Source/DebuggerWindowController.m:
(-[updateSourceViewer]): If the filename is empty, abort the data refresh

16 years agoMaking a reference to the debugger in the Window menu
Robert Sesek [Wed, 23 Apr 2008 19:47:16 +0000 (15:47 -0400)]
Making a reference to the debugger in the Window menu

* English.lproj/MainMenu.xib: Add a Window->Debugger item
* Source/AppDelegate.m/h: Add a debugger ivar to hold the DebuggerWindowController
([showDebuggerWindow:]): New method to bring the debugger window to the front
* Source/DebuggerWindowContrller.m:
([awakeFromNib]): Exclude the window from the dynamic Window menu

16 years agoRemoving the connect dialog
Robert Sesek [Wed, 23 Apr 2008 19:12:05 +0000 (15:12 -0400)]
Removing the connect dialog

* English.lproj/Connect.xib: Removed
* English.lproj/MainMenu.xib: Removing the "Connection" menu and adding a "File" menu
* Source/AppDelegate.m/h:
([showConnectWindow:]): Removed
* Source/ConnectWindowController.m/h: Removed
* MacGDBp.xcodeproj: Project updates for removed files

16 years agoAdd an initial breakpoints manager window and save the breakpoints to NSUserDefaults
Robert Sesek [Thu, 17 Apr 2008 16:48:11 +0000 (12:48 -0400)]
Add an initial breakpoints manager window and save the breakpoints to NSUserDefaults

16 years agoMerge branch 'breakpoints'
Robert Sesek [Wed, 2 Apr 2008 21:50:41 +0000 (17:50 -0400)]
Merge branch 'breakpoints'

16 years agoWhen clicking a breakpoint that exists, tell the connection to remove it
Robert Sesek [Wed, 2 Apr 2008 21:34:22 +0000 (17:34 -0400)]
When clicking a breakpoint that exists, tell the connection to remove it

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

16 years agoReturn the breakpoint when removing in BreakpointManager
Robert Sesek [Wed, 2 Apr 2008 21:32:47 +0000 (17:32 -0400)]
Return the breakpoint when removing in BreakpointManager

* Source/BreakpointManager.m/h:
([BreakpointManager removeBreakpointAt:inFile:]): Return the breakpoint that was removed

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 agoAdd an application icon
Robert Sesek [Sat, 29 Mar 2008 03:02:36 +0000 (23:02 -0400)]
Add an application icon

* Icons/MacGDBp.icns: New icon file
* Info.plist: Add a reference to the icon file
* MacGDBp.xcodeproj: Project updates for the icon file
* Resource Masters/App Icon.psd: New file
* Resource Masters/Globe.ai: New file
* Resource Masters/Toolbar Buttons.psd: Moved from root folder

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