Sample: SDK.Fuel_Selector.cpp
//Copyright (c) Microsoft Corporation. All rights reserved. // SDK.Fuel_Selector.c // Set up gauge header char fuel_selector_gauge_name[] = GAUGE_NAME; extern PELEMENT_HEADER fuel_selector_list; extern MOUSERECT fuel_selector_mouse_rect[]; GAUGE_HEADER_FS700(GAUGE_W, fuel_selector_gauge_name, &fuel;_selector_list, fuel_selector_mouse_rect, 0, 0, 0, 0); ///////////////////////////////////////////////////////////////////////////// FLOAT64 FSAPI fuel_selector_icon_cb( PELEMENT_ICON pelement ) { switch (pelement->source_var.var_value.e) { case FUEL_TANK_SELECTOR_OFF: return 0; case FUEL_TANK_SELECTOR_LEFT: return 1; case FUEL_TANK_SELECTOR_ALL: return 2; case FUEL_TANK_SELECTOR_RIGHT: return 3; default: return 2; } } MAKE_ICON ( fuel_selector_icon, BMP_FUEL_SELECTOR_OFF, NULL, NULL, IMAGE_USE_ERASE | IMAGE_USE_TRANSPARENCY, 0, 0,0, FUEL_TANK_SELECTOR,fuel_selector_icon_cb, ICON_SWITCH_TYPE_STEP_TO, 4, 0, 0 ) PELEMENT_HEADER fuel_selector_icon_list[] = { &fuel;_selector_icon.header, NULL }; ///////////////////////////////////////////////////////////////////////////// MAKE_STATIC ( fuel_selector_background, BMP_FUEL_SELECTOR_OFF, fuel_selector_icon_list, NULL, IMAGE_USE_TRANSPARENCY | IMAGE_NO_STATIC_BLENDING, 0, 0, 0 ) PELEMENT_HEADER fuel_selector_list = &fuel;_selector_background.header; ///////////////////////////////////////////////////////////////////////////// MODULE_VAR fuel_selector_mouse_var = {FUEL_TANK_SELECTOR}; BOOL FSAPI fuel_selector_mouse_cb( PPIXPOINT relative_point, FLAGS32 mouse_flags ) { lookup_var( &fuel;_selector_mouse_var); switch (fuel_selector_mouse_var.var_value.e) { case FUEL_TANK_SELECTOR_LEFT: trigger_key_event( KEY_FUEL_SELECTOR_ALL, 0 ); break; case FUEL_TANK_SELECTOR_ALL: trigger_key_event( KEY_FUEL_SELECTOR_RIGHT, 0 ); break; case FUEL_TANK_SELECTOR_RIGHT: trigger_key_event( KEY_FUEL_SELECTOR_OFF, 0 ); break; case FUEL_TANK_SELECTOR_OFF: trigger_key_event( KEY_FUEL_SELECTOR_LEFT, 0 ); break; default: trigger_key_event( KEY_FUEL_SELECTOR_ALL, 0 ); break; } return TRUE; } MOUSE_BEGIN( fuel_selector_mouse_rect, HELPID_GAUGE_FUEL_SELECTOR, 0, 0 ) MOUSE_CHILD_FUNCT( 0,0,39,48, CURSOR_HAND, MOUSE_LEFTSINGLE, fuel_selector_mouse_cb ) MOUSE_END ///////////////////////////////////////////////////////////////////////////// #undef GAUGE_NAME #undef GAUGEHDR_VAR_NAME #undef GAUGE_W |