1 /* 2 * Patchbay Canvas engine using QGraphicsView/Scene 3 * Copyright (C) 2010-2012 Filipe Coelho <falktx@falktx.com> 4 * 5 * This program is free software; you can redistribute it and/or modify 6 * it under the terms of the GNU General Public License as published by 7 * the Free Software Foundation; either version 2 of the License, or 8 * any later version. 9 * 10 * This program is distributed in the hope that it will be useful, 11 * but WITHOUT ANY WARRANTY; without even the implied warranty of 12 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the 13 * GNU General Public License for more details. 14 * 15 * For a full copy of the GNU General Public License see the COPYING file 16 */ 17 18 #ifndef PATCHCANVAS_THEME_H 19 #define PATCHCANVAS_THEME_H 20 21 #include <QtGui/QColor> 22 #include <QtGui/QFont> 23 #include <QtGui/QPen> 24 25 #include "../patchcanvas.h" 26 27 START_NAMESPACE_PATCHCANVAS 28 29 class Theme 30 { 31 public: 32 enum PortType { 33 THEME_PORT_SQUARE = 0, 34 THEME_PORT_POLYGON = 1 35 }; 36 37 enum List { 38 THEME_MODERN_DARK = 0, 39 THEME_CLASSIC_DARK = 1, 40 THEME_MAX = 2 41 }; 42 43 Theme(List id); 44 45 // Canvas 46 QString name; 47 48 // Boxes 49 QColor canvas_bg; 50 QPen box_pen; 51 QPen box_pen_sel; 52 QColor box_bg_1; 53 QColor box_bg_2; 54 QColor box_shadow; 55 QPen box_text; 56 QString box_font_name; 57 int box_font_size; 58 QFont::Weight box_font_state; 59 60 // Ports 61 QPen port_audio_jack_pen; 62 QPen port_audio_jack_pen_sel; 63 QPen port_midi_jack_pen; 64 QPen port_midi_jack_pen_sel; 65 QPen port_midi_a2j_pen; 66 QPen port_midi_a2j_pen_sel; 67 QPen port_midi_alsa_pen; 68 QPen port_midi_alsa_pen_sel; 69 QColor port_audio_jack_bg; 70 QColor port_audio_jack_bg_sel; 71 QColor port_midi_jack_bg; 72 QColor port_midi_jack_bg_sel; 73 QColor port_midi_a2j_bg; 74 QColor port_midi_a2j_bg_sel; 75 QColor port_midi_alsa_bg; 76 QColor port_midi_alsa_bg_sel; 77 QPen port_text; 78 QString port_font_name; 79 int port_font_size; 80 QFont::Weight port_font_state; 81 PortType port_mode; 82 83 // Lines 84 QColor line_audio_jack; 85 QColor line_audio_jack_sel; 86 QColor line_audio_jack_glow; 87 QColor line_midi_jack; 88 QColor line_midi_jack_sel; 89 QColor line_midi_jack_glow; 90 QColor line_midi_a2j; 91 QColor line_midi_a2j_sel; 92 QColor line_midi_a2j_glow; 93 QColor line_midi_alsa; 94 QColor line_midi_alsa_sel; 95 QColor line_midi_alsa_glow; 96 QPen rubberband_pen; 97 QColor rubberband_brush; 98 }; 99 100 END_NAMESPACE_PATCHCANVAS 101 102 #endif // PATCHCANVAS_THEME_H 103