Main Page | Namespace List | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members | Related Pages

CPanel Class Reference

#include <Panels.h>

Inheritance diagram for CPanel:

CStreamObject CObject List of all members.

Public Member Functions

 CPanel (Tag id, const char *filename)
 ~CPanel (void)
virtual int Read (SStream *stream, Tag tag)
virtual void ReadFinished (void)
Tag GetId (void)
void Draw (void)
void Activate (void)
void Deactivate (void)
void CreepUp (void)
void CreepDown (void)
void CreepLeft (void)
void CreepRight (void)
bool GaugeHit (int mouseX, int mouseY, int &i, CGauge **gptr, int &x, int &y)
void GaugeMouseClick (int mouseX, int mouseY)
void GaugeTrackClick (int mouseX, int mouseY)
void GaugeStopClick (int mouseX, int mouseY)
void MouseMotion (int x, int y)
void MouseClick (int button, int updown, int x, int y)
void ScrollUp (void)
void ScrollDown (void)
void ScrollLeft (void)
void ScrollRight (void)
void Home (void)
void PageUp (void)
void PageDown (void)

Protected Attributes

Tag id
char filename [64]
EPanelType type
char panl [64]
int x_3Dxy
int y_3Dxy
int x_3Dsz
int y_3Dsz
int x_isiz
int y_isiz
std::map< int, int > hoff
std::map< int, SPanelOffsethome
bool keep
bool scrl
bool clao
Tag dlid
SBitmap bmPanl
std::vector< CGauge * > gage
SSurfacesurface
int xScreen
int yScreen
int xOffset
int yOffset
int xMinLimit
int xMaxLimit
int yMinLimit
int yMaxLimit
bool creep_up
bool creep_down
bool creep_left
bool creep_right
EClickResult track
int buttonsDown
int sfx_source

Detailed Description

Definition at line 61 of file Panels.h.


Constructor & Destructor Documentation

CPanel::CPanel Tag  id,
const char *  filename
 

Definition at line 48 of file Panels.cpp.

References bmPanl, buttonsDown, CloseStream(), creep_down, creep_left, creep_right, creep_up, SStream::filename, globals, keep, SStream::mode, MOUSE_TRACKING_OFF, OpenStream(), PANEL_INTERACTIVE, PANEL_STATIC, ReadFrom(), SGlobals::screenHeight, SGlobals::screenWidth, surface, track, type, x_3Dsz, x_3Dxy, x_isiz, xOffset, xScreen, y_3Dsz, y_3Dxy, y_isiz, yOffset, and yScreen.

CPanel::~CPanel void   ) 
 

Todo:
Delete lights

Definition at line 108 of file Panels.cpp.

References bmPanl, FreeBitmap(), FreeSurface(), gage, and surface.


Member Function Documentation

void CPanel::Activate void   ) 
 

Definition at line 1338 of file Panels.cpp.

References SBitmap::bitmap, SBitmap::bitmapName, bmPanl, CreateSurface(), DrawBitmap(), EraseSurface(), LoadBitmap(), panl, surface, x_isiz, and y_isiz.

Referenced by ReadFinished(), and CCockpitManager::SetPanel().

void CPanel::CreepDown void   ) 
 

Definition at line 1381 of file Panels.cpp.

References globals, SGlobals::panelCreepStep, scrl, yMaxLimit, and yOffset.

Referenced by Draw().

void CPanel::CreepLeft void   ) 
 

Definition at line 1390 of file Panels.cpp.

References globals, SGlobals::panelCreepStep, scrl, xMinLimit, and xOffset.

Referenced by Draw().

void CPanel::CreepRight void   ) 
 

Definition at line 1399 of file Panels.cpp.

References globals, SGlobals::panelCreepStep, scrl, xMaxLimit, and xOffset.

Referenced by Draw().

void CPanel::CreepUp void   ) 
 

Definition at line 1372 of file Panels.cpp.

References globals, SGlobals::panelCreepStep, scrl, yMinLimit, and yOffset.

Referenced by Draw().

void CPanel::Deactivate void   ) 
 

Definition at line 1362 of file Panels.cpp.

References bmPanl, FreeBitmap(), FreeSurface(), keep, and surface.

