ui

package
v0.0.0-...-2cb8b77 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Nov 19, 2024 License: Apache-2.0, Apache-2.0 Imports: 32 Imported by: 0

Documentation

Index

Constants

View Source
const (
	// DeltaSign signals a diff.
	DeltaSign = "Δ"
	// PlusSign signals inc.
	PlusSign = "[red::b]↑"
	// MinusSign signal dec.
	MinusSign = "[green::b]↓"
)
View Source
const (
	Key0 tcell.Key = iota + 48
	Key1
	Key2
	Key3
	Key4
	Key5
	Key6
	Key7
	Key8
	Key9
)

Defines numeric keys for container actions.

View Source
const (
	KeyShift0 tcell.Key = 41
	KeyShift1 tcell.Key = 33
	KeyShift2 tcell.Key = 64
	KeyShift3 tcell.Key = 35
	KeyShift4 tcell.Key = 36
	KeyShift5 tcell.Key = 37
	KeyShift6 tcell.Key = 94
	KeyShift7 tcell.Key = 38
	KeyShift8 tcell.Key = 42
	KeyShift9 tcell.Key = 40
)

Defines numeric keys for container actions.

View Source
const (
	KeyA tcell.Key = iota + 97
	KeyB
	KeyC
	KeyD
	KeyE
	KeyF
	KeyG
	KeyH
	KeyI
	KeyJ
	KeyK
	KeyL
	KeyM
	KeyN
	KeyO
	KeyP
	KeyQ
	KeyR
	KeyS
	KeyT
	KeyU
	KeyV
	KeyW
	KeyX
	KeyY
	KeyZ
	KeyHelp  = 63
	KeySlash = 47
	KeyColon = 58
	KeySpace = 32
)

Defines char keystrokes.

View Source
const (
	KeyShiftA tcell.Key = iota + 65
	KeyShiftB
	KeyShiftC
	KeyShiftD
	KeyShiftE
	KeyShiftF
	KeyShiftG
	KeyShiftH
	KeyShiftI
	KeyShiftJ
	KeyShiftK
	KeyShiftL
	KeyShiftM
	KeyShiftN
	KeyShiftO
	KeyShiftP
	KeyShiftQ
	KeyShiftR
	KeyShiftS
	KeyShiftT
	KeyShiftU
	KeyShiftV
	KeyShiftW
	KeyShiftX
	KeyShiftY
	KeyShiftZ
)

Define Shift Keys.

View Source
const (
	// DefaultColorName indicator to keep term colors.
	DefaultColorName = "default"

	// SearchFmt represents a filter view title.
	SearchFmt = "<[filter:bg:r]/%s[fg:bg:-]> "

	// NSTitleFmt represents a namespaced view title.
	NSTitleFmt = "[fg:bg:b] %s([hilite:bg:b]%s[fg:bg:-])[fg:bg:-][[count:bg:b]%s[fg:bg:-]][fg:bg:-] "

	// TitleFmt represents a standard view title.
	TitleFmt = "[fg:bg:b] %s[fg:bg:-][[count:bg:b]%s[fg:bg:-]][fg:bg:-] "

	// FullFmat specifies a namespaced dump file name.
	FullFmat = "%s-%s-%d.csv"

	// NoNSFmat specifies a cluster wide dump file name.
	NoNSFmat = "%s-%d.csv"
)

Variables

View Source
var LogoBig = []string{
	` ____  __.________      _________ .____    .___ `,
	`|    |/ _/   __   \_____\_   ___ \|    |   |   |`,
	`|      < \____    /  ___/    \  \/|    |   |   |`,
	`|    |  \   /    /\___ \\     \___|    |___|   |`,
	`|____|__ \ /____//____  >\______  /_______ \___|`,
	`        \/            \/        \/        \/    `,
}

LogoBig K9s big logo for splash page.

View Source
var LogoSmall = []string{
	` ____  __.________       `,
	`|    |/ _/   __   \______`,
	`|      < \____    /  ___/`,
	`|    |  \   /    /\___ \ `,
	`|____|__ \ /____//____  >`,
	`        \/            \/ `,
}

LogoSmall K9s small log.

