// Copyright (c) FIRST and other WPILib contributors.
// Open Source Software; you can modify and/or share it under the terms of
// the WPILib BSD license file in the root directory of this project.
#pragma once
#include "frc/shuffleboard/LayoutType.h"
namespace frc {
/**
* The types of layouts bundled with Shuffleboard.
*
*
{@code
* ShuffleboardLayout myList = Shuffleboard::GetTab("My Tab")
* .GetLayout(BuiltinLayouts::kList, "My List");
* }
*/
enum class BuiltInLayouts {
/**
* Groups components in a vertical list. New widgets added to the layout will
* be placed at the bottom of the list.
Custom properties:
* | Name | Type | Default Value | Notes |
* | Label position | String | "BOTTOM" |
* The position of component labels inside the grid. One of
* {@code ["TOP", "LEFT", "BOTTOM", "RIGHT", "HIDDEN"} |
*
*/
kList,
/**
* Groups components in an n x m grid. Grid layouts default to
* 3x3.
Custom properties:
* | Name | Type | Default Value | Notes |
* | Number of columns | Number | 3 | Must be in the
* range [1,15] |
*
* | Number of rows | Number | 3 | Must be in the
* range [1,15] |
| Label position | String |
* "BOTTOM" |
* The position of component labels inside the grid.
* One of {@code ["TOP", "LEFT", "BOTTOM", "RIGHT", "HIDDEN"} |
*
*
*/
kGrid
};
} // namespace frc