2025-01-29 07:31:26 -06:00
|
|
|
syntax = "proto3";
|
|
|
|
|
|
|
|
package main;
|
|
|
|
|
|
|
|
import "google/protobuf/timestamp.proto"; // Import the well-known type for Timestamp
|
|
|
|
|
|
|
|
// maybe put all the gocui specific stuff here.
|
|
|
|
message GocuiState { // `autogenpb:nomutex`
|
|
|
|
bool visible = 1;
|
|
|
|
bool internal = 2;
|
|
|
|
int64 w0 = 3;
|
|
|
|
int64 h0 = 4;
|
|
|
|
int64 w1 = 5;
|
|
|
|
int64 h1 = 6;
|
|
|
|
}
|
|
|
|
|
|
|
|
message ViewSettings { // `autogenpb:nomutex`
|
|
|
|
bool pack = 1;
|
|
|
|
int64 framesize = 5;
|
|
|
|
}
|
|
|
|
|
|
|
|
message Tree {
|
|
|
|
View parent = 1;
|
|
|
|
repeated View children = 2;
|
2025-01-29 07:55:56 -06:00
|
|
|
View node = 3;
|
2025-01-29 07:31:26 -06:00
|
|
|
}
|
|
|
|
|
|
|
|
// this is the gocui 'view' in binary tree form
|
|
|
|
message View {
|
|
|
|
int64 widgetId = 3; // `autogenpb:unique` `autogenpb:sort`
|
|
|
|
string name = 4; // `autogenpb:unique` `autogenpb:sort`
|
|
|
|
GocuiState state = 7;
|
|
|
|
}
|
|
|
|
|
|
|
|
message Views { // `autogenpb:marshal` `autogenpb:mutex`
|
|
|
|
string uuid = 1; // `autogenpb:uuid:d19c1fbb-32c2-4957-aee6-f8128a511dca`
|
|
|
|
string version = 2; // `autogenpb:version:v0.0.1`
|
|
|
|
repeated View Views = 3;
|
|
|
|
Tree tree = 4;
|
|
|
|
map<string, string> junk = 5;
|
|
|
|
ViewSettings settings = 6;
|
|
|
|
}
|