start working towards a common table Row() def
This commit is contained in:
parent
6cfc61f4ad
commit
ba36e04edf
45
table.proto
45
table.proto
|
@ -7,33 +7,61 @@ package gitpb;
|
||||||
import "google/protobuf/timestamp.proto"; // Import the well-known type for Timestamp
|
import "google/protobuf/timestamp.proto"; // Import the well-known type for Timestamp
|
||||||
import "widget.proto"; // Import the well-known type for Timestamp
|
import "widget.proto"; // Import the well-known type for Timestamp
|
||||||
|
|
||||||
|
//
|
||||||
|
// this code was written this way to make it easy for me
|
||||||
|
// to originally implement and auto generate the needed code
|
||||||
|
// with autogenpb
|
||||||
|
//
|
||||||
|
|
||||||
|
// experiments in various options. think about this more.
|
||||||
|
|
||||||
|
message ColAttr {
|
||||||
|
enum VarType {
|
||||||
|
ANY = 0;
|
||||||
|
INT = 1;
|
||||||
|
STRING = 2;
|
||||||
|
TIME = 3;
|
||||||
|
DURATION = 4;
|
||||||
|
BYTES = 5;
|
||||||
|
}
|
||||||
|
int32 pad = 1;
|
||||||
|
int32 width = 2;
|
||||||
|
bool click = 3;
|
||||||
|
VarType type = 4;
|
||||||
|
}
|
||||||
message StringCol {
|
message StringCol {
|
||||||
Widget header = 1;
|
Widget header = 1;
|
||||||
repeated string vals = 2;
|
repeated Widget widgets = 2;
|
||||||
repeated Widget widgets = 3;
|
ColAttr attr = 3;
|
||||||
|
repeated string vals = 4; // deprecate
|
||||||
}
|
}
|
||||||
|
|
||||||
message ButtonCol {
|
message ButtonCol {
|
||||||
Widget header = 1;
|
Widget header = 1;
|
||||||
repeated string vals = 2;
|
repeated Widget widgets = 2;
|
||||||
repeated Widget widgets = 3;
|
ColAttr attr = 3;
|
||||||
|
repeated string vals = 4; // deprecate
|
||||||
}
|
}
|
||||||
|
|
||||||
message IntCol {
|
message IntCol {
|
||||||
Widget header = 1;
|
Widget header = 1;
|
||||||
repeated int64 vals = 2;
|
repeated Widget widgets = 2;
|
||||||
repeated Widget widgets = 3;
|
ColAttr attr = 3;
|
||||||
|
repeated int64 vals = 4; // deprecate
|
||||||
}
|
}
|
||||||
|
|
||||||
message TimeCol {
|
message TimeCol {
|
||||||
Widget header = 1;
|
Widget header = 1;
|
||||||
repeated google.protobuf.Timestamp vals = 2;
|
repeated Widget widgets = 2;
|
||||||
repeated Widget widgets = 3;
|
ColAttr attr = 3;
|
||||||
|
repeated google.protobuf.Timestamp vals = 4; // deprecate
|
||||||
}
|
}
|
||||||
|
|
||||||
message BoolCol {
|
message BoolCol {
|
||||||
Widget header = 1;
|
Widget header = 1;
|
||||||
repeated Widget widgets = 2;
|
repeated Widget widgets = 2;
|
||||||
|
ColAttr attr = 3;
|
||||||
|
repeated bool vals = 4; // deprecate
|
||||||
}
|
}
|
||||||
|
|
||||||
message Table { // `autogenpb:marshal`
|
message Table { // `autogenpb:marshal`
|
||||||
|
@ -47,6 +75,7 @@ message Table { // `autogenpb:
|
||||||
repeated TimeCol timeCols = 8;
|
repeated TimeCol timeCols = 8;
|
||||||
repeated BoolCol boolCols = 9;
|
repeated BoolCol boolCols = 9;
|
||||||
repeated ButtonCol buttonCols = 10;
|
repeated ButtonCol buttonCols = 10;
|
||||||
|
int64 height = 11; // the number of rows
|
||||||
}
|
}
|
||||||
|
|
||||||
message Tables { // `autogenpb:marshal`
|
message Tables { // `autogenpb:marshal`
|
||||||
|
|
Loading…
Reference in New Issue