View Source
var NumKeys = map[int]tcell.Key{
	0: Key0,
	1: Key1,
	2: Key2,
	3: Key3,
	4: Key4,
	5: Key5,
	6: Key6,
	7: Key7,
	8: Key8,
	9: Key9,
}

NumKeys tracks number keys.

Functions

func AsKey

func AsKey(evt *tcell.EventKey) tcell.Key

AsKey converts rune to keyboard key.,.

func AsPercDelta

func AsPercDelta(ov, nv int) string

AsPercDelta represents a percentage with a delta indicator.

func ComputeMaxColumns

func ComputeMaxColumns(pads MaxyPad, sortColName string, t *model1.TableData)

ComputeMaxColumns figures out column max size and necessary padding.

func Deltas

func Deltas(o, n string) string

Deltas signals diffs between 2 strings.

func IsASCII

func IsASCII(s string) bool

IsASCII checks if table cell has all ascii characters.

func Pad

func Pad(s string, width int) string

Pad a string up to the given length or truncates if greater than length.

func SkinTitle

func SkinTitle(fmat string, style config.Frame) string

SkinTitle decorates a title.

func ToMnemonic

func ToMnemonic(s string) string

func TrimCell

func TrimCell(tv *SelectTable, row, col int) string

TrimCell removes superfluous padding.

func TrimLabelSelector

func TrimLabelSelector(s string) string

TrimLabelSelector extracts label query.

func Truncate

func Truncate(str string, width int) string

Truncate a string to the given l and suffix ellipsis if needed.

Types

type ActionHandler

type ActionHandler func(*tcell.EventKey) *tcell.EventKey

ActionHandler handles a keyboard command.

type ActionOpts

type ActionOpts struct {
	Visible   bool
	Shared    bool
	Plugin    bool
	HotKey    bool
	Dangerous bool
}

ActionOpts tracks various action options.

type App

type App struct {
	*tview.Application
	Configurator

	Main *Pages
	// contains filtered or unexported fields
}

App represents an application.

func NewApp

func NewApp(cfg *config.Config, context string) *App

NewApp returns a new app.

func (*App) ActivateCmd

func (a *App) ActivateCmd(b bool)

ActivateCmd toggle command mode.

func (*App) AddActions

func (a *App) AddActions(aa *KeyActions)

AddActions returns the application actions.

func (*App) BailOut

func (a *App) BailOut()

BailOut exits the application.

func (*App) BufferActive

func (a *App) BufferActive(state bool, kind model.BufferKind)

BufferActive indicates the buff activity changed.

func (*App) BufferChanged

func (a *App) BufferChanged(_, _ string)

BufferChanged indicates the buffer was changed.

func (*App) BufferCompleted

func (a *App) BufferCompleted(_, _ string)

BufferCompleted indicates input was accepted.

func (*App) CmdBuff

func (a *App) CmdBuff() *model.FishBuff

CmdBuff returns the app cmd model.

func (*App) Conn

func (a *App) Conn() client.Connection

Conn returns an api server connection.

func (*App) Crumbs

func (a *App) Crumbs() *Crumbs

Crumbs return app crumbs.

func (*App) Flash

func (a *App) Flash() *model.Flash

Flash returns a flash model.

func (*App) GetActions

func (a *App) GetActions() *KeyActions

GetActions returns a collection of actions.

func (*App) GetCmd

func (a *App) GetCmd() string

GetCmd retrieves user command.

func (*App) HasAction

func (a *App) HasAction(key tcell.Key) (KeyAction, bool)

HasAction checks if key matches a registered binding.

func (*App) HasCmd

func (a *App) HasCmd() bool

HasCmd check if cmd buffer is active and has a command.

func (*App) InCmdMode

func (a *App) InCmdMode() bool

InCmdMode check if command mode is active.

func (*App) Init

func (a *App) Init()

Init initializes the application.

func (*App) IsRunning

func (a *App) IsRunning() bool

IsRunning checks if app is actually running.

func (a *App) Logo() *Logo

Logo return the app logo.

func (*App) Menu

func (a *App) Menu() *Menu

Menu returns app menu.

func (*App) Prompt

func (a *App) Prompt() *Prompt

Prompt returns command prompt.

func (*App) QueueUpdate

func (a *App) QueueUpdate(f func())

QueueUpdate queues up a ui action.

