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.
104 lines
2.6 KiB
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,"");
|
|
}
|
|
|
|
}
|