2012-01-05 18:28:24 +00:00
|
|
|
//============================================================================
|
|
|
|
//
|
|
|
|
// SSSS tt lll lll
|
|
|
|
// SS SS tt ll ll
|
|
|
|
// SS tttttt eeee ll ll aaaa
|
|
|
|
// SSSS tt ee ee ll ll aa
|
|
|
|
// SS tt eeeeee ll ll aaaaa -- "An Atari 2600 VCS Emulator"
|
|
|
|
// SS SS tt ee ll ll aa aa
|
|
|
|
// SSSS ttt eeeee llll llll aaaaa
|
|
|
|
//
|
2015-12-29 19:22:46 +00:00
|
|
|
// Copyright (c) 1995-2016 by Bradford W. Mott, Stephen Anthony
|
2012-01-05 18:28:24 +00:00
|
|
|
// and the Stella Team
|
|
|
|
//
|
|
|
|
// See the file "License.txt" for information on usage and redistribution of
|
|
|
|
// this file, and for a DISCLAIMER OF ALL WARRANTIES.
|
|
|
|
//
|
|
|
|
// $Id$
|
|
|
|
//============================================================================
|
|
|
|
|
|
|
|
#ifndef CONTROLLER_WIDGET_HXX
|
|
|
|
#define CONTROLLER_WIDGET_HXX
|
|
|
|
|
|
|
|
class GuiObject;
|
|
|
|
class ButtonWidget;
|
|
|
|
|
|
|
|
#include "Widget.hxx"
|
|
|
|
#include "Command.hxx"
|
|
|
|
|
|
|
|
class ControllerWidget : public Widget, public CommandSender
|
|
|
|
{
|
|
|
|
public:
|
|
|
|
ControllerWidget(GuiObject* boss, const GUI::Font& font, int x, int y,
|
|
|
|
Controller& controller)
|
|
|
|
: Widget(boss, font, x, y, 16, 16),
|
|
|
|
CommandSender(boss),
|
2012-01-06 18:17:41 +00:00
|
|
|
myController(controller)
|
2012-01-05 18:28:24 +00:00
|
|
|
{
|
2012-01-07 00:39:46 +00:00
|
|
|
_w = 18 * font.getMaxCharWidth();
|
|
|
|
_h = 8 * font.getLineHeight();
|
2012-01-05 18:28:24 +00:00
|
|
|
}
|
|
|
|
|
2015-12-29 22:39:08 +00:00
|
|
|
virtual ~ControllerWidget() = default;
|
2012-01-05 18:28:24 +00:00
|
|
|
|
2015-09-14 18:14:00 +00:00
|
|
|
virtual void loadConfig() override { }
|
2012-01-05 18:28:24 +00:00
|
|
|
|
|
|
|
protected:
|
2012-01-06 18:17:41 +00:00
|
|
|
Controller& myController;
|
2015-04-26 19:02:42 +00:00
|
|
|
|
|
|
|
private:
|
2015-09-14 18:14:00 +00:00
|
|
|
virtual void handleCommand(CommandSender* sender, int cmd, int data, int id) override { }
|
2015-07-10 18:59:03 +00:00
|
|
|
|
2015-04-26 19:02:42 +00:00
|
|
|
// Following constructors and assignment operators not supported
|
|
|
|
ControllerWidget() = delete;
|
|
|
|
ControllerWidget(const ControllerWidget&) = delete;
|
|
|
|
ControllerWidget(ControllerWidget&&) = delete;
|
|
|
|
ControllerWidget& operator=(const ControllerWidget&) = delete;
|
|
|
|
ControllerWidget& operator=(ControllerWidget&&) = delete;
|
2012-01-05 18:28:24 +00:00
|
|
|
};
|
|
|
|
|
|
|
|
#endif
|