func (*App) QueueUpdateDraw

func (a *App) QueueUpdateDraw(f func())

QueueUpdateDraw queues up a ui action and redraw the ui.

func (*App) ResetCmd

func (a *App) ResetCmd()

ResetCmd clear out user command.

func (*App) ResetPrompt

func (a *App) ResetPrompt(m PromptModel)

ResetPrompt reset the prompt model and marks buffer as active.

func (*App) SetRunning

func (a *App) SetRunning(f bool)

SetRunning sets the app run state.

func (*App) StylesChanged

func (a *App) StylesChanged(s *config.Styles)

StylesChanged notifies the skin changed.

func (*App) SuggestionChanged

func (a *App) SuggestionChanged(ss []string)

SuggestionChanged notifies of update to command suggestions.

func (*App) Views

func (a *App) Views() map[string]tview.Primitive

Views return the application root views.

type ColorerFunc

type ColorerFunc func(ns string, evt model1.RowEvent) tcell.Color

ColorerFunc represents a row colorer.

type Configurator

type Configurator struct {
	Config     *config.Config
	Styles     *config.Styles
	CustomView *config.CustomView
	BenchFile  string
	// contains filtered or unexported fields
}

Configurator represents an application configuration.

func (*Configurator) ConfigWatcher

func (c *Configurator) ConfigWatcher(ctx context.Context, s synchronizer) error

ConfigWatcher watches for skin settings changes.

func (*Configurator) CustomViewsWatcher

func (c *Configurator) CustomViewsWatcher(ctx context.Context, s synchronizer) error

CustomViewsWatcher watches for view config file changes.

func (*Configurator) HasSkin

func (c *Configurator) HasSkin() bool

HasSkin returns true if a skin file was located.

func (*Configurator) RefreshCustomViews

func (c *Configurator) RefreshCustomViews() error

RefreshCustomViews load view configuration changes.

func (*Configurator) RefreshStyles

func (c *Configurator) RefreshStyles(s synchronizer)

RefreshStyles load for skin configuration changes.

func (*Configurator) SkinsDirWatcher

func (c *Configurator) SkinsDirWatcher(ctx context.Context, s synchronizer) error

SkinsDirWatcher watches for skin directory file changes.

type Crumbs

type Crumbs struct {
	*tview.TextView
	// contains filtered or unexported fields
}

Crumbs represents user breadcrumbs.

func NewCrumbs

func NewCrumbs(styles *config.Styles) *Crumbs

NewCrumbs returns a new breadcrumb view.

func (*Crumbs) StackPopped

func (c *Crumbs) StackPopped(_, _ model.Component)

StackPopped indicates an item was deleted.

func (*Crumbs) StackPushed

func (c *Crumbs) StackPushed(comp model.Component)

StackPushed indicates a new item was added.

func (*Crumbs) StackTop

func (c *Crumbs) StackTop(top model.Component)

StackTop indicates the top of the stack.

func (*Crumbs) StylesChanged

func (c *Crumbs) StylesChanged(s *config.Styles)

StylesChanged notifies skin changed.

type DecorateFunc

type DecorateFunc func(*model1.TableData)

DecorateFunc represents a row decorator.

type Flash

type Flash struct {
	*tview.TextView
	// contains filtered or unexported fields
}

Flash represents a flash message indicator.

func NewFlash

func NewFlash(app *App) *Flash

NewFlash returns a new flash view.

func (*Flash) SetMessage

func (f *Flash) SetMessage(m model.LevelMessage)

SetMessage sets flash message and level.

func (*Flash) SetTestMode

func (f *Flash) SetTestMode(b bool)

SetTestMode for testing ONLY!

func (*Flash) StylesChanged

func (f *Flash) StylesChanged(s *config.Styles)

StylesChanged notifies listener the skin changed.

func (*Flash) Watch

func (f *Flash) Watch(ctx context.Context, c model.FlashChan)

Watch watches for flash changes.

type KeyAction

type KeyAction struct {
	Description string
	Action      ActionHandler
	Opts        ActionOpts
}

KeyAction represents a keyboard action.

func NewKeyAction

func NewKeyAction(d string, a ActionHandler, visible bool) KeyAction

NewKeyAction returns a new keyboard action.

