summaryrefslogtreecommitdiff
path: root/widget.proto
blob: 25265a7a07d5d3d47cf76153638cb1264680158a (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
syntax = "proto3";

// playing around with ideas here

package main;

import "google/protobuf/timestamp.proto"; // Import the well-known type for Timestamp
import "google/protobuf/any.proto"; // Import 'Any'


message Size  {
        int64                 width        = 1;
        int64                 height       = 2;
}

message Location  {
        int64                 x            = 1;
        int64                 y            = 2;
}

message Tree {
        Widget                parent       = 1;
        repeated Widget       children     = 2;
}

message Widget {
        int64                 id           = 1;
        string                name         = 2;
        Size                  size         = 3;
        Location              location     = 4;
        string                color        = 5;
        google.protobuf.Any   TK           = 6;
}

message Widgets {
        string                uuid         = 1;  // `autogenpb:uuid:0331fcd7-3c8c-43e4-be1b-77db6a6bc58c`
        string                version      = 2;  // `autogenpb:version:v1`
        repeated Widget       Widgets      = 3;
}