Mercurial > hg > octave-nkf
annotate libgui/src/color-picker.h @ 16402:7fa90eb41240
gui: individually configurable styles of the editor lexers
* color-picker.cc/.h: new class for a simple color picker
* libgui/src/module.mk: added color-picker.cc/.h
* file-editor-tab.cc(update_lexer): read config of the lexer from settings file
* file-editor-tab(notice_settings): editor font not directly configured from
the settings file but via the lexer settings in update_lexer
* lexer-octave-gui.cc(constructor): inherits from QsciLexerOctave instaead of
QsciLexer, code cleanup
* lexer-octave-gui.cc(language,lexer,defaultFont,defaultColor,description):
removed, original methods used and configured via settings
* lexer-octave-gui.h: removed functions language,lexer,defaultFont,defaultColor,
description and enum; using methods of octave lexer instead
* settings-dialog.cc(constructor): editor font not configured from settings,
defining lexers for supported languages and reading their actual settings
from the settings file (via read_lexer_settings)
* settings-dialog.cc(read_lexer_settings): new function for reading the lexers
settings from settings file and creating the tabs with interactive elements
for configuring these settings
* settings-dialog.cc(write_changed_settings): remove settings for editor font,
defining lexers for supported languages and writing the settings from the
dialog into the settings file (via write_lexer_settings)
* settings-dialog.cc(write_lexer_settings): new funciton for getting the new
lexer settings from the interactive elements and write them into the settings
file
* settings-dialog.h: new functiond read_lexer_settings, write_lexer_settings
* settings-dialog.ui: new tab for the editor styles which contents is
dynamically created in settings_dialog ()
author | Torsten <ttl@justmail.de> |
---|---|
date | Sun, 31 Mar 2013 23:56:11 +0200 |
parents | |
children | e2de3c8882be |
rev | line source |
---|---|
16402
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
1 // |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
2 // This class provides a simple color picker based on tQColorButton |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
3 // by Harald Jedele, 23.03.01, GPL version 2 or any later version. |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
4 // |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
5 // Copyright (C) FZI Forschungszentrum Informatik Karlsruhe |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
6 // Copyright (C) 2013 Torsten <ttl@justmail.de> |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
7 // |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
8 // This file is part of Octave. |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
9 // |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
10 // Octave is free software; you can redistribute it and/or modify it |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
11 // under the terms of the GNU General Public License as published by the |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
12 // Free Software Foundation; either version 3 of the License, or (at your |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
13 // option) any later version. |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
14 // |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
15 // Octave is distributed in the hope that it will be useful, but WITHOUT |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
16 // ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
17 // FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
18 // for more details. |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
19 // |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
20 // You should have received a copy of the GNU General Public License |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
21 // along with Octave; see the file COPYING. If not, see |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
22 // <http://www.gnu.org/licenses/>. |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
23 // |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
24 |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
25 #ifndef COLORPICKER_H |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
26 #define COLORPICKER_H |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
27 |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
28 #include <QPushButton> |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
29 #include <QColorDialog> |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
30 |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
31 class color_picker: public QPushButton |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
32 { |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
33 Q_OBJECT |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
34 |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
35 public: |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
36 color_picker (QColor color = QColor(0,0,0), QWidget *parent = 0); |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
37 QColor color () const { return _color; } |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
38 |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
39 private slots: |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
40 void select_color (); |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
41 |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
42 private: |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
43 virtual void update_button (); |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
44 QColor _color; |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
45 }; |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
46 |
7fa90eb41240
gui: individually configurable styles of the editor lexers
Torsten <ttl@justmail.de>
parents:
diff
changeset
|
47 #endif |