void
ThermalAssistantLook::Initialise(bool small, bool inverse)
{
  background_color = COLOR_WHITE;
  circle_color = Color(0xB0, 0xB0, 0xB0);
  text_color = Color(0x00, 0x00, 0x00);
  polygon_fill_color = Color(0xCC, 0xCC, 0xFF);
  polygon_border_color = Color(0x00, 0x00, 0xFF);

#ifdef ENABLE_OPENGL
  polygon_brush.Set(polygon_fill_color.WithAlpha(128));
#else /* !OPENGL */
  polygon_brush.Set(polygon_fill_color);
#endif /* !OPENGL */

  UPixelScalar width = Layout::FastScale(small ? 1 : 2);
#ifdef ENABLE_OPENGL
  polygon_pen.Set(width, polygon_border_color.WithAlpha(128));
#else /* !OPENGL */
  polygon_pen.Set(width, polygon_border_color);
#endif /* !OPENGL */
  inner_circle_pen.Set(1, circle_color);
  outer_circle_pen.Set(Pen::DASH, 1, circle_color);
  plane_pen.Set(width, inverse ? COLOR_WHITE : COLOR_BLACK);

  overlay_font.Load(GetStandardFontFace(), Layout::FastScale(24));
  circle_label_font.Load(GetStandardFontFace(), Layout::FastScale(12));
}
Beispiel #2
0
static void
InitialiseLogFonts()
{
  if (IsAltair()) {
    LoadAltairLogFonts();
    return;
  }

#ifndef USE_GDI
  UPixelScalar font_height = Layout::SmallScale(IsAndroid() ? 30 : 24);
#else
  UPixelScalar font_height = Layout::SmallScale(35);
#endif

  // oversize first so can then scale down
  InitialiseLogfont(&log_infobox, GetStandardFontFace(),
                    (int)(font_height * 1.4), true, false, true);

#ifdef WIN32
  log_infobox.lfCharSet = ANSI_CHARSET;
#endif

  InitialiseLogfont(&log_title, GetStandardFontFace(), font_height / 3);

  // new font for CDI Scale
  InitialiseLogfont(&log_cdi, GetStandardFontFace(),
                    UPixelScalar(font_height * 0.6), false, false, false);

  // new font for map labels
  InitialiseLogfont(&log_map_label, GetStandardFontFace(),
                    UPixelScalar(font_height * 0.39), false, true);

  // new font for map labels big/medium cities
  InitialiseLogfont(&log_map_label_important, GetStandardFontFace(),
                    UPixelScalar(font_height * 0.39), false, true);

  // new font for map labels
  InitialiseLogfont(&log_map, GetStandardFontFace(),
                    UPixelScalar(font_height * 0.507));

  // Font for map bold text
  InitialiseLogfont(&log_map_bold, GetStandardFontFace(),
                    UPixelScalar(font_height * 0.507), true);

  InitialiseLogfont(&log_infobox_small, GetStandardFontFace(),
                    Layout::Scale(20));

#ifndef GNAV
  InitialiseLogfont(&log_infobox_units, GetStandardFontFace(),
                    (int)(font_height * 0.56));
#endif

  InitialiseLogfont(&log_monospace, GetStandardMonospaceFontFace(),
                    UPixelScalar(font_height * 0.39), false, false, false);
}
Beispiel #3
0
FontDescription::FontDescription(unsigned height,
                                 bool bold, bool italic,
                                 bool monospace)
{
    Init(monospace ? GetStandardMonospaceFontFace() : GetStandardFontFace(),
         -int(height), bold, italic, monospace);
}
Beispiel #4
0
void
FlarmTrafficLook::Initialise(const TrafficLook &other, bool small, bool inverse)
{
  passive_color = Color(0x99, 0x99, 0x99);
  warning_color = other.warning_color;
  alarm_color = other.alarm_color;
  default_color = inverse ? COLOR_WHITE : COLOR_BLACK;
  selection_color = COLOR_BLUE;
  background_color = inverse ? COLOR_BLACK : COLOR_WHITE;
  radar_color = inverse ? COLOR_DARK_GRAY : COLOR_LIGHT_GRAY;
  Color team_color_green = Color(0x74, 0xFF, 0);
  Color team_color_blue = Color(0, 0x90, 0xFF);
  Color team_color_yellow = Color(0xFF, 0xE8, 0);
  Color team_color_magenta = Color(0xFF, 0, 0xCB);

  warning_brush.Set(warning_color);
  alarm_brush.Set(alarm_color);
  default_brush.Set(default_color);
  passive_brush.Set(passive_color);
  selection_brush.Set(selection_color);
  radar_brush.Set(radar_color);
  team_brush_green.Set(team_color_green);
  team_brush_blue.Set(team_color_blue);
  team_brush_yellow.Set(team_color_yellow);
  team_brush_magenta.Set(team_color_magenta);

  UPixelScalar width = Layout::FastScale(small ? 1 : 2);
  warning_pen.Set(width, warning_color);
  alarm_pen.Set(width, alarm_color);
  default_pen.Set(width, default_color);
  passive_pen.Set(width, passive_color);
  selection_pen.Set(width, selection_color);
  team_pen_green.Set(width, team_color_green);
  team_pen_blue.Set(width, team_color_blue);
  team_pen_yellow.Set(width, team_color_yellow);
  team_pen_magenta.Set(width, team_color_magenta);

  plane_pen.Set(width, radar_color);
  radar_pen.Set(1, radar_color);

  unit_fraction_pen.Set(1, inverse ? COLOR_WHITE : COLOR_BLACK);

  no_traffic_font.Load(GetStandardFontFace(), Layout::FastScale(24));
  label_font.Load(GetStandardFontFace(), Layout::FastScale(14));
  side_info_font.Load(GetStandardFontFace(),
                      Layout::FastScale(small ? 12 : 18), true);

  info_labels_font.Load(GetStandardFontFace(),
                        Layout::FastScale(10), true);
  info_values_font.Load(GetStandardFontFace(), Layout::FastScale(20));
  info_units_font.Load(GetStandardFontFace(), Layout::FastScale(8));
  call_sign_font.Load(GetStandardFontFace(),
                      Layout::FastScale(28), true);
}
Beispiel #5
0
static void
OnLogoPaint(gcc_unused WndOwnerDrawFrame *Sender, Canvas &canvas)
{
  const UPixelScalar width = canvas.GetWidth();
  PixelScalar x = Layout::FastScale(10), y = x;

  canvas.ClearWhite();

  Bitmap title(width > 360 ? IDB_TITLE_HD : IDB_TITLE);

  // Determine title image size
  PixelSize title_size = title.GetSize();

  // Draw 'XCSoar N.N' title
  canvas.Copy(x, y, title_size.cx, title_size.cy, title, 0, 0);
  y += title_size.cy + Layout::FastScale(20);

  Font font;
  font.Load(GetStandardFontFace(), Layout::FastScale(16));
  canvas.Select(font);
  canvas.SetTextColor(COLOR_BLACK);
  canvas.SetBackgroundTransparent();

  canvas.DrawText(x, y, _T("version: "));
  canvas.DrawText(x + Layout::FastScale(80), y, XCSoar_VersionString);
  y += Layout::FastScale(22);

  canvas.DrawText(x, y, _T("date: "));
  canvas.DrawText(x + Layout::FastScale(80), y, _T(__DATE__));
#ifdef GIT_COMMIT_ID
  y += Layout::FastScale(22);

  canvas.DrawText(x, y, _T("git: "));
  canvas.DrawText(x + Layout::FastScale(80), y, _T(GIT_COMMIT_ID));
#endif
  y += Layout::FastScale(37);

  canvas.DrawText(x, y, _T("more information at"));
  y += Layout::FastScale(22);

  canvas.SetTextColor(COLOR_XCSOAR);
  canvas.DrawText(x, y, _T("http://www.xcsoar.org"));
}