#ifndef __MAIN_WINDOW_H__
#define __MAIN_WINDOW_H__

#include "MonitorWindow.h"

class MainWindow {
public:
    MainWindow();
    ~MainWindow();

    void initialize();
    void finalize();
    void show_all();

private:
    void initMonitors();
    void recreateMonitors();

    void onMonitorAdd(const Glib::RefPtr<Gdk::Monitor>& monitor);
    void onMonitorsChanged();

private:
    std::vector<MonitorWindow*> m_monitorWin;

    sigc::connection m_monitorAddIter;
    sigc::connection m_monitorsChangedIter;
};

#endif // __MAIN_WINDOW_H__