yvbolt/loadedDatabase.go

23 lines
531 B
Go

package main
import (
"github.com/ying32/govcl/vcl"
)
// loadedDatabase is a DB-agnostic interface for each loaded database.
type loadedDatabase interface {
DisplayName() string
DriverName() string
RootElement() *vcl.TTreeNode
RenderForNav(f *TMainForm, ndata *navData)
NavChildren(ndata *navData) ([]string, error)
Keepalive(ndata *navData)
}
// navData is the .Data() pointer for each TTreeNode in the left-hand tree.
type navData struct {
ld loadedDatabase
childrenLoaded bool
bucketPath []string
}