Mcalc  0.1
a machinist's calculator
output.hpp
Go to the documentation of this file.
1 
12 #pragma once
13 #ifndef MCALC_OUTPUT_HPP
14 #define MCALC_OUTPUT_HPP
15 
16 #include <vector>
17 #include <gtkmm.h>
18 
19 #include "interface.hpp"
20 
21 namespace mc {
22 
23  class Event;
24 
29  class Output : public mc::Interface, public Gtk::Label {
30  private:
31  const Glib::RefPtr<Gtk::Builder>& glade_ref;
32  std::vector<mc::Interface*> references;
33  std::function<double(std::vector<mc::Interface*>)> calculator;
34 
35  public:
41  Output(BaseObjectType* cobject, const Glib::RefPtr<Gtk::Builder>& refGlade);
42 
44  ~Output();
45 
51  void notify(Event* e);
52 
57  void broadcast();
58 
64  void set_references( std::vector<mc::Interface*> r );
65 
72  void set_calculator( std::function<double(std::vector<mc::Interface*>)> f );
73 
78  std::string get_value();
79 
84  void set_value( double v );
85 
90  void set_value( std::string s );
91  };
92 
93 }
94 
95 #endif
Definition: broadcaster.cpp:4
void set_calculator(std::function< double(std::vector< mc::Interface * >)> f)
Definition: output.cpp:43
Definition: broadcaster.hpp:45
void set_value(double v)
Definition: output.cpp:51
void broadcast()
Definition: output.cpp:35
~Output()
Definition: output.cpp:14
void set_references(std::vector< mc::Interface * > r)
Definition: output.cpp:39
std::string get_value()
Definition: output.cpp:47
Output(BaseObjectType *cobject, const Glib::RefPtr< Gtk::Builder > &refGlade)
Definition: output.cpp:8
Definition: interface.hpp:54
The class definition file for the interface abstract base class.
Definition: output.hpp:29
void notify(Event *e)
Definition: output.cpp:18