Commit Graph

19 Commits

Author SHA1 Message Date
Nathan Kinsinger 4a8c524692 Add branch view filters to history scope bar
- filters for All, Local/Remote, and the selected branch
        - "Local" includes both branches and tags
        - "Remote" includes all branches from the same remote as the selected remote branch (i.e. not other remotes)

Changes to make the above work:
    - add a history list class between the repository and rev list
        - store a project rev list with all the commits from the project
        - use the project rev list to graph the history for individual branches when there have been no changes
        - use a different rev list to show non-simple revs (history of a file, revs from the gitx tool)
        - update the commits in chunks to a mutable array so the table view's array controller has less work to do
        - only update the project rev list from git when actually necessary
    - don't add the All Branches and Local Branches revs to the branches array
    - some changes related to forcing the project's rev list to update when changes are made
    - some changes related to not causing updates too often
    - store the selected filter in user defaults
    - when the graphing is done select the commit for the branch
2010-03-13 22:16:44 -07:00
Nathan Kinsinger 1323638791 Add/modify convenience methods in PBRevSpecifier
- NSCopying
    - change isEqualTo: to isEqual: so that it works well with NSArray's (containsObject: and removeObject: will use isEqual: instead of pointer equality)
    - add hash to go with isEqual:
    - pre-calculate the isSimpleRef value. The rangeOf... methods are very slow and have a major effect on the tight loop in reloadRefs.
2010-03-13 22:16:34 -07:00
Nathan Kinsinger 6427fd90fc Reopen the stage view if that was the last view open 2010-03-13 22:16:02 -07:00
Nathan Kinsinger 1b41171d92 Add a bottom content border/toolbar to the repository window
- add an action menu for the selected ref in the source view
    - add Add Remote, Fetch, Pull and Push buttons to the bottom bar
        - Add Remote icon by Nathan Kinsinger
        - Fetch, Pull and Push icons are modified versions of André Berg's icons (from 4396081c07) made a bit smaller to fit in the UI better.
    - move the status message for both the history view and the commit/stage view
        - all PBViewControllers now have status and isBusy properties and can use those to put a message in the bottom bar when they are the active content controller of the window
2010-03-13 22:15:13 -07:00
Nathan Kinsinger 2321ec8c47 Add and delete refs from the source list view
Observe the branches array and update the sidebar when refs are added or deleted.

Sort new items based on the title.
2010-03-13 22:15:06 -07:00
Nathan Kinsinger 90f80f01b4 Add a new cell class for the source view items
The new cell handles:
    - showing contextual menus
    - drawing a badge for the checked out branch

Needed to add the reference to the ref controller to the history controller.
2010-03-13 22:14:49 -07:00
Nathan Kinsinger b1e632cf6f Move the sidebar to the window controller
Remove the sidebar from the history controller and put it under the control of the window controller.
    - the window controller is the delegate of the split view and controls resizing so the source list stays the same width as the window resizes
    - the sidebar controller tells the window controller which content view to show
    - removed the view selector from the toolbars of the history and commit xibs (the menu and keyboard shortcuts command-1 and command-2 still switch between the views)
    - added horizontal lines to the history and commit xibs to delineate the bottom toolbar area
2010-03-13 22:13:12 -07:00
Nathan Kinsinger c36726b985 Update the GUI to be more iApp like
- In PBGitSidebarView.xib
        - change indentation to 12
        - change font size to 11
        - disable the editable behavior
        - disable autoresizing
        - disable user resizing (column should resize with view)
        - remove the window
        - remove the shared user defaults controller (not being used)
    - add a project item with the project's name
    - a "Stage" item to go to what has been called the commit view
    - new icons for branches, remote branches and tags (created by Nathan Kinsinger)
    - remove the old tiff icons, PBSourceViewRemote.h/m and PBSourceViewAction.h/m from the xcode project
    - uses system icon for folder
    - uses Network icon for remotes
    - capitalize group names
    - rename the Custom group to Other (you can't really customize items in the traditional sense)
    - create a class for each item type that takes care of it's image (instead of trying to guess the image from it or it's parent's name)
    - remove the branch menu toolbar item from the history view, it's redundant now
2010-03-13 22:13:06 -07:00
Nathan Kinsinger 4ea04358ba replace depreciated selectRow:byExtendingSelection: method 2010-03-13 22:12:33 -07:00
Pieter de Bie 468e6bbb40 Sidebar: add a new ref if it can't be found 2009-09-13 23:10:31 +02:00
Pieter de Bie cd381a459c Sidebar: Check if we have enough path components 2009-09-13 23:05:07 +02:00
Pieter de Bie 1c3ee96e7c Don't show the Actions menu for now 2009-09-13 22:46:22 +02:00
Pieter de Bie 692a79c3ad Sidebar: Add "Commit" action
When this tree leaf is selected, the view switches
to the commit view.
2009-09-10 02:39:51 +02:00
Pieter de Bie c59d68bb3e Sidebar: Handle selection changes 2009-09-10 02:39:14 +02:00
Pieter de Bie 23d5c01a3d Sidebar: hook up branch switching
This is far from perfect, but at least you can
use it to navigate the stuff a bit now :)
2009-09-10 02:32:09 +02:00
Pieter de Bie ca479c79e9 Sidebar: display a custom icon
These are based on a contribution by Vincent Esche,
but we'll probably have to change them a bit.
2009-09-10 02:31:08 +02:00
Pieter de Bie bff93631d5 SideBar: Add branches as children
This makes a nice tree, which should be more
readable than the existing list. The local
branches are expanded by default.
2009-09-10 02:31:08 +02:00
Pieter de Bie 462e90dfc8 Sidebar: populate with branches
This is far from perfect, but should indicate
which direction this is going in
2009-09-10 02:31:03 +02:00
Pieter de Bie c8cfe7acaa Add start of a sourceview list
This shows in a separate window for now, so we don't
mess up the xibs. Once I'm satisfied with the result,
I can put it into the main view with a single change :)
2009-09-10 01:25:49 +02:00