mirror of
https://github.com/Hopiu/micro.git
synced 2026-05-03 20:34:43 +00:00
parent
bf6e596808
commit
966dac97f8
2 changed files with 8 additions and 8 deletions
|
|
@ -1008,7 +1008,7 @@ func (v *View) OpenFile(usePlugin bool) bool {
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
|
|
||||||
if v.CanClose("Continue? (y,n,s) ", 'y', 'n', 's') {
|
if v.CanClose() {
|
||||||
filename, canceled := messenger.Prompt("File to open: ", "Open", FileCompletion)
|
filename, canceled := messenger.Prompt("File to open: ", "Open", FileCompletion)
|
||||||
if canceled {
|
if canceled {
|
||||||
return false
|
return false
|
||||||
|
|
@ -1308,7 +1308,7 @@ func (v *View) Quit(usePlugin bool) bool {
|
||||||
}
|
}
|
||||||
|
|
||||||
// Make sure not to quit if there are unsaved changes
|
// Make sure not to quit if there are unsaved changes
|
||||||
if v.CanClose("Quit anyway? (y,n,s) ", 'y', 'n', 's') {
|
if v.CanClose() {
|
||||||
v.CloseBuffer()
|
v.CloseBuffer()
|
||||||
if len(tabs[curTab].views) > 1 {
|
if len(tabs[curTab].views) > 1 {
|
||||||
v.splitNode.Delete()
|
v.splitNode.Delete()
|
||||||
|
|
@ -1354,7 +1354,7 @@ func (v *View) QuitAll(usePlugin bool) bool {
|
||||||
closeAll := true
|
closeAll := true
|
||||||
for _, tab := range tabs {
|
for _, tab := range tabs {
|
||||||
for _, v := range tab.views {
|
for _, v := range tab.views {
|
||||||
if !v.CanClose("Quit anyway? (y,n,s) ", 'y', 'n', 's') {
|
if !v.CanClose() {
|
||||||
closeAll = false
|
closeAll = false
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -183,15 +183,15 @@ func (v *View) ScrollDown(n int) {
|
||||||
// If there are unsaved changes, the user will be asked if the view can be closed
|
// If there are unsaved changes, the user will be asked if the view can be closed
|
||||||
// causing them to lose the unsaved changes
|
// causing them to lose the unsaved changes
|
||||||
// The message is what to print after saying "You have unsaved changes. "
|
// The message is what to print after saying "You have unsaved changes. "
|
||||||
func (v *View) CanClose(msg string, responses ...rune) bool {
|
func (v *View) CanClose() bool {
|
||||||
if v.Buf.IsModified {
|
if v.Buf.IsModified {
|
||||||
char, canceled := messenger.LetterPrompt("You have unsaved changes. "+msg, responses...)
|
char, canceled := messenger.LetterPrompt("Save changes to "+v.Buf.Name+" before closing? (y,n,esc) ", 'y', 'n')
|
||||||
if !canceled {
|
if !canceled {
|
||||||
if char == 'y' {
|
if char == 'y' {
|
||||||
return true
|
|
||||||
} else if char == 's' {
|
|
||||||
v.Save(true)
|
v.Save(true)
|
||||||
return true
|
return true
|
||||||
|
} else if char == 'n' {
|
||||||
|
return true
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
|
|
@ -231,7 +231,7 @@ func (v *View) CloseBuffer() {
|
||||||
|
|
||||||
// ReOpen reloads the current buffer
|
// ReOpen reloads the current buffer
|
||||||
func (v *View) ReOpen() {
|
func (v *View) ReOpen() {
|
||||||
if v.CanClose("Continue? (y,n,s) ", 'y', 'n', 's') {
|
if v.CanClose() {
|
||||||
screen.Clear()
|
screen.Clear()
|
||||||
v.Buf.ReOpen()
|
v.Buf.ReOpen()
|
||||||
v.Relocate()
|
v.Relocate()
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue