/// QasTools: Desktop toolset for the Linux sound system ALSA.
/// \copyright See COPYING file.

#pragma once

#include "utility/setup.hpp"
#include <QByteArray>
#include <cstddef>

namespace Views
{

/// @brief Settings_Dialog_Setup
///
class Settings_Dialog_Setup : public Utility::Setup
{
  public:
  // -- Construction

  Settings_Dialog_Setup ( Utility::Setup * parent_n );

  ~Settings_Dialog_Setup () override;

  // -- Page

  std::size_t
  page () const
  {
    return _page;
  }

  bool
  set_page ( std::size_t page_n );

  // -- Window geometry

  const QByteArray &
  window_geometry () const
  {
    return _window_geometry;
  }

  bool
  set_window_geometry ( const QByteArray & value_n );

  // -- Splitter state

  const QByteArray &
  splitter_state () const
  {
    return _splitter_state;
  }

  bool
  set_splitter_state ( const QByteArray & state_n );

  private:
  // -- Attributes
  std::size_t _page = 0;
  QByteArray _window_geometry;
  QByteArray _splitter_state;
};

} // namespace Views
