7 Commits

Author SHA1 Message Date
Nathan Kinsinger 53d92fb73e Cleanup the views when the repository window closes and stop memory leaks.
- make sure to remove themselves from KV and notification center observers
    - add the PBWebHistoryController to PBHistoryController so it can be told to close
    - replaced the -removeView methods with -closeView (-removeView was not being used)
    - clear any obj-c objects set in web scripting objects

This last item seems to be the reason that the web controllers and the current commit did not get collected which then held the repository document from being collected as well.
2010-07-04 09:46:22 -06:00
Pieter de Bie e570c3e50a Use structs for graph lines
We used to use NSObjects, which was really expensive, because for each commit
as many as 100 graphlines can be created. By preallocating them and not
using NSObjects in general, we gain a massive speedup
2008-11-24 22:54:04 +01:00
Pieter de Bie 49a708b446 PBGraphCellInfo: Remove stray data members 2008-10-21 15:44:57 +02:00
Pieter de Bie 78e45bd22c Add support for --left-right
This draws rectangles instead of circles when someone supplies
--left-right as a GitX argument
2008-09-12 20:29:09 +02:00
Pieter de Bie b4d7816be7 Grapher: draw ref names
This simply draws the ref names in the cell, without any markup or correct
rect.
2008-08-28 18:07:34 +02:00
Pieter de Bie 9bfccb5ea5 Grapher: add first part of displaying refs
This adds the "hasRef" boolean member in PBGitCellInfo which is set to true
if the specific commit has symbolic refs.

This is the first part in supporting labels just like gitk has. For now,
commits with refs are just displayed with a red circle.

Things that need to be done to support all refs:

	* Make the NSDictionary in PBGitRepository contain arrays of refs,
	  not a single string
	* Make PBGitGrapher store all refs of a commit in the PBGitCellInfo
	* Figure out a nice way to display the labels in PBGitRevisionCell
2008-08-28 17:29:34 +02:00
Pieter de Bie bbeedd10ce Rewrite the graphing code
This uses more Cocoa classes to draw the lines, making it easier to
understand and hopefully maintain.

Furthermore, we use less memory now, which is nice, but all the
dynamic arrays probably mean more CPU usage.
2008-08-27 21:51:42 +02:00