Referenced by CCockpitManager::SetPanel().

void CPanel::Draw void   ) 
 

Definition at line 1658 of file Panels.cpp.

References CGauge::Blit(), BlitTransparent(), creep_down, creep_left, creep_right, creep_up, CreepDown(), CreepLeft(), CreepRight(), CreepUp(), CGauge::Draw(), gage, CGauge::GetSize(), globals, gtfo, SGlobals::screenHeight, SGlobals::screenWidth, surface, xOffset, y_isiz, and yOffset.

Referenced by CCockpitManager::Draw().

bool CPanel::GaugeHit int  mouseX,
int  mouseY,
int &  i,
CGauge **  gptr,
int &  x,
int &  y
 

Definition at line 1408 of file Panels.cpp.

References gage, CGauge::GetSize(), globals, SGlobals::screenHeight, xOffset, y_isiz, and yOffset.

Referenced by GaugeMouseClick(), GaugeStopClick(), GaugeTrackClick(), and MouseMotion().

void CPanel::GaugeMouseClick int  mouseX,
int  mouseY
 

Definition at line 1437 of file Panels.cpp.

References buttonsDown, GaugeHit(), CGauge::MouseClick(), and track.

Referenced by MouseClick().

void CPanel::GaugeStopClick int  mouseX,
int  mouseY
 

Definition at line 1457 of file Panels.cpp.

References buttonsDown, GaugeHit(), CGauge::StopClick(), and track.

Referenced by MouseClick().

void CPanel::GaugeTrackClick int  mouseX,
int  mouseY
 

Definition at line 1447 of file Panels.cpp.

References buttonsDown, GaugeHit(), track, and CGauge::TrackClick().

Tag CPanel::GetId void   ) 
 

Definition at line 1649 of file Panels.cpp.

References id.

Referenced by CCockpitManager::GetPanel().

void CPanel::Home void   ) 
 

Definition at line 1609 of file Panels.cpp.

References hoff, home, x_3Dxy, xOffset, xScreen, y_3Dxy, and yOffset.

Referenced by ReadFinished().

void CPanel::MouseClick int  button,
int  updown,
int  mouseX,
int  mouseY
 

todo Handle multiple button presses

Definition at line 1511 of file Panels.cpp.

References buttonsDown, GaugeMouseClick(), GaugeStopClick(), MOUSE_BUTTON_LEFT, MOUSE_BUTTON_MIDDLE, MOUSE_BUTTON_RIGHT, MOUSE_TRACKING_ON, and track.

Referenced by mouse().

void CPanel::MouseMotion int  x,
int  y
 

Definition at line 1467 of file Panels.cpp.

References buttonsDown, creep_down, creep_left, creep_right, creep_up, SGlobals::crsrArrow, CURSOR_NOT_CHANGED, SGlobals::cursormgr, GaugeHit(), globals, CGauge::MouseMoved(), SGlobals::mouseScrollingEnabled, SGlobals::screenHeight, SGlobals::screenWidth, CCursorManager::SetCursor(), track, and CGauge::TrackClick().

Referenced by motion(), and passive_motion().

void CPanel::PageDown void   ) 
 

Definition at line 1643 of file Panels.cpp.

void CPanel::PageUp void   ) 
 

Definition at line 1637 of file Panels.cpp.

int CPanel::Read SStream stream,
Tag  tag
[virtual]
 

Reimplemented from CStreamObject.

Definition at line 126 of file Panels.cpp.

