summaryrefslogtreecommitdiff
path: root/placement.proto
blob: 34d09237c7fd596804cec346b4168c30de923698 (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
syntax = "proto3";

package main;

message Placement {
        message Size  {
                int64    w          = 1;
                int64    h          = 2;
        }
        message Offset  {
                int64    x          = 1;
                int64    y          = 2;
        }
        message Geom  {
                Size     size       = 1;
                Offset   offset     = 2;
        }
                                                 // used for grid layouts
        string               name          = 1;  // `autogenpb:sort` `autogenpb:unique`
        Geom                 geom          = 2;
        int32                workspace     = 3;  // what workspace to show the app on
        string               wd            = 4;  // working dir. Tries to set xterm path at start to this
        repeated string      argv          = 5;  // argv. argv[0] should be the executable name
        string               namespace     = 6;  // namespace of the executable (go.wit.com/apps/forge)
}
message Placements {                             // `autogenpb:marshal` `autogenpb:mutex` `autogenpb:sort`
        string               uuid          = 1;  // `autogenpb:uuid:31769bcb-5865-4926-b7d6-501083312eea`
        string               version       = 2;  // `autogenpb:version:v0.0.1`
        repeated Placement   Placement     = 3;
        string               filename      = 4;  // `autogenpb:save` -- this enables autogenerated pb.Load() and pb.Save()
}