1
0
mirror of https://github.com/jesseduffield/lazygit.git synced 2025-06-17 00:18:05 +02:00

use generics to DRY up context code

This commit is contained in:
Jesse Duffield
2022-03-19 09:31:52 +11:00
parent 4b56d428ff
commit d93fef4c61
31 changed files with 117 additions and 364 deletions

View File

@ -61,16 +61,16 @@ func (self *CommitFileTreeViewModel) SetCanRebase(canRebase bool) {
self.canRebase = canRebase
}
func (self *CommitFileTreeViewModel) GetSelectedFileNode() *CommitFileNode {
if self.GetItemsLength() == 0 {
func (self *CommitFileTreeViewModel) GetSelected() *CommitFileNode {
if self.Len() == 0 {
return nil
}
return self.GetItemAtIndex(self.GetSelectedLineIdx())
return self.Get(self.GetSelectedLineIdx())
}
func (self *CommitFileTreeViewModel) GetSelectedFile() *models.CommitFile {
node := self.GetSelectedFileNode()
node := self.GetSelected()
if node == nil {
return nil
}
@ -79,7 +79,7 @@ func (self *CommitFileTreeViewModel) GetSelectedFile() *models.CommitFile {
}
func (self *CommitFileTreeViewModel) GetSelectedPath() string {
node := self.GetSelectedFileNode()
node := self.GetSelected()
if node == nil {
return ""
}
@ -89,7 +89,7 @@ func (self *CommitFileTreeViewModel) GetSelectedPath() string {
// duplicated from file_tree_view_model.go. Generics will help here
func (self *CommitFileTreeViewModel) ToggleShowTree() {
selectedNode := self.GetSelectedFileNode()
selectedNode := self.GetSelected()
self.ICommitFileTree.ToggleShowTree()