____                _       __
    / __ )____  _____   | |     / /___ ___________
   / __  / __ \/ ___/   | | /| / / __ `/ ___/ ___/
  / /_/ / /_/ (__  )    | |/ |/ / /_/ / /  (__  )
 /_____/\____/____/     |__/|__/\__,_/_/  /____/

       A futuristic real-time strategy game.
          This file is part of Bos Wars.
(C) Copyright 2001-2007 by the Bos Wars and Stratagus Project. Distributed under the "GNU General Public License"

gcn::Key Class Reference

#include <key.h>

List of all members.

Public Types

enum  {
  SPACE = ' ', TAB = '\t', ENTER = '\n', LEFT_ALT = 1000,
  RIGHT_ALT, LEFT_SHIFT, RIGHT_SHIFT, LEFT_CONTROL,
  RIGHT_CONTROL, LEFT_META, RIGHT_META, LEFT_SUPER,
  RIGHT_SUPER, INSERT, HOME, PAGE_UP,
  DELETE, END, PAGE_DOWN, ESCAPE,
  CAPS_LOCK, BACKSPACE, F1, F2,
  F3, F4, F5, F6,
  F7, F8, F9, F10,
  F11, F12, F13, F14,
  F15, PRINT_SCREEN, SCROLL_LOCK, PAUSE,
  NUM_LOCK, ALT_GR, LEFT, RIGHT,
  UP, DOWN
}

Public Member Functions

 Key ()
 Key (int value)
bool isCharacter () const
bool isNumber () const
bool isLetter () const
bool isShiftPressed () const
void setShiftPressed (bool pressed)
bool isControlPressed () const
void setControlPressed (bool pressed)
bool isAltPressed () const
void setAltPressed (bool pressed)
bool isMetaPressed () const
void setMetaPressed (bool pressed)
bool isNumericPad () const
void setNumericPad (bool numpad)
int getValue () const
void setValue (int value)
std::string toString () const

Protected Attributes

int mValue
bool mShiftPressed
bool mControlPressed
bool mAltPressed
bool mMetaPressed
bool mNumericPad


Detailed Description

Represents a key or a character.

Definition at line 71 of file key.h.


Member Enumeration Documentation

anonymous enum

An enum with key values.

Enumerator:
SPACE 
TAB 
ENTER 
LEFT_ALT 
RIGHT_ALT 
LEFT_SHIFT 
RIGHT_SHIFT 
LEFT_CONTROL 
RIGHT_CONTROL 
LEFT_META 
RIGHT_META 
LEFT_SUPER 
RIGHT_SUPER 
INSERT 
HOME 
PAGE_UP 
DELETE 
END 
PAGE_DOWN 
ESCAPE 
CAPS_LOCK 
BACKSPACE 
F1 
F2 
F3 
F4 
F5 
F6 
F7 
F8 
F9 
F10 
F11 
F12 
F13 
F14 
F15 
PRINT_SCREEN 
SCROLL_LOCK 
PAUSE 
NUM_LOCK 
ALT_GR 
LEFT 
RIGHT 
UP 
DOWN 

Definition at line 199 of file key.h.


Constructor & Destructor Documentation

gcn::Key::Key (  ) 

Constructor.

Definition at line 63 of file key.cpp.

References mAltPressed, mControlPressed, mMetaPressed, mNumericPad, mShiftPressed, and mValue.

gcn::Key::Key ( int  value  ) 

Constructor.

Parameters:
value the ascii or enum value for the key.

Definition at line 73 of file key.cpp.

References mAltPressed, mControlPressed, mMetaPressed, mNumericPad, mShiftPressed, and mValue.


Member Function Documentation

bool gcn::Key::isCharacter (  )  const

Checks whether a key is a character.

Returns:
true if the key is a letter, number or whitespace.

Definition at line 83 of file key.cpp.

References mValue.

Referenced by gcn::TextField::keyPress(), and gcn::TextBox::keyPress().

bool gcn::Key::isNumber (  )  const

Checks whether a key is a number.

Returns:
true if the key is a number (0-9).

Definition at line 90 of file key.cpp.

References mValue.

bool gcn::Key::isLetter (  )  const

Checks whether a key is a letter.

Returns:
true if the key is a letter (a-z,A-Z).

Definition at line 95 of file key.cpp.

References mValue.

bool gcn::Key::isShiftPressed (  )  const

Checks whether shift is pressed.

Returns:
true if shift was pressed at the same time as the key.

Definition at line 103 of file key.cpp.

References mShiftPressed.

Referenced by gcn::TextField::keyPress(), and gcn::Gui::logic().

void gcn::Key::setShiftPressed ( bool  pressed  ) 

Sets the shift pressed flag.

Parameters:
pressed the shift flag value.

Definition at line 108 of file key.cpp.

References mShiftPressed.

Referenced by gcn::SDLInput::convertKeyCharacter().

bool gcn::Key::isControlPressed (  )  const

Checks whether control is pressed.

Returns:
true if control was pressed at the same time as the key.

Definition at line 113 of file key.cpp.

References mControlPressed.

void gcn::Key::setControlPressed ( bool  pressed  ) 

Sets the control pressed flag.

Parameters:
pressed the control flag value.

Definition at line 118 of file key.cpp.

References mControlPressed.

Referenced by gcn::SDLInput::convertKeyCharacter().

bool gcn::Key::isAltPressed (  )  const

Checks whether alt is pressed.

Returns:
true if alt was pressed at the same time as the key.

Definition at line 123 of file key.cpp.

References mAltPressed.

void gcn::Key::setAltPressed ( bool  pressed  ) 

Sets the alt pressed flag.

Parameters:
pressed the alt flag value.

Definition at line 128 of file key.cpp.

References mAltPressed.

Referenced by gcn::SDLInput::convertKeyCharacter().

bool gcn::Key::isMetaPressed (  )  const

Checks whether meta is pressed.

Returns:
true if meta was pressed at the same time as the key.

Definition at line 133 of file key.cpp.

References mMetaPressed.

void gcn::Key::setMetaPressed ( bool  pressed  ) 

Sets the meta pressed flag.

Parameters:
pressed the meta flag value.

Definition at line 138 of file key.cpp.

References mMetaPressed.

Referenced by gcn::SDLInput::convertKeyCharacter().

bool gcn::Key::isNumericPad (  )  const

Checks whether the key was pressed at the numeric pad.

Returns:
true if key pressed at the numeric pad.

Definition at line 143 of file key.cpp.

References mNumericPad.

void gcn::Key::setNumericPad ( bool  numpad  ) 

Sets the numeric pad flag.

Parameters:
numpad the numeric pad flag value.

Definition at line 148 of file key.cpp.

References mNumericPad.

Referenced by gcn::SDLInput::convertKeyCharacter().

int gcn::Key::getValue (  )  const

Gets the value of the key. If an ascii value exists it will be returned. Otherwise an enum value will be returned.

Returns:
the value of the key.

Definition at line 158 of file key.cpp.

References mValue.

Referenced by gcn::FocusHandler::checkHotKey(), convertKey(), CButtonPanel::DoKey(), gcn::TextField::keyPress(), gcn::TextBox::keyPress(), gcn::Slider::keyPress(), gcn::RadioButton::keyPress(), gcn::ListBox::keyPress(), gcn::DropDown::keyPress(), gcn::CheckBox::keyPress(), gcn::Button::keyPress(), gcn::Button::keyRelease(), and gcn::Gui::logic().

void gcn::Key::setValue ( int  value  ) 

Sets the value of the key. An ascii value or an enum value.

Parameters:
value the key value.

Definition at line 153 of file key.cpp.

References mValue.

Referenced by gcn::SDLInput::convertKeyCharacter().

std::string gcn::Key::toString (  )  const

Convert to a UTF8 string

Definition at line 163 of file key.cpp.

References mValue.

Referenced by InputKey(), gcn::TextField::keyPress(), and gcn::TextBox::keyPress().


Member Data Documentation

int gcn::Key::mValue [protected]

Definition at line 250 of file key.h.

Referenced by getValue(), isCharacter(), isLetter(), isNumber(), Key(), setValue(), and toString().

bool gcn::Key::mShiftPressed [protected]

Definition at line 251 of file key.h.

Referenced by isShiftPressed(), Key(), and setShiftPressed().

bool gcn::Key::mControlPressed [protected]

Definition at line 252 of file key.h.

Referenced by isControlPressed(), Key(), and setControlPressed().

bool gcn::Key::mAltPressed [protected]

Definition at line 253 of file key.h.

Referenced by isAltPressed(), Key(), and setAltPressed().

bool gcn::Key::mMetaPressed [protected]

Definition at line 254 of file key.h.

Referenced by isMetaPressed(), Key(), and setMetaPressed().

bool gcn::Key::mNumericPad [protected]

Definition at line 255 of file key.h.

Referenced by isNumericPad(), Key(), and setNumericPad().


The documentation for this class was generated from the following files:

Generated on Sat Feb 21 00:28:26 2009 for Bos Wars by  doxygen 1.5.6