• Skip to content
  • Skip to link menu
KDE API Reference
  • KDE API Reference
  • applications API Reference
  • KDE Home
  • Contact Us
 

Kate

  • sources
  • kde-4.12
  • applications
  • kate
  • part
  • view
kateview.h
Go to the documentation of this file.
1  /* This file is part of the KDE libraries
2  Copyright (C) 2002 John Firebaugh <jfirebaugh@kde.org>
3  Copyright (C) 2001 Christoph Cullmann <cullmann@kde.org>
4  Copyright (C) 2001-2010 Joseph Wenninger <jowenn@kde.org>
5  Copyright (C) 1999 Jochen Wilhelmy <digisnap@cs.tu-berlin.de>
6 
7  This library is free software; you can redistribute it and/or
8  modify it under the terms of the GNU Library General Public
9  License version 2 as published by the Free Software Foundation.
10 
11  This library is distributed in the hope that it will be useful,
12  but WITHOUT ANY WARRANTY; without even the implied warranty of
13  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14  Library General Public License for more details.
15 
16  You should have received a copy of the GNU Library General Public License
17  along with this library; see the file COPYING.LIB. If not, write to
18  the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
19  Boston, MA 02110-1301, USA.
20 */
21 
22 #ifndef kate_view_h
23 #define kate_view_h
24 
25 #include <ktexteditor/view.h>
26 #include <ktexteditor/texthintinterface.h>
27 #include <ktexteditor/markinterface.h>
28 #include <ktexteditor/codecompletioninterface.h>
29 #include <ktexteditor/sessionconfiginterface.h>
30 #include <ktexteditor/templateinterface.h>
31 #include <ktexteditor/templateinterface2.h>
32 #include <ktexteditor/configinterface.h>
33 #include <ktexteditor/annotationinterface.h>
34 
35 #include <QtCore/QPointer>
36 #include <QModelIndex>
37 #include <QtGui/QMenu>
38 
39 #include <kdebug.h>
40 
41 #include "kateviinputmodemanager.h"
42 #include "katetextrange.h"
43 #include "katetextfolding.h"
44 #include "katerenderer.h"
45 
46 namespace KTextEditor
47 {
48  class AnnotationModel;
49  class Message;
50 }
51 
52 class KateDocument;
53 class KateBookmarks;
54 class KateCommandLineBar;
55 class KateViewConfig;
56 class KateRenderer;
57 class KateSpellCheckDialog;
58 class KateCompletionWidget;
59 class KateViewInternal;
60 class KateSearchBar;
61 class KateViEmulatedCommandBar;
62 class KateViewBar;
63 class KateGotoBar;
64 class KateDictionaryBar;
65 class KateSpellingMenu;
66 class KateScriptConsole;
67 class KateMessageWidget;
68 
69 class KToggleAction;
70 class KAction;
71 class KSelectAction;
72 
73 class QVBoxLayout;
74 
75 //
76 // Kate KTextEditor::View class ;)
77 //
78 class KATEPART_TESTS_EXPORT KateView : public KTextEditor::View,
79  public KTextEditor::TextHintInterface,
80  public KTextEditor::SessionConfigInterface,
81  public KTextEditor::TemplateInterface2,
82  public KTextEditor::CodeCompletionInterface,
83  public KTextEditor::ConfigInterface,
84  public KTextEditor::AnnotationViewInterface,
85  public KTextEditor::CoordinatesToCursorInterface
86 {
87  Q_OBJECT
88  Q_INTERFACES(KTextEditor::TextHintInterface)
89  Q_INTERFACES(KTextEditor::SessionConfigInterface)
90  Q_INTERFACES(KTextEditor::TemplateInterface)
91  Q_INTERFACES(KTextEditor::TemplateInterface2)
92  Q_INTERFACES(KTextEditor::ConfigInterface)
93  Q_INTERFACES(KTextEditor::CodeCompletionInterface)
94  Q_INTERFACES(KTextEditor::AnnotationViewInterface)
95  Q_INTERFACES(KTextEditor::CoordinatesToCursorInterface)
96 
97  friend class KateViewInternal;
98  friend class KateIconBorder;
99  friend class KateViModeBase;
100 
101  public:
102  KateView( KateDocument* doc, QWidget* parent );
103  ~KateView ();
104 
105  KTextEditor::Document *document () const;
106 
107  QString viewMode () const;
108 
109  //
110  // KTextEditor::ClipboardInterface
111  //
112  public Q_SLOTS:
113  void paste(const QString *textToPaste = 0);
114  void cut();
115  void copy() const;
116 
117  private Q_SLOTS:
121  void applyWordWrap ();
122 
123  //
124  // KTextEditor::PopupMenuInterface
125  //
126  public:
127  void setContextMenu( QMenu* menu );
128  QMenu* contextMenu() const;
129  QMenu* defaultContextMenu(QMenu* menu = 0L) const;
130 
131  private Q_SLOTS:
132  void aboutToShowContextMenu();
133  void aboutToHideContextMenu();
134 
135  private:
136  QPointer<QMenu> m_contextMenu;
137 
138  //
139  // KTextEditor::ViewCursorInterface
140  //
141  public:
150  void setCaretStyle( KateRenderer::caretStyles style, bool repaint = false );
151 
152  bool setCursorPosition (KTextEditor::Cursor position);
153 
154  KTextEditor::Cursor cursorPosition () const;
155 
156  KTextEditor::Cursor cursorPositionVirtual () const;
157 
158  QPoint cursorToCoordinate(const KTextEditor::Cursor& cursor) const;
159 
160  KTextEditor::Cursor coordinatesToCursor(const QPoint& coord) const;
161 
162  QPoint cursorPositionCoordinates() const;
163 
164  bool setCursorPositionVisual( const KTextEditor::Cursor& position );
165 
171  int virtualCursorColumn() const;
172 
173  virtual bool mouseTrackingEnabled() const;
174  virtual bool setMouseTrackingEnabled(bool enable);
175 
176  private:
177  void notifyMousePositionChanged(const KTextEditor::Cursor& newPosition);
178 
179  // Internal
180  public:
181  bool setCursorPositionInternal( const KTextEditor::Cursor& position, uint tabwidth = 1, bool calledExternally = false );
182 
183  //
184  // KTextEditor::ConfigInterface
185  //
186  public:
187  QStringList configKeys() const;
188  QVariant configValue(const QString &key);
189  void setConfigValue(const QString &key, const QVariant &value);
190 
191  Q_SIGNALS:
192  void configChanged();
193 
194  public:
200  void foldLine (int startLine);
201 
206  void unfoldLine (int startLine);
207 
208  //
209  // KTextEditor::CodeCompletionInterface2
210  //
211  public:
212  virtual bool isCompletionActive() const;
213  virtual void startCompletion(const KTextEditor::Range& word, KTextEditor::CodeCompletionModel* model);
214  virtual void abortCompletion();
215  virtual void forceCompletion();
216  virtual void registerCompletionModel(KTextEditor::CodeCompletionModel* model);
217  virtual void unregisterCompletionModel(KTextEditor::CodeCompletionModel* model);
218  virtual bool isAutomaticInvocationEnabled() const;
219  virtual void setAutomaticInvocationEnabled(bool enabled = true);
220 
221  Q_SIGNALS:
222  void completionExecuted(KTextEditor::View* view, const KTextEditor::Cursor& position, KTextEditor::CodeCompletionModel* model, const QModelIndex&);
223  void completionAborted(KTextEditor::View* view);
224 
225  public Q_SLOTS:
226  void userInvokedCompletion();
227 
228  public:
229  KateCompletionWidget* completionWidget() const;
230  mutable KateCompletionWidget* m_completionWidget;
231  void sendCompletionExecuted(const KTextEditor::Cursor& position, KTextEditor::CodeCompletionModel* model, const QModelIndex& index);
232  void sendCompletionAborted();
233 
234  //
235  // KTextEditor::TextHintInterface
236  //
237  public:
238  void enableTextHints(int timeout);
239  void disableTextHints();
240 
241  Q_SIGNALS:
242  void needTextHint(const KTextEditor::Cursor& position, QString &text);
243 
244  public:
245  bool dynWordWrap() const { return m_hasWrap; }
246 
247  //
248  // KTextEditor::SelectionInterface stuff
249  //
250  public Q_SLOTS:
251  virtual bool setSelection ( const KTextEditor::Range &selection );
252 
253  // unhide method...
254  bool setSelection (const KTextEditor::Cursor &c, int i, bool b)
255  { return KTextEditor::View::setSelection (c, i, b); }
256 
257  virtual bool removeSelection () { return clearSelection(); }
258 
259  virtual bool removeSelectionText () { return removeSelectedText(); }
260 
261  virtual bool setBlockSelection (bool on);
262  bool toggleBlockSelection ();
263 
264  bool clearSelection ();
265  bool clearSelection (bool redraw, bool finishedChangingSelection = true);
266 
267  bool removeSelectedText ();
268 
269  bool selectAll();
270 
271  public:
272  virtual bool selection() const;
273  virtual QString selectionText() const;
274  virtual bool blockSelection() const;
275  virtual const KTextEditor::Range &selectionRange() const;
276 
277  static void blockFix(KTextEditor::Range& range);
278 
279  private:
280  mutable KTextEditor::Range m_holdSelectionRangeForAPI;
281 
282  //
283  // Arbitrary Syntax HL + Action extensions
284  //
285  public:
286  // Action association extension
287  void deactivateEditActions();
288  void activateEditActions();
289 
290  //
291  // internal helper stuff, for katerenderer and so on
292  //
293  public:
294  // should cursor be wrapped ? take config + blockselection state in account
295  bool wrapCursor () const;
296 
297  // some internal functions to get selection state of a line/col
298  bool cursorSelected(const KTextEditor::Cursor& cursor);
299  bool lineSelected (int line);
300  bool lineEndSelected (const KTextEditor::Cursor& lineEndPos);
301  bool lineHasSelected (int line);
302  bool lineIsSelection (int line);
303 
304  void ensureCursorColumnValid();
305 
306  void tagSelection (const KTextEditor::Range &oldSelection);
307 
308  void selectWord( const KTextEditor::Cursor& cursor );
309  void selectLine( const KTextEditor::Cursor& cursor );
310 
311 
312  //BEGIN EDIT STUFF
313  public:
314  void editStart ();
315  void editEnd (int editTagLineStart, int editTagLineEnd, bool tagFrom);
316 
317  void editSetCursor (const KTextEditor::Cursor &cursor);
318  //END
319 
320  //BEGIN TAG & CLEAR
321  public:
322  bool tagLine (const KTextEditor::Cursor& virtualCursor);
323 
324  bool tagRange (const KTextEditor::Range& range, bool realLines = false);
325  bool tagLines (int start, int end, bool realLines = false );
326  bool tagLines (KTextEditor::Cursor start, KTextEditor::Cursor end, bool realCursors = false);
327  bool tagLines (KTextEditor::Range range, bool realRange = false);
328 
329  void tagAll ();
330 
331  void clear ();
332 
333  void repaintText (bool paintOnlyDirty = false);
334 
335  void updateView (bool changed = false);
336  //END
337 
338  //
339  // KTextEditor::AnnotationView
340  //
341  public:
342  void setAnnotationModel( KTextEditor::AnnotationModel* model );
343  KTextEditor::AnnotationModel* annotationModel() const;
344  void setAnnotationBorderVisible( bool visible);
345  bool isAnnotationBorderVisible() const;
346 
347  Q_SIGNALS:
348  void annotationContextMenuAboutToShow( KTextEditor::View* view, QMenu* menu, int line );
349  void annotationActivated( KTextEditor::View* view, int line );
350  void annotationBorderVisibilityChanged( View* view, bool visible );
351 
352  void navigateLeft();
353  void navigateRight();
354  void navigateUp();
355  void navigateDown();
356  void navigateAccept();
357  void navigateBack();
358 
359  private:
360  KTextEditor::AnnotationModel* m_annotationModel;
361 
362  //
363  // KTextEditor::View
364  //
365  public:
366  void emitNavigateLeft() {
367  emit navigateLeft();
368  }
369  void emitNavigateRight() {
370  emit navigateRight();
371  }
372  void emitNavigateUp() {
373  emit navigateUp();
374  }
375  void emitNavigateDown() {
376  emit navigateDown();
377  }
378  void emitNavigateAccept() {
379  emit navigateAccept();
380  }
381  void emitNavigateBack() {
382  emit navigateBack();
383  }
387  bool isOverwriteMode() const;
388  EditMode viewEditMode() const;
389  QString currentTextLine();
390 
396  QString searchPattern() const;
397 
403  QString replacementPattern() const;
404 
409  void setSearchPattern(const QString &searchPattern);
410 
415  void setReplacementPattern(const QString &replacementPattern);
416 
417  public Q_SLOTS:
418  void indent();
419  void unIndent();
420  void cleanIndent();
421  void align();
422  void comment();
423  void uncomment();
424  void toggleComment();
425  void killLine();
426  void createSnippet ();
427  void showSnippetsDialog ();
428 
432  void uppercase();
436  void lowercase();
441  void capitalize();
445  void joinLines();
446 
447  // Note - the following functions simply forward to KateViewInternal
448  void keyReturn();
449  void smartNewline();
450  void backspace();
451  void deleteWordLeft();
452  void keyDelete();
453  void deleteWordRight();
454  void transpose();
455  void cursorLeft();
456  void shiftCursorLeft();
457  void cursorRight();
458  void shiftCursorRight();
459  void wordLeft();
460  void shiftWordLeft();
461  void wordRight();
462  void shiftWordRight();
463  void home();
464  void shiftHome();
465  void end();
466  void shiftEnd();
467  void up();
468  void shiftUp();
469  void down();
470  void shiftDown();
471  void scrollUp();
472  void scrollDown();
473  void topOfView();
474  void shiftTopOfView();
475  void bottomOfView();
476  void shiftBottomOfView();
477  void pageUp();
478  void shiftPageUp();
479  void pageDown();
480  void shiftPageDown();
481  void top();
482  void shiftTop();
483  void bottom();
484  void shiftBottom();
485  void toMatchingBracket();
486  void shiftToMatchingBracket();
487  void insertTab();
488 
489  void gotoLine();
490 
491  // config file / session management functions
492  public:
493  void readSessionConfig(const KConfigGroup&);
494  void writeSessionConfig(KConfigGroup&);
495 
496  public Q_SLOTS:
497  void setEol( int eol );
498  void setAddBom( bool enabled);
499  void find();
500  void findSelectedForwards();
501  void findSelectedBackwards();
502  void replace();
503  void findNext();
504  void findPrevious();
505 
506  void setFoldingMarkersOn( bool enable ); // Not in KTextEditor::View, but should be
507  void setIconBorder( bool enable );
508  void setLineNumbersOn( bool enable );
509  void setScrollBarMarks( bool enable );
510  void setScrollBarMiniMap( bool enable );
511  void setScrollBarMiniMapAll( bool enable );
512  void setScrollBarMiniMapWidth( int width );
513  void toggleFoldingMarkers();
514  void toggleIconBorder();
515  void toggleLineNumbersOn();
516  void toggleScrollBarMarks();
517  void toggleScrollBarMiniMap();
518  void toggleScrollBarMiniMapAll();
519  void toggleDynWordWrap ();
520  void toggleViInputMode ();
521 
522 
523  void showViModeEmulatedCommandBar();
524 
525  void setDynWrapIndicators(int mode);
526 
527  public:
528  int getEol() const;
529 
530  public:
531  KateRenderer *renderer ();
532 
533  bool iconBorder();
534  bool lineNumbersOn();
535  bool scrollBarMarks();
536  bool scrollBarMiniMap();
537  bool scrollBarMiniMapAll();
538  int dynWrapIndicators();
539  bool foldingMarkersOn();
540 
541  private Q_SLOTS:
545  void slotSelectionChanged ();
546 
547  public:
552  KateDocument* doc() { return m_doc; }
553  const KateDocument* doc() const { return m_doc; }
554 
555  public Q_SLOTS:
556  void slotUpdateUndo();
557  void toggleInsert();
558  void reloadFile();
559  void toggleWWMarker();
560  void toggleWriteLock();
561  void switchToCmdLine ();
562  void switchToConsole ();
563  void slotReadWriteChanged ();
564  void slotClipboardHistoryChanged ();
565 
566  Q_SIGNALS:
567  void dropEventPass(QDropEvent*);
568 
569  public:
574  Kate::TextFolding &textFolding ()
575  {
576  return m_textFolding;
577  }
578 
579  public:
580  void slotTextInserted ( KTextEditor::View *view, const KTextEditor::Cursor &position, const QString &text);
581 
582  protected:
583  void contextMenuEvent( QContextMenuEvent* );
584 
585  private Q_SLOTS:
586  void slotGotFocus();
587  void slotLostFocus();
588  void slotDropEventPass( QDropEvent* ev );
589  void slotSaveCanceled( const QString& error );
590  void slotConfigDialog ();
591 
592  public Q_SLOTS: // TODO: turn into good interface, see kte5/foldinginterface.h
593  void slotFoldToplevelNodes();
594  void slotCollapseLocal();
595  void slotCollapseLevel();
596  void slotExpandLevel();
597  void slotExpandLocal();
598 
599  private:
600  void setupConnections();
601  void setupActions();
602  void setupEditActions();
603  void setupCodeFolding();
604 
605  QList<QAction*> m_editActions;
606  KAction* m_editUndo;
607  KAction* m_editRedo;
608  KAction* m_pasteMenu;
609  KToggleAction* m_toggleFoldingMarkers;
610  KToggleAction* m_toggleIconBar;
611  KToggleAction* m_toggleLineNumbers;
612  KToggleAction* m_toggleScrollBarMarks;
613  KToggleAction* m_toggleScrollBarMiniMap;
614  KToggleAction* m_toggleScrollBarMiniMapAll;
615  KToggleAction* m_toggleDynWrap;
616  KSelectAction* m_setDynWrapIndicators;
617  KToggleAction* m_toggleWWMarker;
618  KAction* m_switchCmdLine;
619  KAction* m_switchConsole;
620  KToggleAction* m_viInputModeAction;
621 
622  KSelectAction* m_setEndOfLine;
623  KToggleAction* m_addBom;
624 
625  QAction *m_cut;
626  QAction *m_copy;
627  QAction *m_paste;
628  QAction *m_selectAll;
629  QAction *m_deSelect;
630 
631  KToggleAction *m_toggleBlockSelection;
632  KToggleAction *m_toggleInsert;
633  KToggleAction *m_toggleWriteLock;
634 
635  bool m_hasWrap;
636 
637  KateDocument *const m_doc;
638  Kate::TextFolding m_textFolding;
639  KateViewConfig *const m_config;
640  KateRenderer *const m_renderer;
641  KateViewInternal *const m_viewInternal;
642  KateSpellCheckDialog *m_spell;
643  KateBookmarks *const m_bookmarks;
644 
645  QVBoxLayout *m_vBox;
646 
647  private Q_SLOTS:
648  void slotHlChanged();
649 
653  public:
654  inline KateViewConfig *config () { return m_config; }
655 
656  void updateConfig ();
657 
658  void updateDocumentConfig();
659 
660  void updateRendererConfig();
661 
662  private Q_SLOTS:
663  void updateFoldingConfig ();
664 
665  private:
666  bool m_startingUp;
667  bool m_updatingDocumentConfig;
668 
669  // stores the current selection
670  Kate::TextRange m_selection;
671 
672  // do we select normal or blockwise ?
673  bool blockSelect;
674 
675  //
676  // TemplateInterface + TemplateInterface2
677  //
678  public:
679  virtual bool insertTemplateTextImplementation ( const KTextEditor::Cursor&, const QString &templateString, const QMap<QString,QString> &initialValues);
680  virtual bool insertTemplateTextImplementation ( const KTextEditor::Cursor&, const QString &templateString, const QMap<QString,QString> &initialValues, KTextEditor::TemplateScript* templateScript);
684  public:
685  KateViewBar *topViewBar() const;
686  KateViewBar *bottomViewBar() const;
687  KateCommandLineBar *cmdLineBar ();
688  KateScriptConsole *consoleBar ();
689  KateDictionaryBar *dictionaryBar();
690  KateViEmulatedCommandBar *viModeEmulatedCommandBar();
691 
692  private:
693  KateSearchBar *searchBar (bool initHintAsPower = false);
694  bool hasSearchBar () const { return m_searchBar != 0; }
695  KateGotoBar *gotoBar ();
696 
701  private:
702  // created in constructor of the view
703  KateViewBar *m_bottomViewBar;
704  KateViewBar *m_topViewBar;
705  // created on demand..., only access them through the above accessors....
706  KateCommandLineBar *m_cmdLine;
707  KateScriptConsole *m_console;
708  KateSearchBar *m_searchBar;
709  KateViEmulatedCommandBar *m_viModeEmulatedCommandBar;
710  KateGotoBar *m_gotoBar;
711  KateDictionaryBar *m_dictionaryBar;
712 
713  // vi Mode
714  public:
718  bool viInputMode() const;
719 
723  ViMode getCurrentViMode() const;
724 
728  KateViInputModeManager* getViInputModeManager();
729 
734  KateViInputModeManager* resetViInputModeManager();
735 
739  bool viInputModeStealKeys() const;
740 
744  void updateViModeBarMode();
745 
749  void updateViModeBarCmd();
750 
751  public:
752  KTextEditor::Range visibleRange();
753 
754  Q_SIGNALS:
755  void displayRangeChanged(KateView *view);
756 
757  protected:
758  KToggleAction* m_toggleOnTheFlySpellCheck;
759  KateSpellingMenu *m_spellingMenu;
760 
761  protected Q_SLOTS:
762  void toggleOnTheFlySpellCheck(bool b);
763 
764  public Q_SLOTS:
765  void changeDictionary();
766  void reflectOnTheFlySpellCheckStatus(bool enabled);
767 
768  public:
769  KateSpellingMenu* spellingMenu();
770  private:
771  bool m_userContextMenuSet;
772 
773  private Q_SLOTS:
777  void saveFoldingState ();
778 
782  void applyFoldingState ();
783 
784  private:
788  QVariantList m_savedFoldingState;
789 
790 public:
797  void notifyAboutRangeChange (int startLine, int endLine, bool rangeWithAttribute);
798 
799  private Q_SLOTS:
803  void slotDelayedUpdateOfView ();
804 
805  Q_SIGNALS:
809  void delayedUpdateOfView ();
810 
811  public:
816  const QSet<Kate::TextRange *> *rangesMouseIn () const { return &m_rangesMouseIn; }
817 
822  const QSet<Kate::TextRange *> *rangesCaretIn () const { return &m_rangesCaretIn; }
823 
828  void updateRangesIn (KTextEditor::Attribute::ActivationType activationType);
829 
830  //
831  // helpers for delayed view update after ranges changes
832  //
833  private:
837  bool m_delayedUpdateTriggered;
838 
842  int m_lineToUpdateMin;
843 
847  int m_lineToUpdateMax;
848 
852  QSet<Kate::TextRange *> m_rangesMouseIn;
853 
857  QSet<Kate::TextRange *> m_rangesCaretIn;
858 
859  //
860  // forward impl for KTextEditor::MessageInterface
861  //
862  public:
866  void postMessage(KTextEditor::Message* message, QList<QSharedPointer<QAction> > actions);
867 
868  private:
870  KateMessageWidget* m_topMessageWidget;
872  KateMessageWidget* m_bottomMessageWidget;
874  KateMessageWidget* m_floatTopMessageWidget;
876  KateMessageWidget* m_floatBottomMessageWidget;
878  QVBoxLayout* m_notificationLayout;
879 
880  // for unit test 'tests/messagetest.cpp'
881  public:
882  KateMessageWidget* messageWidget() { return m_floatTopMessageWidget; }
883 };
884 
888 Q_DECLARE_METATYPE(KTextEditor::Cursor)
889 Q_DECLARE_METATYPE(KTextEditor::Range)
890 
891 #endif
892 
893 // kate: space-indent on; indent-width 2; replace-tabs on;
QVariant
KateView::m_spellingMenu
KateSpellingMenu * m_spellingMenu
Definition: kateview.h:759
KTextEditor::View::setSelection
virtual bool setSelection(const Range &range)=0
KTextEditor::TemplateScript
KateView::doc
const KateDocument * doc() const
Definition: kateview.h:553
kdebug.h
katerenderer.h
KTextEditor::AnnotationViewInterface::isAnnotationBorderVisible
virtual bool isAnnotationBorderVisible() const =0
KateView::rangesCaretIn
const QSet< Kate::TextRange * > * rangesCaretIn() const
set of ranges which had the caret inside last time, used for rendering
Definition: kateview.h:822
KTextEditor::View::blockSelection
virtual bool blockSelection() const =0
KateViModeBase
Definition: katevimodebase.h:64
KateIconBorder
Definition: kateviewhelpers.h:150
QWidget
KTextEditor::CoordinatesToCursorInterface
KateSearchBar
Definition: katesearchbar.h:47
KateView::removeSelection
virtual bool removeSelection()
Definition: kateview.h:257
katetextfolding.h
KateViInputModeManager
Definition: kateviinputmodemanager.h:68
configinterface.h
KTextEditor::View::selection
virtual bool selection() const =0
KateView::emitNavigateUp
void emitNavigateUp()
Definition: kateview.h:372
KATEPART_TESTS_EXPORT
#define KATEPART_TESTS_EXPORT
Definition: katepartprivate_export.h:36
KateGotoBar
Definition: katedialogs.h:113
KTextEditor::AnnotationViewInterface::annotationActivated
virtual void annotationActivated(KTextEditor::View *view, int line)=0
KTextEditor::TemplateInterface
find
KAction * find(const QObject *recvr, const char *slot, QObject *parent)
QString
KateView::textFolding
Kate::TextFolding & textFolding()
Folding handler for this view.
Definition: kateview.h:574
katetextrange.h
KTextEditor::Cursor
indent
QString indent(QString text, int spaces)
KateSpellCheckDialog
Definition: spellcheckdialog.h:49
KTextEditor::TemplateInterface2
KateBookmarks
Definition: katebookmarks.h:34
findNext
KAction * findNext(const QObject *recvr, const char *slot, QObject *parent)
KTextEditor::AnnotationViewInterface::setAnnotationBorderVisible
virtual void setAnnotationBorderVisible(bool visible)=0
KateView::setSelection
bool setSelection(const KTextEditor::Cursor &c, int i, bool b)
Definition: kateview.h:254
KateScriptConsole
Definition: katescriptconsole.h:72
KSelectAction
kateviinputmodemanager.h
templateinterface.h
KateRenderer
Handles all of the work of rendering the text (used for the views and printing)
Definition: katerenderer.h:50
KTextEditor::SessionConfigInterface::writeSessionConfig
virtual void writeSessionConfig(KConfigGroup &config)=0
KTextEditor::AnnotationInterface::annotationModel
virtual AnnotationModel * annotationModel() const =0
KateCompletionWidget
This is the code completion's main widget, and also contains the core interface logic.
Definition: katecompletionwidget.h:55
view.h
KTextEditor::View::setBlockSelection
virtual bool setBlockSelection(bool on)=0
gotoLine
KAction * gotoLine(const QObject *recvr, const char *slot, QObject *parent)
QStringList
sessionconfiginterface.h
KateViewInternal
Definition: kateviewinternal.h:57
templateinterface2.h
markinterface.h
codecompletioninterface.h
KTextEditor::ConfigInterface
KateMessageWidget
This class implements a message widget based on KMessageWidget.
Definition: katemessagewidget.h:42
up
KAction * up(const QObject *recvr, const char *slot, QObject *parent)
KTextEditor::AnnotationViewInterface::annotationBorderVisibilityChanged
virtual void annotationBorderVisibilityChanged(KTextEditor::View *view, bool visible)=0
clear
KAction * clear(const QObject *recvr, const char *slot, QObject *parent)
home
KAction * home(const QObject *recvr, const char *slot, QObject *parent)
KateSpellingMenu
Definition: spellingmenu.h:40
KateView::emitNavigateDown
void emitNavigateDown()
Definition: kateview.h:375
ViMode
ViMode
The four vi modes supported by Kate's vi input mode.
Definition: kateviinputmodemanager.h:48
Kate::TextFolding
Class representing the folding information for a TextBuffer.
Definition: katetextfolding.h:42
KTextEditor::TemplateInterface2::insertTemplateTextImplementation
virtual bool insertTemplateTextImplementation(const Cursor &insertPosition, const QString &templateString, const QMap< QString, QString > &initialValues, TemplateScript *templateScript)=0
KTextEditor::AnnotationInterface::setAnnotationModel
virtual void setAnnotationModel(AnnotationModel *model)=0
KateView::emitNavigateAccept
void emitNavigateAccept()
Definition: kateview.h:378
KTextEditor::AnnotationModel
KateView::messageWidget
KateMessageWidget * messageWidget()
Definition: kateview.h:882
KateView
Definition: kateview.h:78
KTextEditor::Range
KTextEditor::TextHintInterface
KTextEditor::SessionConfigInterface
KateDocument
Definition: katedocument.h:74
QSet< Kate::TextRange * >
Message
Message
KateCommandLineBar
Definition: kateviewhelpers.h:408
QMenu
KateDictionaryBar
Definition: katedialogs.h:133
replace
KAction * replace(const QObject *recvr, const char *slot, QObject *parent)
KConfigGroup
KTextEditor::CodeCompletionInterface
texthintinterface.h
KTextEditor::View::viewEditMode
virtual enum EditMode viewEditMode() const =0
QPoint
KateView::m_toggleOnTheFlySpellCheck
KToggleAction * m_toggleOnTheFlySpellCheck
Definition: kateview.h:758
annotationinterface.h
KAction
KTextEditor::Attribute::ActivationType
ActivationType
selectAll
KAction * selectAll(const QObject *recvr, const char *slot, QObject *parent)
KTextEditor::View::selectionRange
virtual const Range & selectionRange() const =0
KateView::removeSelectionText
virtual bool removeSelectionText()
Definition: kateview.h:259
KTextEditor::AnnotationViewInterface::annotationContextMenuAboutToShow
virtual void annotationContextMenuAboutToShow(KTextEditor::View *view, QMenu *menu, int line)=0
KToggleAction
KateView::doc
KateDocument * doc()
accessor to katedocument pointer
Definition: kateview.h:552
KTextEditor::AnnotationViewInterface
KateView::emitNavigateLeft
void emitNavigateLeft()
Definition: kateview.h:366
KateViewConfig
Definition: kateconfig.h:381
KateView::emitNavigateBack
void emitNavigateBack()
Definition: kateview.h:381
KTextEditor::SessionConfigInterface::readSessionConfig
virtual void readSessionConfig(const KConfigGroup &config)=0
KTextEditor::View
KateViewBar
Definition: kateviewhelpers.h:319
KateView::emitNavigateRight
void emitNavigateRight()
Definition: kateview.h:369
KTextEditor::View::selectionText
virtual QString selectionText() const =0
KateView::config
KateViewConfig * config()
Configuration.
Definition: kateview.h:654
end
const KShortcut & end()
KTextEditor::Message
Kate::TextRange
Class representing a 'clever' text range.
Definition: katetextrange.h:46
KateView::rangesMouseIn
const QSet< Kate::TextRange * > * rangesMouseIn() const
set of ranges which had the mouse inside last time, used for rendering
Definition: kateview.h:816
KateViEmulatedCommandBar
A KateViewBarWidget that attempts to emulate some of the features of Vim's own command bar...
Definition: kateviemulatedcommandbar.h:40
QAction
QMap< QString, QString >
QList< QAction * >
This file is part of the KDE documentation.
Documentation copyright © 1996-2014 The KDE developers.
Generated on Tue Oct 14 2014 22:31:53 by doxygen 1.8.7 written by Dimitri van Heesch, © 1997-2006

KDE's Doxygen guidelines are available online.

Kate

Skip menu "Kate"
  • Main Page
  • Namespace List
  • Namespace Members
  • Alphabetical List
  • Class List
  • Class Hierarchy
  • Class Members
  • File List
  • File Members
  • Related Pages

applications API Reference

Skip menu "applications API Reference"
  •   kate
  •       kate
  •   KTextEditor
  •   Kate
  • Applications
  •   Libraries
  •     libkonq
  • Konsole

Search



Report problems with this website to our bug tracking system.
Contact the specific authors with questions and comments about the page contents.

KDE® and the K Desktop Environment® logo are registered trademarks of KDE e.V. | Legal