Beispiel #1
0
void
ThermalBandLook::Initialise(bool _inverse, Color sky_color)
{
  const uint8_t alpha = ALPHA_OVERLAY;

  inverse = _inverse;

  brush_active.Create(ColorWithAlpha(sky_color, alpha));
  brush_inactive.Create(ColorWithAlpha(DarkColor(sky_color), alpha/2));

  pen_active.Create(Layout::ScalePenWidth(1), DarkColor(sky_color));
  pen_inactive.Create(Layout::ScalePenWidth(1), sky_color);

  white_pen.Create(Layout::ScalePenWidth(2), COLOR_WHITE);
  black_pen.Create(Layout::ScalePenWidth(2), COLOR_BLACK);

  working_band_pen.Create(Layout::ScalePenWidth(2), COLOR_GRAY);
}
Beispiel #2
0
void
VarioBarLook::Initialise(const Font &_font)
{
  const uint8_t alpha = 0xA0;

  brush_sink.Set(ColorWithAlpha(COLOR_RED, alpha));
  brush_sink_avg.Set(ColorWithAlpha(LightColor(COLOR_RED), alpha));
  pen_sink.Set(Layout::ScalePenWidth(1), DarkColor(COLOR_RED));

  brush_climb.Set(ColorWithAlpha(COLOR_GREEN, alpha));
  brush_climb_avg.Set(ColorWithAlpha((LightColor(LightColor(COLOR_GREEN))), alpha));
  pen_climb.Set(Layout::ScalePenWidth(1), DarkColor(COLOR_GREEN));

  brush_mc.Set(ColorWithAlpha(COLOR_GRAY, alpha));
  pen_mc.Set(Layout::ScalePenWidth(1), DarkColor(COLOR_GRAY));

  font = &_font;
}
Beispiel #3
0
void
ThermalBandLook::Initialise(bool _inverse, Color sky_color)
{
  inverse = _inverse;

  brush.Create(ColorWithAlpha(sky_color, 0xA0));
  pen.Create(Layout::ScalePenWidth(1), DarkColor(sky_color));

  white_pen.Create(2, COLOR_WHITE);
  black_pen.Create(2, COLOR_BLACK);
}
Beispiel #4
0
void
MapLook::Initialise(const MapSettings &settings,
                    const Font &font, const Font &bold_font)
{
  const uint8_t alpha = ALPHA_OVERLAY;

  waypoint.Initialise(settings.waypoint, font, bold_font);
  aircraft.Initialise();
  task.Initialise();
  trail.Initialise(settings.trail);
  wave.Initialise();
  wind.Initialise(bold_font);

#ifdef HAVE_NOAA
  noaa.Initialise();
#endif

#ifdef HAVE_HATCHED_BRUSH
  above_terrain_bitmap.Load(IDB_ABOVETERRAIN);
  above_terrain_brush.Create(above_terrain_bitmap);
#endif

  terrain_warning_icon.LoadResource(IDB_TERRAINWARNING, IDB_TERRAINWARNING_HD);

  compass_brush.Create(IsDithered() ? COLOR_WHITE : ColorWithAlpha(Color(207, 207, 207), alpha));
  compass_pen.Create(Layout::ScalePenWidth(1),
                     HasColors()? COLOR_GRAY : COLOR_BLACK);
  compass_triangle_brush.Create(IsDithered()
                                ? COLOR_BLACK
                                : ColorWithAlpha(Color(50, 50, 50), alpha));
  compass_triangle_pen.Create(Layout::ScalePenWidth(1),
                              HasColors() ? COLOR_GRAY : COLOR_BLACK);

  traffic_safe_icon.LoadResource(IDB_TRAFFIC_SAFE, IDB_TRAFFIC_SAFE_HD, false);
  traffic_warning_icon.LoadResource(IDB_TRAFFIC_WARNING, IDB_TRAFFIC_WARNING_HD, false);
  traffic_alarm_icon.LoadResource(IDB_TRAFFIC_ALARM, IDB_TRAFFIC_ALARM_HD, false);

  static constexpr Color clrSepia(0x78,0x31,0x18);
  reach_terrain_pen.Create(Pen::DASH3, Layout::ScalePenWidth(1), clrSepia);
  reach_terrain_pen_thick.Create(Pen::DASH3, Layout::ScalePenWidth(2), clrSepia);

  static constexpr Color clrBlupia(0x38,0x55,0xa7);
  reach_working_pen.Create(Pen::DASH1, Layout::ScalePenWidth(1), clrBlupia);
  reach_working_pen_thick.Create(Pen::DASH1, Layout::ScalePenWidth(2), clrBlupia);

  track_line_pen.Create(3, COLOR_GRAY);

  contest_pens[0].Create(Layout::ScalePenWidth(1) + 2, COLOR_RED);
  contest_pens[1].Create(Layout::ScalePenWidth(1) + 1, COLOR_ORANGE);
  contest_pens[2].Create(Layout::ScalePenWidth(1), COLOR_BLUE);

  thermal_source_icon.LoadResource(IDB_THERMALSOURCE, IDB_THERMALSOURCE_HD);

  traffic_safe_icon.LoadResource(IDB_TRAFFIC_SAFE, IDB_TRAFFIC_SAFE_HD, false);
  traffic_warning_icon.LoadResource(IDB_TRAFFIC_WARNING, IDB_TRAFFIC_WARNING_HD, false);
  traffic_alarm_icon.LoadResource(IDB_TRAFFIC_ALARM, IDB_TRAFFIC_ALARM_HD, false);

  cruise_mode_icon.LoadResource(IDB_CRUISE, IDB_CRUISE_HD, false);
  climb_mode_icon.LoadResource(IDB_CLIMB, IDB_CLIMB_HD, false);
  final_glide_mode_icon.LoadResource(IDB_FINALGLIDE, IDB_FINALGLIDE_HD, false);
  abort_mode_icon.LoadResource(IDB_ABORT, IDB_ABORT_HD, false);

  waiting_for_fix_icon.LoadResource(IDB_GPSSTATUS1, IDB_GPSSTATUS1_HD, false);
  no_gps_icon.LoadResource(IDB_GPSSTATUS2, IDB_GPSSTATUS2_HD, false);

  topography.Initialise();
  airspace.Initialise(settings.airspace, topography.important_label_font);

  overlay.Initialise(font, bold_font);
}