func NewKeyActionWithOpts

func NewKeyActionWithOpts(d string, a ActionHandler, opts ActionOpts) KeyAction

NewKeyActionWithOpts returns a new keyboard action.

func NewSharedKeyAction

func NewSharedKeyAction(d string, a ActionHandler, visible bool) KeyAction

NewSharedKeyAction returns a new shared keyboard action.

type KeyActions

type KeyActions struct {
	// contains filtered or unexported fields
}

KeyActions tracks mappings between keystrokes and actions.

func NewKeyActions

func NewKeyActions() *KeyActions

NewKeyActions returns a new instance.

func NewKeyActionsFromMap

func NewKeyActionsFromMap(mm KeyMap) *KeyActions

NewKeyActionsFromMap construct actions from key map.

func (*KeyActions) Add

func (a *KeyActions) Add(k tcell.Key, ka KeyAction)

Add adds a new key action.

func (*KeyActions) Bulk

func (a *KeyActions) Bulk(aa KeyMap)

Bulk bulk insert key mappings.

func (*KeyActions) Clear

func (a *KeyActions) Clear()

Clear remove all actions.

func (*KeyActions) ClearDanger

func (a *KeyActions) ClearDanger()

ClearDanger remove all dangerous actions.

func (*KeyActions) Delete

func (a *KeyActions) Delete(kk ...tcell.Key)

Delete deletes actions by the given keys.

func (*KeyActions) Get

func (a *KeyActions) Get(key tcell.Key) (KeyAction, bool)

Get fetches an action given a key.

func (*KeyActions) Hints

func (a *KeyActions) Hints() model.MenuHints

Hints returns a collection of hints.

func (*KeyActions) Len

func (a *KeyActions) Len() int

Len returns action mapping count.

func (*KeyActions) Merge

func (a *KeyActions) Merge(aa *KeyActions)

Merge merges given actions into existing set.

func (*KeyActions) Range

func (a *KeyActions) Range(f RangeFn)

Range ranges over all actions and triggers a given function.

func (*KeyActions) Reset

func (a *KeyActions) Reset(aa *KeyActions)

Reset clears out actions.

func (*KeyActions) Set

func (a *KeyActions) Set(aa *KeyActions)

Set replace actions with new ones.

type KeyListenerFunc

type KeyListenerFunc func()

KeyListenerFunc listens to key presses.

type KeyMap

type KeyMap map[tcell.Key]KeyAction

KeyMap tracks key to action mappings.

type Lister

type Lister interface {
	// Get returns a resource instance.
	Get(ctx context.Context, path string) (runtime.Object, error)
}

Lister represents a viewable resource.

type Logo struct {
	*tview.Flex
	// contains filtered or unexported fields
}

Logo represents a K9s logo.

func NewLogo(styles *config.Styles) *Logo

NewLogo returns a new logo.

func (*Logo) Err

func (l *Logo) Err(msg string)

Err displays a log error state.

func (*Logo) Info

func (l *Logo) Info(msg string)

Info displays a log info state.

func (*Logo) IsBenchmarking

func (l *Logo) IsBenchmarking() bool

IsBenchmarking checks if benchmarking is active or not.

func (l *Logo) Logo() *tview.TextView

Logo returns the logo viewer.

func (*Logo) Reset

func (l *Logo) Reset()

Reset clears out the logo view and resets colors.

func (*Logo) Status

func (l *Logo) Status() *tview.TextView

Status returns the status viewer.

func (*Logo) StylesChanged

func (l *Logo) StylesChanged(s *config.Styles)

StylesChanged notifies the skin changed.

func (*Logo) Warn

func (l *Logo) Warn(msg string)

Warn displays a log warning state.

type MaxyPad

type MaxyPad []int

MaxyPad tracks uniform column padding.

type Menu struct {
	*tview.Table
	// contains filtered or unexported fields
}

Menu presents menu options.

func NewMenu

func NewMenu(styles *config.Styles) *Menu

NewMenu returns a new menu.

func (m *Menu) HydrateMenu(hh model.MenuHints)

HydrateMenu populate menu ui from hints.

func (m *Menu) StackPopped(o, top model.Component)

StackPopped notifies a component was removed.

