diff options
author | Ľubomír Remák | 2018-07-08 17:06:41 +0200 |
---|---|---|
committer | Eugene Sandulenko | 2018-08-25 23:12:01 +0200 |
commit | 20d6d71ec97c1f7bc4b95ed6c98375b47dff6646 (patch) | |
tree | 527a0c509903ac64e9ea878aedd6421932bdd11c /engines/mutationofjb/widgets/conversationwidget.h | |
parent | f102667fc20d91149b685aac1bb5b05cabbc6e2b (diff) | |
download | scummvm-rg350-20d6d71ec97c1f7bc4b95ed6c98375b47dff6646.tar.gz scummvm-rg350-20d6d71ec97c1f7bc4b95ed6c98375b47dff6646.tar.bz2 scummvm-rg350-20d6d71ec97c1f7bc4b95ed6c98375b47dff6646.zip |
MUTATIONOFJB: Basic conversation support.
Diffstat (limited to 'engines/mutationofjb/widgets/conversationwidget.h')
-rw-r--r-- | engines/mutationofjb/widgets/conversationwidget.h | 15 |
1 files changed, 13 insertions, 2 deletions
diff --git a/engines/mutationofjb/widgets/conversationwidget.h b/engines/mutationofjb/widgets/conversationwidget.h index 0f26a99d3f..b404abc198 100644 --- a/engines/mutationofjb/widgets/conversationwidget.h +++ b/engines/mutationofjb/widgets/conversationwidget.h @@ -28,21 +28,32 @@ namespace MutationOfJB { +class ConversationWidget; + +class ConversationWidgetCallback { +public: + virtual ~ConversationWidgetCallback() {} + virtual void onResponseClicked(ConversationWidget *, int response) = 0; +}; + class ConversationWidget : public Widget { public: enum { CONVERSATION_LINES = 4 }; ConversationWidget(Gui &gui, const Common::Rect &area, const Graphics::Surface &surface); + void setCallback(ConversationWidgetCallback *callback) { _callback = callback; } void setLine(int lineNo, const Common::String &str); + virtual void handleEvent(const Common::Event &event) override; + protected: - void _draw(Graphics::ManagedSurface &surface); + virtual void _draw(Graphics::ManagedSurface &surface) override; private: - Graphics::Surface _surface; Common::String _lines[CONVERSATION_LINES]; + ConversationWidgetCallback *_callback; }; } |