Files
oak-editor/app/window/mainwindow/mainwindowlayoutinfo.h
T
itsmattkc 25b6b07a06 Squashed commit of the following:
commit 60c0f65c5e3c2faf1f7b0ae10b4131dabbcf715b
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Wed Feb 15 22:34:16 2023 -0800

    mainwindow: don't close last timeline panel when removing sequence

commit bc892810d67c1dd4f9c0639767c563681f29701d
Merge: 69051a120 aef08f8cd
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Tue Feb 14 17:05:25 2023 -0800

    Merge branch 'master' into kddockwidgets

commit 69051a120b8423d0ad7b38def2f7555d323cd74d
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Tue Feb 14 15:29:24 2023 -0800

    finished kddockwidgets integration

commit 9a39dbeade871a0b9454b424c7f7a7482671d40b
Author: itsmattkc <34096995+itsmattkc@users.noreply.github.com>
Date:   Tue Feb 14 11:54:25 2023 -0800

    switch to kddockwidgets
2023-02-16 00:44:08 -08:00

76 lines
1.5 KiB
C++

#ifndef MAINWINDOWLAYOUTINFO_H
#define MAINWINDOWLAYOUTINFO_H
#include "node/project/folder/folder.h"
#include "node/project/sequence/sequence.h"
#include "panel/panel.h"
namespace olive {
class MainWindowLayoutInfo
{
public:
MainWindowLayoutInfo() = default;
void toXml(QXmlStreamWriter* writer) const;
static MainWindowLayoutInfo fromXml(QXmlStreamReader* reader, const QHash<quintptr, Node*> &node_map);
void add_folder(Folder* f);
void add_sequence(Sequence *seq);
void add_viewer(ViewerOutput *viewer);
void set_panel_data(const QString &id, const PanelWidget::Info &data);
void move_panel_data(const QString &old, const QString &now);
void set_state(const QByteArray& layout);
const std::vector<Folder*>& open_folders() const
{
return open_folders_;
}
const std::vector<Sequence*>& open_sequences() const
{
return open_sequences_;
}
const std::vector<ViewerOutput*>& open_viewers() const
{
return open_viewers_;
}
const std::map<QString, PanelWidget::Info> &panel_data() const
{
return panel_data_;
}
const QByteArray& state() const
{
return state_;
}
private:
QByteArray state_;
std::vector<Folder*> open_folders_;
std::vector<Sequence*> open_sequences_;
std::vector<ViewerOutput*> open_viewers_;
std::map<QString, PanelWidget::Info> panel_data_;
static const unsigned int kVersion = 1;
};
}
Q_DECLARE_METATYPE(olive::MainWindowLayoutInfo)
#endif // MAINWINDOWLAYOUTINFO_H