func (m *Menu) StackPushed(c model.Component)

StackPushed notifies a component was added.

func (m *Menu) StackTop(t model.Component)

StackTop notifies the top component.

func (m *Menu) StylesChanged(s *config.Styles)

StylesChanged notifies skin changed.

type ModalList

type ModalList struct {
	*tview.Box
	// contains filtered or unexported fields
}

func NewModalList

func NewModalList(title string, list *tview.List) *ModalList

func (*ModalList) Draw

func (m *ModalList) Draw(screen tcell.Screen)

Draw draws this primitive onto the screen.

func (*ModalList) Focus

func (m *ModalList) Focus(delegate func(p tview.Primitive))

Focus is called when this primitive receives focus.

func (*ModalList) HasFocus

func (m *ModalList) HasFocus() bool

HasFocus returns whether this primitive has focus.

func (*ModalList) InputHandler

func (m *ModalList) InputHandler() func(event *tcell.EventKey, setFocus func(p tview.Primitive))

InputHandler returns the handler for this primitive.

func (*ModalList) MouseHandler

func (m *ModalList) MouseHandler() func(action tview.MouseAction, event *tcell.EventMouse, setFocus func(p tview.Primitive)) (consumed bool, capture tview.Primitive)

MouseHandler returns the mouse handler for this primitive.

func (*ModalList) SetDoneFunc

func (m *ModalList) SetDoneFunc(handler func(int, string)) *ModalList

type Namespaceable

type Namespaceable interface {
	// ClusterWide returns true if the model represents resource in all namespaces.
	ClusterWide() bool

	// GetNamespace returns the model namespace.
	GetNamespace() string

	// SetNamespace changes the model namespace.
	SetNamespace(string)

	// InNamespace check if current namespace matches models.
	InNamespace(string) bool
}

Namespaceable represents a namespaceable model.

type Pages

type Pages struct {
	*tview.Pages
	*model.Stack
}

Pages represents a stack of view pages.

func NewPages

func NewPages() *Pages

NewPages return a new view.

func (*Pages) Current

func (p *Pages) Current() model.Component

Current returns the current component.

func (*Pages) Dump

func (p *Pages) Dump()

Dump for debug.

func (*Pages) IsTopDialog

func (p *Pages) IsTopDialog() bool

IsTopDialog checks if front page is a dialog.

func (*Pages) Show

func (p *Pages) Show(c model.Component)

Show displays a given page.

func (*Pages) StackPopped

func (p *Pages) StackPopped(o, top model.Component)

StackPopped notifies a component was removed.

func (*Pages) StackPushed

func (p *Pages) StackPushed(c model.Component)

StackPushed notifies a new component was pushed.

func (*Pages) StackTop

func (p *Pages) StackTop(top model.Component)

StackTop notifies a new component is at the top of the stack.

type Prompt

type Prompt struct {
	*tview.TextView
	// contains filtered or unexported fields
}

Prompt captures users free from command input.

func NewPrompt

func NewPrompt(app *App, noIcons bool, styles *config.Styles) *Prompt

NewPrompt returns a new command view.

func (*Prompt) BufferActive

func (p *Prompt) BufferActive(activate bool, kind model.BufferKind)

BufferActive indicates the buff activity changed.

func (*Prompt) BufferChanged

func (p *Prompt) BufferChanged(text, suggestion string)

BufferChanged indicates the buffer was changed.

func (*Prompt) BufferCompleted

func (p *Prompt) BufferCompleted(text, suggestion string)

BufferCompleted indicates input was accepted.

func (*Prompt) Clear

func (p *Prompt) Clear()

func (*Prompt) Deactivate

func (p *Prompt) Deactivate()

Deactivate sets the prompt as inactive.

func (*Prompt) Draw

func (p *Prompt) Draw(sc tcell.Screen)

func (*Prompt) InCmdMode

func (p *Prompt) InCmdMode() bool

InCmdMode returns true if command is active, false otherwise.

func (*Prompt) SendKey

func (p *Prompt) SendKey(evt *tcell.EventKey)

SendKey sends an keyboard event (testing only!).

func (*Prompt) SendStrokes

func (p *Prompt) SendStrokes(s string)

SendStrokes (testing only!)

func (*Prompt) SetModel

