Ticket #695: route_speed.patch

File route_speed.patch, 3.5 KB (added by thomas0782, 10 years ago)
  • navit/graphics/win32/graphics_win32.c

     
    7070
    7171static HWND g_hwnd = NULL;
    7272
     73#ifdef HAVE_API_WIN32_CE
     74static int fullscr = 0;
     75#endif
     76
     77
    7378#ifndef GET_WHEEL_DELTA_WPARAM
    7479#define GET_WHEEL_DELTA_WPARAM(wParam)  ((short)HIWORD(wParam))
    7580#endif
     
    525530    case WM_KEYDOWN:
    526531        HandleKeyDown( gra_priv, wParam);
    527532        break;
     533#ifdef HAVE_API_WIN32_CE
     534    case WM_ENABLE:;
     535        HWND hwndSip = FindWindow(L"MS_SIPBUTTON", NULL);
     536        if (fullscr) {
     537           // deactivate the SIP button
     538           ShowWindow(hwndSip, SW_HIDE);
     539        }
     540        break;
     541#endif
    528542    default:
    529543        return DefWindowProc(hwnd, Message, wParam, lParam);
    530544    }
     
    537551#ifdef HAVE_API_WIN32_CE
    538552    HWND hwndTaskbar = FindWindow(L"HHTaskBar", NULL);
    539553    HWND hwndSip = FindWindow(L"MS_SIPBUTTON", NULL);
     554    fullscr = on;
    540555        if (on) {
    541556        ShowWindow(hwndTaskbar, SW_HIDE);
    542557        MoveWindow(g_hwnd, 0, 0, GetSystemMetrics(SM_CXSCREEN), GetSystemMetrics(SM_CYSCREEN), FALSE);
  • navit/osd/core/osd_core.c

     
    165165 * * @returns a pointer to a string containing the formatted speed
    166166 * */
    167167static char *
    168 format_speed(double speed, char *sep)
     168format_speed(double speed, char *sep, char *format)
    169169{
    170         return g_strdup_printf("%.0f%skm/h", speed, sep);
     170        if (!format || !strcmp(format,"named"))
     171                return g_strdup_printf("%.0f%skm/h", speed, sep);
     172        else if (!strcmp(format,"value") || !strcmp(format,"unit")) {
     173                if (!strcmp(format,"value"))
     174                        return g_strdup_printf("%.0f", speed);
     175                else
     176                        return "km/h";
     177        }
    171178}
    172179
    173180/*static char *
     
    351358  }
    352359
    353360  dist_buffer = format_distance(this->sum_dist,"");
    354   spd_buffer = format_speed(spd,"");
     361  spd_buffer = format_speed(spd,"","");
    355362  remainder = this->time_all;
    356363  days  = remainder  / (24*60*60);
    357364  remainder = remainder  % (24*60*60);
     
    17651772
    17661773        switch (attr->type) {
    17671774        case attr_position_speed:
    1768                 if (!format || !strcmp(format,"named"))
    1769                         return format_speed(*attr->u.numd,"");
    1770                 if (!strcmp(format,"value") || !strcmp(format,"unit")) {
    1771                         char *ret,*tmp=format_speed(*attr->u.numd," ");
    1772                         char *pos=strchr(tmp,' ');
    1773                         if (! pos)
    1774                                 return tmp;
    1775                         *pos++='\0';
    1776                         if (!strcmp(format,"value"))
    1777                                 return tmp;
    1778                         ret=g_strdup(pos);
    1779                         g_free(tmp);
    1780                         return ret;
    1781                 }
     1775                return format_speed(*attr->u.numd,"",format);
    17821776        case attr_position_height:
    17831777        case attr_position_direction:
    17841778                return format_float_0(*attr->u.numd);
     
    20392033                                        int *flags=tracking_get_current_flags(tracking);
    20402034                                        if (flags && (*flags & AF_SPEED_LIMIT) && tracking_get_attr(tracking, attr_maxspeed, &maxspeed_attr, NULL)) {
    20412035                                                routespeed = maxspeed_attr.u.num;
    2042                                                 value = format_speed(routespeed, "");
    20432036                                        }
    20442037
    20452038                                        if (routespeed == -1) {
     
    20492042                                                        rprof=vehicleprofile_get_roadprofile(prof, item->type);
    20502043                                                if (rprof) {
    20512044                                                        routespeed=rprof->speed;
    2052                                                         value=format_speed(routespeed,"");
    20532045                                                }
    20542046                                        }
     2047
     2048                                        value = format_speed(routespeed,"", oti->format);
    20552049                                } else if (item) {
    20562050                                        if (tracking_get_attr(tracking, oti->attr_typ, &attr, NULL))
    20572051                                                value=osd_text_format_attr(&attr, oti->format);