#pragma once

#include "ann_one_hour.hh"
#include "../../TradeCore/trade_data.hh"
#include <QWidget>

namespace Ui {
    class InfoWidget;
}

/**
 * @brief Shows information about current neural network and trades
 */
class InfoWidget : public QWidget
{
    Q_OBJECT

public:
    explicit InfoWidget(QWidget* parent = nullptr);
    ~InfoWidget();
    void networkOutput(double value);
    void tradingTime(bool isTradingTime);
    void networkInfo(const NetworkInfo& networkInfo);
    void orders(const std::vector<Order>& orders);

private:
    void clearBuyOrder();
    void buyOrder(const Order& buyOrder);
    void clearSellOrder();
    void sellOrder(const Order& sellOrder);

private:
    Ui::InfoWidget* ui_;
};