func (p *Prompt) SetModel(m PromptModel)

SetModel sets the prompt buffer model.

func (*Prompt) StylesChanged

func (p *Prompt) StylesChanged(s *config.Styles)

StylesChanged notifies skin changed.

func (*Prompt) SuggestionChanged

func (p *Prompt) SuggestionChanged(text, suggestion string)

SuggestionChanged notifies the suggestion changed.

type PromptModel

type PromptModel interface {
	// SetText sets the model text.
	SetText(txt, sug string)

	// GetText returns the current text.
	GetText() string

	// GetSuggestion returns the current suggestion.
	GetSuggestion() string

	// ClearText clears out model text.
	ClearText(fire bool)

	// Notify notifies all listener of current suggestions.
	Notify(bool)

	// AddListener registers a command listener.
	AddListener(model.BuffWatcher)

	// RemoveListener removes a listener.
	RemoveListener(model.BuffWatcher)

	// IsActive returns true if prompt is active.
	IsActive() bool

	// SetActive sets whether the prompt is active or not.
	SetActive(bool)

	// Add adds a new char to the prompt.
	Add(rune)

	// Delete deletes the last prompt character.
	Delete()
}

PromptModel represents a prompt buffer.

type RangeFn

type RangeFn func(tcell.Key, KeyAction)

RangeFn represents a range iteration callback.

type SelectTable

type SelectTable struct {
	*tview.Table
	// contains filtered or unexported fields
}

SelectTable represents a table with selections.

func (*SelectTable) ClearMarks

func (s *SelectTable) ClearMarks()

ClearMarks delete all marked items.

func (*SelectTable) ClearSelection

func (s *SelectTable) ClearSelection()

ClearSelection reset selected row.

func (*SelectTable) DeleteMark

func (s *SelectTable) DeleteMark(k string)

DeleteMark delete a marked item.

func (*SelectTable) GetModel

func (s *SelectTable) GetModel() Tabular

GetModel returns the current model.

func (*SelectTable) GetRowID

func (s *SelectTable) GetRowID(index int) (string, bool)

GetRowID returns the row id at given location.

func (*SelectTable) GetSelectedCell

func (s *SelectTable) GetSelectedCell(col int) string

GetSelectedCell returns the content of a cell for the currently selected row.

func (*SelectTable) GetSelectedItem

func (s *SelectTable) GetSelectedItem() string

GetSelectedItem returns the currently selected item name.

func (*SelectTable) GetSelectedItems

func (s *SelectTable) GetSelectedItems() []string

GetSelectedItems return currently marked or selected items names.

func (*SelectTable) GetSelectedRowIndex

func (s *SelectTable) GetSelectedRowIndex() int

GetSelectedRowIndex fetch the currently selected row index.

func (*SelectTable) IsMarked

func (s *SelectTable) IsMarked(item string) bool

IsMarked returns true if this item was marked.

func (*SelectTable) SelectFirstRow

func (s *SelectTable) SelectFirstRow()

SelectFirstRow select first data row if any.

func (*SelectTable) SelectRow

func (s *SelectTable) SelectRow(r, c int, broadcast bool)

SelectRow select a given row by index.

func (*SelectTable) SetModel

func (s *SelectTable) SetModel(m Tabular)

SetModel sets the table model.

func (*SelectTable) SetSelectedFn

func (s *SelectTable) SetSelectedFn(f func(string) string)

SetSelectedFn defines a function that cleanse the current selection.

func (*SelectTable) SpanMark

func (s *SelectTable) SpanMark()

SpanMark toggles marked row.

func (*SelectTable) ToggleMark

func (s *SelectTable) ToggleMark()

ToggleMark toggles marked row.

type SelectedRowFunc

type SelectedRowFunc func(r int)

SelectedRowFunc a table selection callback.

type Splash

type Splash struct {
	*tview.Flex
}

Splash represents a splash screen.

func NewSplash

func NewSplash(styles *config.Styles, version string) *Splash

NewSplash instantiates a new splash screen with product and company info.

type StatusIndicator

type StatusIndicator struct {
	*tview.TextView
	// contains filtered or unexported fields
}

StatusIndicator represents a status indicator when main header is collapsed.

func NewStatusIndicator

