qtc

package
v1.1.0 Latest Latest
Warning

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

Go to latest
Published: Jan 3, 2026 License: MIT Imports: 5 Imported by: 0

Documentation

Index

Constants

View Source
const (
	OfferQTCText          = "qtc"
	SendHeaderTemplate    = "qtc %s"
	CompleteQTCSeriesText = "tu"

	RequestQTCText    = "qtc?"
	QRVText           = "qrv"
	ConfirmText       = "r"
	RequestRepeatText = "agn"
)

text prompts to communicate with the opposite station

Variables

This section is empty.

Functions

This section is empty.

Types

type Controller

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

func NewController

func NewController(clock core.Clock, infoDialogs InfoDialogs, logbook Logbook, qtcList QTCList, entryController EntryController, keyer Keyer) *Controller

func (*Controller) AbortQTCSeries

func (c *Controller) AbortQTCSeries()

AbortQTCSeries aborts the current QTC series: no QTCs are logged, the QTC window is closed. To prevent data loss due to an accidental abort, the user is asked for confirmation first.

func (*Controller) CompleteQTCSeries

func (c *Controller) CompleteQTCSeries()

CompleteQTCSeries completes the current QTC series.

mode == ProvideQTC: stores all QTCs to the log, sends "tu", and closes the QTC window. The series can only be completed when all QTCs have been transmitted. Otherwise, an error message is presented to the user, the QTC window stays open.

mode == ReceiveQTC: stores all received QTCs to the log and closes the QTC window.

func (*Controller) ConfirmData

func (c *Controller) ConfirmData()

func (*Controller) ConfirmHeader

func (c *Controller) ConfirmHeader()

func (*Controller) ConfirmStart

func (c *Controller) ConfirmStart()

func (*Controller) ContestChanged

func (c *Controller) ContestChanged(contest core.Contest)

func (*Controller) DataAction

func (c *Controller) DataAction()

func (*Controller) DoAction

func (c *Controller) DoAction()

func (*Controller) DoConfirm

func (c *Controller) DoConfirm()

func (*Controller) DoubleStop

func (c *Controller) DoubleStop()

func (*Controller) Enter

func (c *Controller) Enter(s string)

func (*Controller) GotoNextField

func (c *Controller) GotoNextField()

func (*Controller) HeaderAction

func (c *Controller) HeaderAction()

func (*Controller) OfferQTC

func (c *Controller) OfferQTC()

OfferQTC initiates the QTC dialog with mode core.ProvideQTC.

func (*Controller) RepeatLastTransmission

func (c *Controller) RepeatLastTransmission()

func (*Controller) RequestQTC

func (c *Controller) RequestQTC()

OfferQTC initiates the QTC dialog with mode core.ReceiveQTC.

func (*Controller) SetActiveField

func (c *Controller) SetActiveField(field core.QTCField)

func (*Controller) SetView

func (c *Controller) SetView(view View)

func (*Controller) StartAction

func (c *Controller) StartAction()

func (*Controller) Stop

func (c *Controller) Stop()

func (*Controller) VFOBandChanged

func (c *Controller) VFOBandChanged(band core.Band)

func (*Controller) VFOFrequencyChanged

func (c *Controller) VFOFrequencyChanged(frequency core.Frequency)

func (*Controller) VFOModeChanged

func (c *Controller) VFOModeChanged(mode core.Mode)

type EntryController

type EntryController interface {
	CurrentQSOState() (callsign.Callsign, core.QSODataState)
	Log()
}

type InfoDialogs

type InfoDialogs interface {
	ShowInfo(format string, args ...any)
	ShowQuestion(format string, args ...any) bool
	ShowError(format string, args ...any)
}

type Keyer

type Keyer interface {
	SendText(string, ...any)
	Repeat()
	Stop()
	Cut(string) string
}

type Logbook

type Logbook interface {
	NextSeriesNumber() int
	LastCallsign() callsign.Callsign
	AddQTCSeries(core.QTCSeries)
	PrepareFor(callsign.Callsign, int) []core.QTC
}

type QTCList

type QTCList interface {
	SelectLastQTC()
	SetQTCsEnabled(bool)
}

type View

type View interface {
	QuestionQTCCount(max int) (int, bool)
	ShowFieldError(core.QTCField, string)
	ClearFieldError()
	Show(core.QTCMode, core.QTCSeries)
	UpdateQTC(int, core.QTC)
	Close()
	ClearDataInputs()
	SetActivePhase(core.QTCWorkflowPhase)
	SetActiveField(core.QTCField)
	SetActiveQTC(int)
}

Jump to

Keyboard shortcuts

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