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.
tdebindings/qtjava/javalib/examples/richtext/MyRichText.java

151 lines
4.4 KiB

/***************************************************************************
* $Id$
**
* Copyright (C) 1992-2000 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 MyRichText extends TQVBox
{
protected TQTextView view;
protected TQPushButton bClose, bNext, bPrev;
protected int num;
static String[] sayings = {
"<b>Saying 1:</b><br>"
+ "<hr><br><br>"
+ "<big>Evil is that which one believes of others. It is a sin to believe evil "
+ "of others, but it is seldom a mistake.</big><br><br>"
+ "<center><i>-- H.L. Mencken</i></center>",
"<b>Saying 2:</b><br>"
+ "<hr><br><br>"
+ "<big>A well-used door needs no oil on its hinges.<br>"
+ "A swift-flowing steam does not grow stagnant.<br>"
+ "Neither sound nor thoughts can travel through a vacuum.<br>"
+ "Software rots if not used.<br><br>"
+ "These are great mysteries.</big><br><br>"
+ "<center><i>-- Geoffrey James, \"The Tao of Programming\"</i></center>",
"<b>Saying 3:</b><br>"
+ "<hr><br><br>"
+ "<big>Show business is just like high school, except you get paid.</big><br><br>"
+ "<center><i>-- Martin Mull</i></center>",
"<b>Saying 4:</b><br>"
+ "<hr><br><br>"
+ "<big><b>The Least Successful Executions</b><br>"
+ "<twocolumn><p> History has furnished us with two executioners worthy of attention. "
+ "The first performed in Sydney in Australia. In 1803 three attempts were "
+ "made to hang a Mr. Joseph Samuels. On the first two of these the rope "
+ "snapped, while on the third Mr. Samuels just hung there peacefully until he "
+ "and everyone else got bored. Since he had proved unsusceptible to capital "
+ "punishment, he was reprieved.</p>"
+ "<p> The most important British executioner was Mr. James Berry who "
+ "tried three times in 1885 to hang Mr. John Lee at Exeter Jail, but on each "
+ "occasion failed to get the trap door open.<!p>"
+ "<p> In recognition of this achievement, the Home Secretary commuted "
+ "Lee's sentence to \"life\" imprisonment. He was released in 1917, emigrated "
+ "to America and lived until 1933.</p></twocolumn></big><br><br>"
+ "<center><i>-- Stephen Pile, \"The Book of Heroic Failures\"</i></center>",
"<b>Saying 5:</b><br>"
+ "<hr><br><br>"
+ "<big>If you can, help others. If you can't, at least don't hurt others.</big><br><br>"
+ "<center><i>-- the Dalai Lama</i></center>",
"<b>Saying 6:</b><br>"
+ "<hr><br><br>"
+ "<big>Television has brought back murder into the home -- where it belongs.</big><br><br>"
+ "<center><i>-- Alfred Hitchcock</i></center>",
"<b>Saying 7:</b><br>"
+ "<hr><br><br>"
+ "<big>I don't know who my grandfather was; I am much more concerned to know "
+ "what his grandson will be.</big><br><br>"
+ "<center><i>-- Abraham Lincoln</i></center>"
};
MyRichText( )
{
this(null, null);
}
MyRichText( TQWidget parent, String name )
{
super( parent, name );
setMargin( 5 );
view = new TQTextView( this );
view.setText( "This is a <b>Test</b> with <i>italic</i> <u>stuff</u>" );
TQBrush paper = new TQBrush();
paper.setPixmap( new TQPixmap( "../richtext/marble.png" ) );
if ( paper.pixmap() != null )
view.setPaper( paper );
else
view.setPaper( new TQBrush(white()) );
view.setText( sayings[0] );
view.setMinimumSize( 450, 250 );
TQHBox buttons = new TQHBox( this );
buttons.setMargin( 5 );
bClose = new TQPushButton( "&Close", buttons );
bPrev = new TQPushButton( "<< &Prev", buttons );
bNext = new TQPushButton( "&Next >>", buttons );
bPrev.setEnabled( false );
connect( bClose, SIGNAL(" clicked()"), qApp(), SLOT(" quit()") );
connect( bPrev, SIGNAL(" clicked()"), this, SLOT(" prev()") );
connect( bNext, SIGNAL(" clicked()"), this, SLOT(" next()") );
num = 0;
}
void prev()
{
if ( num <= 0 )
return;
num--;
view.setText( sayings[num] );
if ( num == 0 )
bPrev.setEnabled( false );
bNext.setEnabled( true );
}
void next()
{
if ( ++num >= sayings.length )
return;
view.setText( sayings[num] );
if ( num + 1 == sayings.length )
bNext.setEnabled( false );
bPrev.setEnabled( true );
}
}