ktextedit.cpp
00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020 #include "ktextedit.h"
00021
00022 #include <kcursor.h>
00023 #include <kglobalsettings.h>
00024 #include <kstdaccel.h>
00025
00026 KTextEdit::KTextEdit( const QString& text, const QString& context,
00027 QWidget *parent, const char *name )
00028 : QTextEdit ( text, context, parent, name )
00029 {
00030 KCursor::setAutoHideCursor( this, true, false );
00031 }
00032
00033 KTextEdit::KTextEdit( QWidget *parent, const char *name )
00034 : QTextEdit ( parent, name )
00035 {
00036 KCursor::setAutoHideCursor( this, true, false );
00037 }
00038
00039 KTextEdit::~KTextEdit()
00040 {
00041 }
00042
00043 void KTextEdit::keyPressEvent( QKeyEvent *e )
00044 {
00045 KKey key( e );
00046
00047 if ( KStdAccel::copy().contains( key ) ) {
00048 copy();
00049 e->accept();
00050 return;
00051 }
00052 else if ( KStdAccel::paste().contains( key ) ) {
00053 paste();
00054 e->accept();
00055 return;
00056 }
00057 else if ( KStdAccel::cut().contains( key ) ) {
00058 cut();
00059 e->accept();
00060 return;
00061 }
00062 else if ( KStdAccel::undo().contains( key ) ) {
00063 undo();
00064 e->accept();
00065 return;
00066 }
00067 else if ( KStdAccel::redo().contains( key ) ) {
00068 redo();
00069 e->accept();
00070 return;
00071 }
00072 else if ( KStdAccel::deleteWordBack().contains( key ) )
00073 {
00074 deleteWordBack();
00075 e->accept();
00076 return;
00077 }
00078 else if ( KStdAccel::deleteWordForward().contains( key ) )
00079 {
00080 deleteWordForward();
00081 e->accept();
00082 return;
00083 }
00084
00085
00086 else if ( e->state() == ControlButton &&
00087 (e->key() == Key_Return || e->key() == Key_Enter) &&
00088 topLevelWidget()->inherits( "KDialog" ) )
00089 {
00090 e->ignore();
00091 return;
00092 }
00093
00094 QTextEdit::keyPressEvent( e );
00095 }
00096
00097 void KTextEdit::deleteWordBack()
00098 {
00099 removeSelection();
00100 moveCursor( MoveWordBackward, true );
00101 removeSelectedText();
00102 }
00103
00104 void KTextEdit::deleteWordForward()
00105 {
00106 removeSelection();
00107 moveCursor( MoveWordForward, true );
00108 removeSelectedText();
00109 }
00110
00111 void KTextEdit::contentsWheelEvent( QWheelEvent *e )
00112 {
00113 if ( KGlobalSettings::wheelMouseZooms() )
00114 QTextEdit::contentsWheelEvent( e );
00115 else
00116 QScrollView::contentsWheelEvent( e );
00117 }
00118
00119 void KTextEdit::setReadOnly(bool readOnly)
00120 {
00121 QPalette p = palette();
00122 if (readOnly)
00123 {
00124 QColor color = p.color(QPalette::Disabled, QColorGroup::Background);
00125 p.setColor(QColorGroup::Base, color);
00126 p.setColor(QColorGroup::Background, color);
00127 }
00128 else
00129 {
00130 QColor color = p.color(QPalette::Normal, QColorGroup::Base);
00131 p.setColor(QColorGroup::Base, color);
00132 p.setColor(QColorGroup::Background, color);
00133 }
00134 setPalette(p);
00135
00136 QTextEdit::setReadOnly (readOnly);
00137 }
00138
00139 void KTextEdit::virtual_hook( int, void* )
00140 { }
00141
00142 #include "ktextedit.moc"
This file is part of the documentation for kdelibs Version 3.1.0.