References clao, dlid, gage, GAUGE_ADF_BASIC, GAUGE_ADF_GENERIC, GAUGE_ADF_KR87, GAUGE_AIRSPEED, GAUGE_ALTIMETER, GAUGE_ALTIMETER_ROLLING, GAUGE_AMMETER, GAUGE_ANALOG_ALT_PRESELECT, GAUGE_ANALOG_CLOCK, GAUGE_ANNUNCIATOR, GAUGE_AOA, GAUGE_AUDIO_KMA26, GAUGE_AUTOPILOT_KAP140, GAUGE_AUTOPILOT_KFC150, GAUGE_AUTOPILOT_KFC200, GAUGE_BASE, GAUGE_BASIC_COMPASS, GAUGE_BATTERY_SWITCH, GAUGE_BITMAP, GAUGE_BRAKE_PRESSURE, GAUGE_CABIN_PRESSURE, GAUGE_CABIN_PRESSURE_RATE, GAUGE_COLLINS_AD, GAUGE_COLLINS_EFIS_SELECTION, GAUGE_COLLINS_HF_RADIO, GAUGE_COLLINS_MND, GAUGE_COLLINS_ND, GAUGE_COLLINS_PFD, GAUGE_COLLINS_RTU, GAUGE_COLLINS_VSPEED_PANEL, GAUGE_COMM_RADIO_GENERIC, GAUGE_COVERED_LIGHT_BUTTON, GAUGE_COVERED_SWITCH, GAUGE_DIGITAL_CLOCK_BASIC, GAUGE_DIGITAL_CLOCK_FLYHAWK, GAUGE_DIGITAL_NEEDLE, GAUGE_DIGITAL_READOUT, GAUGE_DIGITS_READOUT, GAUGE_DIRECTIONAL_GYRO, GAUGE_DME, GAUGE_DME_2, GAUGE_DUAL_KNOB, GAUGE_DUAL_SWITCH, GAUGE_EXHAUST_GAS_TEMP, GAUGE_FLAP, GAUGE_FLAPS_INDICATOR, GAUGE_FLYHAWK_ANNUNCIATOR, GAUGE_FLYHAWK_ANNUNCIATOR_TEST, GAUGE_FLYHAWK_ELEVATOR_TRIM, GAUGE_FLYHAWK_ELT, GAUGE_FLYHAWK_FUEL_SELECTOR, GAUGE_FLYHAWK_LIGHT_KNOB, GAUGE_FLYHAWK_NAV_GPS_PANEL, GAUGE_FUEL, GAUGE_FUEL_FLOW, GAUGE_GPS_KLN89, GAUGE_GYRO_SLAVING, GAUGE_HOBBS_METER, GAUGE_HORIZON, GAUGE_HORIZON_FD, GAUGE_HORIZONTAL_BALL, GAUGE_HOTSPOT, GAUGE_HSI, GAUGE_INDICATOR, GAUGE_KINGAIR_FIRE_EXT, GAUGE_LIGHT_BUTTON, GAUGE_LIGHT_SWITCH_SET, GAUGE_LIT_IN_OUT, GAUGE_LIT_LANDING_GEAR_KNOB, GAUGE_MAGNETO_SWITCH, GAUGE_MALIBU_CHT_BUTTON, GAUGE_MALIBU_CHT_INDICATOR, GAUGE_MALIBU_DIGITAL_CLOCK, GAUGE_MALIBU_ENGINE_MONITOR, GAUGE_MALIBU_NAV_GPS_PANEL, GAUGE_MASTER_CAUTION_BUTTON, GAUGE_MIXTURE_KNOB, GAUGE_N1_TACHOMETER, GAUGE_NAV_COMM_KX155, GAUGE_NAV_GAUGE_GROUP, GAUGE_NAV_RADIO_GENERIC, GAUGE_NAVAJO_AMMETER, GAUGE_NAVAJO_FUEL_SELECTOR, GAUGE_NAVAJO_RADAR_ALTIMETER, GAUGE_NAVIGATION, GAUGE_NEEDLE, GAUGE_NEEDLE_DUAL, GAUGE_NEEDLE_TRIPLE, GAUGE_OIL_PRESSURE, GAUGE_OIL_TEMPERATURE, GAUGE_PILATUS_EFIS_PANEL, GAUGE_PRIMER_KNOB, GAUGE_PROP_SYNC, GAUGE_PUSH_PULL_KNOB, GAUGE_PUSHBUTTON, GAUGE_RADIO_GAUGE_GROUP, GAUGE_REVERSIBLE_THROTTLE_KNOB, GAUGE_RMI_NEEDLE, GAUGE_ROCKER_SWITCH, GAUGE_SIMPLE_FLOAT_SWITCH, GAUGE_SIMPLE_IN_OUT, GAUGE_SIMPLE_SWITCH, GAUGE_SLIP_INDICATOR, GAUGE_SUCTION, GAUGE_SWITCH_PAIR, GAUGE_TACHOMETER, GAUGE_TACHOMETER_DUAL, GAUGE_TRANSPONDER_GENERIC, GAUGE_TRIM_WHEEL, GAUGE_TRIM_WHEEL_INDICATOR, GAUGE_TURN_COORDINATOR, GAUGE_TURN_KNOB, GAUGE_TURN_SWITCH, GAUGE_TWO_STATE_ELT, GAUGE_UNIVERSAL_FMS, GAUGE_VACUUM, GAUGE_VERTICAL_RATE, GAUGE_VERTICAL_SLIDER, GAUGE_VERTICAL_SPEED, GAUGE_WALKER_AP_PANEL, GAUGE_WALKER_FIRE_PANEL, GAUGE_WALKER_TEMP_AIRSPEED, GAUGE_WEATHER_RADAR, GAUGE_XPDR_KT76, globals, hoff, home, keep, SGlobals::logWarning, panl, ReadFrom(), ReadInt(), ReadString(), ReadTag(), scrl, SkipObject(), TAG_IGNORED, TAG_READ, TagToString(), type, CLogFile::Write(), SPanelOffset::x, x_3Dsz, x_3Dxy, x_isiz, SPanelOffset::y, y_3Dsz, y_3Dxy, and y_isiz.

