Documentation ¶
Index ¶
- Constants
- Variables
- func AccountNames() []string
- func AddDialog(d ui.DrawableInteractive)
- func CloseBackends() error
- func CloseDialog()
- func CmdFallbackSearch(cmds []string, silent bool) (string, error)
- func Command(args []string) error
- func CryptoProvider() crypto.Provider
- func DecryptKeys(keys []openpgp.Key, symmetric bool) (b []byte, err error)
- func Drawable() ui.DrawableInteractive
- func GetTab(i int) *ui.Tab
- func HandleMessage(msg types.WorkerMessage)
- func HumanReadableBindings() []string
- func IPCHandler() ipc.Handler
- func Init(crypto crypto.Provider, ...)
- func MoveTab(i int, relative bool)
- func NewBackgroundTab(clickable ui.Drawable, name string) *ui.Tab
- func NewConfigStep(intro string, interactive *[]ui.Interactive) configStep
- func NewDialog(d ui.DrawableInteractive, x func(int) int, y func(int) int, w func(int) int, ...) *dialog
- func NewTab(clickable ui.Drawable, name string) *ui.Tab
- func NextTab()
- func PinTab()
- func PrevTab()
- func PushPrompt(prompt *ExLine)
- func RegisterChoices(choices []Choice)
- func RegisterPrompt(prompt string, cmd string)
- func RemoveTab(tab ui.Drawable, closeContent bool)
- func ReplaceTab(tabSrc ui.Drawable, tabTarget ui.Drawable, name string, closeSrc bool)
- func SelectPreviousTab() bool
- func SelectTab(name string) bool
- func SelectTabAtOffset(offset int)
- func SelectTabIndex(index int) bool
- func SelectedAccountUiConfig() *config.UIConfig
- func SelectedTab() *ui.Tab
- func SelectedTabContent() ui.Drawable
- func SetError(text string)
- func TabNames() []string
- func ToggleQuake()
- func UnpinTab()
- func UpdateStatus()
- type AccountView
- func (acct *AccountView) AccountConfig() *config.AccountConfig
- func (acct *AccountView) CheckMail()
- func (acct *AccountView) CheckMailReset()
- func (acct *AccountView) CheckMailTimer(d time.Duration)
- func (acct *AccountView) Configure()
- func (acct *AccountView) Directories() DirectoryLister
- func (acct *AccountView) Draw(ctx *ui.Context)
- func (acct *AccountView) Focus(focus bool)
- func (acct *AccountView) GetSortCriteria() []*types.SortCriterion
- func (acct *AccountView) Invalidate()
- func (acct *AccountView) Labels() []string
- func (acct *AccountView) MarkedMessages() ([]models.UID, error)
- func (acct *AccountView) Messages() *MessageList
- func (acct *AccountView) MouseEvent(localX int, localY int, event vaxis.Event)
- func (acct *AccountView) Name() string
- func (acct *AccountView) PushError(err error)
- func (acct *AccountView) PushStatus(status string, expiry time.Duration)
- func (acct *AccountView) PushWarning(warning string)
- func (acct *AccountView) Select()
- func (acct *AccountView) SelectedAccount() *AccountView
- func (acct *AccountView) SelectedDirectory() string
- func (acct *AccountView) SelectedMessage() (*models.MessageInfo, error)
- func (acct *AccountView) SelectedMessagePart() *PartInfo
- func (acct *AccountView) SetDirectories(d DirectoryLister)
- func (acct *AccountView) SetSplitSize(n int)
- func (acct *AccountView) SetStatus(setters ...state.SetStateFunc)
- func (acct *AccountView) SortCriteria(uiConf *config.UIConfig) []*types.SortCriterion
- func (acct *AccountView) Split(n int)
- func (acct *AccountView) SplitSize() int
- func (acct *AccountView) Store() *lib.MessageStore
- func (acct *AccountView) Terminal() *Terminal
- func (acct *AccountView) UiConfig() *config.UIConfig
- func (acct *AccountView) UpdateStatus()
- func (acct *AccountView) Vsplit(n int)
- func (acct *AccountView) Worker() *types.Worker
- type AccountWizard
- type Aerc
- func (aerc *Aerc) Account(name string) (*AccountView, error)
- func (aerc *Aerc) AccountNames() []string
- func (aerc *Aerc) AddDialog(d ui.DrawableInteractive)
- func (aerc *Aerc) Beep()
- func (aerc *Aerc) BeginExCommand(cmd string)
- func (aerc *Aerc) CloseBackends() error
- func (aerc *Aerc) CloseDialog()
- func (aerc *Aerc) Command(args []string) error
- func (aerc *Aerc) DecryptKeys(keys []openpgp.Key, symmetric bool) (b []byte, err error)
- func (aerc *Aerc) Draw(ctx *ui.Context)
- func (aerc *Aerc) Event(event vaxis.Event) bool
- func (aerc *Aerc) Focus(focus bool)
- func (aerc *Aerc) GetPassword(title string, prompt string) (chText chan string, chErr chan error)
- func (aerc *Aerc) HandleMessage(msg types.WorkerMessage)
- func (aerc *Aerc) HumanReadableBindings() []string
- func (aerc *Aerc) Init(crypto crypto.Provider, ...)
- func (aerc *Aerc) Invalidate()
- func (aerc *Aerc) MoveTab(i int, relative bool)
- func (aerc *Aerc) NewTab(clickable ui.Drawable, name string, background bool) *ui.Tab
- func (aerc *Aerc) NextAccount() (*AccountView, error)
- func (aerc *Aerc) NextTab()
- func (aerc *Aerc) OnBeep(f func())
- func (aerc *Aerc) PinTab()
- func (aerc *Aerc) PrevAccount() (*AccountView, error)
- func (aerc *Aerc) PrevTab()
- func (aerc *Aerc) PushError(text string) *StatusMessage
- func (aerc *Aerc) PushPrompt(prompt *ExLine)
- func (aerc *Aerc) PushStatus(text string, expiry time.Duration) *StatusMessage
- func (aerc *Aerc) PushSuccess(text string) *StatusMessage
- func (aerc *Aerc) PushWarning(text string) *StatusMessage
- func (aerc *Aerc) RegisterChoices(choices []Choice)
- func (aerc *Aerc) RegisterPrompt(prompt string, cmd string)
- func (aerc *Aerc) RemoveTab(tab ui.Drawable, closeContent bool)
- func (aerc *Aerc) ReplaceTab(tabSrc ui.Drawable, tabTarget ui.Drawable, name string, closeSrc bool)
- func (aerc *Aerc) SelectPreviousTab() bool
- func (aerc *Aerc) SelectTab(name string) bool
- func (aerc *Aerc) SelectTabAtOffset(offset int)
- func (aerc *Aerc) SelectTabIndex(index int) bool
- func (aerc *Aerc) SelectedAccount() *AccountView
- func (aerc *Aerc) SelectedAccountUiConfig() *config.UIConfig
- func (aerc *Aerc) SelectedTab() *ui.Tab
- func (aerc *Aerc) SelectedTabContent() ui.Drawable
- func (aerc *Aerc) SetError(err string)
- func (aerc *Aerc) TabNames() []string
- func (aerc *Aerc) UnpinTab()
- func (aerc *Aerc) UpdateStatus()
- type AlignPosition
- type AuthInfo
- type Choice
- type Composer
- func (c *Composer) Account() *AccountView
- func (c *Composer) AddAttachment(path string)
- func (c *Composer) AddEditor(header string, value string, appendHeader bool) error
- func (c *Composer) AddPartAttachment(name string, mimetype string, params map[string]string, body io.Reader) error
- func (c *Composer) AppendPart(mimetype string, params map[string]string, body io.Reader) error
- func (c *Composer) Archive() string
- func (c *Composer) AttachKey() bool
- func (c *Composer) Bindings() string
- func (c *Composer) CheckForMultipartErrors() error
- func (c *Composer) Close()
- func (c *Composer) Config() *config.AccountConfig
- func (c *Composer) DelEditor(header string) error
- func (c *Composer) DeleteAttachment(name string) error
- func (c *Composer) Draw(ctx *ui.Context)
- func (c *Composer) Encrypt() bool
- func (c *Composer) Event(event vaxis.Event) bool
- func (c *Composer) Focus(focus bool)
- func (c *Composer) FocusEditor(editor string)
- func (c *Composer) FocusTerminal() *Composer
- func (c *Composer) GetAttachments() []string
- func (c *Composer) GetBody() (*bytes.Buffer, error)
- func (c *Composer) Invalidate()
- func (c *Composer) MouseEvent(localX int, localY int, event vaxis.Event)
- func (c *Composer) NextField()
- func (c *Composer) OnClose(fn func(composer *Composer))
- func (c *Composer) OnFocusLost(header string, fn func(input string) bool)
- func (c *Composer) OnHeaderChange(header string, fn func(subject string))
- func (c *Composer) Parent() *models.OriginalMail
- func (c *Composer) Postponed() bool
- func (c *Composer) PrepareHeader() (*mail.Header, error)
- func (c *Composer) PrevField()
- func (c *Composer) RecalledFrom() string
- func (c *Composer) RemovePart(mimetype string) error
- func (c *Composer) SelectedDirectory() string
- func (c *Composer) Sent() bool
- func (c *Composer) SetAttachKey(attach bool) error
- func (c *Composer) SetEncrypt(encrypt bool) *Composer
- func (c *Composer) SetPostponed()
- func (c *Composer) SetRecalledFrom(folder string)
- func (c *Composer) SetSent(archive string)
- func (c *Composer) SetSign(sign bool) error
- func (c *Composer) ShouldWarnAttachment() bool
- func (c *Composer) ShouldWarnSubject() bool
- func (c *Composer) Show(visible bool)
- func (c *Composer) ShowTerminal(editHeaders bool) error
- func (c *Composer) Sign() bool
- func (c *Composer) Signer() (string, error)
- func (c *Composer) SwitchAccount(newAcct *AccountView) error
- func (c *Composer) Terminal() *Terminal
- func (c *Composer) Worker() *types.Worker
- func (c *Composer) WriteMessage(header *mail.Header, writer io.Writer) error
- type Dialog
- type DirectoryList
- func (dirlist *DirectoryList) ClearList()
- func (dirlist *DirectoryList) Clicked(x int, y int) (string, bool)
- func (dirlist *DirectoryList) CollapseFolder(string)
- func (dirlist *DirectoryList) Directory(name string) *models.Directory
- func (dirlist *DirectoryList) Draw(ctx *ui.Context)
- func (dirlist *DirectoryList) ExpandFolder(string)
- func (dirlist *DirectoryList) FilterDirs(orig, filters []string, exclude bool) []string
- func (dirlist *DirectoryList) GetRUECount(name string) (int, int, int)
- func (dirlist *DirectoryList) Invalidate()
- func (dirlist *DirectoryList) List() []string
- func (dirlist *DirectoryList) MouseEvent(localX int, localY int, event vaxis.Event)
- func (dirlist *DirectoryList) MsgStore(name string) (*lib.MessageStore, bool)
- func (dirlist *DirectoryList) NewContext()
- func (dirlist *DirectoryList) Next()
- func (dirlist *DirectoryList) NextPrev(delta int)
- func (dirlist *DirectoryList) OnVirtualNode(_ func())
- func (dirlist *DirectoryList) Open(name string, query string, delay time.Duration, cb func(types.WorkerMessage), ...)
- func (dirlist *DirectoryList) Prev()
- func (dirlist *DirectoryList) Previous() string
- func (dirlist *DirectoryList) Select(name string)
- func (dirlist *DirectoryList) Selected() string
- func (dirlist *DirectoryList) SelectedDirectory() *models.Directory
- func (dirlist *DirectoryList) SelectedMsgStore() (*lib.MessageStore, bool)
- func (dirlist *DirectoryList) SetMsgStore(dir *models.Directory, msgStore *lib.MessageStore)
- func (dirlist *DirectoryList) UiConfig(dir string) *config.UIConfig
- func (dirlist *DirectoryList) Update(msg types.WorkerMessage)
- type DirectoryLister
- type DirectoryTree
- func (dt *DirectoryTree) ClearList()
- func (dt *DirectoryTree) Clicked(x int, y int) (string, bool)
- func (dt *DirectoryTree) CollapseFolder(name string)
- func (dt *DirectoryTree) Draw(ctx *ui.Context)
- func (dt *DirectoryTree) ExpandFolder(name string)
- func (dt *DirectoryTree) MouseEvent(localX int, localY int, event vaxis.Event)
- func (dt *DirectoryTree) NextPrev(delta int)
- func (dt *DirectoryTree) OnVirtualNode(cb func())
- func (dt *DirectoryTree) Open(name string, query string, delay time.Duration, cb func(types.WorkerMessage), ...)
- func (dt *DirectoryTree) Select(name string)
- func (dt *DirectoryTree) Selected() string
- func (dt *DirectoryTree) SelectedDirectory() *models.Directory
- func (dt *DirectoryTree) SelectedMsgStore() (*lib.MessageStore, bool)
- func (dt *DirectoryTree) Update(msg types.WorkerMessage)
- type EmptyInteractive
- type ExLine
- type GetPasswd
- type HasTerminal
- type HeaderLayout
- type HeaderLayoutFilter
- type HeaderView
- type ListBox
- type MessageList
- func (ml *MessageList) AlignMessage(pos AlignPosition)
- func (ml *MessageList) Clicked(x, y int) (int, bool)
- func (ml *MessageList) Draw(ctx *ui.Context)
- func (ml *MessageList) Empty() bool
- func (ml *MessageList) Height() int
- func (ml *MessageList) Invalidate()
- func (ml *MessageList) MouseEvent(localX int, localY int, event vaxis.Event)
- func (ml *MessageList) Select(index int)
- func (ml *MessageList) Selected() *models.MessageInfo
- func (ml *MessageList) SetInitDone()
- func (ml *MessageList) SetStore(store *lib.MessageStore)
- func (ml *MessageList) Store() *lib.MessageStore
- func (ml *MessageList) Width() int
- type MessageViewer
- func (mv *MessageViewer) AttachmentParts(all bool) []*PartInfo
- func (mv *MessageViewer) Bindings() string
- func (mv *MessageViewer) Close()
- func (mv *MessageViewer) Draw(ctx *ui.Context)
- func (mv *MessageViewer) Event(event vaxis.Event) bool
- func (mv *MessageViewer) Focus(focus bool)
- func (mv *MessageViewer) Invalidate()
- func (mv *MessageViewer) MarkedMessages() ([]models.UID, error)
- func (mv *MessageViewer) MessageView() lib.MessageView
- func (mv *MessageViewer) MouseEvent(localX int, localY int, event vaxis.Event)
- func (mv *MessageViewer) NextPart()
- func (mv *MessageViewer) PreviousPart()
- func (mv *MessageViewer) SelectedAccount() *AccountView
- func (mv *MessageViewer) SelectedMessage() (*models.MessageInfo, error)
- func (mv *MessageViewer) SelectedMessagePart() *PartInfo
- func (mv *MessageViewer) Show(visible bool)
- func (mv *MessageViewer) Store() *lib.MessageStore
- func (mv *MessageViewer) Terminal() *Terminal
- func (mv *MessageViewer) ToggleHeaders()
- func (mv *MessageViewer) ToggleKeyPassthrough() bool
- type PGPInfo
- type PartInfo
- type PartSwitcher
- func (ps *PartSwitcher) AttachmentParts(all bool) []*PartInfo
- func (ps *PartSwitcher) Cleanup()
- func (ps *PartSwitcher) Draw(ctx *ui.Context)
- func (ps *PartSwitcher) Event(event vaxis.Event) bool
- func (ps *PartSwitcher) Focus(focus bool)
- func (ps *PartSwitcher) Invalidate()
- func (ps *PartSwitcher) MouseEvent(localX int, localY int, event vaxis.Event)
- func (ps *PartSwitcher) NextPart()
- func (ps *PartSwitcher) PreviousPart()
- func (ps *PartSwitcher) SelectedPart() *PartViewer
- func (ps *PartSwitcher) Show(visible bool)
- type PartViewer
- type ProvidesMessage
- type ProvidesMessages
- type Roller
- type Scrollable
- func (s *Scrollable) Align(idx int, pos AlignPosition)
- func (s *Scrollable) EnsureScroll(idx int)
- func (s *Scrollable) NeedScrollbar() bool
- func (s *Scrollable) PercentScrolled() float64
- func (s *Scrollable) PercentVisible() float64
- func (s *Scrollable) Scroll() int
- func (s *Scrollable) ScrollOffset() int
- func (s *Scrollable) SetOffset(offset int)
- func (s *Scrollable) UpdateScroller(height, elems int)
- type Selector
- func (sel *Selector) Chooser(chooser bool) *Selector
- func (sel *Selector) Draw(ctx *ui.Context)
- func (sel *Selector) Event(event vaxis.Event) bool
- func (sel *Selector) Focus(focus bool)
- func (sel *Selector) Invalidate()
- func (sel *Selector) OnChoose(fn func(option string)) *Selector
- func (sel *Selector) OnSelect(fn func(option string)) *Selector
- func (sel *Selector) Select(option string)
- func (sel *Selector) Selected() string
- type SelectorDialog
- func (gp *SelectorDialog) ContextHeight() (func(int) int, func(int) int)
- func (gp *SelectorDialog) ContextWidth() (func(int) int, func(int) int)
- func (gp *SelectorDialog) Draw(ctx *ui.Context)
- func (gp *SelectorDialog) Event(event vaxis.Event) bool
- func (gp *SelectorDialog) Focus(f bool)
- func (gp *SelectorDialog) Invalidate()
- type Spinner
- type StatusLine
- func (status *StatusLine) Clear()
- func (status *StatusLine) Draw(ctx *ui.Context)
- func (status *StatusLine) Expire()
- func (status *StatusLine) Invalidate()
- func (status *StatusLine) Push(text string, expiry time.Duration) *StatusMessage
- func (status *StatusLine) PushError(text string) *StatusMessage
- func (status *StatusLine) PushSuccess(text string) *StatusMessage
- func (status *StatusLine) PushWarning(text string) *StatusMessage
- func (status *StatusLine) SetError(err string)
- func (status *StatusLine) Update(acct *AccountView)
- type StatusMessage
- type Terminal
- func (term *Terminal) Close()
- func (term *Terminal) Destroy()
- func (term *Terminal) Draw(ctx *ui.Context)
- func (term *Terminal) Event(event vaxis.Event) bool
- func (term *Terminal) Focus(focus bool)
- func (t *Terminal) HandleEvent(ev vaxis.Event)
- func (term *Terminal) Invalidate()
- func (term *Terminal) MouseEvent(localX int, localY int, event vaxis.Event)
- func (term *Terminal) Show(visible bool)
- func (term *Terminal) Terminal() *Terminal
Constants ¶
const ( CONFIGURE_BASICS = iota CONFIGURE_SOURCE = iota CONFIGURE_OUTGOING = iota CONFIGURE_COMPLETE = iota )
const ( // protocols IMAP = "IMAP" JMAP = "JMAP" MAILDIR = "Maildir" MAILDIRPP = "Maildir++" NOTMUCH = "notmuch" SMTP = "SMTP" SENDMAIL = "sendmail" // transports SSL_TLS = "SSL/TLS" OAUTH = "SSL/TLS+OAUTHBEARER" XOAUTH = "SSL/TLS+XOAUTH2" STARTTLS = "STARTTLS" INSECURE = "Insecure" )
Variables ¶
var ErrNoOptionSelected = fmt.Errorf("no option selected")
Functions ¶
func AccountNames ¶
func AccountNames() []string
func AddDialog ¶
func AddDialog(d ui.DrawableInteractive)
func CloseBackends ¶
func CloseBackends() error
func CloseDialog ¶
func CloseDialog()
func CmdFallbackSearch ¶
CmdFallbackSearch checks cmds for the first executable availabe in PATH. An error is returned if none are found
func CryptoProvider ¶
func Drawable ¶
func Drawable() ui.DrawableInteractive
func HandleMessage ¶
func HandleMessage(msg types.WorkerMessage)
func HumanReadableBindings ¶
func HumanReadableBindings() []string
func IPCHandler ¶
func NewConfigStep ¶
func NewConfigStep(intro string, interactive *[]ui.Interactive) configStep
func PushPrompt ¶
func PushPrompt(prompt *ExLine)
func RegisterChoices ¶
func RegisterChoices(choices []Choice)
func RegisterPrompt ¶
func ReplaceTab ¶
func SelectPreviousTab ¶
func SelectPreviousTab() bool
func SelectTabAtOffset ¶
func SelectTabAtOffset(offset int)
func SelectTabIndex ¶
func SelectedAccountUiConfig ¶
func SelectedTab ¶
func SelectedTabContent ¶
func ToggleQuake ¶
func ToggleQuake()
func UpdateStatus ¶
func UpdateStatus()
Types ¶
type AccountView ¶
func Account ¶
func Account(name string) (*AccountView, error)
func NewAccountView ¶
func NewAccountView( acct *config.AccountConfig, deferLoop chan struct{}, ) (*AccountView, error)
func NextAccount ¶
func NextAccount() (*AccountView, error)
func PrevAccount ¶
func PrevAccount() (*AccountView, error)
func SelectedAccount ¶
func SelectedAccount() *AccountView
func (*AccountView) AccountConfig ¶
func (acct *AccountView) AccountConfig() *config.AccountConfig
func (*AccountView) CheckMail ¶
func (acct *AccountView) CheckMail()
func (*AccountView) CheckMailReset ¶
func (acct *AccountView) CheckMailReset()
CheckMailReset resets the check-mail timer
func (*AccountView) CheckMailTimer ¶
func (acct *AccountView) CheckMailTimer(d time.Duration)
func (*AccountView) Configure ¶
func (acct *AccountView) Configure()
func (*AccountView) Directories ¶
func (acct *AccountView) Directories() DirectoryLister
func (*AccountView) Draw ¶
func (acct *AccountView) Draw(ctx *ui.Context)
func (*AccountView) Focus ¶
func (acct *AccountView) Focus(focus bool)
func (*AccountView) GetSortCriteria ¶
func (acct *AccountView) GetSortCriteria() []*types.SortCriterion
func (*AccountView) Invalidate ¶
func (acct *AccountView) Invalidate()
func (*AccountView) Labels ¶
func (acct *AccountView) Labels() []string
func (*AccountView) MarkedMessages ¶
func (acct *AccountView) MarkedMessages() ([]models.UID, error)
func (*AccountView) Messages ¶
func (acct *AccountView) Messages() *MessageList
func (*AccountView) MouseEvent ¶
func (acct *AccountView) MouseEvent(localX int, localY int, event vaxis.Event)
func (*AccountView) Name ¶
func (acct *AccountView) Name() string
func (*AccountView) PushError ¶
func (acct *AccountView) PushError(err error)
func (*AccountView) PushStatus ¶
func (acct *AccountView) PushStatus(status string, expiry time.Duration)
func (*AccountView) PushWarning ¶
func (acct *AccountView) PushWarning(warning string)
func (*AccountView) Select ¶
func (acct *AccountView) Select()
func (*AccountView) SelectedAccount ¶
func (acct *AccountView) SelectedAccount() *AccountView
func (*AccountView) SelectedDirectory ¶
func (acct *AccountView) SelectedDirectory() string
func (*AccountView) SelectedMessage ¶
func (acct *AccountView) SelectedMessage() (*models.MessageInfo, error)
func (*AccountView) SelectedMessagePart ¶
func (acct *AccountView) SelectedMessagePart() *PartInfo
func (*AccountView) SetDirectories ¶
func (acct *AccountView) SetDirectories(d DirectoryLister)
func (*AccountView) SetSplitSize ¶
func (acct *AccountView) SetSplitSize(n int)
func (*AccountView) SetStatus ¶
func (acct *AccountView) SetStatus(setters ...state.SetStateFunc)
func (*AccountView) SortCriteria ¶
func (acct *AccountView) SortCriteria(uiConf *config.UIConfig) []*types.SortCriterion
func (*AccountView) Split ¶
func (acct *AccountView) Split(n int)
Split splits the message list view horizontally. The message list will be n rows high. If n is 0, any existing split is removed
func (*AccountView) SplitSize ¶
func (acct *AccountView) SplitSize() int
func (*AccountView) Store ¶
func (acct *AccountView) Store() *lib.MessageStore
func (*AccountView) Terminal ¶
func (acct *AccountView) Terminal() *Terminal
func (*AccountView) UiConfig ¶
func (acct *AccountView) UiConfig() *config.UIConfig
func (*AccountView) UpdateStatus ¶
func (acct *AccountView) UpdateStatus()
func (*AccountView) Vsplit ¶
func (acct *AccountView) Vsplit(n int)
Vsplit splits the message list view vertically. The message list will be n rows wide. If n is 0, any existing split is removed
func (*AccountView) Worker ¶
func (acct *AccountView) Worker() *types.Worker
type AccountWizard ¶
type AccountWizard struct {
// contains filtered or unexported fields
}
func NewAccountWizard ¶
func NewAccountWizard() *AccountWizard
func (*AccountWizard) ConfigureTemporaryAccount ¶
func (wizard *AccountWizard) ConfigureTemporaryAccount(temporary bool)
func (*AccountWizard) Draw ¶
func (wizard *AccountWizard) Draw(ctx *ui.Context)
func (*AccountWizard) Focus ¶
func (wizard *AccountWizard) Focus(focus bool)
func (*AccountWizard) Invalidate ¶
func (wizard *AccountWizard) Invalidate()
type Aerc ¶
func (*Aerc) AccountNames ¶
func (*Aerc) AddDialog ¶
func (aerc *Aerc) AddDialog(d ui.DrawableInteractive)
func (*Aerc) BeginExCommand ¶
func (*Aerc) CloseBackends ¶
func (*Aerc) CloseDialog ¶
func (aerc *Aerc) CloseDialog()
func (*Aerc) DecryptKeys ¶
func (*Aerc) GetPassword ¶
func (*Aerc) HandleMessage ¶
func (aerc *Aerc) HandleMessage(msg types.WorkerMessage)
func (*Aerc) HumanReadableBindings ¶
func (*Aerc) Invalidate ¶
func (aerc *Aerc) Invalidate()
func (*Aerc) NextAccount ¶
func (aerc *Aerc) NextAccount() (*AccountView, error)
func (*Aerc) PrevAccount ¶
func (aerc *Aerc) PrevAccount() (*AccountView, error)
func (*Aerc) PushError ¶
func (aerc *Aerc) PushError(text string) *StatusMessage
func (*Aerc) PushPrompt ¶
func (*Aerc) PushStatus ¶
func (aerc *Aerc) PushStatus(text string, expiry time.Duration) *StatusMessage
func (*Aerc) PushSuccess ¶
func (aerc *Aerc) PushSuccess(text string) *StatusMessage
func (*Aerc) PushWarning ¶
func (aerc *Aerc) PushWarning(text string) *StatusMessage
func (*Aerc) RegisterChoices ¶
func (*Aerc) RegisterPrompt ¶
func (*Aerc) ReplaceTab ¶
func (*Aerc) SelectPreviousTab ¶
func (*Aerc) SelectTabAtOffset ¶
func (*Aerc) SelectTabIndex ¶
func (*Aerc) SelectedAccount ¶
func (aerc *Aerc) SelectedAccount() *AccountView
func (*Aerc) SelectedAccountUiConfig ¶
func (*Aerc) SelectedTab ¶
func (*Aerc) SelectedTabContent ¶
func (*Aerc) UpdateStatus ¶
func (aerc *Aerc) UpdateStatus()
type AlignPosition ¶
type AlignPosition uint
const ( AlignTop AlignPosition = iota AlignCenter AlignBottom )
type AuthInfo ¶
type AuthInfo struct {
// contains filtered or unexported fields
}
func NewAuthInfo ¶
func (*AuthInfo) Invalidate ¶
func (a *AuthInfo) Invalidate()
type Composer ¶
func NewComposer ¶
func NewComposer( acct *AccountView, acctConfig *config.AccountConfig, worker *types.Worker, editHeaders bool, template string, h *mail.Header, orig *models.OriginalMail, body io.Reader, ) (*Composer, error)
func (*Composer) Account ¶
func (c *Composer) Account() *AccountView
func (*Composer) AddAttachment ¶
func (*Composer) AddPartAttachment ¶
func (*Composer) AppendPart ¶
func (*Composer) CheckForMultipartErrors ¶
func (*Composer) Config ¶
func (c *Composer) Config() *config.AccountConfig
func (*Composer) DeleteAttachment ¶
func (*Composer) FocusEditor ¶
func (*Composer) FocusTerminal ¶
func (*Composer) GetAttachments ¶
func (*Composer) Invalidate ¶
func (c *Composer) Invalidate()
func (*Composer) MouseEvent ¶
func (*Composer) OnFocusLost ¶
OnFocusLost registers an OnFocusLost callback for the specified header.
func (*Composer) OnHeaderChange ¶
OnHeaderChange registers an OnChange callback for the specified header.
func (*Composer) Parent ¶
func (c *Composer) Parent() *models.OriginalMail
func (*Composer) PrepareHeader ¶
PrepareHeader finalizes the header, adding the value from the editors
func (*Composer) RecalledFrom ¶
func (*Composer) RemovePart ¶
func (*Composer) SelectedDirectory ¶
func (*Composer) SetAttachKey ¶
func (*Composer) SetEncrypt ¶
func (*Composer) SetPostponed ¶
func (c *Composer) SetPostponed()
func (*Composer) SetRecalledFrom ¶
func (*Composer) ShouldWarnAttachment ¶
func (*Composer) ShouldWarnSubject ¶
func (*Composer) ShowTerminal ¶
func (*Composer) SwitchAccount ¶
func (c *Composer) SwitchAccount(newAcct *AccountView) error
type Dialog ¶
type Dialog interface { ui.DrawableInteractive ContextWidth() (func(int) int, func(int) int) ContextHeight() (func(int) int, func(int) int) }
func DefaultDialog ¶
func DefaultDialog(d ui.DrawableInteractive) Dialog
DefaultDialog creates a dialog window spanning half of the screen
type DirectoryList ¶
type DirectoryList struct { Scrollable // contains filtered or unexported fields }
func (*DirectoryList) ClearList ¶
func (dirlist *DirectoryList) ClearList()
func (*DirectoryList) CollapseFolder ¶
func (dirlist *DirectoryList) CollapseFolder(string)
func (*DirectoryList) Directory ¶
func (dirlist *DirectoryList) Directory(name string) *models.Directory
func (*DirectoryList) Draw ¶
func (dirlist *DirectoryList) Draw(ctx *ui.Context)
func (*DirectoryList) ExpandFolder ¶
func (dirlist *DirectoryList) ExpandFolder(string)
func (*DirectoryList) FilterDirs ¶
func (dirlist *DirectoryList) FilterDirs(orig, filters []string, exclude bool) []string
FilterDirs filters directories by the supplied filter. If exclude is false, the filter will only include directories from orig which exist in filters. If exclude is true, the directories in filters are removed from orig
func (*DirectoryList) GetRUECount ¶
func (dirlist *DirectoryList) GetRUECount(name string) (int, int, int)
Returns the Recent, Unread, and Exist counts for the named directory
func (*DirectoryList) Invalidate ¶
func (dirlist *DirectoryList) Invalidate()
func (*DirectoryList) List ¶
func (dirlist *DirectoryList) List() []string
func (*DirectoryList) MouseEvent ¶
func (dirlist *DirectoryList) MouseEvent(localX int, localY int, event vaxis.Event)
func (*DirectoryList) MsgStore ¶
func (dirlist *DirectoryList) MsgStore(name string) (*lib.MessageStore, bool)
func (*DirectoryList) NewContext ¶
func (dirlist *DirectoryList) NewContext()
func (*DirectoryList) Next ¶
func (dirlist *DirectoryList) Next()
func (*DirectoryList) NextPrev ¶
func (dirlist *DirectoryList) NextPrev(delta int)
func (*DirectoryList) OnVirtualNode ¶
func (dirlist *DirectoryList) OnVirtualNode(_ func())
func (*DirectoryList) Open ¶
func (dirlist *DirectoryList) Open(name string, query string, delay time.Duration, cb func(types.WorkerMessage), force bool, )
func (*DirectoryList) Prev ¶
func (dirlist *DirectoryList) Prev()
func (*DirectoryList) Previous ¶
func (dirlist *DirectoryList) Previous() string
func (*DirectoryList) Select ¶
func (dirlist *DirectoryList) Select(name string)
func (*DirectoryList) Selected ¶
func (dirlist *DirectoryList) Selected() string
func (*DirectoryList) SelectedDirectory ¶
func (dirlist *DirectoryList) SelectedDirectory() *models.Directory
func (*DirectoryList) SelectedMsgStore ¶
func (dirlist *DirectoryList) SelectedMsgStore() (*lib.MessageStore, bool)
func (*DirectoryList) SetMsgStore ¶
func (dirlist *DirectoryList) SetMsgStore(dir *models.Directory, msgStore *lib.MessageStore)
func (*DirectoryList) UiConfig ¶
func (dirlist *DirectoryList) UiConfig(dir string) *config.UIConfig
func (*DirectoryList) Update ¶
func (dirlist *DirectoryList) Update(msg types.WorkerMessage)
type DirectoryLister ¶
type DirectoryLister interface { ui.Drawable Selected() string Previous() string Select(string) Open(string, string, time.Duration, func(types.WorkerMessage), bool) Update(types.WorkerMessage) List() []string ClearList() OnVirtualNode(func()) NextPrev(int) CollapseFolder(string) ExpandFolder(string) SelectedMsgStore() (*lib.MessageStore, bool) MsgStore(string) (*lib.MessageStore, bool) SelectedDirectory() *models.Directory Directory(string) *models.Directory SetMsgStore(*models.Directory, *lib.MessageStore) FilterDirs([]string, []string, bool) []string GetRUECount(string) (int, int, int) UiConfig(string) *config.UIConfig }
func NewDirectoryList ¶
func NewDirectoryList(acctConf *config.AccountConfig, worker *types.Worker, ) DirectoryLister
func NewDirectoryTree ¶
func NewDirectoryTree(dirlist *DirectoryList) DirectoryLister
type DirectoryTree ¶
type DirectoryTree struct { *DirectoryList // contains filtered or unexported fields }
func (*DirectoryTree) ClearList ¶
func (dt *DirectoryTree) ClearList()
func (*DirectoryTree) CollapseFolder ¶
func (dt *DirectoryTree) CollapseFolder(name string)
func (*DirectoryTree) Draw ¶
func (dt *DirectoryTree) Draw(ctx *ui.Context)
func (*DirectoryTree) ExpandFolder ¶
func (dt *DirectoryTree) ExpandFolder(name string)
func (*DirectoryTree) MouseEvent ¶
func (dt *DirectoryTree) MouseEvent(localX int, localY int, event vaxis.Event)
func (*DirectoryTree) NextPrev ¶
func (dt *DirectoryTree) NextPrev(delta int)
func (*DirectoryTree) OnVirtualNode ¶
func (dt *DirectoryTree) OnVirtualNode(cb func())
func (*DirectoryTree) Open ¶
func (dt *DirectoryTree) Open(name string, query string, delay time.Duration, cb func(types.WorkerMessage), force bool)
func (*DirectoryTree) Select ¶
func (dt *DirectoryTree) Select(name string)
func (*DirectoryTree) Selected ¶
func (dt *DirectoryTree) Selected() string
func (*DirectoryTree) SelectedDirectory ¶
func (dt *DirectoryTree) SelectedDirectory() *models.Directory
func (*DirectoryTree) SelectedMsgStore ¶
func (dt *DirectoryTree) SelectedMsgStore() (*lib.MessageStore, bool)
func (*DirectoryTree) Update ¶
func (dt *DirectoryTree) Update(msg types.WorkerMessage)
type EmptyInteractive ¶
type EmptyInteractive struct{}
func (*EmptyInteractive) Draw ¶
func (e *EmptyInteractive) Draw(ctx *ui.Context)
func (*EmptyInteractive) Focus ¶
func (e *EmptyInteractive) Focus(_ bool)
func (*EmptyInteractive) Invalidate ¶
func (e *EmptyInteractive) Invalidate()
func (*EmptyInteractive) MouseEvent ¶
func (e *EmptyInteractive) MouseEvent(_ int, _ int, _ vaxis.Event)
type ExLine ¶
type ExLine struct {
// contains filtered or unexported fields
}
func (*ExLine) Invalidate ¶
func (ex *ExLine) Invalidate()
type GetPasswd ¶
type GetPasswd struct {
// contains filtered or unexported fields
}
func NewGetPasswd ¶
func (*GetPasswd) Invalidate ¶
func (gp *GetPasswd) Invalidate()
type HasTerminal ¶
type HasTerminal interface {
Terminal() *Terminal
}
type HeaderLayout ¶
type HeaderLayout [][]string
type HeaderLayoutFilter ¶
type HeaderLayoutFilter struct {
// contains filtered or unexported fields
}
type HeaderView ¶
type HeaderView struct { Name string Value string ValueField ui.Drawable // contains filtered or unexported fields }
func (*HeaderView) Draw ¶
func (hv *HeaderView) Draw(ctx *ui.Context)
func (*HeaderView) Invalidate ¶
func (hv *HeaderView) Invalidate()
type ListBox ¶
type ListBox struct { Scrollable // contains filtered or unexported fields }
func NewListBox ¶
func (*ListBox) Invalidate ¶
func (lb *ListBox) Invalidate()
type MessageList ¶
type MessageList struct { Scrollable // contains filtered or unexported fields }
func NewMessageList ¶
func NewMessageList(account *AccountView) *MessageList
func (*MessageList) AlignMessage ¶
func (ml *MessageList) AlignMessage(pos AlignPosition)
AlignMessage aligns the selected message to position pos.
func (*MessageList) Draw ¶
func (ml *MessageList) Draw(ctx *ui.Context)
func (*MessageList) Empty ¶
func (ml *MessageList) Empty() bool
func (*MessageList) Height ¶
func (ml *MessageList) Height() int
func (*MessageList) Invalidate ¶
func (ml *MessageList) Invalidate()
func (*MessageList) MouseEvent ¶
func (ml *MessageList) MouseEvent(localX int, localY int, event vaxis.Event)
func (*MessageList) Select ¶
func (ml *MessageList) Select(index int)
func (*MessageList) Selected ¶
func (ml *MessageList) Selected() *models.MessageInfo
func (*MessageList) SetInitDone ¶
func (ml *MessageList) SetInitDone()
func (*MessageList) SetStore ¶
func (ml *MessageList) SetStore(store *lib.MessageStore)
func (*MessageList) Store ¶
func (ml *MessageList) Store() *lib.MessageStore
func (*MessageList) Width ¶
func (ml *MessageList) Width() int
type MessageViewer ¶
type MessageViewer struct {
// contains filtered or unexported fields
}
func NewMessageViewer ¶
func NewMessageViewer( acct *AccountView, msg lib.MessageView, ) (*MessageViewer, error)
func (*MessageViewer) AttachmentParts ¶
func (mv *MessageViewer) AttachmentParts(all bool) []*PartInfo
func (*MessageViewer) Bindings ¶
func (mv *MessageViewer) Bindings() string
func (*MessageViewer) Close ¶
func (mv *MessageViewer) Close()
func (*MessageViewer) Draw ¶
func (mv *MessageViewer) Draw(ctx *ui.Context)
func (*MessageViewer) Focus ¶
func (mv *MessageViewer) Focus(focus bool)
func (*MessageViewer) Invalidate ¶
func (mv *MessageViewer) Invalidate()
func (*MessageViewer) MarkedMessages ¶
func (mv *MessageViewer) MarkedMessages() ([]models.UID, error)
func (*MessageViewer) MessageView ¶
func (mv *MessageViewer) MessageView() lib.MessageView
func (*MessageViewer) MouseEvent ¶
func (mv *MessageViewer) MouseEvent(localX int, localY int, event vaxis.Event)
func (*MessageViewer) NextPart ¶
func (mv *MessageViewer) NextPart()
func (*MessageViewer) PreviousPart ¶
func (mv *MessageViewer) PreviousPart()
func (*MessageViewer) SelectedAccount ¶
func (mv *MessageViewer) SelectedAccount() *AccountView
func (*MessageViewer) SelectedMessage ¶
func (mv *MessageViewer) SelectedMessage() (*models.MessageInfo, error)
func (*MessageViewer) SelectedMessagePart ¶
func (mv *MessageViewer) SelectedMessagePart() *PartInfo
func (*MessageViewer) Show ¶
func (mv *MessageViewer) Show(visible bool)
func (*MessageViewer) Store ¶
func (mv *MessageViewer) Store() *lib.MessageStore
func (*MessageViewer) Terminal ¶
func (mv *MessageViewer) Terminal() *Terminal
func (*MessageViewer) ToggleHeaders ¶
func (mv *MessageViewer) ToggleHeaders()
func (*MessageViewer) ToggleKeyPassthrough ¶
func (mv *MessageViewer) ToggleKeyPassthrough() bool
type PGPInfo ¶
type PGPInfo struct {
// contains filtered or unexported fields
}
func NewPGPInfo ¶
func NewPGPInfo(details *models.MessageDetails, uiConfig *config.UIConfig) *PGPInfo
func (*PGPInfo) DrawSignature ¶
func (*PGPInfo) Invalidate ¶
func (p *PGPInfo) Invalidate()
type PartInfo ¶
type PartInfo struct { Index []int Msg *models.MessageInfo Part *models.BodyStructure Links []string }
type PartSwitcher ¶
type PartSwitcher struct { Scrollable // contains filtered or unexported fields }
func (*PartSwitcher) AttachmentParts ¶
func (ps *PartSwitcher) AttachmentParts(all bool) []*PartInfo
func (*PartSwitcher) Cleanup ¶
func (ps *PartSwitcher) Cleanup()
func (*PartSwitcher) Draw ¶
func (ps *PartSwitcher) Draw(ctx *ui.Context)
func (*PartSwitcher) Focus ¶
func (ps *PartSwitcher) Focus(focus bool)
func (*PartSwitcher) Invalidate ¶
func (ps *PartSwitcher) Invalidate()
func (*PartSwitcher) MouseEvent ¶
func (ps *PartSwitcher) MouseEvent(localX int, localY int, event vaxis.Event)
func (*PartSwitcher) NextPart ¶
func (ps *PartSwitcher) NextPart()
func (*PartSwitcher) PreviousPart ¶
func (ps *PartSwitcher) PreviousPart()
func (*PartSwitcher) SelectedPart ¶
func (ps *PartSwitcher) SelectedPart() *PartViewer
func (*PartSwitcher) Show ¶
func (ps *PartSwitcher) Show(visible bool)
type PartViewer ¶
type PartViewer struct {
// contains filtered or unexported fields
}
func NewPartViewer ¶
func NewPartViewer( acct *AccountView, msg lib.MessageView, part *models.BodyStructure, curindex []int, ) (*PartViewer, error)
func (*PartViewer) Cleanup ¶
func (pv *PartViewer) Cleanup()
func (*PartViewer) Draw ¶
func (pv *PartViewer) Draw(ctx *ui.Context)
func (*PartViewer) Invalidate ¶
func (pv *PartViewer) Invalidate()
func (*PartViewer) SetSource ¶
func (pv *PartViewer) SetSource(reader io.Reader)
type ProvidesMessage ¶
type ProvidesMessage interface { ui.Drawable Store() *lib.MessageStore SelectedAccount() *AccountView SelectedMessage() (*models.MessageInfo, error) SelectedMessagePart() *PartInfo }
type ProvidesMessages ¶
type ProvidesMessages interface { ui.Drawable Store() *lib.MessageStore SelectedAccount() *AccountView SelectedMessage() (*models.MessageInfo, error) MarkedMessages() ([]models.UID, error) }
type Scrollable ¶
type Scrollable struct {
// contains filtered or unexported fields
}
Scrollable implements vertical scrolling
func (*Scrollable) Align ¶
func (s *Scrollable) Align(idx int, pos AlignPosition)
func (*Scrollable) EnsureScroll ¶
func (s *Scrollable) EnsureScroll(idx int)
func (*Scrollable) NeedScrollbar ¶
func (s *Scrollable) NeedScrollbar() bool
func (*Scrollable) PercentScrolled ¶
func (s *Scrollable) PercentScrolled() float64
func (*Scrollable) PercentVisible ¶
func (s *Scrollable) PercentVisible() float64
func (*Scrollable) Scroll ¶
func (s *Scrollable) Scroll() int
func (*Scrollable) ScrollOffset ¶
func (s *Scrollable) ScrollOffset() int
func (*Scrollable) SetOffset ¶
func (s *Scrollable) SetOffset(offset int)
func (*Scrollable) UpdateScroller ¶
func (s *Scrollable) UpdateScroller(height, elems int)
type Selector ¶
type Selector struct {
// contains filtered or unexported fields
}
func NewSelector ¶
func (*Selector) Invalidate ¶
func (sel *Selector) Invalidate()
type SelectorDialog ¶
type SelectorDialog struct {
// contains filtered or unexported fields
}
func NewSelectorDialog ¶
func (*SelectorDialog) ContextHeight ¶
func (gp *SelectorDialog) ContextHeight() (func(int) int, func(int) int)
func (*SelectorDialog) ContextWidth ¶
func (gp *SelectorDialog) ContextWidth() (func(int) int, func(int) int)
func (*SelectorDialog) Draw ¶
func (gp *SelectorDialog) Draw(ctx *ui.Context)
func (*SelectorDialog) Focus ¶
func (gp *SelectorDialog) Focus(f bool)
func (*SelectorDialog) Invalidate ¶
func (gp *SelectorDialog) Invalidate()
type Spinner ¶
type Spinner struct {
// contains filtered or unexported fields
}
func NewSpinner ¶
func (*Spinner) Invalidate ¶
func (s *Spinner) Invalidate()
type StatusLine ¶
func (*StatusLine) Clear ¶
func (status *StatusLine) Clear()
func (*StatusLine) Draw ¶
func (status *StatusLine) Draw(ctx *ui.Context)
func (*StatusLine) Expire ¶
func (status *StatusLine) Expire()
func (*StatusLine) Invalidate ¶
func (status *StatusLine) Invalidate()
func (*StatusLine) Push ¶
func (status *StatusLine) Push(text string, expiry time.Duration) *StatusMessage
func (*StatusLine) PushError ¶
func (status *StatusLine) PushError(text string) *StatusMessage
func (*StatusLine) PushSuccess ¶
func (status *StatusLine) PushSuccess(text string) *StatusMessage
func (*StatusLine) PushWarning ¶
func (status *StatusLine) PushWarning(text string) *StatusMessage
func (*StatusLine) SetError ¶
func (status *StatusLine) SetError(err string)
func (*StatusLine) Update ¶
func (status *StatusLine) Update(acct *AccountView)
type StatusMessage ¶
type StatusMessage struct {
// contains filtered or unexported fields
}
func PushError ¶
func PushError(text string) *StatusMessage
func PushStatus ¶
func PushStatus(text string, expiry time.Duration) *StatusMessage
func PushSuccess ¶
func PushSuccess(text string) *StatusMessage
func PushWarning ¶
func PushWarning(text string) *StatusMessage
func (*StatusMessage) Color ¶
func (msg *StatusMessage) Color(style vaxis.Style)
type Terminal ¶
type Terminal struct { OnClose func(err error) OnEvent func(event vaxis.Event) bool OnStart func() OnTitle func(title string) // contains filtered or unexported fields }
func (*Terminal) HandleEvent ¶
HandleEvent is used to watch the underlying terminal events
func (*Terminal) Invalidate ¶
func (term *Terminal) Invalidate()