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

LocationsDialog Class Reference

#include <winlocations.h>

Collaboration diagram for LocationsDialog:

Collaboration graph
List of all members.

Public Member Functions

 LocationsDialog (HINSTANCE, HWND, CelestiaCore *)
virtual void notifyChange (CelestiaCore *, int)
void RestoreSettings (HWND)
void SetControls (HWND)

Public Attributes

CelestiaCoreappCore
HWND hwnd
float initialFeatureSize
int initialLocationFlags
HWND parent

Constructor & Destructor Documentation

LocationsDialog::LocationsDialog HINSTANCE  ,
HWND  ,
CelestiaCore
 

Definition at line 156 of file winlocations.cpp.

References appInstance, CelestiaWatcher, hwnd, IDD_LOCATIONS, LocationsProc(), and parent.

00158                                                          :
00159     CelestiaWatcher(*_appCore),
00160     appCore(_appCore),
00161     parent(_parent)
00162 {
00163     hwnd = CreateDialogParam(appInstance,
00164                              MAKEINTRESOURCE(IDD_LOCATIONS),
00165                              parent,
00166                              LocationsProc,
00167                              reinterpret_cast<LONG>(this));
00168 }


Member Function Documentation

void LocationsDialog::notifyChange CelestiaCore ,
int 
[virtual]
 

Definition at line 223 of file winlocations.cpp.

References hwnd, parent, and SetControls().

00224 {
00225     if (parent != NULL)
00226         SetControls(hwnd);
00227 }

void LocationsDialog::RestoreSettings HWND   ) 
 

Definition at line 219 of file winlocations.cpp.

Referenced by LocationsProc().

00220 {
00221 }

void LocationsDialog::SetControls HWND   ) 
 

Definition at line 178 of file winlocations.cpp.

References appCore, dlgCheck(), FeatureSizeSliderRange, Simulation::getActiveObserver(), Renderer::getLabelMode(), Observer::getLocationFilter(), Renderer::getMinimumFeatureSize(), CelestiaCore::getRenderer(), CelestiaCore::getSimulation(), hwnd, IDC_EDIT_FEATURE_SIZE, IDC_LABELFEATURES, IDC_SHOW_CITIES, IDC_SHOW_CRATERS, IDC_SHOW_LANDING_SITES, IDC_SHOW_MARIA, IDC_SHOW_MONTES, IDC_SHOW_OBSERVATORIES, IDC_SHOW_OTHERS, IDC_SHOW_TERRAE, IDC_SHOW_VALLES, IDC_SLIDER_FEATURE_SIZE, MaxFeatureSize, and MinFeatureSize.

Referenced by LocationsProc(), and notifyChange().

00179 {
00180     Observer* obs = appCore->getSimulation()->getActiveObserver();
00181     uint32 locFilter = obs->getLocationFilter();
00182 
00183     dlgCheck(hDlg, IDC_SHOW_CITIES,        locFilter, Location::City);
00184     dlgCheck(hDlg, IDC_SHOW_OBSERVATORIES, locFilter, Location::Observatory);
00185     dlgCheck(hDlg, IDC_SHOW_LANDING_SITES, locFilter, Location::LandingSite);
00186     dlgCheck(hDlg, IDC_SHOW_MONTES,        locFilter, Location::Mons);
00187     dlgCheck(hDlg, IDC_SHOW_MARIA,         locFilter, Location::Mare);
00188     dlgCheck(hDlg, IDC_SHOW_CRATERS,       locFilter, Location::Crater);
00189     dlgCheck(hDlg, IDC_SHOW_VALLES,        locFilter, Location::Vallis);
00190     dlgCheck(hDlg, IDC_SHOW_TERRAE,        locFilter, Location::Terra);
00191     dlgCheck(hDlg, IDC_SHOW_OTHERS,        locFilter, Location::Other);
00192 
00193     uint32 labelMode = appCore->getRenderer()->getLabelMode();
00194     dlgCheck(hDlg, IDC_LABELFEATURES,     labelMode, Renderer::LocationLabels);
00195 
00196     // Set up feature size slider
00197     SendDlgItemMessage(hDlg,
00198                        IDC_SLIDER_FEATURE_SIZE,
00199                        TBM_SETRANGE,
00200                        (WPARAM)TRUE,
00201                        (LPARAM) MAKELONG(0, FeatureSizeSliderRange));
00202     float featureSize = appCore->getRenderer()->getMinimumFeatureSize();
00203     int sliderPos = (int) (FeatureSizeSliderRange *
00204                            (featureSize - MinFeatureSize) /
00205                            (MaxFeatureSize - MinFeatureSize));
00206     SendDlgItemMessage(hDlg,
00207                        IDC_SLIDER_FEATURE_SIZE,
00208                        TBM_SETPOS,
00209                        (WPARAM) TRUE,
00210                        (LPARAM) sliderPos);
00211     
00212     char val[16];
00213     HWND hwnd = GetDlgItem(hDlg, IDC_EDIT_FEATURE_SIZE);
00214     sprintf(val, "%d", (int) featureSize);
00215     SetWindowText(hwnd, val);
00216 }


Member Data Documentation

CelestiaCore* LocationsDialog::appCore
 

Definition at line 30 of file winlocations.h.

Referenced by LocationsProc(), and SetControls().

HWND LocationsDialog::hwnd
 

Definition at line 32 of file winlocations.h.

Referenced by LocationsDialog(), notifyChange(), SetControls(), and WinMain().

float LocationsDialog::initialFeatureSize
 

Definition at line 34 of file winlocations.h.

Referenced by LocationsProc().

int LocationsDialog::initialLocationFlags
 

Definition at line 33 of file winlocations.h.

Referenced by LocationsProc().

HWND LocationsDialog::parent
 

Definition at line 31 of file winlocations.h.

Referenced by LocationsDialog(), LocationsProc(), and notifyChange().


The documentation for this class was generated from the following files:
Generated on Sat Jan 14 22:33:26 2006 for Celestia by  doxygen 1.4.1