summaryrefslogtreecommitdiffstats
path: root/src/gui/Style.hpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/gui/Style.hpp')
-rw-r--r--src/gui/Style.hpp56
1 files changed, 56 insertions, 0 deletions
diff --git a/src/gui/Style.hpp b/src/gui/Style.hpp
new file mode 100644
index 00000000..bb403ffd
--- /dev/null
+++ b/src/gui/Style.hpp
@@ -0,0 +1,56 @@
+/*
+ This file is part of Ingen.
+ Copyright 2007-2015 David Robillard <http://drobilla.net/>
+
+ Ingen is free software: you can redistribute it and/or modify it under the
+ terms of the GNU Affero General Public License as published by the Free
+ Software Foundation, either version 3 of the License, or any later version.
+
+ Ingen is distributed in the hope that it will be useful, but WITHOUT ANY
+ WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR
+ A PARTICULAR PURPOSE. See the GNU Affero General Public License for details.
+
+ You should have received a copy of the GNU Affero General Public License
+ along with Ingen. If not, see <http://www.gnu.org/licenses/>.
+*/
+
+#ifndef INGEN_GUI_STYLE_HPP
+#define INGEN_GUI_STYLE_HPP
+
+#include <cstdint>
+#include <string>
+
+namespace ingen { namespace client { class PortModel; } }
+
+namespace ingen {
+namespace gui {
+
+class App;
+class Port;
+
+class Style
+{
+public:
+ explicit Style(App& app);
+
+ void load_settings(std::string filename = "");
+ void save_settings(std::string filename = "");
+
+ void apply_settings();
+
+ uint32_t get_port_color(const client::PortModel* p);
+
+private:
+ App& _app;
+
+ uint32_t _audio_port_color;
+ uint32_t _control_port_color;
+ uint32_t _cv_port_color;
+ uint32_t _event_port_color;
+ uint32_t _string_port_color;
+};
+
+} // namespace gui
+} // namespace ingen
+
+#endif // INGEN_GUI_STYLE_HPP