Lumiera  0.pre.03
»edit your freedom«
interaction-state.hpp
Go to the documentation of this file.
1 /*
2  INTERACTION-STATE.hpp - facility to watch and guide one aspect of UI interaction
3 
4  Copyright (C)
5  2015, Hermann Vosseler <Ichthyostega@web.de>
6 
7   **Lumiera** is free software; you can redistribute it and/or modify it
8   under the terms of the GNU General Public License as published by the
9   Free Software Foundation; either version 2 of the License, or (at your
10   option) any later version. See the file COPYING for further details.
11 
12 */
13 
14 
36 #ifndef STAGE_INTERACT_INTERACTION_STATE_H
37 #define STAGE_INTERACT_INTERACTION_STATE_H
38 
39 
40 #include "lib/error.hpp"
41 #include "lib/nocopy.hpp"
42 //#include "stage/ctrl/bus-term.hpp"
43 //#include "lib/idi/entry-id.hpp"
44 #include "lib/symbol.hpp"
45 //#include "lib/util.hpp"
46 
47 //#include <string>
48 
49 
50 namespace stage {
51 namespace interact {
52 
53 // using lib::HashVal;
54  using lib::Symbol;
55 // using util::isnil;
56 // using std::string;
57 
58  class Subject;
59 
60 
78  {
79  protected:
80  virtual ~InteractionState();
81 
82  public:
96  virtual void linkTrigger (Subject&, Symbol cmdID) =0;
97 
98  private:
99  };
100 
101 
102 
103 }} // namespace stage::interact
104 #endif /*STAGE_INTERACT_INTERACTION_STATE_H*/
Any copy and copy construction prohibited.
Definition: nocopy.hpp:37
Abstract foundation for context dependent UI interactions.
virtual ~InteractionState()
this is an interface
Token or Atom with distinct identity.
Definition: symbol.hpp:117
Mix-Ins to allow or prohibit various degrees of copying and cloning.
Marker types to indicate a literal string and a Symbol.
Lumiera GTK UI implementation root.
Definition: guifacade.cpp:37
Lumiera error handling (C++ interface).
virtual void linkTrigger(Subject &, Symbol cmdID)=0
Hook up a trigger signal to initiate a specific interaction gesture.
Role-Interface: the Subject of Interaction.