view libgui/src/m-editor/lexer-octave-gui.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 c22a6cecaedd
children 3781abc74540
line wrap: on
line source

/*

Copyright (C) 2011-2012 Jacob Dawid

This file is part of Octave.

Octave is free software; you can redistribute it and/or modify it
under the terms of the GNU General Public License as published by the
Free Software Foundation; either version 3 of the License, or (at your
option) any later version.

Octave 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 General Public License
for more details.

You should have received a copy of the GNU General Public License
along with Octave; see the file COPYING.  If not, see
<http://www.gnu.org/licenses/>.

*/

#ifndef LEXEROCTAVE_H
#define LEXEROCTAVE_H

#include "resource-manager.h"
#include <QObject>
#include <Qsci/qsciglobal.h>
#include <Qsci/qscilexeroctave.h>
#include <Qsci/qsciapis.h>

class lexer_octave_gui : public QsciLexerOctave
{
  Q_OBJECT

public:

  lexer_octave_gui (QObject *parent = 0);
  ~lexer_octave_gui ();
  virtual const char *keywords (int set) const;

private:
  lexer_octave_gui (const lexer_octave_gui &);
  lexer_octave_gui &operator= (const lexer_octave_gui &);
  QsciAPIs *lexer_api;
};

#endif