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/kdejava/koala/test/khelpers/KHelpers.java

104 lines
2.6 KiB

import org.kde.qt.*;
import org.kde.koala.*;
/**
* Class KHelpers is the main application window.
*
* Taken from KDE 2.0 Development book
*
* ToolTips, What's This?, and More
*
*
*
* @see KMainWindow
* @see KApplication
*
* @author java translation Kenneth J. Pouncey, kjpou@hotmail.com
* @version 0.1
*/
public class KHelpers extends KMainWindow {
// File menu item id's
protected int idfilenew;
protected int idfileopen;
protected int idfilesave;
protected int idfilequit;
// reference to the application
KApplication kapp;
// time to display the message in the status bar
int HelpMessageTime = 200;
public KHelpers () {
// get a reference to the application
kapp = KApplication.kApplication();
QPopupMenu file = new QPopupMenu(this);
idfilenew = file.insertItem("&New");
idfileopen = file.insertItem("&Open...");
idfilesave = file.insertItem("&Save");
idfilequit = file.insertItem("&Quit", kapp, SLOT("closeAllWindows()"));
connect ( file, SIGNAL( "highlighted(int)"), this, SLOT( "slotMenuEntryHelp (int)"));
menuBar().insertItem("&File",file);
QPopupMenu help = helpMenu("KHelpers\n" +
"Copyright (C) 2000 By Joe Developer\n\n" +
"KHelpers demonstates a few of the ways " +
"that your application can provide help to a user");
help.insertSeparator();
help.insertItem("Help on a special topic", this, SLOT("slotSpecialHelp()"));
menuBar().insertItem("&Help",help);
// Create the statusbar
statusBar();
QLabel clientarea = new QLabel(this);
clientarea.setBackgroundColor(Qt.white());
QToolTip.add(clientarea, "Functionless client area");
QWhatsThis.add(clientarea,"This client area doesn't do anything.");
setCentralWidget(clientarea);
clientarea.setFocus();
}
public void slotMenuEntryHelp (int id) {
if (id == idfilenew) {
statusBar().message("Create a new document.",HelpMessageTime);
}
else if (id == idfileopen) {
statusBar().message("Open a file.",HelpMessageTime);
}
else if (id == idfilesave) {
statusBar().message("Save the current document.",HelpMessageTime);
}
else if (id == idfilequit) {
statusBar().message("Quit the application.",HelpMessageTime);
}
}
public void slotSpecialHelp() {
String helpfilename = kapp.name();
helpfilename += "/specialhelp.html";
kapp.invokeHelp(helpfilename,"");
}
}