policy: add a simple policy stub, broke some layouting tho
[staging/windowmanager.git] / src / layout.hpp
index 109b9d2..b7a3c28 100644 (file)
@@ -1,6 +1,18 @@
-//
-// Created by mfritzsc on 6/27/17.
-//
+/*
+ * Copyright (C) 2017 Mentor Graphics Development (Deutschland) GmbH
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
 
 #ifndef TMCAGLWM_LAYOUT_HPP
 #define TMCAGLWM_LAYOUT_HPP
 
 namespace wm {
 
-// Areas and layouts are defined to have a name, let's just keep it this way,
-// we will not copy them around anyway.
-struct area {
-   std::string name;
-   genivi::rect rect;
-   uint32_t layer;  // i.e. zorder?
-};
+struct LayoutState {
+   int main{-1};
+   int sub{-1};
 
-struct layout {
-   static constexpr unsigned MAX_N_AREAS = 2;
+   bool operator==(const LayoutState &b) const {
+      return main == b.main && sub == b.sub;
+   }
 
-   std::string name;
-   uint32_t n_areas;
-   struct area areas[MAX_N_AREAS];
+   bool operator!=(const LayoutState &b) const {
+      return !(*this == b);
+   }
 };
 
-typedef std::vector<struct layout> layouts_type;
-
 }  // namespace wm
 
 #endif  // TMCAGLWM_LAYOUT_HPP