1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
package terminal

import "avt-go/types"

// Direct field accessors needed for tests (mirrors Rust's pub fields in test context).

func (t *Terminal) Pen() types.Pen             { return t.pen }
func (t *Terminal) Charsets() [2]types.Charset { return t.charsets }
func (t *Terminal) ActiveCharset() int         { return t.activeCharset }
func (t *Terminal) InsertMode() bool           { return t.insertMode }
func (t *Terminal) OriginMode() bool           { return t.originMode }
func (t *Terminal) AutoWrapMode() bool         { return t.autoWrapMode }
func (t *Terminal) NewLineMode() bool          { return t.newLineMode }
func (t *Terminal) TopMargin() int             { return t.topMargin }
func (t *Terminal) BottomMargin() int          { return t.bottomMargin }
func (t *Terminal) TabStops() []int            { return t.tabs.Stops() }

func (t *Terminal) SavedCtxCol() int           { return t.savedCtx.cursorCol }
func (t *Terminal) SavedCtxRow() int           { return t.savedCtx.cursorRow }
func (t *Terminal) SavedCtxPen() types.Pen     { return t.savedCtx.pen }
func (t *Terminal) SavedCtxOriginMode() bool   { return t.savedCtx.originMode }
func (t *Terminal) SavedCtxAutoWrapMode() bool { return t.savedCtx.autoWrapMode }
func (t *Terminal) IsSavedCtxDefault() bool    { return t.savedCtx.isDefault() }

// SetXtwinops enables/disables the xtwinops resize escape.
func (t *Terminal) SetXtwinops(v bool) { t.xtwinopsEnabled = v }