- pHUDInstr = HUD_deque[0];
- brightness = pHUDInstr->get_brightness();
- // brightness = HUD_deque.at(0)->get_brightness();
-
- glMatrixMode(GL_PROJECTION);
- glPushMatrix();
-
- glLoadIdentity();
- gluOrtho2D(x_start, x_end, y_start, y_end);
- glMatrixMode(GL_MODELVIEW);
- glPushMatrix();
- glLoadIdentity();
-
- glDisable(GL_DEPTH_TEST);
- glDisable(GL_LIGHTING);
-
- static const SGPropertyNode * antialiased_node
- = fgGetNode("/sim/hud/antialiased");
-
- if( antialiased_node->getBoolValue() ) {
- glEnable(GL_LINE_SMOOTH);
-// glEnable(GL_BLEND);
- glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
- glHint(GL_LINE_SMOOTH_HINT,GL_DONT_CARE);
-// glHint(GL_LINE_SMOOTH_HINT,GL_NICEST);
- glLineWidth(1.5);
- } else {
- glLineWidth(1.0);
- }
-
- if( day_night_sw == DAY) {
- switch (brightness)
- {
- case BRT_LIGHT:
- set_hud_color (0.1f, 0.9f, 0.1f);
- break;
-
- case BRT_MEDIUM:
- set_hud_color (0.1f, 0.7f, 0.0f);
- break;
-
- case BRT_DARK:
- set_hud_color (0.0f, 0.6f, 0.0f);
- break;
-
- case BRT_BLACK:
- set_hud_color( 0.0f, 0.0f, 0.0f);
- break;
-
- default:
- set_hud_color (0.1f, 0.9f, 0.1f);
- }
- } else {
- if( day_night_sw == NIGHT) {
- switch (brightness)
- {
- case BRT_LIGHT:
- set_hud_color (0.9f, 0.1f, 0.1f);
- break;
-
- case BRT_MEDIUM:
- set_hud_color (0.7f, 0.0f, 0.1f);
- break;
-
- case BRT_DARK:
- set_hud_color (0.6f, 0.0f, 0.0f);
- break;
-
- case BRT_BLACK:
- set_hud_color( 0.0f, 0.0f, 0.0f);
- break;
-
- default:
- set_hud_color (0.6f, 0.0f, 0.0f);
- }
- } else { // Just in case default
- set_hud_color (0.1f, 0.9f, 0.1f);
- }
- }
-
- deque < instr_item * > :: iterator current = HUD_deque.begin();
- deque < instr_item * > :: iterator last = HUD_deque.end();
-
- for ( ; current != last; ++current ) {
- pHUDInstr = *current;
-
- if( pHUDInstr->enabled()) {
- // fgPrintf( SG_COCKPIT, SG_DEBUG, "HUD Code %d Status %d\n",
- // hud->code, hud->status );
- pHUDInstr->draw();
-
- }
- }
-
- char *gmt_str = get_formated_gmt_time();
- HUD_TextList.add( fgText(40, 10, gmt_str) );
-
-#ifdef FG_NETWORK_OLK
- if ( net_hud_display ) {
- net_hud_update();
- }
-#endif
+ glDisable(GL_DEPTH_TEST);
+ glDisable(GL_LIGHTING);
+
+ static const SGPropertyNode *antialiased_node
+ = fgGetNode("/sim/hud/antialiased", true);
+ static const SGPropertyNode *heading_enabled
+ = fgGetNode("/autopilot/locks/heading", true);
+ static const SGPropertyNode *altitude_enabled
+ = fgGetNode("/autopilot/locks/altitude", true);
+
+ static char hud_hdg_text[256];
+ static char hud_wp0_text[256];
+ static char hud_wp1_text[256];
+ static char hud_wp2_text[256];
+ static char hud_alt_text[256];
+
+ if( antialiased_node->getBoolValue() ) {
+ glEnable(GL_LINE_SMOOTH);
+ // glEnable(GL_BLEND);
+ glBlendFunc(GL_SRC_ALPHA,GL_ONE_MINUS_SRC_ALPHA);
+ glHint(GL_LINE_SMOOTH_HINT,GL_DONT_CARE);
+ glLineWidth(2.0);
+ } else {
+ glLineWidth(1.0);
+ }
+
+ if( global_day_night_switch == HUD_DAY) {
+ switch (HUD_deque[0]->get_brightness())
+ {
+ case HUD_BRT_LIGHT:
+ set_hud_color (0.1f, 0.9f, 0.1f);
+ break;
+
+ case HUD_BRT_MEDIUM:
+ set_hud_color (0.1f, 0.7f, 0.0f);
+ break;
+
+ case HUD_BRT_DARK:
+ set_hud_color (0.0f, 0.6f, 0.0f);
+ break;
+
+ case HUD_BRT_BLACK:
+ set_hud_color( 0.0f, 0.0f, 0.0f);
+ break;