void CPanel::ReadFinished void   )  [virtual]
 

Reimplemented from CStreamObject.

Definition at line 1293 of file Panels.cpp.

References Activate(), globals, Home(), keep, SGlobals::screenHeight, SGlobals::screenWidth, x_3Dsz, xMaxLimit, xMinLimit, xOffset, y_3Dsz, y_3Dxy, y_isiz, yMaxLimit, yMinLimit, and yOffset.

void CPanel::ScrollDown void   ) 
 

Definition at line 1579 of file Panels.cpp.

References globals, SGlobals::panelScrollStep, scrl, yMaxLimit, and yOffset.

Referenced by KeyCameraCockpitScrollDown().

void CPanel::ScrollLeft void   ) 
 

Definition at line 1588 of file Panels.cpp.

References globals, SGlobals::panelScrollStep, scrl, xMinLimit, and xOffset.

Referenced by KeyCameraCockpitScrollLeft().

void CPanel::ScrollRight void   ) 
 

Definition at line 1597 of file Panels.cpp.

References globals, SGlobals::panelScrollStep, scrl, xMaxLimit, and xOffset.

Referenced by KeyCameraCockpitScrollRight().

void CPanel::ScrollUp void   ) 
 

Definition at line 1570 of file Panels.cpp.

References globals, SGlobals::panelScrollStep, scrl, yMinLimit, and yOffset.

Referenced by KeyCameraCockpitScrollUp().


Member Data Documentation

SBitmap CPanel::bmPanl [protected]
 

Definition at line 114 of file Panels.h.

Referenced by Activate(), CPanel(), Deactivate(), and ~CPanel().

int CPanel::buttonsDown [protected]
 

Definition at line 130 of file Panels.h.

Referenced by CPanel(), GaugeMouseClick(), GaugeStopClick(), GaugeTrackClick(), MouseClick(), and MouseMotion().

bool CPanel::clao [protected]
 

Definition at line 111 of file Panels.h.

Referenced by Read().

bool CPanel::creep_down [protected]
 

Definition at line 126 of file Panels.h.

Referenced by CPanel(), Draw(), and MouseMotion().

bool CPanel::creep_left [protected]
 

Definition at line 126 of file Panels.h.

Referenced by CPanel(), Draw(), and MouseMotion().

bool CPanel::creep_right [protected]
 

Definition at line 126 of file Panels.h.

Referenced by CPanel(), Draw(), and MouseMotion().

bool CPanel::creep_up [protected]
 

Definition at line 126 of file Panels.h.

Referenced by CPanel(), Draw(), and MouseMotion().

Tag CPanel::dlid [protected]
 

Definition at line 112 of file Panels.h.

Referenced by Read().

char CPanel::filename[64] [protected]
 

Definition at line 97 of file Panels.h.

std::vector<CGauge*> CPanel::gage [protected]
 

Definition at line 116 of file Panels.h.

