mirror of https://github.com/icedream/icecon.git
Add ability to remove all bookmarks
parent
90c3a72f1d
commit
71554ddc4e
|
@ -45,6 +45,7 @@ var (
|
||||||
type bookmark struct {
|
type bookmark struct {
|
||||||
Address string `json:"address"`
|
Address string `json:"address"`
|
||||||
Password string `json:"password"`
|
Password string `json:"password"`
|
||||||
|
Action *walk.Action `json:"-"`
|
||||||
}
|
}
|
||||||
|
|
||||||
func init() {
|
func init() {
|
||||||
|
@ -232,8 +233,10 @@ func runGraphicalUi() (err error) {
|
||||||
bookmarksMenu, _ = walk.NewMenu()
|
bookmarksMenu, _ = walk.NewMenu()
|
||||||
|
|
||||||
// Add for every bookmark a menu action
|
// Add for every bookmark a menu action
|
||||||
for _, bookmark := range bookmarks {
|
for i, bookmark := range bookmarks {
|
||||||
item := createBookmarkItem(bookmark.Address)
|
item := createBookmarkItem(bookmark.Address)
|
||||||
|
|
||||||
|
bookmarks[i].Action = item
|
||||||
bookmarksMenu.Actions().Add(item)
|
bookmarksMenu.Actions().Add(item)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -252,16 +255,35 @@ func runGraphicalUi() (err error) {
|
||||||
|
|
||||||
// Add bookmark if not empty addr
|
// Add bookmark if not empty addr
|
||||||
if result && len(addr) > 0 {
|
if result && len(addr) > 0 {
|
||||||
bookmarks = append(bookmarks, bookmark{addr, pw})
|
|
||||||
item := createBookmarkItem(addr)
|
item := createBookmarkItem(addr)
|
||||||
|
bookmarks = append(bookmarks, bookmark{addr, pw, item})
|
||||||
|
|
||||||
// Add before "add bookmark" action
|
// Add before "add bookmark" action
|
||||||
bookmarksMenu.Actions().Insert((bookmarksMenu.Actions().Len() - 1), item)
|
bookmarksMenu.Actions().Insert((bookmarksMenu.Actions().Len() - 2), item)
|
||||||
|
|
||||||
// Save bookmarks to file
|
// Save bookmarks to file
|
||||||
saveBookmarks()
|
saveBookmarks()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
removeBookmarksAction := walk.NewAction()
|
||||||
|
if err = removeBookmarksAction.SetText("Remove all"); err != nil {
|
||||||
|
return
|
||||||
|
}
|
||||||
|
removeBookmarksAction.Triggered().Attach(func() {
|
||||||
|
for _, bookmark := range bookmarks {
|
||||||
|
bookmarksMenu.Actions().Remove(bookmark.Action)
|
||||||
|
}
|
||||||
|
|
||||||
|
// Clear bookmarks in memory
|
||||||
|
bookmarks = bookmarks[:0]
|
||||||
|
|
||||||
|
// Update in file
|
||||||
|
saveBookmarks()
|
||||||
|
})
|
||||||
|
|
||||||
bookmarksMenu.Actions().Add(addBookmarkAction)
|
bookmarksMenu.Actions().Add(addBookmarkAction)
|
||||||
|
bookmarksMenu.Actions().Add(removeBookmarksAction)
|
||||||
|
|
||||||
// Bookmarks menu
|
// Bookmarks menu
|
||||||
bookmarksAction, _ := dlg.Menu().Actions().AddMenu(bookmarksMenu)
|
bookmarksAction, _ := dlg.Menu().Actions().AddMenu(bookmarksMenu)
|
||||||
|
|
Loading…
Reference in New Issue