message: Add ListBox::add forwarding template method
  Allows ListBoxItem objects to be constructed in-place, using any
  available constructor.
diff: #include <string>
  #include <vector>
  +#include <utility>
  #include <cstddef>
  @@ -42,6 +43,12 @@ public:
  bool isEmpty() const;
  std::size_t count() const { return mItems.size(); }
  + template <typename... Args>
  + void add(Args&&... args) {
  + mItems.emplace_back(ListBoxItem{std::forward<Args>(args)...});
  + updateScrollLayout();
  + }
  +
  void addItem(const std::string& item, int tag = 0);
  void clear();
  void sort();
  