SendableChooser: Rename addDefault and addObject for clarity (#1239)

Rename addDefault to setDefaultOption and addObject to addOption.

The old names are still available but are marked as deprecated.
This commit is contained in:
Peter Johnson
2018-08-19 01:51:17 -07:00
committed by GitHub
parent fa78f30e30
commit b44f27ddfa
13 changed files with 66 additions and 31 deletions

View File

@@ -11,6 +11,7 @@
#include <wpi/StringMap.h>
#include <wpi/StringRef.h>
#include <wpi/deprecated.h>
#include "frc/smartdashboard/SendableBuilder.h"
#include "frc/smartdashboard/SendableChooserBase.h"
@@ -46,8 +47,16 @@ class SendableChooser : public SendableChooserBase {
public:
~SendableChooser() override = default;
void AddObject(wpi::StringRef name, T object);
void AddDefault(wpi::StringRef name, T object);
void AddOption(wpi::StringRef name, T object);
void SetDefaultOption(wpi::StringRef name, T object);
WPI_DEPRECATED("use AddOption() instead")
void AddObject(wpi::StringRef name, T object) { AddOption(name, object); }
WPI_DEPRECATED("use SetDefaultOption() instead")
void AddDefault(wpi::StringRef name, T object) {
SetDefaultOption(name, object);
}
auto GetSelected() -> decltype(_unwrap_smart_ptr(m_choices[""]));

View File

@@ -27,23 +27,23 @@ namespace frc {
* @param object the option
*/
template <class T>
void SendableChooser<T>::AddObject(wpi::StringRef name, T object) {
void SendableChooser<T>::AddOption(wpi::StringRef name, T object) {
m_choices[name] = std::move(object);
}
/**
* Add the given object to the list of options and marks it as the default.
*
* Functionally, this is very close to AddObject() except that it will use this
* Functionally, this is very close to AddOption() except that it will use this
* as the default option if none other is explicitly selected.
*
* @param name the name of the option
* @param object the option
*/
template <class T>
void SendableChooser<T>::AddDefault(wpi::StringRef name, T object) {
void SendableChooser<T>::SetDefaultOption(wpi::StringRef name, T object) {
m_defaultChoice = name;
AddObject(name, std::move(object));
AddOption(name, std::move(object));
}
/**