Get rid of Qt related parts in core components
Open, NormalPublic

Description

e.g. use QString in UIs, but std:string in other parts

BAndiT1983 updated the task description. (Show Details)
BAndiT1983 raised the priority of this task from to Needs Triage.
BAndiT1983 added a project: Open Cine.
BAndiT1983 moved this task to Core on the Open Cine board.
BAndiT1983 added a subscriber: BAndiT1983.
BAndiT1983 added a comment.EditedMar 21 2015, 3:36 PM

Wink Signals: https://miguelmartin75.wordpress.com/2013/02/03/fast-c-template-event-system-queues-and-immediate-events/
Source: https://github.com/miguelmartin75/Wink-Signals

Fork (seems a little bit newer, extended a bit more): https://github.com/tankery/Wink-Signals

Currently trying to explore a way to use a central point to declare such things for decoupling, like Defines.h

template<class T>
using Slot = wink::slot<T>;

template<class T>
using Signal = wink::signal<T>;

class Manager
{
public:
  Signal<Slot<void()>> TestSignal;

  void FireSignal()
  {
    TestSignal.emit();
  }
};

class Client
{
public:
  Client(Manager* manager)
  {
    manager->TestSignal.connect(this, &Client::SignalHandler);
  }

private:
  void SignalHandler()
  {
    std::cout << "SignalHandler" << std::endl;
  }
};

Usage:
Manager manager;
Client client(&manager);
manager.FireSignal();

Still not succeeded (at least atm) to decouple signals/slots provided by Wink Signals to be able to change to another lib or to own implementation later.

BAndiT1983 moved this task from Core to Pending tasks on the Open Cine board.Mar 21 2015, 5:55 PM
BAndiT1983 triaged this task as Normal priority.
BAndiT1983 updated the task description. (Show Details)Mar 31 2015, 10:14 PM
BAndiT1983 updated the task description. (Show Details)
BAndiT1983 renamed this task from Get rid of Qt event system in the core components to Get rid of Qt related parts in core components.
BAndiT1983 updated the task description. (Show Details)