From 61b648c04fc3f5afa760b8840583e1335cd76229 Mon Sep 17 00:00:00 2001 From: Jeff Carr Date: Sat, 27 Sep 2025 14:22:41 -0500 Subject: add cgit-clone --- cgit-clone/structs.go | 51 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 51 insertions(+) create mode 100644 cgit-clone/structs.go (limited to 'cgit-clone/structs.go') diff --git a/cgit-clone/structs.go b/cgit-clone/structs.go new file mode 100644 index 0000000..15b17bc --- /dev/null +++ b/cgit-clone/structs.go @@ -0,0 +1,51 @@ +// Copyright 2017-2025 WIT.COM Inc. All rights reserved. +// Use of this source code is governed by the GPL 3.0 + +package main + +import ( + "go.wit.com/gui" + "go.wit.com/lib/gadgets" + "go.wit.com/lib/gui/prep" + "go.wit.com/lib/protobuf/forgepb" +) + +var me *mainType + +func (b *mainType) Disable() { + b.mainbox.Disable() +} + +func (b *mainType) Enable() { + b.mainbox.Enable() +} + +// returns the server to connect to +func myServer() string { + return me.forge.GetForgeURL() +} + +// this app's variables +type mainType struct { + // pp *arg.Parser // for parsing the command line args. Yay to alexflint! + auto *prep.Auto // more experiments for bash handling + forge *forgepb.Forge // for holding the forge protobuf files + myGui *prep.GuiPrep // for initializing the GUI toolkits + foundPaths []string // stores gopaths to act on (when doing go-clone) + configSave bool // if the config file should be saved after finishing + urlbase string // base URL + + mainWindow *gadgets.BasicWindow + mainbox *gui.Node // the main box. enable/disable this + autoDryRun *gui.Node // checkbox for --dry-run + goSrcPwd *gadgets.OneLiner // what is being used as primary directory for your work + goSrcEdit *gadgets.BasicEntry // what is being used as primary directory for your work + gitAuthor *gadgets.OneLiner // ENV GIT_AUTHOR NAME and EMAIL + + // these hold the branches that the user can switch all the repositories to them + reposWinB *gui.Node // button that opens the repos window + repoAllB *gui.Node // "all" repos button + repoDirtyB *gui.Node // "dirty" repos button + repoDevelMergeB *gui.Node // "merge to devel" repos button + repoWritableB *gui.Node // "what repos are writable" repos button +} -- cgit v1.2.3