func NewStatusIndicator(app *App, styles *config.Styles) *StatusIndicator

NewStatusIndicator returns a new status indicator.

func (*StatusIndicator) ClusterInfoChanged

func (s *StatusIndicator) ClusterInfoChanged(prev, cur model.ClusterMeta)

ClusterInfoChanged notifies the cluster meta was changed.

func (*StatusIndicator) ClusterInfoUpdated

func (s *StatusIndicator) ClusterInfoUpdated(data model.ClusterMeta)

ClusterInfoUpdated notifies the cluster meta was updated.

func (*StatusIndicator) Err

func (s *StatusIndicator) Err(msg string)

Err displays a log error state.

func (*StatusIndicator) Info

func (s *StatusIndicator) Info(msg string)

Info displays a log info state.

func (*StatusIndicator) Reset

func (s *StatusIndicator) Reset()

Reset clears out the logo view and resets colors.

func (*StatusIndicator) SetPermanent

func (s *StatusIndicator) SetPermanent(info string)

SetPermanent sets permanent title to be reset to after updates.

func (*StatusIndicator) StylesChanged

func (s *StatusIndicator) StylesChanged(styles *config.Styles)

StylesChanged notifies the skins changed.

func (*StatusIndicator) Warn

func (s *StatusIndicator) Warn(msg string)

Warn displays a log warning state.

type Suggester

type Suggester interface {
	// CurrentSuggestion returns the current suggestion.
	CurrentSuggestion() (string, bool)

	// NextSuggestion returns the next suggestion.
	NextSuggestion() (string, bool)

	// PrevSuggestion returns the prev suggestion.
	PrevSuggestion() (string, bool)

	// ClearSuggestions clear out all suggestions.
	ClearSuggestions()
}

Suggester provides suggestions.

type Table

type Table struct {
	Path   string
	Extras string
	*SelectTable
	// contains filtered or unexported fields
}

Table represents tabular data.

func NewTable

func NewTable(gvr client.GVR) *Table

NewTable returns a new table view.

func (*Table) Actions

func (t *Table) Actions() *KeyActions

Actions returns active menu bindings.

func (*Table) AddHeaderCell

func (t *Table) AddHeaderCell(col int, h model1.HeaderColumn)

AddHeaderCell configures a table cell header.

func (*Table) ClearMarks

func (t *Table) ClearMarks()

ClearMarks clear out marked items.

func (*Table) CmdBuff

func (t *Table) CmdBuff() *model.FishBuff

CmdBuff returns the associated command buffer.

func (*Table) ExtraHints

func (t *Table) ExtraHints() map[string]string

ExtraHints returns additional hints.

func (*Table) Filter

func (t *Table) Filter(q string)

Filter filters out table data.

func (*Table) FilterInput

func (t *Table) FilterInput(r rune) bool

FilterInput filters user commands.

func (*Table) GVR

func (t *Table) GVR() client.GVR

GVR returns a resource descriptor.

func (*Table) GetContext

func (t *Table) GetContext() context.Context

func (*Table) GetFilteredData

func (t *Table) GetFilteredData() *model1.TableData

GetFilteredData fetch filtered tabular data.

func (*Table) GetSelectedRow

func (t *Table) GetSelectedRow(path string) *model1.Row

GetSelectedRow returns the entire selected row or nil if nothing selected.

func (*Table) Hints

func (t *Table) Hints() model.MenuHints

Hints returns the view hints.

func (*Table) Init

func (t *Table) Init(ctx context.Context)

Init initializes the component.

func (*Table) NameColIndex

func (t *Table) NameColIndex() int

NameColIndex returns the index of the resource name column.

func (*Table) Refresh

func (t *Table) Refresh()

Refresh update the table data.

func (*Table) ResetToast

func (t *Table) ResetToast()

ResetToast resets toast flag.

func (*Table) SetColorerFn

func (t *Table) SetColorerFn(f model1.ColorerFunc)

SetColorerFn specifies the default colorer.

func (*Table) SetContext

func (t *Table) SetContext(ctx context.Context)

func (*Table) SetDecorateFn

func (t *Table) SetDecorateFn(f DecorateFunc)

SetDecorateFn specifies the default row decorator.

func (*Table) SetSortCol