Referenced by Draw(), GaugeHit(), Read(), and ~CPanel().

std::map<int, int> CPanel::hoff [protected]
 

Definition at line 106 of file Panels.h.

Referenced by Home(), and Read().

std::map<int, SPanelOffset> CPanel::home [protected]
 

Definition at line 107 of file Panels.h.

Referenced by Home(), and Read().

Tag CPanel::id [protected]
 

Definition at line 96 of file Panels.h.

Referenced by GetId().

bool CPanel::keep [protected]
 

Definition at line 109 of file Panels.h.

Referenced by CPanel(), Deactivate(), Read(), and ReadFinished().

char CPanel::panl[64] [protected]
 

Definition at line 101 of file Panels.h.

Referenced by Activate(), and Read().

bool CPanel::scrl [protected]
 

Definition at line 110 of file Panels.h.

Referenced by CreepDown(), CreepLeft(), CreepRight(), CreepUp(), Read(), ScrollDown(), ScrollLeft(), ScrollRight(), and ScrollUp().

int CPanel::sfx_source [protected]
 

Todo:
Should there be just one source for all panels, or one source per panel?

Definition at line 134 of file Panels.h.

SSurface* CPanel::surface [protected]
 

Definition at line 118 of file Panels.h.

Referenced by Activate(), CPanel(), Deactivate(), Draw(), and ~CPanel().

EClickResult CPanel::track [protected]
 

Definition at line 129 of file Panels.h.

Referenced by CPanel(), GaugeMouseClick(), GaugeStopClick(), GaugeTrackClick(), MouseClick(), and MouseMotion().

EPanelType CPanel::type [protected]
 

Definition at line 98 of file Panels.h.

Referenced by CPanel(), and Read().

int CPanel::x_3Dsz [protected]
 

Definition at line 103 of file Panels.h.

Referenced by CPanel(), Read(), and ReadFinished().

int CPanel::x_3Dxy [protected]
 

Definition at line 102 of file Panels.h.

Referenced by CPanel(), Home(), and Read().

int CPanel::x_isiz [protected]
 

Definition at line 104 of file Panels.h.

Referenced by Activate(), CPanel(), and Read().

int CPanel::xMaxLimit [protected]
 

Definition at line 122 of file Panels.h.

Referenced by CreepRight(), ReadFinished(), and ScrollRight().

int CPanel::xMinLimit [protected]
 

Definition at line 122 of file Panels.h.

Referenced by CreepLeft(), ReadFinished(), and ScrollLeft().

int CPanel::xOffset [protected]
 

Definition at line 120 of file Panels.h.

Referenced by CPanel(), CreepLeft(), CreepRight(), Draw(), GaugeHit(), Home(), ReadFinished(), ScrollLeft(), and ScrollRight().

int CPanel::xScreen [protected]
 

Definition at line 119 of file Panels.h.

Referenced by CPanel(), and Home().

int CPanel::y_3Dsz [protected]
 

Definition at line 103 of file Panels.h.

Referenced by CPanel(), Read(), and ReadFinished().

int CPanel::y_3Dxy [protected]
 

Definition at line 102 of file Panels.h.

Referenced by CPanel(), Home(), Read(), and ReadFinished().

int CPanel::y_isiz [protected]
 

Definition at line 104 of file Panels.h.

Referenced by Activate(), CPanel(), Draw(), GaugeHit(), Read(), and ReadFinished().

int CPanel::yMaxLimit [protected]
 

Definition at line 122 of file Panels.h.

Referenced by CreepDown(), ReadFinished(), and ScrollDown().

int CPanel::yMinLimit [protected]
 

Definition at line 122 of file Panels.h.

Referenced by CreepUp(), ReadFinished(), and ScrollUp().

int CPanel::yOffset [protected]
 

Definition at line 121 of file Panels.h.

Referenced by CPanel(), CreepDown(), CreepUp(), Draw(), GaugeHit(), Home(), ReadFinished(), ScrollDown(), and ScrollUp().

int CPanel::yScreen [protected]
 

Definition at line 119 of file Panels.h.

Referenced by CPanel().


The documentation for this class was generated from the following files:
SourceForge.net Logo Documentation generated by doxygen