I am having problems with as to Glib::Timer seems to be no copyable on the code bellow
#ifndef _TIME_KEEPER_H_ #define _TIME_KEEPER_H_ #include <glibmm/datetime.h> #include <glibmm/timer.h> class Time_Keeper { public: void start_timer(){ /*timer.start();*/ }; void stop_timer(){ /*timer.stop();*/ }; void reset_timer(){ /*timer.reset();*/ }; std::string display_timer() { return "" /*( std::to_string(((int) (timer.elapsed()/3600)))+\ ":"+std::to_string(((int) (timer.elapsed()/60)))+\ ":"+std::to_string(timer.elapsed() ))*/; }; //const std::string hasheable (){ return (( const std::string) display_timer()); }; //Time_Keeper(){ start_time = Glib::DateTime::create_now_local(); }; //bool operator == ( Time_Keeper *t) { return t == this; }; protected: private: Glib::DateTime start_time; Glib::TimeSpan elapsed_time; //Glib::Timer timer; }; #endif // _TIME_KEEPER_H_ if I try to uncomment the timer variable I immediately get the error .../time_keeper/src/u-i-controller.cc:71:41: error: use of deleted function ‘Time_Keeper& Time_Keeper::operator=(const Time_Keeper&)’ 71 | bind_time [position] = *time; | ^~~~~ In file included from .../time_keeper/src/u-i-controller.h:26, from .../time_keeper/src/u-i-controller.cc:20: .../time_keeper/src/time-keeper.h:26:7: note: ‘Time_Keeper& Time_Keeper::operator=(const Time_Keeper&)’ is implicitly deleted because the default definition would be ill-formed: 26 | class Time_Keeper | ^~~~~~~~~~~ .../time_keeper/src/time-keeper.h:26:7: error: use of deleted function ‘Glib::Timer& Glib::Timer::operator=(const Glib::Timer&)’ In file included from /usr/include/glibmm-2.4/glibmm.h:158, ... 45 | Timer& operator=(const Timer&) = delete; It seems to be deliberately enforced for some reason, but is there some workaround? I was trying to show a couple of timers on the interface, which requires managing objects
_______________________________________________ gtkmm-list mailing list gtkmm-list@gnome.org https://mail.gnome.org/mailman/listinfo/gtkmm-list