func (t *Table) SetSortCol(name string, asc bool)

SetSortCol sets in sort column index and order.

func (*Table) ShowDeleted

func (t *Table) ShowDeleted()

ShowDeleted marks row as deleted.

func (*Table) SortColCmd

func (t *Table) SortColCmd(name string, asc bool) func(evt *tcell.EventKey) *tcell.EventKey

SortColCmd designates a sorted column.

func (*Table) SortInvertCmd

func (t *Table) SortInvertCmd(evt *tcell.EventKey) *tcell.EventKey

SortInvertCmd reverses sorting order.

func (*Table) Styles

func (t *Table) Styles() *config.Styles

Styles returns styling configurator.

func (*Table) StylesChanged

func (t *Table) StylesChanged(s *config.Styles)

StylesChanged notifies the skin changed.

func (*Table) ToggleToast

func (t *Table) ToggleToast()

ToggleToast toggles to show toast resources.

func (*Table) ToggleWide

func (t *Table) ToggleWide()

ToggleWide toggles wide col display.

func (*Table) Update

func (t *Table) Update(data *model1.TableData, hasMetrics bool) *model1.TableData

Update table content.

func (*Table) UpdateTitle

func (t *Table) UpdateTitle()

UpdateTitle refreshes the table title.

func (*Table) UpdateUI

func (t *Table) UpdateUI(cdata, data *model1.TableData)

func (*Table) ViewSettingsChanged

func (t *Table) ViewSettingsChanged(vs config.ViewSetting)

ViewSettingsChanged notifies listener the view configuration changed.

type Tabular

type Tabular interface {
	Namespaceable
	Lister

	// SetInstance sets parent resource path.
	SetInstance(string)

	// SetLabelFilter sets the label filter.
	SetLabelFilter(string)

	// GetLabelFilter fetch the label filter.
	GetLabelFilter() string

	// Empty returns true if model has no data.
	Empty() bool

	// RowCount returns the model data count.
	RowCount() int

	// Peek returns current model data.
	Peek() *model1.TableData

	// Watch watches a given resource for changes.
	Watch(context.Context) error

	// Refresh forces a new refresh.
	Refresh(context.Context) error

	// SetRefreshRate sets the model watch loop rate.
	SetRefreshRate(time.Duration)

	// AddListener registers a model listener.
	AddListener(model.TableListener)

	// RemoveListener unregister a model listener.
	RemoveListener(model.TableListener)

	// Delete a resource.
	Delete(context.Context, string, *metav1.DeletionPropagation, dao.Grace) error
}

Tabular represents a tabular model.

type Tree

type Tree struct {
	*tview.TreeView

	Count int
	// contains filtered or unexported fields
}

Tree represents a tree view.

func NewTree

func NewTree() *Tree

NewTree returns a new view.

func (*Tree) Actions

func (t *Tree) Actions() *KeyActions

Actions returns active menu bindings.

func (*Tree) BindKeys

func (t *Tree) BindKeys()

BindKeys binds default mnemonics.

func (*Tree) ClearSelection

func (t *Tree) ClearSelection()

ClearSelection clears the currently selected node.

func (*Tree) CmdBuff

func (t *Tree) CmdBuff() *model.FishBuff

CmdBuff returns the filter command.

func (*Tree) ExpandNodes

func (t *Tree) ExpandNodes() bool

ExpandNodes returns true if nodes are expanded or false otherwise.

func (*Tree) ExtraHints

func (t *Tree) ExtraHints() map[string]string

ExtraHints returns additional hints.

func (*Tree) GetSelectedItem

func (t *Tree) GetSelectedItem() string

GetSelectedItem returns the currently selected item or blank if none.

func (*Tree) Hints

func (t *Tree) Hints() model.MenuHints

Hints returns the view hints.

func (*Tree) Init

func (t *Tree) Init(ctx context.Context) error

Init initializes the view.

func (*Tree) SetKeyListenerFn

func (t *Tree) SetKeyListenerFn(f KeyListenerFunc)

SetKeyListenerFn sets a key entered listener.

func (*Tree) SetSelectedItem

func (t *Tree) SetSelectedItem(s string)

SetSelectedItem sets the currently selected node.

Directories

Path Synopsis

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL