diff options
Diffstat (limited to 'qtjava/javalib/examples/rot13/Rot13.java')
-rw-r--r-- | qtjava/javalib/examples/rot13/Rot13.java | 90 |
1 files changed, 90 insertions, 0 deletions
diff --git a/qtjava/javalib/examples/rot13/Rot13.java b/qtjava/javalib/examples/rot13/Rot13.java new file mode 100644 index 00000000..345f2a9d --- /dev/null +++ b/qtjava/javalib/examples/rot13/Rot13.java @@ -0,0 +1,90 @@ +/*************************************************************************** +* $Id$ +** +* Definition of something or other +** +* Created : 979899 +** +* Copyright (C) 1997 by Trolltech AS. All rights reserved. +** +* This file is part of an example program for Qt. This example +* program may be used, distributed and modified without limitation. +** +****************************************************************************/ + +import org.kde.qt.*; + + +class Rot13 extends QWidget { +private QMultiLineEdit left, right; + + + +Rot13() +{ + left = new QMultiLineEdit( this, "left" ); + right = new QMultiLineEdit( this, "right" ); + connect( left, SIGNAL("textChanged()"), this, SLOT("changeRight()") ); + connect( right, SIGNAL("textChanged()"), this, SLOT("changeLeft()") ); + + QPushButton quit = new QPushButton( "&Quit", this ); + quit.setFocusPolicy( NoFocus ); + connect( quit, SIGNAL("clicked()"), qApp(), SLOT("quit()") ); + + QGridLayout l = new QGridLayout( this, 2, 2, 5 ); + l.addWidget( left, 0, 0 ); + l.addWidget( right, 0, 1 ); + l.addWidget( quit, 1, 1, AlignRight ); + + left.setFocus(); +} + + +void changeLeft() +{ + left.blockSignals( true ); + left.setText( rot13( right.text() ) ); + left.blockSignals( false ); +} + + +void changeRight() +{ + right.blockSignals( true ); + right.setText( rot13( left.text() ) ); + right.blockSignals( false ); +} + + +String rot13( String input ) +{ + char[] r = input.toCharArray(); + int i = r.length; + while( i-- != 0 ) { + if ( r[i] >= (int) 'A' && r[i] <= (int) 'M' || + r[i] >= (int) 'a' && r[i] <= (int) 'm' ) + r[i] = (char) (r[i] + 13); + else if ( r[i] >= (int) 'N' && r[i] <= (int) 'Z' || + r[i] >= (int) 'n' && r[i] <= (int) 'z' ) + r[i] = (char) (r[i] - 13); + } + return new String(r); +} + + +public static void main(String[] args) +{ + QApplication a = new QApplication( args ); + Rot13 r = new Rot13(); + r.resize( 400, 400 ); + a.setMainWidget( r ); + r.setCaption("Qt Example - ROT13"); + r.show(); + a.exec(); + return; +} + + static { + qtjava.initialize(); + } +} |