make designMode property available from js
[kdelibs.git] / kate / tests / arbitraryhighlighttest.h
blobe135e4bfe18098be9df474acb76253ead793f690
1 /* This file is part of the KDE libraries
2 Copyright (C) 2005 Hamish Rodda <rodda@kde.org>
4 This library is free software; you can redistribute it and/or
5 modify it under the terms of the GNU Library General Public
6 License version 2 as published by the Free Software Foundation.
8 This library is distributed in the hope that it will be useful,
9 but WITHOUT ANY WARRANTY; without even the implied warranty of
10 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
11 Library General Public License for more details.
13 You should have received a copy of the GNU Library General Public License
14 along with this library; see the file COPYING.LIB. If not, write to
15 the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
16 Boston, MA 02110-1301, USA.
19 #ifndef ARBITRARYHIGHLIGHTTEST_H
20 #define ARBITRARYHIGHLIGHTTEST_H
22 #include <QtCore/QObject>
24 namespace KTextEditor {
25 class Document;
26 class SmartInterface;
27 class SmartRange;
28 class View;
31 /**
32 Uses the arbitrary highlight interface to show off some capabilities.
34 @author Hamish Rodda <rodda@kde.org>
36 class ArbitraryHighlightTest : public QObject
38 Q_OBJECT
40 public:
41 ArbitraryHighlightTest(KTextEditor::Document* parent = 0L);
42 virtual ~ArbitraryHighlightTest();
44 KTextEditor::Document* doc() const;
45 KTextEditor::SmartInterface* smart() const;
47 private Q_SLOTS:
48 void slotRangeChanged(KTextEditor::SmartRange* range, KTextEditor::SmartRange* mostSpecificChild);
49 void slotRangeDeleted(KTextEditor::SmartRange* range);
50 void slotCreateTopRange();
51 void slotMouseEnteredRange(KTextEditor::SmartRange* range, KTextEditor::View* view);
52 void slotMouseExitedRange(KTextEditor::SmartRange* range, KTextEditor::View* view);
53 void slotCaretEnteredRange(KTextEditor::SmartRange* range, KTextEditor::View* view);
54 void slotCaretExitedRange(KTextEditor::SmartRange* range, KTextEditor::View* view);
56 private:
57 void outputRange(KTextEditor::SmartRange* range, KTextEditor::SmartRange * mostSpecific);
59 KTextEditor::SmartRange* m_topRange;
62 #endif