Documentation
¶
Index ¶
- type CollapsedPaths
- type CommitFileNode
- func (s *CommitFileNode) Any(test func(node *CommitFileNode) bool) bool
- func (s *CommitFileNode) AnyFile(test func(file *models.CommitFile) bool) bool
- func (s *CommitFileNode) Compress()
- func (s *CommitFileNode) Description() string
- func (s *CommitFileNode) Every(test func(node *CommitFileNode) bool) bool
- func (s *CommitFileNode) EveryFile(test func(file *models.CommitFile) bool) bool
- func (n *CommitFileNode) Flatten(collapsedPaths *CollapsedPaths) []*CommitFileNode
- func (s *CommitFileNode) ForEachFile(cb func(*models.CommitFile) error) error
- func (s *CommitFileNode) GetChildren() []INode
- func (s *CommitFileNode) GetCompressionLevel() int
- func (node *CommitFileNode) GetIndexForPath(path string, collapsedPaths *CollapsedPaths) (int, bool)
- func (s *CommitFileNode) GetLeaves() []*CommitFileNode
- func (node *CommitFileNode) GetNodeAtIndex(index int, collapsedPaths *CollapsedPaths) *CommitFileNode
- func (s *CommitFileNode) GetPath() string
- func (s *CommitFileNode) ID() string
- func (s *CommitFileNode) IsLeaf() bool
- func (s *CommitFileNode) IsNil() bool
- func (s *CommitFileNode) NameAtDepth(depth int) string
- func (s *CommitFileNode) SetChildren(children []INode)
- func (s *CommitFileNode) SetCompressionLevel(level int)
- func (node *CommitFileNode) Size(collapsedPaths *CollapsedPaths) int
- func (s *CommitFileNode) Sort()
- type CommitFileTree
- func (self *CommitFileTree) CollapsedPaths() *CollapsedPaths
- func (self *CommitFileTree) ExpandToPath(path string)
- func (self *CommitFileTree) Get(index int) *CommitFileNode
- func (self *CommitFileTree) GetAllFiles() []*models.CommitFile
- func (self *CommitFileTree) GetAllItems() []*CommitFileNode
- func (self *CommitFileTree) GetFile(path string) *models.CommitFile
- func (self *CommitFileTree) GetIndexForPath(path string) (int, bool)
- func (self *CommitFileTree) InTreeMode() bool
- func (self *CommitFileTree) IsCollapsed(path string) bool
- func (self *CommitFileTree) Len() int
- func (self *CommitFileTree) SetTree()
- func (self *CommitFileTree) ToggleCollapsed(path string)
- func (self *CommitFileTree) ToggleShowTree()
- func (self *CommitFileTree) Tree() INode
- type CommitFileTreeViewModel
- func (self *CommitFileTreeViewModel) GetCanRebase() bool
- func (self *CommitFileTreeViewModel) GetRef() types.Ref
- func (self *CommitFileTreeViewModel) GetSelected() *CommitFileNode
- func (self *CommitFileTreeViewModel) GetSelectedFile() *models.CommitFile
- func (self *CommitFileTreeViewModel) GetSelectedPath() string
- func (self *CommitFileTreeViewModel) SetCanRebase(canRebase bool)
- func (self *CommitFileTreeViewModel) SetRef(ref types.Ref)
- func (self *CommitFileTreeViewModel) ToggleShowTree()
- type FileNode
- func (s *FileNode) Any(test func(node *FileNode) bool) bool
- func (s *FileNode) AnyFile(test func(file *models.File) bool) bool
- func (s *FileNode) Compress()
- func (s *FileNode) Description() string
- func (n *FileNode) Flatten(collapsedPaths *CollapsedPaths) []*FileNode
- func (s *FileNode) ForEachFile(cb func(*models.File) error) error
- func (s *FileNode) GetChildren() []INode
- func (s *FileNode) GetCompressionLevel() int
- func (node *FileNode) GetFilePathsMatching(test func(*models.File) bool) []string
- func (s *FileNode) GetHasInlineMergeConflicts() bool
- func (s *FileNode) GetHasStagedChanges() bool
- func (s *FileNode) GetHasUnstagedChanges() bool
- func (node *FileNode) GetIndexForPath(path string, collapsedPaths *CollapsedPaths) (int, bool)
- func (s *FileNode) GetIsTracked() bool
- func (s *FileNode) GetLeaves() []*FileNode
- func (node *FileNode) GetNodeAtIndex(index int, collapsedPaths *CollapsedPaths) *FileNode
- func (s *FileNode) GetPath() string
- func (s *FileNode) GetPreviousPath() string
- func (s *FileNode) ID() string
- func (s *FileNode) IsLeaf() bool
- func (s *FileNode) IsNil() bool
- func (s *FileNode) NameAtDepth(depth int) string
- func (s *FileNode) SetChildren(children []INode)
- func (s *FileNode) SetCompressionLevel(level int)
- func (node *FileNode) Size(collapsedPaths *CollapsedPaths) int
- func (s *FileNode) Sort()
- type FileTree
- func (self *FileTree) CollapsedPaths() *CollapsedPaths
- func (self *FileTree) ExpandToPath(path string)
- func (self *FileTree) FilterFiles(test func(*models.File) bool) []*models.File
- func (self *FileTree) Get(index int) *FileNode
- func (self *FileTree) GetAllFiles() []*models.File
- func (self *FileTree) GetAllItems() []*FileNode
- func (self *FileTree) GetFile(path string) *models.File
- func (self *FileTree) GetFilter() FileTreeDisplayFilter
- func (self *FileTree) GetIndexForPath(path string) (int, bool)
- func (self *FileTree) InTreeMode() bool
- func (self *FileTree) IsCollapsed(path string) bool
- func (self *FileTree) Len() int
- func (self *FileTree) SetFilter(filter FileTreeDisplayFilter)
- func (self *FileTree) SetTree()
- func (self *FileTree) ToggleCollapsed(path string)
- func (self *FileTree) ToggleShowTree()
- func (self *FileTree) Tree() INode
- type FileTreeDisplayFilter
- type FileTreeViewModel
- func (self *FileTreeViewModel) GetSelected() *FileNode
- func (self *FileTreeViewModel) GetSelectedFile() *models.File
- func (self *FileTreeViewModel) GetSelectedPath() string
- func (self *FileTreeViewModel) SetFilter(filter FileTreeDisplayFilter)
- func (self *FileTreeViewModel) SetTree()
- func (self *FileTreeViewModel) ToggleShowTree()
- type ICommitFileTree
- type ICommitFileTreeViewModel
- type IFileTree
- type IFileTreeViewModel
- type INode
- type ITree
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CollapsedPaths ¶
type CollapsedPaths struct {
// contains filtered or unexported fields
}
func NewCollapsedPaths ¶ added in v0.35.0
func NewCollapsedPaths() *CollapsedPaths
func (*CollapsedPaths) Collapse ¶ added in v0.35.0
func (self *CollapsedPaths) Collapse(path string)
func (*CollapsedPaths) ExpandToPath ¶
func (self *CollapsedPaths) ExpandToPath(path string)
func (*CollapsedPaths) IsCollapsed ¶
func (self *CollapsedPaths) IsCollapsed(path string) bool
func (*CollapsedPaths) ToggleCollapsed ¶
func (self *CollapsedPaths) ToggleCollapsed(path string)
type CommitFileNode ¶
type CommitFileNode struct { Children []*CommitFileNode File *models.CommitFile Path string // e.g. '/path/to/mydir' CompressionLevel int // equal to the number of forward slashes you'll see in the path when it's rendered in tree mode }
func BuildFlatTreeFromCommitFiles ¶
func BuildFlatTreeFromCommitFiles(files []*models.CommitFile) *CommitFileNode
func BuildTreeFromCommitFiles ¶
func BuildTreeFromCommitFiles(files []*models.CommitFile) *CommitFileNode
func (*CommitFileNode) Any ¶
func (s *CommitFileNode) Any(test func(node *CommitFileNode) bool) bool
func (*CommitFileNode) AnyFile ¶
func (s *CommitFileNode) AnyFile(test func(file *models.CommitFile) bool) bool
func (*CommitFileNode) Compress ¶
func (s *CommitFileNode) Compress()
func (*CommitFileNode) Description ¶
func (s *CommitFileNode) Description() string
func (*CommitFileNode) Every ¶
func (s *CommitFileNode) Every(test func(node *CommitFileNode) bool) bool
func (*CommitFileNode) EveryFile ¶
func (s *CommitFileNode) EveryFile(test func(file *models.CommitFile) bool) bool
func (*CommitFileNode) Flatten ¶
func (n *CommitFileNode) Flatten(collapsedPaths *CollapsedPaths) []*CommitFileNode
func (*CommitFileNode) ForEachFile ¶
func (s *CommitFileNode) ForEachFile(cb func(*models.CommitFile) error) error
func (*CommitFileNode) GetChildren ¶
func (s *CommitFileNode) GetChildren() []INode
func (*CommitFileNode) GetCompressionLevel ¶
func (s *CommitFileNode) GetCompressionLevel() int
func (*CommitFileNode) GetIndexForPath ¶
func (node *CommitFileNode) GetIndexForPath(path string, collapsedPaths *CollapsedPaths) (int, bool)
func (*CommitFileNode) GetLeaves ¶
func (s *CommitFileNode) GetLeaves() []*CommitFileNode
func (*CommitFileNode) GetNodeAtIndex ¶
func (node *CommitFileNode) GetNodeAtIndex(index int, collapsedPaths *CollapsedPaths) *CommitFileNode
func (*CommitFileNode) GetPath ¶
func (s *CommitFileNode) GetPath() string
func (*CommitFileNode) ID ¶
func (s *CommitFileNode) ID() string
func (*CommitFileNode) IsLeaf ¶
func (s *CommitFileNode) IsLeaf() bool
func (*CommitFileNode) IsNil ¶ added in v0.35.0
func (s *CommitFileNode) IsNil() bool
func (*CommitFileNode) NameAtDepth ¶
func (s *CommitFileNode) NameAtDepth(depth int) string
func (*CommitFileNode) SetChildren ¶
func (s *CommitFileNode) SetChildren(children []INode)
func (*CommitFileNode) SetCompressionLevel ¶
func (s *CommitFileNode) SetCompressionLevel(level int)
func (*CommitFileNode) Size ¶
func (node *CommitFileNode) Size(collapsedPaths *CollapsedPaths) int
func (*CommitFileNode) Sort ¶
func (s *CommitFileNode) Sort()
type CommitFileTree ¶ added in v0.35.0
type CommitFileTree struct {
// contains filtered or unexported fields
}
func NewCommitFileTree ¶ added in v0.35.0
func NewCommitFileTree(getFiles func() []*models.CommitFile, log *logrus.Entry, showTree bool) *CommitFileTree
func (*CommitFileTree) CollapsedPaths ¶ added in v0.35.0
func (self *CommitFileTree) CollapsedPaths() *CollapsedPaths
func (*CommitFileTree) ExpandToPath ¶ added in v0.35.0
func (self *CommitFileTree) ExpandToPath(path string)
func (*CommitFileTree) Get ¶ added in v0.35.0
func (self *CommitFileTree) Get(index int) *CommitFileNode
func (*CommitFileTree) GetAllFiles ¶ added in v0.35.0
func (self *CommitFileTree) GetAllFiles() []*models.CommitFile
func (*CommitFileTree) GetAllItems ¶ added in v0.35.0
func (self *CommitFileTree) GetAllItems() []*CommitFileNode
func (*CommitFileTree) GetFile ¶ added in v0.35.0
func (self *CommitFileTree) GetFile(path string) *models.CommitFile
func (*CommitFileTree) GetIndexForPath ¶ added in v0.35.0
func (self *CommitFileTree) GetIndexForPath(path string) (int, bool)
func (*CommitFileTree) InTreeMode ¶ added in v0.35.0
func (self *CommitFileTree) InTreeMode() bool
func (*CommitFileTree) IsCollapsed ¶ added in v0.35.0
func (self *CommitFileTree) IsCollapsed(path string) bool
func (*CommitFileTree) Len ¶ added in v0.35.0
func (self *CommitFileTree) Len() int
func (*CommitFileTree) SetTree ¶ added in v0.35.0
func (self *CommitFileTree) SetTree()
func (*CommitFileTree) ToggleCollapsed ¶ added in v0.35.0
func (self *CommitFileTree) ToggleCollapsed(path string)
func (*CommitFileTree) ToggleShowTree ¶ added in v0.35.0
func (self *CommitFileTree) ToggleShowTree()
func (*CommitFileTree) Tree ¶ added in v0.35.0
func (self *CommitFileTree) Tree() INode
type CommitFileTreeViewModel ¶ added in v0.35.0
type CommitFileTreeViewModel struct { sync.RWMutex ICommitFileTree types.IListCursor // contains filtered or unexported fields }
func NewCommitFileTreeViewModel ¶ added in v0.35.0
func NewCommitFileTreeViewModel(getFiles func() []*models.CommitFile, log *logrus.Entry, showTree bool) *CommitFileTreeViewModel
func (*CommitFileTreeViewModel) GetCanRebase ¶ added in v0.35.0
func (self *CommitFileTreeViewModel) GetCanRebase() bool
func (*CommitFileTreeViewModel) GetRef ¶ added in v0.35.0
func (self *CommitFileTreeViewModel) GetRef() types.Ref
func (*CommitFileTreeViewModel) GetSelected ¶ added in v0.35.0
func (self *CommitFileTreeViewModel) GetSelected() *CommitFileNode
func (*CommitFileTreeViewModel) GetSelectedFile ¶ added in v0.35.0
func (self *CommitFileTreeViewModel) GetSelectedFile() *models.CommitFile
func (*CommitFileTreeViewModel) GetSelectedPath ¶ added in v0.35.0
func (self *CommitFileTreeViewModel) GetSelectedPath() string
func (*CommitFileTreeViewModel) SetCanRebase ¶ added in v0.35.0
func (self *CommitFileTreeViewModel) SetCanRebase(canRebase bool)
func (*CommitFileTreeViewModel) SetRef ¶ added in v0.35.0
func (self *CommitFileTreeViewModel) SetRef(ref types.Ref)
func (*CommitFileTreeViewModel) ToggleShowTree ¶ added in v0.35.0
func (self *CommitFileTreeViewModel) ToggleShowTree()
duplicated from file_tree_view_model.go. Generics will help here
type FileNode ¶
type FileNode struct { Children []*FileNode File *models.File Path string // e.g. '/path/to/mydir' CompressionLevel int // equal to the number of forward slashes you'll see in the path when it's rendered in tree mode }
func BuildFlatTreeFromFiles ¶
func BuildTreeFromFiles ¶
func (*FileNode) Description ¶
func (*FileNode) Flatten ¶
func (n *FileNode) Flatten(collapsedPaths *CollapsedPaths) []*FileNode
func (*FileNode) GetChildren ¶
func (*FileNode) GetCompressionLevel ¶
func (*FileNode) GetFilePathsMatching ¶ added in v0.35.0
func (*FileNode) GetHasInlineMergeConflicts ¶
func (*FileNode) GetHasStagedChanges ¶
func (*FileNode) GetHasUnstagedChanges ¶
func (*FileNode) GetIndexForPath ¶
func (node *FileNode) GetIndexForPath(path string, collapsedPaths *CollapsedPaths) (int, bool)
func (*FileNode) GetIsTracked ¶
func (*FileNode) GetNodeAtIndex ¶
func (node *FileNode) GetNodeAtIndex(index int, collapsedPaths *CollapsedPaths) *FileNode
func (*FileNode) GetPreviousPath ¶ added in v0.35.0
func (*FileNode) IsNil ¶ added in v0.35.0
interfaces values whose concrete value is nil are not themselves nil hence the existence of this method
func (*FileNode) NameAtDepth ¶
func (*FileNode) SetChildren ¶
func (*FileNode) SetCompressionLevel ¶
func (*FileNode) Size ¶
func (node *FileNode) Size(collapsedPaths *CollapsedPaths) int
type FileTree ¶ added in v0.35.0
type FileTree struct {
// contains filtered or unexported fields
}
func NewFileTree ¶ added in v0.35.0
func (*FileTree) CollapsedPaths ¶ added in v0.35.0
func (self *FileTree) CollapsedPaths() *CollapsedPaths
func (*FileTree) ExpandToPath ¶ added in v0.35.0
func (*FileTree) FilterFiles ¶ added in v0.35.0
func (*FileTree) GetAllFiles ¶ added in v0.35.0
func (*FileTree) GetAllItems ¶ added in v0.35.0
note: this gets all items when the filter is taken into consideration. There may be hidden files that aren't included here. Files off the screen however will be included
func (*FileTree) GetFilter ¶ added in v0.35.0
func (self *FileTree) GetFilter() FileTreeDisplayFilter
func (*FileTree) GetIndexForPath ¶ added in v0.35.0
func (*FileTree) InTreeMode ¶ added in v0.35.0
func (*FileTree) IsCollapsed ¶ added in v0.35.0
func (*FileTree) SetFilter ¶ added in v0.35.0
func (self *FileTree) SetFilter(filter FileTreeDisplayFilter)
func (*FileTree) ToggleCollapsed ¶ added in v0.35.0
func (*FileTree) ToggleShowTree ¶ added in v0.35.0
func (self *FileTree) ToggleShowTree()
type FileTreeDisplayFilter ¶ added in v0.35.0
type FileTreeDisplayFilter int
const ( DisplayAll FileTreeDisplayFilter = iota DisplayStaged DisplayUnstaged // this shows files with merge conflicts DisplayConflicted )
type FileTreeViewModel ¶ added in v0.35.0
type FileTreeViewModel struct { sync.RWMutex IFileTree types.IListCursor }
This combines our FileTree struct with a cursor that retains information about which item is selected. It also contains logic for repositioning that cursor after the files are refreshed
func NewFileTreeViewModel ¶ added in v0.35.0
func (*FileTreeViewModel) GetSelected ¶ added in v0.35.0
func (self *FileTreeViewModel) GetSelected() *FileNode
func (*FileTreeViewModel) GetSelectedFile ¶ added in v0.35.0
func (self *FileTreeViewModel) GetSelectedFile() *models.File
func (*FileTreeViewModel) GetSelectedPath ¶ added in v0.35.0
func (self *FileTreeViewModel) GetSelectedPath() string
func (*FileTreeViewModel) SetFilter ¶ added in v0.35.0
func (self *FileTreeViewModel) SetFilter(filter FileTreeDisplayFilter)
func (*FileTreeViewModel) SetTree ¶ added in v0.35.0
func (self *FileTreeViewModel) SetTree()
func (*FileTreeViewModel) ToggleShowTree ¶ added in v0.35.0
func (self *FileTreeViewModel) ToggleShowTree()
If we're going from flat to tree we want to select the same file. If we're going from tree to flat and we have a file selected we want to select that. If instead we've selected a directory we need to select the first file in that directory.
type ICommitFileTree ¶ added in v0.35.0
type ICommitFileTree interface { ITree Get(index int) *CommitFileNode GetFile(path string) *models.CommitFile GetAllItems() []*CommitFileNode GetAllFiles() []*models.CommitFile }
type ICommitFileTreeViewModel ¶ added in v0.35.0
type ICommitFileTreeViewModel interface { ICommitFileTree types.IListCursor GetRef() types.Ref SetRef(types.Ref) GetCanRebase() bool SetCanRebase(bool) }
type IFileTreeViewModel ¶ added in v0.35.0
type IFileTreeViewModel interface { IFileTree types.IListCursor }