used by EditableList would return something that wasn't a optional<>
but would then get implicitly cast to one. Now we have a static_assert
to check that the type is what we expect.
- boost::filesystem::path get () const
+ optional<boost::filesystem::path> get () const
{
return boost::filesystem::path(wx_to_std(GetPath()));
}
{
return boost::filesystem::path(wx_to_std(GetPath()));
}
ContentVersionDialog::ContentVersionDialog (wxWindow* parent)
ContentVersionDialog::ContentVersionDialog (wxWindow* parent)
ContentVersionDialog::get () const
{
return wx_to_std(_version->GetValue());
ContentVersionDialog::get () const
{
return wx_to_std(_version->GetValue());
ContentVersionDialog (wxWindow* parent);
void set (std::string);
ContentVersionDialog (wxWindow* parent);
void set (std::string);
- std::string get () const;
+ boost::optional<std::string> get () const;
private:
wxTextCtrl* _version;
private:
wxTextCtrl* _version;
S* dialog = new S (this);
if (dialog->ShowModal() == wxID_OK) {
S* dialog = new S (this);
if (dialog->ShowModal() == wxID_OK) {
- boost::optional<T> const v = dialog->get ();
+ auto const v = dialog->get ();
+ static_assert(std::is_same<typename std::remove_const<decltype(v)>::type, boost::optional<T>>::value, "get() must return boost::optional<T>");
if (v) {
add_to_control (v.get ());
std::vector<T> all = _get ();
if (v) {
add_to_control (v.get ());
std::vector<T> all = _get ();
S* dialog = new S (this);
dialog->set (all[item]);
if (dialog->ShowModal() == wxID_OK) {
S* dialog = new S (this);
dialog->set (all[item]);
if (dialog->ShowModal() == wxID_OK) {
- boost::optional<T> const v = dialog->get ();
+ auto const v = dialog->get ();
+ static_assert(std::is_same<typename std::remove_const<decltype(v)>::type, boost::optional<T>>::value, "get() must return boost::optional<T>");
RatingDialog::get () const
{
return _active_page->get();
RatingDialog::get () const
{
return _active_page->get();
RatingDialog (wxWindow* parent);
void set (dcp::Rating r);
RatingDialog (wxWindow* parent);
void set (dcp::Rating r);
- dcp::Rating get () const;
+ boost::optional<dcp::Rating> get () const;
private:
void setup_sensitivity (bool ok_valid);
private:
void setup_sensitivity (bool ok_valid);