You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
654 lines
15 KiB
654 lines
15 KiB
// This module implements the QextScintillaCommandSet class.
|
|
//
|
|
// Copyright (c) 2006
|
|
// Riverbank Computing Limited <info@riverbankcomputing.co.uk>
|
|
//
|
|
// This file is part of TQScintilla.
|
|
//
|
|
// This copy of TQScintilla 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 2, or (at your option) any
|
|
// later version.
|
|
//
|
|
// TQScintilla is supplied 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
|
|
// TQScintilla; see the file LICENSE. If not, write to the Free Software
|
|
// Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
|
|
|
|
|
#include <tqsettings.h>
|
|
|
|
#include "qextscintillacommandset.h"
|
|
#include "qextscintillacommand.h"
|
|
#include "qextscintilla.h"
|
|
|
|
|
|
// The ctor.
|
|
QextScintillaCommandSet::QextScintillaCommandSet(QextScintilla *qs) : qsci(qs)
|
|
{
|
|
struct sci_cmd {
|
|
int msg;
|
|
int key;
|
|
int altkey;
|
|
const char *desc;
|
|
};
|
|
|
|
// This is based on the default table in src/KeyMap.cxx.
|
|
static struct sci_cmd cmd_table[] = {
|
|
{
|
|
QextScintillaBase::SCI_LINEDOWN,
|
|
TQt::Key_Down,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move down one line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINEDOWNEXTEND,
|
|
TQt::Key_Down | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection down one line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINESCROLLDOWN,
|
|
TQt::Key_Down | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Scroll view down one line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINEDOWNRECTEXTEND,
|
|
TQt::Key_Down | TQt::ALT | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend rectangular selection down one line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINEUP,
|
|
TQt::Key_Up,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move up one line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINEUPEXTEND,
|
|
TQt::Key_Up | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection up one line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINESCROLLUP,
|
|
TQt::Key_Up | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Scroll view up one line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINEUPRECTEXTEND,
|
|
TQt::Key_Up | TQt::ALT | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend rectangular selection up one line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_PARAUP,
|
|
TQt::Key_BracketLeft | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move up one paragraph")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_PARAUPEXTEND,
|
|
TQt::Key_BracketLeft | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection up one paragraph")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_PARADOWN,
|
|
TQt::Key_BracketRight | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move down one paragraph")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_PARADOWNEXTEND,
|
|
TQt::Key_BracketRight | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection down one paragraph")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_CHARLEFT,
|
|
TQt::Key_Left,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move left one character")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_CHARLEFTEXTEND,
|
|
TQt::Key_Left | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection left one character")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_WORDLEFT,
|
|
TQt::Key_Left | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move left one word")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_WORDLEFTEXTEND,
|
|
TQt::Key_Left | TQt::SHIFT | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection left one word")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_CHARLEFTRECTEXTEND,
|
|
TQt::Key_Left | TQt::ALT | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend rectangular selection left one character")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_CHARRIGHT,
|
|
TQt::Key_Right,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move right one character")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_CHARRIGHTEXTEND,
|
|
TQt::Key_Right | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection right one character")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_WORDRIGHT,
|
|
TQt::Key_Right | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move right one word")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_WORDRIGHTEXTEND,
|
|
TQt::Key_Right | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection right one word")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_CHARRIGHTRECTEXTEND,
|
|
TQt::Key_Right | TQt::ALT | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend rectangular selection right one character")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_WORDPARTLEFT,
|
|
TQt::Key_Slash | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move left one word part")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_WORDPARTLEFTEXTEND,
|
|
TQt::Key_Slash | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection left one word part")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_WORDPARTRIGHT,
|
|
TQt::Key_Backslash | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move right one word part")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_WORDPARTRIGHTEXTEND,
|
|
TQt::Key_Backslash | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection right one word part")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_VCHOME,
|
|
TQt::Key_Home,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move to first visible character in line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_VCHOMEEXTEND,
|
|
TQt::Key_Home | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection to first visible character in line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_DOCUMENTSTART,
|
|
TQt::Key_Home | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move to start of text")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_DOCUMENTSTARTEXTEND,
|
|
TQt::Key_Home | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection to start of text")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_HOMEDISPLAY,
|
|
TQt::Key_Home | TQt::ALT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move to start of displayed line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_HOMEDISPLAYEXTEND,
|
|
0,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection to start of line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_VCHOMERECTEXTEND,
|
|
TQt::Key_Home | TQt::ALT | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend rectangular selection to first visible character in line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINEEND,
|
|
TQt::Key_End,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move to end of line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINEENDEXTEND,
|
|
TQt::Key_End | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection to end of line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_DOCUMENTEND,
|
|
TQt::Key_End | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move to end of text")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_DOCUMENTENDEXTEND,
|
|
TQt::Key_End | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection to end of text")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINEENDDISPLAY,
|
|
TQt::Key_End | TQt::ALT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move to end of displayed line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINEENDDISPLAYEXTEND,
|
|
0,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection to end of displayed line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINEENDRECTEXTEND,
|
|
TQt::Key_End | TQt::ALT | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend rectangular selection to end of line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_PAGEUP,
|
|
TQt::Key_Prior,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move up one page")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_PAGEUPEXTEND,
|
|
TQt::Key_Prior | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection up one page")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_PAGEUPRECTEXTEND,
|
|
TQt::Key_Prior | TQt::ALT | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend rectangular selection up one page")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_PAGEDOWN,
|
|
TQt::Key_Next,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move down one page")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_PAGEDOWNEXTEND,
|
|
TQt::Key_Next | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend selection down one page")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_PAGEDOWNRECTEXTEND,
|
|
TQt::Key_Next | TQt::ALT | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Extend rectangular selection down one page")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_CLEAR,
|
|
TQt::Key_Delete,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Delete current character")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_CUT,
|
|
TQt::Key_X | TQt::CTRL,
|
|
TQt::Key_Delete | TQt::SHIFT,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Cut selection")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_DELWORDRIGHT,
|
|
TQt::Key_Delete | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Delete word to right")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_DELLINERIGHT,
|
|
TQt::Key_Delete | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Delete line to right")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_EDITTOGGLEOVERTYPE,
|
|
TQt::Key_Insert,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Toggle insert/overtype")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_PASTE,
|
|
TQt::Key_V | TQt::CTRL,
|
|
TQt::Key_Insert | TQt::SHIFT,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Paste")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_COPY,
|
|
TQt::Key_C | TQt::CTRL,
|
|
TQt::Key_Insert | TQt::CTRL,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Copy selection")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_CANCEL,
|
|
TQt::Key_Escape,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Cancel")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_DELETEBACK,
|
|
TQt::Key_Backspace,
|
|
TQt::Key_Backspace | TQt::SHIFT,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Delete previous character")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_DELWORDLEFT,
|
|
TQt::Key_Backspace | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Delete word to left")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_UNDO,
|
|
TQt::Key_Z | TQt::CTRL,
|
|
TQt::Key_Backspace | TQt::ALT,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Undo the last command")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_DELLINELEFT,
|
|
TQt::Key_Backspace | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Delete line to left")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_REDO,
|
|
TQt::Key_Y | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Redo last command")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_SELECTALL,
|
|
TQt::Key_A | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Select all text")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_TAB,
|
|
TQt::Key_Tab,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Indent one level")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_BACKTAB,
|
|
TQt::Key_Tab | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Move back one indentation level")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_NEWLINE,
|
|
TQt::Key_Return,
|
|
TQt::Key_Return | TQt::SHIFT,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Insert new line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_ZOOMIN,
|
|
TQt::Key_Plus | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Zoom in")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_ZOOMOUT,
|
|
TQt::Key_Minus | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Zoom out")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_SETZOOM,
|
|
0,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Set zoom")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_FORMFEED,
|
|
0,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Formfeed")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINECUT,
|
|
TQt::Key_L | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Cut current line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINEDELETE,
|
|
TQt::Key_L | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Delete current line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINECOPY,
|
|
TQt::Key_T | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Copy current line")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LINETRANSPOSE,
|
|
TQt::Key_T | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Swap current and previous lines")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_SELECTIONDUPLICATE,
|
|
TQt::Key_D | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Duplicate selection")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_LOWERCASE,
|
|
TQt::Key_U | TQt::CTRL,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Convert selection to lower case")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_UPPERCASE,
|
|
TQt::Key_U | TQt::CTRL | TQt::SHIFT,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Convert selection to upper case")
|
|
},
|
|
{
|
|
QextScintillaBase::SCI_DELETEBACKNOTLINE,
|
|
0,
|
|
0,
|
|
TQT_TRANSLATE_NOOP("QextScintillaCommand",
|
|
"Delete previous character if not at line start")
|
|
},
|
|
};
|
|
|
|
cmds.setAutoDelete(TRUE);
|
|
|
|
// Clear the default map.
|
|
qsci -> SendScintilla(QextScintillaBase::SCI_CLEARALLCMDKEYS);
|
|
|
|
for (int i = 0; i < sizeof (cmd_table) / sizeof (cmd_table[0]); ++i)
|
|
cmds.append(new QextScintillaCommand(qsci,cmd_table[i].msg,cmd_table[i].key,cmd_table[i].altkey,cmd_table[i].desc));
|
|
}
|
|
|
|
|
|
// Read the command set from settings.
|
|
bool QextScintillaCommandSet::readSettings(TQSettings &qs,const char *prefix)
|
|
{
|
|
bool rc = TRUE;
|
|
TQString skey;
|
|
|
|
for (QextScintillaCommand *cmd = cmds.first(); cmd; cmd = cmds.next())
|
|
{
|
|
skey.sprintf("%s/keymap/c%d/",prefix,cmd -> msgId());
|
|
|
|
int key;
|
|
bool ok;
|
|
|
|
// Read the key.
|
|
key = qs.readNumEntry(skey + "key",0,&ok);
|
|
|
|
if (ok)
|
|
cmd -> setKey(key);
|
|
else
|
|
rc = FALSE;
|
|
|
|
// Read the alternate key.
|
|
key = qs.readNumEntry(skey + "alt",0,&ok);
|
|
|
|
if (ok)
|
|
cmd -> setAlternateKey(key);
|
|
else
|
|
rc = FALSE;
|
|
}
|
|
|
|
return rc;
|
|
}
|
|
|
|
|
|
// Write the command set to settings.
|
|
bool QextScintillaCommandSet::writeSettings(TQSettings &qs,const char *prefix)
|
|
{
|
|
bool rc = TRUE;
|
|
TQString skey;
|
|
|
|
for (const QextScintillaCommand *cmd = cmds.first(); cmd; cmd = cmds.next())
|
|
{
|
|
skey.sprintf("%s/keymap/c%d/",prefix,cmd -> msgId());
|
|
|
|
// Write the key.
|
|
if (!qs.writeEntry(skey + "key",cmd -> key()))
|
|
rc = FALSE;
|
|
|
|
// Write the alternate key.
|
|
if (!qs.writeEntry(skey + "alt",cmd -> alternateKey()))
|
|
rc = FALSE;
|
|
}
|
|
|
|
return rc;
|
|
}
|
|
|
|
|
|
// Clear the key bindings.
|
|
void QextScintillaCommandSet::clearKeys()
|
|
{
|
|
TQPtrList<QextScintillaCommand> &set = commands();
|
|
|
|
for (QextScintillaCommand *cmd = set.first(); cmd; cmd = set.next())
|
|
cmd -> setKey(0);
|
|
}
|
|
|
|
|
|
// Clear the alternate key bindings.
|
|
void QextScintillaCommandSet::clearAlternateKeys()
|
|
{
|
|
TQPtrList<QextScintillaCommand> &set = commands();
|
|
|
|
for (QextScintillaCommand *cmd = set.first(); cmd; cmd = set.next())
|
|
cmd -> setAlternateKey(0);
|
|
}
|