Antares Simulator
Power System Simulator
panel.h
1 /*
2  * Copyright 2007-2025, RTE (https://www.rte-france.com)
3  * See AUTHORS.txt
4  * SPDX-License-Identifier: MPL-2.0
5  * This file is part of Antares-Simulator,
6  * Adequacy and Performance assessment for interconnected energy networks.
7  *
8  * Antares_Simulator is free software: you can redistribute it and/or modify
9  * it under the terms of the Mozilla Public Licence 2.0 as published by
10  * the Mozilla Foundation, either version 2 of the License, or
11  * (at your option) any later version.
12  *
13  * Antares_Simulator is distributed in the hope that it will be useful,
14  * but WITHOUT ANY WARRANTY; without even the implied warranty of
15  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16  * Mozilla Public Licence 2.0 for more details.
17  *
18  * You should have received a copy of the Mozilla Public Licence 2.0
19  * along with Antares_Simulator. If not, see <https://opensource.org/license/mpl-2-0/>.
20  */
21 #ifndef __ANTARES_WINDOW_RENEWABLE_PANEL_H__
22 #define __ANTARES_WINDOW_RENEWABLE_PANEL_H__
23 
24 // #include "../../toolbox/wx-wrapper.h"
25 #include "../../toolbox/input/area.h"
26 #include "../../toolbox/components/notebook/notebook.h"
27 // #include <ui/common/component/panel.h>
28 // #include <antares/study/area/area.h>
29 // #include <antares/study/parts/thermal/cluster.h>
30 
31 #include <antares/study/parts/renewable/cluster.h>
32 
33 namespace Antares::Window::Renewable
34 {
35 class Panel: public Component::Panel, public Yuni::IEventObserver<Panel>
36 {
37 public:
39 
40 
45  Panel(Component::Notebook* parent);
47  virtual ~Panel();
49 
50 public:
57 
58 private:
60  void onClusterChanged(Data::RenewableCluster* cluster);
62  void onAreaChangedForData(Data::Area* area);
64  void onPageChanged(Component::Notebook::Page&);
66  void onStudyLoaded();
68  void internalOnStudyLoaded();
70  void delayedResizeSplitter();
71 
72 private:
73  Component::Notebook* pNotebookCluster;
74  Data::Area* pAreaForCommonData;
75  Toolbox::InputSelector::Area* pAreaSelector;
77  uint64_t pStudyRevisionIncrement;
84  wxSplitterWindow* pSplitter;
85 
86 }; // class Panel
87 
88 } // namespace Antares::Window::Renewable
89 
90 #endif // __ANTARES_WINDOW_RENEWABLE_PANEL_H__
Definition: notebook.h:61
Notebook.
Definition: notebook.h:36
Panel implementation.
Definition: panel.h:34
Definition for a single area.
Definition: area.h:51
Definition: cluster.h:40
Visual Component for displaying all available areas (and groups)
Definition: area.h:37
Definition: panel.h:36
Panel(Component::Notebook *parent)
Constructor.
Definition: panel.cpp:38
Component::Notebook::Page * pageRenewableTimeSeries
The page related to the cluster's timeseries.
Definition: panel.h:52
Component::Notebook::Page * pageRenewableCommon
The page related to the cluster's properties.
Definition: panel.h:54
Component::Notebook::Page * pageRenewableClusterList
The page related to the cluster list view.
Definition: panel.h:56
virtual ~Panel()
Destructor.
Definition: panel.cpp:130