1//============================================================================
2//
3// SSSS tt lll lll
4// SS SS tt ll ll
5// SS tttttt eeee ll ll aaaa
6// SSSS tt ee ee ll ll aa
7// SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator"
8// SS SS tt ee ll ll aa aa
9// SSSS ttt eeeee llll llll aaaaa
10//
11// Copyright (c) 1995-2019 by Bradford W. Mott, Stephen Anthony
12// and the Stella Team
13//
14// See the file "License.txt" for information on usage and redistribution of
15// this file, and for a DISCLAIMER OF ALL WARRANTIES.
16//============================================================================
17
18#ifndef PADDLE_WIDGET_HXX
19#define PADDLE_WIDGET_HXX
20
21class Controller;
22
23#include "ControllerWidget.hxx"
24
25class PaddleWidget : public ControllerWidget
26{
27 public:
28 PaddleWidget(GuiObject* boss, const GUI::Font& font, int x, int y,
29 Controller& controller);
30 virtual ~PaddleWidget() = default;
31
32 private:
33 enum { kP0Changed = 'P0ch', kP1Changed = 'P1ch',
34 kP0Fire = 'P0fr', kP1Fire = 'P1fr' };
35
36 SliderWidget *myP0Resistance, *myP1Resistance;
37 CheckboxWidget *myP0Fire, *myP1Fire;
38
39 private:
40 void loadConfig() override;
41 void handleCommand(CommandSender* sender, int cmd, int data, int id) override;
42
43 // Following constructors and assignment operators not supported
44 PaddleWidget() = delete;
45 PaddleWidget(const PaddleWidget&) = delete;
46 PaddleWidget(PaddleWidget&&) = delete;
47 PaddleWidget& operator=(const PaddleWidget&) = delete;
48 PaddleWidget& operator=(PaddleWidget&&) = delete;
49};
50
51#endif
52