Development/Tutorials/Games/KStandardGameAction: Difference between revisions

From KDE TechBase
m (No longer encessary. FindLibKDEGames.cmake is fixed)
m (Text replace - "<code cppqt n>" to "<syntaxhighlight lang="cpp-qt" line>")
Line 27: Line 27:
== Usage ==
== Usage ==
Add some code like this to your action setup code.
Add some code like this to your action setup code.
<code cppqt n>
<syntaxhighlight lang="cpp-qt" line>
#include <KStandardGameAction>
#include <KStandardGameAction>



Revision as of 20:31, 29 June 2011

KStandardGameAction
Tutorial Series   KDE Games
Previous   Introduction to KDE4 programming
What's Next   High Scores Tutorial
Further Reading   KStandardGameAction, KStandardAction

Abstract

This tutorial will explain the usage of KStandardGameActions in libkdegames.

KStandardGameAction

This class is an extension to the usual KStandardAction class which provides easy access to often used KDE actions.

Using these actions helps maintaining consistency among the games.

Games often use different menu entries than other programs, e.g. games use the menu "game" instead of "file". This class provides the entries which differ from the usual KStandardAction entries.

Usage

Add some code like this to your action setup code. <syntaxhighlight lang="cpp-qt" line>

  1. include <KStandardGameAction>

void setupActions() {

 // Game
 KStandardGameAction::gameNew(this, 
                      SLOT(newGame()), 
                      actionCollection());
 KStandardGameAction::highscores(this, 
                      SLOT(showHighscores()), 
                      actionCollection());
 KStandardGameAction::quit(this, 
                      SLOT(close()), 
                      actionCollection());
 // Move
 KStandardGameAction::undo(this, 
                      SLOT(undoMove()), 
                      actionCollection());
 KStandardGameAction::redo(this, 
                      SLOT(redoMove()), 
                      actionCollection());
 // Settings
 KStandardGameAction::configureHighscores(this, 
                      SLOT(configureHighscores()), 
                      actionCollection());
 
 setupGUI();

}