From 280bab6f7422be8e950702b7fd9b35e0ea539ffb Mon Sep 17 00:00:00 2001 From: jandrop Date: Tue, 13 Oct 2015 19:58:54 +0200 Subject: [PATCH 1/8] Spanish translations --- Android/res/values-es/strings.xml | 525 ++++++++++++++++++++++++++++++ 1 file changed, 525 insertions(+) create mode 100644 Android/res/values-es/strings.xml diff --git a/Android/res/values-es/strings.xml b/Android/res/values-es/strings.xml new file mode 100644 index 0000000000..ba8087e4aa --- /dev/null +++ b/Android/res/values-es/strings.xml @@ -0,0 +1,525 @@ + + + + + Ajustes + General + Otros + Ajustes del drone + Ajustes de la aplicación + Datos del vuelo + Editor + Subir misión + Descargar misión + + + Calibración + Checklist + Parámetros + + + Tipo de conexión de telemetría + Which link to use to connect to the drone + Mapas + Which map provider to use. + Proveedor de mapa + Interfaz de usuario + Inglés como idioma de interfaz + Usar idioma inglés (en lugar del idioma del sistema). Requiere reinicio de la aplicación. + Mantener pantalla encendida + Check to keep the screen on and bright (affect + battery life) + Bloquear orientación de la pantalla + Locks screen to the orientation which is present when connecting + Avanzado + Tipo de mapa + Que tipo de mapa usar + Map Tile Provider + Google + Mapbox + Which map tile provider to use + Habilitar texto hablado + Audible messages for important events + Set Volume To Max On Start + Preferencias de conexión + Ajustes de USB, TCP y UDP + Conexión USB + Velocidad del enlace de telemetría + Baud Rate of the USB Telemetry Link + Conexión TCP + IP del servidor + Puerto del servidor + Conexión UDP + Puerto del servidor UDP + Acerca de + Versión + + Mantenga pulsado para activar auto seguimiento del usuario. + Mantenga pulsado para activar auto seguimiento del drone.. + La ubicación del drone no está disponible + + + Conectar + Desconectar + Conectado + Desconectado + + + Calibrar + Cancelar + Enviar + Siguiente + Hecho + + Selecciona el fichero para abrir: + No hay ficheros + Error abriendo el fichero + Fichero abierto + + Lateral + Footprint + GSD + Longitudinal + Área + Cámara: + Hatch angle: + Altitud de vuelo: + Superposición: + Sidelap: + Grid Length + Fotos + Número de bandas + Dibuje la región de estudio + + Acro permite al piloto controlar el ratio de rotación directamente. + Alt Hold automáticamente controla el acelerador y mantiene la altitud. No requiere GPS. + Auto follows the scripted mission stored on the vehicle. + Circle rota el vehiculo al rededor de un punto de interes. El vehículo siempre apuntará hacia el centro. Requiere GPS lock. + Drift combina roll and yaw para producir un vuelo más natural e intuitivo. Requiere GPS lock. + El modo Guiado permite el control desde una estación de tierra. Requiere GPS lock. + Aterriza en la posición actual. Requiere GPS lock. + Loiter le permite al piloto volar completamente a traves de GPS. + RTL se eleva a la altitud mínima, vuelve a la posición de inicio y aterriza. Requiere GPS lock. + Sport allows a pilot to control rate of rotation directly with the addition of self-leveling. + Estabilizar los niveles del vehículo en vuelo. + PosHold permite mantener la posición (GPS) con respuesta del piloto. + El vehículo sigue al usuario basandose en su posición GPS. + + + Waypoint + Spline Waypoint + Despegar + Volver al lugar de lanzamiento + Aterrizar + Cambiar velocidad + Set Yaw + Camera Trigger + Set Servo + EPM + Circulo + Loiter + Región de interés + Survey + Spline Survey + Escanear estructura + + + Aterrizar el vehículo en la posición actual. Debe salir manualmente del modo Auto para desarmar los motores. + Orbit the current location for the desired number of turns. + Hold the current location for the desired number of seconds or indefinitely to end the mission. + Send the vehicle to the home location set when armed. An altitude of 0 will return to home at the RTL altitude parameter. + Lift off from the ground to the specified altitude before proceeding to the next waypoint. + Viaja a una posición en el espacio 3D. Retraso opcional (en segundos) para mantener la posición. + Establecer condiciones para llegar a un cierto ángulo de objetivo. + Cambiar la velocidad del vehículo hasta el final de la misión. + Disparar el obturador de la cámara a intervalos regulares de distancia. + Mover un servo a un valor PWM particular. + Release the payload of the EPM grabber + Sets a location and altitude to point copter towards and to aim an optional camera. + Do Jump + Jump to a specific waypoint. + + PWM + Repeat Count + + + One cannot add new waypoints after LAND or RTL + Distancia: 0.0m, Tiempo de vuelo: 0:00 + Distancia: %s + Tiempo de vuelo: %1$02d:%2$02d + Heading: %.0f° + Distancia a casa + Tiempo en Loiter + Retraso antes del próximo punto de recorrido (WPT) + Radio de circunferencia + Longitud: %f° + Latitud: %f° + Número de giros + Mapear un edificio + Altitud de inicio + Step height + Cross Hatch + + Borrar misión + ¿Borrar todos los waypoint del mapa? + + + Satélite + Híbrido + Normal + Terreno + + + No hay parámetros + Actualizando parámetros… + Parámetros guardados + Parámetros subidos al drone + Valor: + ** Valor personalizado ** + Valores: + Unidades: + Rango: + Para añadir más filas, sólo tiene que pulsar Intro + + + Descargando datos de calibración + DroidPlanner está descargando los datos de calibración del vehículo. Si el sistema no está conectado, presione cancelar. + + + Calibración de los canales de la emisora + Comenzar calibración + Pulse calibrar para comenzar la calibración de la emisora. Asegurese que la emisora esta encendida y transmitiendo. + Set Min & Max values + Calibración completada + Move the joysticks all the way out several times and toggle the switches, levers and knobs to all possible positions. + RC calibration completed. Press \'Save\' to upload data to vehicle. + + + Calibración de la brújula + Presione calibrar para comenzar la calibración de la brújula. Mejore la calibración manteniendose alejado de objetos de metal. + + + Calibración del acelerómetro + Pulse calibrar para comenzar la calibración de la IMU. Asegúrese que el vehículo está situado en una superficie plana antes de comenzar el proceso de calibración. + Coloque el vehículo en su posición NORMAL asegurandose de que no se mueva y pulse Siguiente. + Coloque el vehículo sobre su izquierda asegurándose que no se mueva y pulse siguiente. + Coloque el vehículo sobre su derecha asegurándose que no se mueva y pulse siguiente. + Coloque el vehículo nariz abajo asegurándose que no se mueva y pulse siguiente. + Coloque el vehículo naríz arriba asegurándose que no se mueve y puse siguiente. + Place the vehicle on its BACK ensuring very minimal movement and press Next. + Completó la calibración del acelerómetro. Si no se ha realizado correctamente, por favor vuelva a calibrar. + Para comenzar la cablibración, pulse calibrar. + Tiempo restante antes de la próxima orientación: + + + + Configuración de los modos de vuelo + Actualizar modos de vuelo + Press \'Send\' to update the new flight modes to vehicle. + 1. + 2. + 3. + 4. + 5. + 6. + Modo simple + Modo super simple + + + Channel Options Configuration + Channel 6 - Tuning Function + Channel Options - CH7 & CH8 + Channel 7 Options: + Channel 6 Tuning: + Channel 8 Tuning: + Tune Value - Low: + Tune Value - High: + + + Servo Function Configuration + Servo Functions Configuration + Servo 5: + Servo 6: + Servo 7: + Servo 8: + Servo 9: + Servo 10: + + + 0.0 + Climb Rate + Altitud + Pitch + ROI Height + Velocidad + Length + Canal + Waypoint + Ground Speed + Velocidad del viento + --° + Casa + Armar + Desarmar + Aterrizar + Despegar + Pausa + Auto + Sígueme + Dronie + Target angle + Relative Angle + Open navigation drawer + Close navigation drawer + "Pulse OK para acceder al modo guiado. \nPara cambiar de ubicación, presione y mantenga presionado el mapa. + + + Seleccionar un dispositivo para conectarse + Ningún dispositivo se ha emparejado + No se ha encontrado ningún dispositivo + Dispositivos emparejados + Otros dispositivos disponibles + Buscando dispositivos + + + + + + Salida de voz + Estado periódico + Que se incluye en el estado periódico. + Período + Con que frecuencia el estado periódico es leído. + Voltage de la batería + Leer voltage de la batería. + Altitud + Leer altitud. + Fuerza de la señal (RSSI) + Read Received Signal Strength Indication. + Velocidad del viento + Leer velocidad del viento. + Avisos + Low Signal Strength + Avisar cuando la conexión con el drone es mala. + Estado de la conexión + Warns when connection to drone is severed or restored. + Autopilot-Reported Warnings + Advierte acerca de los errores armado, batería baja, etc. + Estado deshabilitado + Estado cada + segundos + off + + + Droneshare es un servicio web gratuito que le permite revisar, analizar y compartir vuelos. + Usuario + Contraseña + Correo electrónico + + + CONEXIÓN BLUETOOTH + Olvidar el dispositivo %s + Olvidar el dispositivo por defecto + ¿Está usted seguro? + Olvidar + + + Configure el proveedor de mapas seleccionado + Preferencias del proveedor de mapas + Preferencias de Google Maps + Google Tile Provider + Map Provider Preferences + Huella de la cámara en tiempo real + Visualizar la proyección de la cámara sobre el terreno en tiempo real + + + Asignar el canal 5 a un interruptor de su emisora para controlar los modos de vuelo. Mueva el interruptor a cada posición y seleccione el modo de vuelo deseado a continuación. + Por favor conectar primero + Pantalla + Notificaciones + Versión de firmware + -- + Estadísticas de uso + Enviar estadísticas de uso + Ayude a mejorar Tower enviando estadísticas de uso. + + Zoom para ajustar + Importar de fichero + Exportar a fichero + + Display HDOP instead of FIX in satellite info bar item + Display Satellite HDOP + + + Número de pasos + Radio + No mostrar de nuevo. + Fichero guardado + Error guardando fichero + Introduzca un nombre de fichero + + + Historial de vuelo + Abrir fichero de log + Esperando por GPS… + + + Desliza para %s + Varios + Preferencias de los diálogos + Auto insertar \'TakeOff\' y + \'RTL\'/\'Land\' a la misión + Siempre + Nunca + Preguntar + User Interface -> Preference Dialogs]]> + Crear dronie? + Por favor situese 8 metros por detrás antes de comenzar el dronie. + Subir parámetros + Upload + Descargar parámetros + Importar de fichero + Exportar a fichero + Localización + + Auto + Metric System + Imperial System + Unit System + Select the unit system to use throughout the app. + Cuenta + Registrarse + iniciar sesión + Salir + Clear selected waypoints from the map? + Clear selected waypoints + Seleccionar todo + Targeting selected location. + Vehicle follows the user while remaining locked on a point of interest. Long click on the map to select the point of interest. + No saved bluetooth device. + Select Waypoint Type + No available option + Click on the spinner to select a type for the selected waypoints. + No type option is available for the selected items. + Vehicle details + Ground Collision + Warns about imminent ground collision. + Enable map rotation + Check to enable the ability to rotate the map. + Advanced Menu Options + If enabled, a Kill Switch option will appear in the menu, allowing immediate vehicle disarming. Only supported on multi-rotor vehicles + Enable Kill Switch + Enable UDP server ping + Enable to allow the app to periodically ping the udp server. + UDP ping receiver ip + UDP ping receiver port + Unable to get accurate location. Please update your location settings! + + + Preferencias de altitud + Valor de altitud máxima + Valor de altitud mínima + Valor de altitud por defecto + + + Mapbox Tile Provider + Descargar mapa sin conexión + Haga clic aquí para cachear un mapa + Mapbox Id + Mapbox map id + Introduzca su mapbox map id + Mapbox Access Token + Mapbox access token + Introduzca su mapbox access token + Add \'Download Map\' to menu + Habilitar capa de mapa sin conexión + Descargar mapa + Pan and zoom to adjust the map área to save + Tocar para guardar el mapa + Área de mapa guardada! + Invalid mapbox id + Invalid mapbox access token + Credenciales incorrectas de mapbox! Por favor actualiza tus ajustes de mapbox. + Tipo de vehículo + Helicóptero + Avión + Rover + Desconocido + Comando actual: + Estimado para terminar: + Mission control: + WP velocidad: + Progreso de misión: + No se puede iniciar la calibración de la IMU + hs: — + hs: %s + vs: — + vs: %s + Lat: — + Lat: %s° + Long: — + Long: %s° + Kill Switch + Borrar seleccionado + Tiene cambios no guardados + El comando KILL SWITCH no está soportado! + El comando KILL SWITCH ha fallado! + Aviso de altitud máxima excedida + Enable for repeated warnings when flying above the set max altitude. + Mission Upload + Do you want to append a Takeoff and RTL to your mission? + Skip + + + Solo Video + Displays the video stream from a connected Solo vehicle + Speed & Attitude Info + Displays vehicle speed and attitude data + Diagnostics + Displays the vehicle diagnostics stats + Widgets Preferences + Tower Widgets + Widgets list + Flight Timer + Displays the vehicle flight time + Geo Info + Displays vehicle geographical information (Lat/Long) + ekf + vel + h.pos + v.pos + mag + ter + Attitude estimate + Flags + Constant position mode + Velocity + Vertical estimate + Horizontal estimate + Horizontal Position + Relative estimate + Absolute estimate + Above ground estimate + Vertical Position + Absolute predicted estimate + Relative predicted estimate + No hay señal de vídeo + Repetir indefinidamente + EKF + Vibration + Flags + Tertiary + Secondary + Primary + Clipping + --:-- + + Volver al lanzamiento + Volver a mi + Vehicle Home Update + Warns about vehicle home location updates while in flight. + Vehicle home updated + Foto + Grabar + + From 1dc4bce1795de1e5e5e94d545dc9e357abb68d16 Mon Sep 17 00:00:00 2001 From: jandrop Date: Tue, 13 Oct 2015 20:08:31 +0200 Subject: [PATCH 2/8] Upgrade Google Play Services to 8.1.0 --- Android/build.gradle | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/Android/build.gradle b/Android/build.gradle index df45b1e37b..6cdd052c35 100644 --- a/Android/build.gradle +++ b/Android/build.gradle @@ -5,9 +5,9 @@ apply plugin: 'io.fabric' apply plugin: 'kotlin-android' dependencies { - compile 'com.google.android.gms:play-services-maps:7.8.0' - compile 'com.google.android.gms:play-services-location:7.8.0' - compile 'com.google.android.gms:play-services-analytics:7.8.0' + compile 'com.google.android.gms:play-services-maps:8.1.0' + compile 'com.google.android.gms:play-services-location:8.1.0' + compile 'com.google.android.gms:play-services-analytics:8.1.0' compile 'com.sothree.slidinguppanel:library:2.0.2' From 77130309fbd7151cdc6636ba1748acb46e95c76f Mon Sep 17 00:00:00 2001 From: jandrop Date: Tue, 13 Oct 2015 20:11:41 +0200 Subject: [PATCH 3/8] Upgrade Gradle to version 1.3.0 --- build.gradle | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build.gradle b/build.gradle index bcc1dbc5a0..d25ada9983 100644 --- a/build.gradle +++ b/build.gradle @@ -12,9 +12,9 @@ buildscript { } } dependencies { - classpath 'com.android.tools.build:gradle:1.2.3' + classpath 'com.android.tools.build:gradle:1.3.0' // This does not break the build when Android Studio is missing the JRebel for Android plugin. - classpath 'com.zeroturnaround.jrebel.android:jr-android-gradle:0.9.+' + classpath 'com.zeroturnaround.jrebel.android:jr-android-gradle:0.9.18' classpath 'io.fabric.tools:gradle:1.19.2' classpath "org.jetbrains.kotlin:kotlin-gradle-plugin:$kotlin_version" } From f6d5bbcd17a20c68752751da5d0997599b1b8e05 Mon Sep 17 00:00:00 2001 From: jandrop Date: Tue, 13 Oct 2015 20:58:55 +0200 Subject: [PATCH 4/8] Implementing Material Design Navigation Drawer --- .../layout/activity_drawer_navigation_ui.xml | 149 ++------------- Android/res/layout/nav_header_main.xml | 26 +++ Android/res/menu/navigation_drawer_items.xml | 49 +++++ .../activities/DrawerNavigationUI.java | 180 +++++++----------- 4 files changed, 157 insertions(+), 247 deletions(-) create mode 100644 Android/res/layout/nav_header_main.xml create mode 100755 Android/res/menu/navigation_drawer_items.xml diff --git a/Android/res/layout/activity_drawer_navigation_ui.xml b/Android/res/layout/activity_drawer_navigation_ui.xml index 7129e82cbc..f72f509ec5 100644 --- a/Android/res/layout/activity_drawer_navigation_ui.xml +++ b/Android/res/layout/activity_drawer_navigation_ui.xml @@ -1,13 +1,10 @@ - + android:layout_width="match_parent" + android:layout_height="match_parent"> + android:layout_height="match_parent" /> + android:minWidth="170dp" + android:orientation="horizontal" + app:content="@+id/action_drawer_content" + app:handle="@+id/slideButtonLeft"> + android:focusableInTouchMode="false" /> + android:layout_height="wrap_content" /> - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + android:fitsSystemWindows="true" + app:headerLayout="@layout/nav_header_main" + app:menu="@menu/navigation_drawer_items" /> \ No newline at end of file diff --git a/Android/res/layout/nav_header_main.xml b/Android/res/layout/nav_header_main.xml new file mode 100644 index 0000000000..9c06c6287d --- /dev/null +++ b/Android/res/layout/nav_header_main.xml @@ -0,0 +1,26 @@ + + + + + + + + \ No newline at end of file diff --git a/Android/res/menu/navigation_drawer_items.xml b/Android/res/menu/navigation_drawer_items.xml new file mode 100755 index 0000000000..98aa36585f --- /dev/null +++ b/Android/res/menu/navigation_drawer_items.xml @@ -0,0 +1,49 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Android/src/org/droidplanner/android/activities/DrawerNavigationUI.java b/Android/src/org/droidplanner/android/activities/DrawerNavigationUI.java index b35a915b6d..7561dc423f 100644 --- a/Android/src/org/droidplanner/android/activities/DrawerNavigationUI.java +++ b/Android/src/org/droidplanner/android/activities/DrawerNavigationUI.java @@ -1,10 +1,10 @@ package org.droidplanner.android.activities; -import android.content.Context; import android.content.Intent; import android.content.res.Configuration; import android.graphics.Typeface; import android.os.Bundle; +import android.support.design.widget.NavigationView; import android.support.v4.content.LocalBroadcastManager; import android.support.v4.view.GravityCompat; import android.support.v4.widget.DrawerLayout; @@ -16,6 +16,7 @@ import android.view.View; import android.view.ViewGroup; import android.widget.FrameLayout; +import android.widget.LinearLayout; import android.widget.TextView; import org.droidplanner.android.R; @@ -28,7 +29,7 @@ * This abstract activity provides its children access to a navigation drawer * interface. */ -public abstract class DrawerNavigationUI extends SuperUI implements SlidingDrawer.OnDrawerOpenListener, SlidingDrawer.OnDrawerCloseListener { +public abstract class DrawerNavigationUI extends SuperUI implements SlidingDrawer.OnDrawerOpenListener, SlidingDrawer.OnDrawerCloseListener, NavigationView.OnNavigationItemSelectedListener { /** * Activates the navigation drawer when the home button is clicked. @@ -47,8 +48,6 @@ public abstract class DrawerNavigationUI extends SuperUI implements SlidingDrawe */ private FrameLayout contentLayout; - private NavDrawerViewHolder mNavViewsHolder; - /** * Clicking on an entry in the open navigation drawer updates this intent. * When the navigation drawer closes, the intent is used to navigate to the desired location. @@ -63,7 +62,8 @@ public void onCreate(Bundle savedInstanceState) { mDrawerLayout = (DrawerLayout) getLayoutInflater().inflate(R.layout.activity_drawer_navigation_ui, null); contentLayout = (FrameLayout) mDrawerLayout.findViewById(R.id.content_layout); - mDrawerToggle = new ActionBarDrawerToggle(this, mDrawerLayout, R.string.drawer_open, R.string.drawer_close) { + mDrawerToggle = new ActionBarDrawerToggle( + this, mDrawerLayout, R.string.drawer_open, R.string.drawer_close) { @Override public void onDrawerClosed(View drawerView) { @@ -90,8 +90,8 @@ protected View getActionDrawer() { } @Override - public void onActivityResult(int requestCode, int resultCode, Intent data){ - switch(requestCode) { + public void onActivityResult(int requestCode, int resultCode, Intent data) { + switch (requestCode) { case BaseFlightControlFragment.FOLLOW_SETTINGS_UPDATE: LocalBroadcastManager.getInstance(getApplicationContext()) .sendBroadcast(new Intent(SettingsFragment.ACTION_LOCATION_SETTINGS_UPDATED) @@ -117,7 +117,20 @@ public void setContentView(int layoutResID) { contentLayout.addView(contentView); setContentView(mDrawerLayout); - initNavigationDrawer(); + NavigationView navigationView = (NavigationView) findViewById(R.id.navigation_drawer_container); + navigationView.setNavigationItemSelectedListener(this); + + final DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); + + LinearLayout llAccount = (LinearLayout) findViewById(R.id.navigation_account); + llAccount.setOnClickListener(new View.OnClickListener() { + @Override + public void onClick(View v) { + startActivity(new Intent(getApplicationContext(), AccountActivity.class)); + drawer.closeDrawer(GravityCompat.START); + } + }); + } @Override @@ -141,7 +154,49 @@ public void onLayoutChange(View v, int left, int top, int right, int bottom, int }); } - protected void onToolbarLayoutChange(int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom){ + // Manage Navigation drawer menu items + @Override + public boolean onNavigationItemSelected(MenuItem menuItem) { + + int id = menuItem.getItemId(); + + switch (id) { + case R.id.navigation_flight_data: + mNavigationIntent = new Intent(this, FlightActivity.class); + + break; + case R.id.navigation_editor: + mNavigationIntent = new Intent(this, EditorActivity.class); + break; + case R.id.navigation_locator: + mNavigationIntent = new Intent(this, LocatorActivity.class); + break; + case R.id.navigation_params: + mNavigationIntent = new Intent(this, ConfigurationActivity.class) + .putExtra(ConfigurationActivity.EXTRA_CONFIG_SCREEN_ID, R.id.navigation_calibration); + break; + case R.id.navigation_checklist: + mNavigationIntent = new Intent(this, ConfigurationActivity.class) + .putExtra(ConfigurationActivity.EXTRA_CONFIG_SCREEN_ID, R.id.navigation_checklist); + break; + case R.id.navigation_calibration: + mNavigationIntent = new Intent(this, ConfigurationActivity.class) + .putExtra(ConfigurationActivity.EXTRA_CONFIG_SCREEN_ID, R.id.navigation_calibration); + break; + case R.id.navigation_settings: + mNavigationIntent = new Intent(this, SettingsActivity.class); + break; + } + +// if (mNavigationIntent != null) +// startActivity(mNavigationIntent); + + DrawerLayout drawer = (DrawerLayout) findViewById(R.id.drawer_layout); + drawer.closeDrawer(GravityCompat.START); + return true; + } + + protected void onToolbarLayoutChange(int left, int top, int right, int bottom, int oldLeft, int oldTop, int oldRight, int oldBottom) { } @@ -184,82 +239,6 @@ public void onPostCreate(Bundle savedInstanceState) { } } - @Override - public void onResume() { - super.onResume(); - updateNavigationDrawer(); - } - - /** - * Initializes the navigation drawer. - */ - private void initNavigationDrawer() { - final View containerView = findViewById(R.id.navigation_drawer_container); - if (containerView != null) { - mNavViewsHolder = new NavDrawerViewHolder(containerView); - } - } - - private void updateNavigationDrawer() { - if (mNavViewsHolder == null) { - return; - } - - final Context context = getApplicationContext(); - final int navDrawerEntryId = getNavigationDrawerEntryId(); - - setupNavigationEntry(navDrawerEntryId, mNavViewsHolder.mAccount, new Intent(context, AccountActivity.class)); - - setupNavigationEntry(navDrawerEntryId, mNavViewsHolder.mFlightData, new Intent(context, FlightActivity.class)); - - setupNavigationEntry(navDrawerEntryId, mNavViewsHolder.mEditor, new Intent(context, EditorActivity.class)); - - setupNavigationEntry(navDrawerEntryId, mNavViewsHolder.mLocator, new Intent(context, LocatorActivity.class)); - - setupNavigationEntry(navDrawerEntryId, mNavViewsHolder.mSettings, new Intent(context, SettingsActivity.class)); - - setupNavigationEntry(navDrawerEntryId, mNavViewsHolder.mCalibration, new Intent(context, - ConfigurationActivity.class).putExtra(ConfigurationActivity - .EXTRA_CONFIG_SCREEN_ID, R.id.navigation_calibration)); - - setupNavigationEntry(navDrawerEntryId, mNavViewsHolder.mChecklist, new Intent(context, - ConfigurationActivity.class).putExtra(ConfigurationActivity - .EXTRA_CONFIG_SCREEN_ID, R.id.navigation_checklist)); - - setupNavigationEntry(navDrawerEntryId, mNavViewsHolder.mParams, new Intent(context, - ConfigurationActivity.class).putExtra(ConfigurationActivity - .EXTRA_CONFIG_SCREEN_ID, R.id.navigation_params)); - - } - - private void setupNavigationEntry(int currentEntryId, TextView navView, final Intent clickIntent) { - if (navView == null) { - return; - } - - if (currentEntryId == navView.getId()) { - //Bold the entry label - navView.setTypeface(null, Typeface.BOLD); - navView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - mDrawerLayout.closeDrawer(GravityCompat.START); - } - }); - } else { - navView.setTypeface(null, Typeface.NORMAL); - navView.setOnClickListener(new View.OnClickListener() { - @Override - public void onClick(View v) { - if (clickIntent != null) { - mNavigationIntent = clickIntent; - } - mDrawerLayout.closeDrawer(GravityCompat.START); - } - }); - } - } - public boolean isActionDrawerOpened() { return actionDrawer.isOpened(); } @@ -274,6 +253,7 @@ protected int getActionDrawerId() { */ @Override public void onDrawerOpened() { + } /** @@ -282,6 +262,7 @@ public void onDrawerOpened() { */ @Override public void onDrawerClosed() { + } public void openActionDrawer() { @@ -295,33 +276,4 @@ public void closeActionDrawer() { } protected abstract int getNavigationDrawerEntryId(); - - /** - * Holder class for the navigation entry views in the navigation drawer. - * They are stored here to avoid re-instantiating through 'findViewById' which can be a bit - * costly. - */ - private static class NavDrawerViewHolder { - final TextView mAccount; - final TextView mFlightData; - final TextView mEditor; - final TextView mLocator; - - final TextView mSettings; - - final TextView mParams; - final TextView mChecklist; - final TextView mCalibration; - - private NavDrawerViewHolder(View containerView) { - mAccount = (TextView) containerView.findViewById(R.id.navigation_account); - mFlightData = (TextView) containerView.findViewById(R.id.navigation_flight_data); - mEditor = (TextView) containerView.findViewById(R.id.navigation_editor); - mLocator = (TextView) containerView.findViewById(R.id.navigation_locator); - mSettings = (TextView) containerView.findViewById(R.id.navigation_settings); - mParams = (TextView) containerView.findViewById(R.id.navigation_params); - mChecklist = (TextView) containerView.findViewById(R.id.navigation_checklist); - mCalibration = (TextView) containerView.findViewById(R.id.navigation_calibration); - } - } } From 1c2a1ee569e7f27189c1190b360c90f0090b329f Mon Sep 17 00:00:00 2001 From: jandrop Date: Tue, 13 Oct 2015 21:37:34 +0200 Subject: [PATCH 5/8] Implementing Material Design Navigation Drawer --- Android/build.gradle | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/Android/build.gradle b/Android/build.gradle index 6cdd052c35..faebb4c308 100644 --- a/Android/build.gradle +++ b/Android/build.gradle @@ -5,9 +5,9 @@ apply plugin: 'io.fabric' apply plugin: 'kotlin-android' dependencies { - compile 'com.google.android.gms:play-services-maps:8.1.0' - compile 'com.google.android.gms:play-services-location:8.1.0' - compile 'com.google.android.gms:play-services-analytics:8.1.0' + compile 'com.google.android.gms:play-services-maps:7.8.0' + compile 'com.google.android.gms:play-services-location:7.8.0' + compile 'com.google.android.gms:play-services-analytics:7.8.0' compile 'com.sothree.slidinguppanel:library:2.0.2' @@ -63,7 +63,7 @@ android { defaultConfig { applicationId 'org.droidplanner.android' minSdkVersion 14 - targetSdkVersion 22 + targetSdkVersion 23 versionCode versionMajor * 100000 + versionMinor * 1000 + versionPatch * 100 + versionBuild versionName "Tower-v${versionMajor}.${versionMinor}.${versionPatch}" From 5b99396f2ed45a1a6486b0f3281c483f8066c961 Mon Sep 17 00:00:00 2001 From: jandrop <3b5w2xPb> Date: Wed, 14 Oct 2015 08:43:42 +0200 Subject: [PATCH 6/8] Update icons and minor changes into navigation header --- .../ic_account_circle_white_48dp.png | Bin 0 -> 1156 bytes .../ic_menu_calibration_grey600_24dp.png | Bin 0 -> 276 bytes .../ic_menu_checklist_grey600_24dp.png | Bin 0 -> 295 bytes .../ic_menu_editor_grey600_24dp.png | Bin 0 -> 297 bytes .../ic_menu_flight_data_grey600_24dp.png | Bin 0 -> 379 bytes .../ic_menu_flight_history_grey600_24dp.png | Bin 0 -> 609 bytes .../ic_menu_parameters_grey600_24dp.png | Bin 0 -> 145 bytes .../ic_menu_settings_grey600_24dp.png | Bin 0 -> 555 bytes .../ic_account_circle_white_48dp.png | Bin 0 -> 774 bytes .../ic_menu_calibration_grey600_24dp.png | Bin 0 -> 299 bytes .../ic_menu_checklist_grey600_24dp.png | Bin 0 -> 180 bytes .../ic_menu_editor_grey600_24dp.png | Bin 0 -> 215 bytes .../ic_menu_flight_data_grey600_24dp.png | Bin 0 -> 269 bytes .../ic_menu_flight_history_grey600_24dp.png | Bin 0 -> 417 bytes .../ic_menu_parameters_grey600_24dp.png | Bin 0 -> 105 bytes .../ic_menu_settings_grey600_24dp.png | Bin 0 -> 381 bytes .../ic_account_circle_white_48dp.png | Bin 0 -> 1614 bytes .../ic_menu_calibration_grey600_24dp.png | Bin 0 -> 426 bytes .../ic_menu_checklist_grey600_24dp.png | Bin 0 -> 317 bytes .../ic_menu_editor_grey600_24dp.png | Bin 0 -> 335 bytes .../ic_menu_flight_data_grey600_24dp.png | Bin 0 -> 438 bytes .../ic_menu_flight_history_grey600_24dp.png | Bin 0 -> 776 bytes .../ic_menu_parameters_grey600_24dp.png | Bin 0 -> 140 bytes .../ic_menu_settings_grey600_24dp.png | Bin 0 -> 684 bytes .../ic_account_circle_white_48dp.png | Bin 0 -> 2438 bytes .../ic_menu_calibration_grey600_24dp.png | Bin 0 -> 516 bytes .../ic_menu_checklist_grey600_24dp.png | Bin 0 -> 436 bytes .../ic_menu_editor_grey600_24dp.png | Bin 0 -> 463 bytes .../ic_menu_flight_data_grey600_24dp.png | Bin 0 -> 599 bytes .../ic_menu_flight_history_grey600_24dp.png | Bin 0 -> 1198 bytes .../ic_menu_parameters_grey600_24dp.png | Bin 0 -> 193 bytes .../ic_menu_settings_grey600_24dp.png | Bin 0 -> 1037 bytes Android/res/layout/nav_header_main.xml | 6 +++--- Android/res/menu/navigation_drawer_items.xml | 14 +++++++------- Android/res/values/colors.xml | 4 +++- 35 files changed, 13 insertions(+), 11 deletions(-) create mode 100644 Android/res/drawable-hdpi/ic_account_circle_white_48dp.png create mode 100644 Android/res/drawable-hdpi/ic_menu_calibration_grey600_24dp.png create mode 100644 Android/res/drawable-hdpi/ic_menu_checklist_grey600_24dp.png create mode 100644 Android/res/drawable-hdpi/ic_menu_editor_grey600_24dp.png create mode 100644 Android/res/drawable-hdpi/ic_menu_flight_data_grey600_24dp.png create mode 100644 Android/res/drawable-hdpi/ic_menu_flight_history_grey600_24dp.png create mode 100644 Android/res/drawable-hdpi/ic_menu_parameters_grey600_24dp.png create mode 100644 Android/res/drawable-hdpi/ic_menu_settings_grey600_24dp.png create mode 100644 Android/res/drawable-mdpi/ic_account_circle_white_48dp.png create mode 100644 Android/res/drawable-mdpi/ic_menu_calibration_grey600_24dp.png create mode 100644 Android/res/drawable-mdpi/ic_menu_checklist_grey600_24dp.png create mode 100644 Android/res/drawable-mdpi/ic_menu_editor_grey600_24dp.png create mode 100644 Android/res/drawable-mdpi/ic_menu_flight_data_grey600_24dp.png create mode 100644 Android/res/drawable-mdpi/ic_menu_flight_history_grey600_24dp.png create mode 100644 Android/res/drawable-mdpi/ic_menu_parameters_grey600_24dp.png create mode 100644 Android/res/drawable-mdpi/ic_menu_settings_grey600_24dp.png create mode 100644 Android/res/drawable-xhdpi/ic_account_circle_white_48dp.png create mode 100644 Android/res/drawable-xhdpi/ic_menu_calibration_grey600_24dp.png create mode 100644 Android/res/drawable-xhdpi/ic_menu_checklist_grey600_24dp.png create mode 100644 Android/res/drawable-xhdpi/ic_menu_editor_grey600_24dp.png create mode 100644 Android/res/drawable-xhdpi/ic_menu_flight_data_grey600_24dp.png create mode 100644 Android/res/drawable-xhdpi/ic_menu_flight_history_grey600_24dp.png create mode 100644 Android/res/drawable-xhdpi/ic_menu_parameters_grey600_24dp.png create mode 100644 Android/res/drawable-xhdpi/ic_menu_settings_grey600_24dp.png create mode 100644 Android/res/drawable-xxhdpi/ic_account_circle_white_48dp.png create mode 100644 Android/res/drawable-xxhdpi/ic_menu_calibration_grey600_24dp.png create mode 100644 Android/res/drawable-xxhdpi/ic_menu_checklist_grey600_24dp.png create mode 100644 Android/res/drawable-xxhdpi/ic_menu_editor_grey600_24dp.png create mode 100644 Android/res/drawable-xxhdpi/ic_menu_flight_data_grey600_24dp.png create mode 100644 Android/res/drawable-xxhdpi/ic_menu_flight_history_grey600_24dp.png create mode 100644 Android/res/drawable-xxhdpi/ic_menu_parameters_grey600_24dp.png create mode 100644 Android/res/drawable-xxhdpi/ic_menu_settings_grey600_24dp.png diff --git a/Android/res/drawable-hdpi/ic_account_circle_white_48dp.png b/Android/res/drawable-hdpi/ic_account_circle_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..a97aa8b5ec660e65a878a80de0fbbf84a1873015 GIT binary patch literal 1156 zcmV-~1bh35P)sqbsz5EEPS6x+9ux+xpu+gGDf|roY$YglqXNnTHG{?xfT~46W1uF` z&W!-54Acwy$>?nr)B_5wM?mGEm&~5=m07wT0A+(7Gw-Ymw98dMHK1?Ids_lky96i& zbeFkj?Vx0@0cC(jn7cLzO7jX(5cGz*Z_^m7RX`a;aMnP5pjuEaC<$MSJWw5|pAb^I zEkG$muho0d5dnWipcw*xLn?cc3ZOeg!3HFJ@_l5O!0#>7fNF?VPC(&{Nh4ZGXG{Ug zCdhNv1YfIoI!cr$WtjlhAdUyrfXazZlUf2m=ZInnQ39eWJaY*E9P)> zapGY52>?AKj_HLepnztBJ)RY5z$rEm&oXGc3ZN=O?S~n~9u2R?XAQ+vp#rGIV2@^4 z5>h(83a0F;3ZPEIjjS20twdg{S;Mh(r~sO>)bSg@@*y8{oD@9D>kVwk@oZ8B&^+5b zHm3q8yomrUssLKqM1UebAOnE>SIm)3`UmI(i%v>v~b zU6+h`M5m+JB;jcEKPQqc@fao~;%;P`P5V_rM<*SC6VoZdnE4ix$u!44J%Y|M90IgM zFy^O>U@jICbavh$Kn;R1A7ezLXOZc~chErx;1mj$C?kw;HeV|EjVyrndI%>6^hGd< zEoQ{mU%CV#eewuW4i=pvcApuzAH;94FG;K<+nMxN!Ps~kCujmt0#@KMZHxvBInM>m zhDGhPj1QHdZcApWd@`}$0GtBQbIDlRWc{cF#;>ppN(Q!yErkLCFb8msC41|HkC&2c z0E$gIRr@hx_*&#h_{+t9(uAT<-d#|+S*!i02)a$H&n$XDs||ZHmr#5Ze3L~leJ&6* z>oQfJQ+K)Zl{DmVGk!pIDR$)ts4k8)dpV(pQK9)VfI z3^_>oOr{dJ5H`?k8819bOgxL}5`YKYEzxw7u@&s+6q|eoTeVUUXIXq=8qt8VjH{(l z=je73(C^|CgbK`cI&i8vhx73WY7u`ni5WQ0k&c75*^bx$2PQrsACM2o2jl}3I> z*VmHBO>B?nAMIX$b;8n@GvrnY9htCji>EHT^gZ@|4n-YX8<#vOpk5&8a?Y;R_1w)H zk^NpZb35bnJF8Xx<~H0pzvQCC=N`*GP4f*#&)nb5&1vA9z302R)tdO3uciixhpn^u z{^XvJxxq!p^se1kr|k1|%Oc%$NbB-g&w>hE&{oJHwH$$v}YNCHoiK ze~uNsU&AhmOV~HGZDxPOczzF0%w#h~U&Ux|@2R#vmjucrx9OZTdpsvybEC^7<^ra3 zS$k()kgH&9cI19@O(09xXx8&fPCOb6j2_(AFCMO5z?7G@c742BlK0fviLG|#X2$vX zLA^=u`3ie|PpO4isK|z-mgKyZn4R3xl6)yHbeY*Up5_A_p2wHio!Bq*N^KXLv$&H- z)t}8z)LJIpHhKkto8n(>(s0s~|7z9>7W9=2^k|W2uCZv75ZV8mdKI;Vst0H6wR*8l(j literal 0 HcmV?d00001 diff --git a/Android/res/drawable-hdpi/ic_menu_editor_grey600_24dp.png b/Android/res/drawable-hdpi/ic_menu_editor_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..b6b43fe140606c97649b6dbbaac34fbbed297ad0 GIT binary patch literal 297 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbBK6tt~hE&{od&8USkbywM!$-%e zHgB7^JpAI;=!FVD9F8mGYcJTX*yz{s1Vr0uhLi87-Ase!Ry?31w0V%W;1K`J@7ekW=ywKBS3j3^P60fhdEP)Zk>jA-(8|{Xh&j>ZRDd`a>d3Ou;g}KO ZAOJPU_L|8Ad;b6c002ovPDHLkV1k9Xln4L- literal 0 HcmV?d00001 diff --git a/Android/res/drawable-hdpi/ic_menu_flight_history_grey600_24dp.png b/Android/res/drawable-hdpi/ic_menu_flight_history_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..b816c143cb67d01d811780dcf493dc046b26ae12 GIT binary patch literal 609 zcmV-n0-pVeP)>A925h|JZUH~@+v3|M}!R**825$v$I0F4bZAuo$P4_2~ZQo&?2Dq|N7TYb$E$T5g* zw$ju_QiqC-t@oaXr-By37$saw@bV z?YwQ!NGG>Zd=%Yxb`9P{^4z%O=ScS>om;y7P158RTYg2l9r7mjy7?LuOAmdv_!=b2 vJfJXAZ11vk5>pv9;*%Qwvmq?>Z-u@9vx?g2W{Nh100000NkvXXu0mjfv5W{2 literal 0 HcmV?d00001 diff --git a/Android/res/drawable-hdpi/ic_menu_parameters_grey600_24dp.png b/Android/res/drawable-hdpi/ic_menu_parameters_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..c369877da3e4254f6790f785498c63368cbcf267 GIT binary patch literal 145 zcmeAS@N?(olHy`uVBq!ia0vp^Dj>|k1|%Oc%$NbBB0OCjLn>~)y|$W{!GMDy&@EZh zX7=TfkV`E~ypR4Qv@;ae71S{>vAl3%K4dfhC*xP$Pe3~uJYD@<);T3K0RS_QFy{aO literal 0 HcmV?d00001 diff --git a/Android/res/drawable-hdpi/ic_menu_settings_grey600_24dp.png b/Android/res/drawable-hdpi/ic_menu_settings_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..e3944aab14a6c46981cfe6f2b47009846129312e GIT binary patch literal 555 zcmV+`0@VG9P)Yg5o74iWdaMrw~CbL{LZ~NSY9}u(YxeK|~O3EGz^C-y)G9LBYnx zT2Z1&m5cfhoPaEuopY9T6=Lx<3v>2k=UisimrN#oe+l2e&<_foflm#mzajK!BlO_4 zkRMcRgi4^2tl`l!4Vh-6Clfw zsd59xz$7>Z1$ur9nj}JT%?myRGNv`FT%jKD>fpsvogjh&# zyXA|vDrL1R>GT~qfrQOHXYS1IO83AAmc6@Y=6mnVIcLs|DWzh^nOGzs5>OlhNw0+&+Uxpt%qN8o>8BBQE#M?rR{66<8q=D2m->C!0#7OZzEtvxbfNr0y>1gpGyU_ zSR|0BqNbBxKi3B%}NyU!6Y7or6C6d`QWBU0fUC}q)B?DOd1aFy&fii z)zEf%W^*QPFeJ4d$0DwQum2cp1Jv2JRT2ShlmQ2mzZFoW_JwV1B?Cg+GV>sFRDbAg zfbVG+ow+!*`Al{|zqt--48BfLqiTu%W3mNKqLegu7n$jPAG`-|z$-$3{y^6_wm=6V zr|tDPV>!97X-SD(^b literal 0 HcmV?d00001 diff --git a/Android/res/drawable-mdpi/ic_menu_calibration_grey600_24dp.png b/Android/res/drawable-mdpi/ic_menu_calibration_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..29c4343a292db5b80650d1bcc25785f836c1dc20 GIT binary patch literal 299 zcmV+`0o4A9P)9U5Ue05qKE~-gTL5YpSS#$c(7I!#D0`Bl1L~P6WVGIJ1}&U-5sV$lLmo6AP|fV zX_~Hv#aiYxG;S=nRc&ziO7Yur}P*wi{1K*J5seH_OZ#3i`XEIC&c z#Wu^bHO6<6G3VOqsiigD44~TY@d#%0UI9-yg{wb2D(5DcpKo6!JdZv xl6zw4bqwvxrANA5L}R#$|NAo%2n2#(;|cT&@BW1XPeA|x002ovPDHLkV1i^ef$abQ literal 0 HcmV?d00001 diff --git a/Android/res/drawable-mdpi/ic_menu_checklist_grey600_24dp.png b/Android/res/drawable-mdpi/ic_menu_checklist_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..3a6cef966108d894cca1444f2d6590ebbc5f8566 GIT binary patch literal 180 zcmeAS@N?(olHy`uVBq!ia0vp^5+KaM1|%Pp+x`Gj)t)YnAr-fhHFR}T7pSU*DY6Ur zvp({7_#@b%&S)rYsyl<}$p4E4@|I#OOdq{<+752u6qx;ZVm<4Te?N2%r2nX2@i2_# z%AO~)oodb1V8G*0ZTUZa z#dZyg3U>DMFV$Wt&1z~D%Cc9xDY$I)5-bu&+5VMR~zf_5#~8cNz~) zl2+?$*tfIhoHCcrl?KVvoL@9HF|w*&STytYM8?y>%n^C+Dqm;rJ2^Mmlh-8vsUhS1 z8vc{cjGOL=CrsSWnx(f>TVT@kEBB{_zT?_(Dw!!Nu24@V?C1W;i+3@ zt$>Q7t9=YL2df3h3ZDY;bRc#IVm2J92qf+S#4~{S8Lm`@Y{7LPZUAZ8>nnS#_? z0C5Kp-x$rwRJVW&h!>z)umCDf6$`H7Nc&f*Wx;J|<^v^3At*f&Dn7I-eX=kBqM?cp T7x^$#00000NkvXXu0mjf`43{? literal 0 HcmV?d00001 diff --git a/Android/res/drawable-mdpi/ic_menu_flight_history_grey600_24dp.png b/Android/res/drawable-mdpi/ic_menu_flight_history_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..71f2bacfbe3e7ad076c16353c4c3adb5f3f8ab56 GIT binary patch literal 417 zcmV;S0bc%zP)(6m5a>{_&xz1XkXI_e7Cz1Qf-)kQ1y2n<|KTw0Cp@eL5w1TjCZ1Q1nuuZ9k>R`9lqQSJFSDXVw-2&b=Zhhk*ele$|!2!6||J^HO4k{ zXCNY*hWCF8Eb_N>@V4Ax{0v|cw0(XzR z+6Az!j75?!*{*9@Ty2AOed4d&_6%0R9J*L=6Ni(xhQ?gKE!7E@viUk{MJy}f>c?HOy z@x67GPUk##n(h>f&+gpwyL0b(?j&iNCY_Z0m4FpAh2@w5M@qm!%zzsu;JTfF0kkfQQS8W;(U>8e;%$r;0%s4chh9ms%c%z$w` zh((z{4q4lcJ5lS7cgzZy$D46+brIs4ZyU94P-eA&jlk$-{zz)d&ZRXipbt+GJ~Vg4 zJ=Ps8M0hGnd6(=SstX)r0)yD~51VZKjvWkO5+^thJ$4;`t}Ta3z<$htvOlKZmj2bB be%rnQmND~ATf>qF00000NkvXXu0mjfhJ>VL literal 0 HcmV?d00001 diff --git a/Android/res/drawable-xhdpi/ic_account_circle_white_48dp.png b/Android/res/drawable-xhdpi/ic_account_circle_white_48dp.png new file mode 100644 index 0000000000000000000000000000000000000000..b92fcb9ccfa2218fad9c21fd394e42cef12fdae9 GIT binary patch literal 1614 zcmV-U2C?~xP)}K=vSqKn}-|-N+Tlh9tnhc^O}+dywZqALGc~$ff+*lU9J~$S&jv z_`@)A1F~^42|!c8Gss^d9GpRJLQX5Y0BevxLbw=3c9v0qxyVl-9_&NTDT@H>kbgjY z_>I4@(F#zHdFfOX1OzQhGmi`=DX=UQI^%vD_B4h!e) z8#<f!~oWJ_OLr?W|N-pFE_TJ8~+(8s$(^qfk<(9I17>5}-jjrMy`&KlPGwDtnp> z0iIS~=(H*duteGRC$$BjGU6}FgJ@P1V79XDr+NLMCP0^ie9II?0j4^zf4!Cf+BdPX z2v8`9C}MoOql{zBQ&0tM8UpNbWPHpw;R^bt1)v+tIY-8Ci8Kto6o2LoN%I=s;jrj2 z9O*)=8p|aG=mED_r69n=j>oWFQh*`H#*Y+@r*o`dPC6dL_fi7P0zY_PFdeF(l(? zT6q(B59pO5tGSS!qdi@9LBQ$g(=2Y2L&sP18pt~Rw3^M@Bm|hL5F69Ri>o|3zM5A< zRyUAd^N18=Y6Ry^`agFEJh0%9e}8V>br@i~9xLqDa9uG+%_F&leo)7!=&!Y+~3ZgRA01o>gH$q=Pt2+FQDcewK-G)c0=E^mGJd z8*a7O$m^D(7|9!Y+6qAIG>i^D3tR*W7!Dea?Lm{zv@v#{p`k}W>HIZI+MIK@*YtC3 z44z|AX`*|=9RWH2E--Itq{`imJ_N8mGvYjlsI?v)U&~>mP3MQzNxKq**lC%xqElCH z@s#WN)YA61Z0(R32p!usXgQF-kXs=;drsT&RIq;o`M0Ibhd^Lcxn$fdv5$#$+p!xF7!VSS$~cc=%}6+DZfcyWebEw zsDO?I8{lc`QONc!-^V4yMf`II=We$0do_+zJ1Kp?(wJlC3D#9Z!g0wfUsHfeC&gfi zoPS7a&UYn1B|7RYf%CV6;t@J7;_bCOhsTDq;NWp4t`u{>6;aFGeCN%auOg3keCEW0wg8@k^qTGfXT;y0C|!533|Sj;s5{u M07*qoM6N<$f}sBS4gdfE literal 0 HcmV?d00001 diff --git a/Android/res/drawable-xhdpi/ic_menu_calibration_grey600_24dp.png b/Android/res/drawable-xhdpi/ic_menu_calibration_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..92bc891a38badbe170e1be27a84a10e1708c5afa GIT binary patch literal 426 zcmeAS@N?(olHy`uVBq!ia0vp^4j|0I1|(Ny7T#lEU@Y`>aSW-r^>*e#ufq-kZL7ui z-e~6NV)u{R^CL~M(M0jMO|N*q*W$MeD>h!Z(q8m$6LFt!8+G&R(W7?zH@#jRyL?i2 zc;fumA4}J6oOCDBhCl0SiqX#g$3KFC*2G*e5AR<; zJ5Ogj&nxezHGALwn&oR;mU%#_Yf<5>W#VGzoBkC4=v{r|X-(}ixp@84pRU|HvU|OD z*tzSs*R8*4qRdv3+rV3$=WPFK>*eN`t5z~@JJ$JokKUaFQ;U3gFT~}Y_uZd%(dW0x zgBvDcI+1UEb}nO+aNl>`8%Ss9zkOM4+Fev_yx`>eLfsFdN8%dTEpYr}Uvo=>l8={bHE3t<}bP0l+XkK6c@Zx literal 0 HcmV?d00001 diff --git a/Android/res/drawable-xhdpi/ic_menu_checklist_grey600_24dp.png b/Android/res/drawable-xhdpi/ic_menu_checklist_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..1aaa5442cc66cc9c22523c49a1849bf48397d477 GIT binary patch literal 317 zcmV-D0mA-?P)MtZ9h`}b+rt%kW*_nAsJ5v}D zMUiMSf&#B}!4mAi9o)bcEI`M1fgw18{0)0B@KvBV-GiZcO>rA-9|h(g6t9{6N?-zF zkd-J-vjPF=0cr941tef>D=-CTi^Q7XDOTSh&dDTU5?DJV&DF{4SfOLA*hb*$m{h8h z4^;s!v9huPEysl4fC3coO`z)E5DHMBX#(s*6yO|S7oq^?0J{(cI0vf#SSdh(rUcA#Prf_Tx%K?p*!v%8bL7nsAl{~v6YkW?Xr zYRsz~-~b0Wz+wy8MfR2*Ws@-hma>QJ)7VLiV2n>fu*RzqNWd-Q1dYU29@ zXydyOuy>)<_$Fe72IR)8&wQVN!Q(9fka#NqEZzbDjV}e1#NRC9O8^w{xd58@8~{~( zDu6CN1wa|E1(e3mkzeMh<6{8&_!xjbJ_ewVw+7sYj<*Cr;;jI%cnbhDz7znDF9A@* h`%gXxIKTn;eF1t;2<-?s*7E=W002ovPDHLkV1kxvj9~x( literal 0 HcmV?d00001 diff --git a/Android/res/drawable-xhdpi/ic_menu_flight_data_grey600_24dp.png b/Android/res/drawable-xhdpi/ic_menu_flight_data_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..b566371aef3f14d6638e25faa16b8097bb30fa68 GIT binary patch literal 438 zcmV;n0ZIOeP)nK(D2NaY-qP$RZa+gTNc_;ZU zkqu*aXZLPazT#=l%(G*t+vu7Qb@~k-TbPg~-Qk`HKBN^U>%(GT- zD(}cN;0Z@qKwk$gbLJh3IL33@fP3s<4n1AGjhc7QV;2v4oz?&i(18CRFo>!ppek#; z44A=PjO&0|GwoZzDjEqcXARloO+eb~vX=o(oTH2hQI^k|z6LzXmmhNpD_Pc+WKBi( g=s&tOKm#)H1<{=-KK2jx_y7O^07*qoM6N<$g3M#S#Q*>R literal 0 HcmV?d00001 diff --git a/Android/res/drawable-xhdpi/ic_menu_flight_history_grey600_24dp.png b/Android/res/drawable-xhdpi/ic_menu_flight_history_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..d69202a4c89cb13df28b0d08347364c38883da6a GIT binary patch literal 776 zcmV+j1NZ!iP) z2NdE)D0BKh`d&D~<8bcy?vM9Oc#97VGxwf*zHiPw_uTU`#bPnDpUI>GQUR%eQ~;*{ zZh;rz6IcgZg!=puOo1C9|Gx;xf~#N&{550&Tm}dCNKm&N@!Ew$* zP#?E|W{PjgfeLsH20TdjjLX7|Zls&kzOEp^Z?0lFS;k#2p zA=l?3peDg~;Su5TvouILhB_xH6Kr2a(*PP&Ri+9$f`w| zz++zOH7#j2xU+ye!eZN$&kF{2+9}&qG`*&yakUn6bgb)Ii|QtIkJ^Yi+9!2X+jP+h zTds0YE=FS(o(B7G#!mKrY$(IU91*8J@w}5{eko%lve4b7K0000QtvON$q8&P?N`PpF a1?9qQ5h0I^p3XlB;(EIJxvX5UX=Tm=N73fwR=o0V&6<9$GDseGJ z6k~T$1X_SM$pQR8j>)>p1p<<>jhvdPYoJl$Y58&biAr;tgv13<&#gkGz&2yrNC;F3VqRI*%%u~alwCr=A&B{r z>;msro(Du7XQhNdwIF8H3V|$OneYZiB?Kl2ahF6_F`{lXOe}Q~+@z?<=i?%!#NNh| z&Ju7l>U4|%VyEFs99K zbWo>ISi^RDi?ar5G&|6I;#*`@p;e6pR%FVkQM#TqNd7^k8}*q4ezh=3vsl9_J8?E} z8W->o7z7IO_<606_!S-#jT^cl;3&Z*T9#@r)P_m=f4LSf0H&FDNRPlI?hEnpnt%KRzDS?!Lb^HLX+|E!% SlFR%60000L3P)vRC#}GfQ zL$?)x8t%sE7t{@BTt#VsNu2MGxWdx`T@Ipz%FyivpyWJSee*<@s|x+3093b|qL&FL z^=c71Ljbzm+2{&kBWdkHX9+-&bI`vD6W6Wd=#g7l4K{h36o89=ZtK6`~5mbmdI-+6eS~^dY7Y6^0H_0kdg~ zf==bExeXXg9(pyiF9S_y140EThuIDDMs!CFWh z)r=nTvqAx=DWfFe33Ly`SJ~g0jCHS#jI|AbmN9~-lZEkiVFb}4-vJuUXxi!l_U`u{ zW;C6R^cA2E;C4$*ZH)!{>52(V#!jpF?R^7?3ZS^u^K5jOZU2f%49dVzQJSg1O=gtm z>F5xkE{yU-&-wyTJ4X4QRp7qb;6o;{pd!7tJ^;k206v!iK)o5oV-0tJ`ZEgFK?d+7 z_Ocyj6qi0+0ir;0+P5{22|(m`8O3EUXxzN0dzGD&iWmV@%q%uTxB*0uh}^atcVz@n z4`#91uj?wLD?o+7Pn8XEFN7CP0~CF2iTeM^JX#?;~^l;j`Qu#IjDuFOWEm=Bi zdQ>kBBqpP505luI5#@=fNmL$O|MEn>N)m?Ds&A$ZfL1}6`Wd|dqLp(hzn~hP4COZJ zHTpMN7(E<&^!w;H(bLe+ zKva1!9{oIeI(iO7Yk@n|mH1*{vDjh*pp_m6i0XBy70uh|ryx4jrYSVMl;dWI3e?7+ z-+|~bT%S*2w6d5w%d^K)YO?(*M9n2_9G6W{J*wig$FsDDm2!>}53VxQYM9Q5XbtW+ z7E&n)?F#u4q66VL%Su66U#5dES8%sr08L%aRQFaDOk;pB;a*>sydh#&_;LJte?IAcv6rYaIFe@T41LAWG)+4Slw9YVrw&H zNgodooGU#HqWx>OWp!(FzJqT^%NW2@yD8^p%Q5b06Ci5ua>mlYUW*YpwcS`HJZ{IeR)GKse$??Fn5?u zjmnlgY4f|yz<@4#niw?gJVO9&PUU^2I;e352K0r%Qm4x~OgM!FwC}Fp?}gC-|v9gp}Qsy z-u+yG8FzSSO>Cp)*bdV5{&XK}v`_Ou=L$eDUvo@%>wJH@2Wz4Q@QfJ4^NN9Z=5Yon zO|9(8s(k96W+0BMb-zy&18)mvYK3OVl_w=pQ;d6j0EqmYp@qMB>ZUSOaHs;o)cL9t zO}uAQfuN_SGDCr&r?U{tTWP!0CPOjXq3f~T7C>ogO{>aKKn?{~@3h*jpL!Z=UrTR zH~>T*VDZK}L{-_o=ivrW;_2+Tu+X4Kb?3F?Tyi8?7Ltu2X*V!w@5ilyz+zz|spW}u zE}t96RR2gYw~FtxD1%+Z?epTgUPPrJWx~uQQ9VyK$IpuMq9c`QOmdWz<02|UrAop^ zTt6ot${uJfX>APQS#2m|9y@>%?h}(IwQoW5)*Aun^398sbq(>*JKAnM$g|JGJAi6~ zG#I@zkQ?Lz&i6SX0#w`7AbSbu@04azXI0KC$M^V$v@M1z{^(q;t-$L9oP_8-QA11W zN!TouxQDty?{?p{>vb<`j*N7Ub#qNdj1 zdtJx1>jmv>r2}KAI+4x^U7@DF3I*6nbx&2Jd``V~RQ=2r^?zon-$9Svv22JX-M_>F zkXQf`3qWE4NGukB!~&3501^v8VzB@u7J$S8kT_KT2L_~W@bi@M<^TWy07*qoM6N<$ Eg4Z;1ZvX%Q literal 0 HcmV?d00001 diff --git a/Android/res/drawable-xxhdpi/ic_menu_calibration_grey600_24dp.png b/Android/res/drawable-xxhdpi/ic_menu_calibration_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..e6f3953b66a6b5d4d73198b22be0b5750ec47505 GIT binary patch literal 516 zcmeAS@N?(olHy`uVBq!ia0vp^2_VeD1|%QND7Ro>U_9;V;uunK>+NlO@901Y_Joad zmrPDzXKxp~b@J-c==}j6C+_RUFNzMAy%c8U!D=oma+Lq+??X$E9Og8cG2!+Pn-4{k zi{t#xoz$Q3^xj-qpt(?xU~Dz_T>91>*W?Z)7+8dMXTN3SX+P|~bq9+A10%QUc zEs+DMIlpSp9iLt>W&aef^O5VX{|;Fr~bVx`K9-4z4q@N=XP$Ym;HTm z^Rt<(Am=$SoM-O%-v04dbU%Bk? zHFks9XYU;m-#GvM^VPTCzB~TowkXR6>zO`$r@j{JJdcxdcxU)MYTf+wQ=7NiHKgiF zAJ{aF_dz_+3MPRD29^z?jDPyUK>`(kSkENjFgwrt=C7>BxtgEN({gLKzB{I)%D||> vxTlZ7rfthZ_bE0V+aI=nfdw}ML&Gk0Kh8IwCjH&85hUp8>gTe~DWM4f`GM&@ literal 0 HcmV?d00001 diff --git a/Android/res/drawable-xxhdpi/ic_menu_checklist_grey600_24dp.png b/Android/res/drawable-xxhdpi/ic_menu_checklist_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..1511861a1d4bfb47bdd27994010c7ff5338e038c GIT binary patch literal 436 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@Zgyv2V666ZaSW-r_4dwgFJ?!PhKC`$ z=PtSCC34^Kf|tO3)i<+5emnh=3gdFpTd?uE`v)fnq1j(K(j8JkY#_NvqaC<_6T3e7B;^ZAMBY^gA{p}&ODgrT)a{}H)H7*gSx++SEd)~ zFVKB?t>EJP*QRH*=ce6#8Ryez&jKOWBf0d#pyP_@?hprXkcLCSRl$~%_`u)z{n!tAoCeaF?@{f zNtOf4D%5pSz2uK&v4(G_2TIZo=xZ(`Dx2C&1WX N@O1TaS?83{1OP3?sYd_+ literal 0 HcmV?d00001 diff --git a/Android/res/drawable-xxhdpi/ic_menu_editor_grey600_24dp.png b/Android/res/drawable-xxhdpi/ic_menu_editor_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..df197b76e0da3b8192cfd5f173ea95f544ba61ef GIT binary patch literal 463 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@Zgyv2V4UXZ;uunK>+Nl8zoQO3tq;8q z^GY{PdaLklVxMb(0@pRcdD)8^n4)HAH?=6arr2zooIL;0{R8SpKL?f7-hY3i#zjG( zk;6rSNwCAgLAF;gBPe{AcI`AfukA~18|$nz_fFZTX4_k^vhi6#$b?0YO_Wm)WICN{ zQg(A<-6is%W5NXcjjP?3)V3+!Z7LDwd|^<0Zpy@aiy8j%J-L2qr_!ZpmIW`fmUfo( z@|kR(lC8kIG&yC#|8JJM9?oYK#VUn09Hp}Sf4s1MBDExI&RRy#etz!>E*8;DuUag; zC+J1#ol|+o5 zzbbq*eWC#pGTaLSEN(eGEHG(wdX&M~dh{a0t7GNwCRnU>cvu+K zpi?Nftx1{Ht67=Rt2LN=3g2=z4OKth0IxYx3#M3PGdVt3!^+aUneBqIP@lPgOrN@d zN}srZP9M8~3B;lR4jJtQ1{Qzv=Q*$_!9w!vH{O!%lZEvfGH(MTiow&>&t;ucLK6U~ Co~_>i literal 0 HcmV?d00001 diff --git a/Android/res/drawable-xxhdpi/ic_menu_flight_data_grey600_24dp.png b/Android/res/drawable-xxhdpi/ic_menu_flight_data_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..b1fd78ae88268869394b624bf83c2d01e694b05c GIT binary patch literal 599 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@Zgyv2V3PB6aSW-r^>)r)@52rf$F!RQ z_OqEgZf{z&xcMKu)vlK>mUS<1z7VNnb<6X3o|RSTf99k88#OqRGCJ z+fI|rcY2j=@~xllvD;5duh92AS2#x|lV3GJfHe?^0;1a-1g{+6uVDP0Frn$+lRHe? zSfQIpJ@U+QFTR6avjBiaP#H zkgm}<^-)FQN6O#ViIawK`n!z&VK)H*hT+%#cgE?%Drx(agmas3i+&{JH zP)k8bmE0pW5GD0Ut#w0oQpaquL&sWotW?bL>6k5d=$7-HHi2tWkIY&(OcS^+c+v+0&-vOH!-7Do)o<%aWKQL^w zRnzjY`B1`Ib|A!wcXQ?j?scMaCoUTJgr&QN#s?Qu-A>swGAS21I_J-R`Mx z!M#c`T4+(78h6t*hsCFlg*o^6FI`};eM;f>7@_WvxfTBEt1^YJbSuv}!%;QqxYweE zrfT)xpZ@!B{bCW_z{$nDJBUh1-czbp+WAtGMvMgf{KA&31Z^u!?}DTC>>~ZK}4;X-}`EkF&h4p<0G#f3M7|0e&p9;gLw0D~6BKZ`MWLeK=@vdO^j z1G|9~8}m#7_5cq|&ee>uDHRknDTiFtYJv0S0gp^d3aS*ud#ru}`y}NoWXy8l7bk`@ zss!!e1oj-rbRnI{0y;RcY2cP97(s_ z5>(6x;)Tn1j?ta;k`dod*@BWVwKtlaES8HsP_D?vJj*D?_duddL8Xjer_8~)@neM@ zN;<%ZvqYAlAY)hl(BZ3Gw4emwF(uY6UT$P}(p<)`lJD?>L<=IUWyHHmhM*=!mK^Y) zpa3J=ZWJvjh$T^@$@Y3!PzfdGPprqx&O|wsi3V}!?Nvb}KzC@&;3d$rm1zm_N zK><7zFp7P@NI~_KNsjtJ&~Zxa7eor8{R#y>5L9S&>tSb-9?B#cJ`j{iiM?B-Ale%& z)dzyoD6#j86f{DaBpJ(^G!i@@D3KETuvtN2iKh&;HU-rQKD;!FZOF7PC zz#IXBW>CieZ1oWfE0Po7)U>P3lqfhQS=y%6@){&UQjLv^*nk1k#(V{=u_@8m5Oc3Dm=bAhXjc?L1Qi6+Nuql{DT^fhlq(h&)z z(>$zkk1`UyO`I`O87WGZh&;%Qq{9;H%Osbo#A6%UBWI^X{6SQk8-eixn{!eayt0k@mx`lu>exm2^nqu}%oPJd!w%=2MEC*RqQC zgj0&;n5B|&_i#(ZPTO6)E@vt3vy9}tHPbURo}0jDax(I5Ug>gG(Y%nt={{@mN|$RC zPc>(`eCM#_3;^@JASfCW)EoSKz>PJhi<8V2dZ7(CN~zja+ij*ak!4pg7UVIaUT6c3 za)NvYY!uiyTENJ2VrlR~8*m7>0cJL}?by_5r`Vr{JMeasb2V6~iM!HBe%iwBe+19k zBDg+eV`-F>Fec;PiyRGa1x^C@7`t*IkCj`Cbdlmu5eBR-$SPj*3m7M{GP!P}+Ndm1 zB#+!K{Ay6P7;@^n#m^tqk>15l31T|%yAR+`=3(|tLAdMma0A@{ePwjhkGynhq M07*qoM6N<$g7RV;u>b%7 literal 0 HcmV?d00001 diff --git a/Android/res/drawable-xxhdpi/ic_menu_parameters_grey600_24dp.png b/Android/res/drawable-xxhdpi/ic_menu_parameters_grey600_24dp.png new file mode 100644 index 0000000000000000000000000000000000000000..0979b323e85eb1e7ffebdf8147e9e80d85c63de6 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^9w5xY1|&n@ZgvM!9iA?ZAr-gY-dM=XpuppLQ19>a zc20o{3LNV5)>vL#vQ}kjsQ?2b6AOocfw0R?Lml?{8WV?H-9FbV+;gz9Fr%3?ZyzwZBudNfcpJSWr>0|Dp%vu0|2PBM^j2(1hsq zvrvoZftn&o^q?|(Sy^c>i|h=Xg_7&tJ2U58mbvre195kqb3gCBbI!Rl8;V3CAxr;Q z309C5WCdA4R?vUU0@{FHNnQXmf*`0^K~9`KK@e1>A?REX1T|_1x*G&RT^fQunl5Of zhMYKKO%}9}K+rss1+60xw8msXQ364GlU>jNpc?1^P62Z~d}au+33y2$NFx1f>0TbH0e11Esl zIAdL95Yv~-Ksuhu;*9>{^4?b{kWJ75iNL@4AV+1a7?+^wK#z|H&BYI3Du=o`VizFpaCeuQY4B$ zH{xsD;~!BKG#U8K7+4p!Uo%}|2xH#T%^1foV7!W;bjD=wI*=ieVhB;SOtA?0qf{@k z`9M2yKovMM%4YF{fJ)+6#M6~L-C1k`P(yg;sL1(OQXNq&*W4~G*+el_vJUI-o|6&L z@6m(_?nxzHav+srb%jRLy_m3(RiYS!=r%0p?gz~TS{0`9OhQ3f3MoJf7TmtHTvtg3 z*TB#YZIX;3-_M@(4$0uk7zC9|#<0~-LAxY_i!um`Nyf0#3Q8hD+wCPrdy{Tt5Y(Kk zH|ZSUp~5sDCX|z{FwM7OiozAf}Z0F?J6=oKU*Nj``HIZ^FbchLmHT<44o}kj_15 z4Di9=$37iy{b;YV*cO8Y6;VBUZZS~KeOxU^k|-`QP|zakQsbgQa;iCMv1!0h1LTO@ zZVFeix?eKS@#~;vp0pHmR`Vl(H!g#BVo{renfN6i|xP=J?qg;6oKE88N!7Os)FtWL6FWey0bwL zv`<6O?jQ&fUoY_l``t1;#)8>?xk)l%C0IdLkQHPFB{6>i8q + android:src="@drawable/ic_account_circle_white_48dp" /> - \ No newline at end of file + diff --git a/Android/res/menu/navigation_drawer_items.xml b/Android/res/menu/navigation_drawer_items.xml index 98aa36585f..57881ec10d 100755 --- a/Android/res/menu/navigation_drawer_items.xml +++ b/Android/res/menu/navigation_drawer_items.xml @@ -4,17 +4,17 @@ @@ -24,23 +24,23 @@ diff --git a/Android/res/values/colors.xml b/Android/res/values/colors.xml index 0062ddc0ce..646f63a8f4 100644 --- a/Android/res/values/colors.xml +++ b/Android/res/values/colors.xml @@ -11,6 +11,8 @@ #f7f6f6 #212121 + #00a6e3 + #FAAF4C #0a5242 @@ -46,4 +48,4 @@ #3C3C3C #616161 - \ No newline at end of file + From 7d057798a2d39c1b3274509f7cf1a4e4df221ab4 Mon Sep 17 00:00:00 2001 From: jandrop <3b5w2xPb> Date: Wed, 14 Oct 2015 08:51:53 +0200 Subject: [PATCH 7/8] Fix button calibrate in one line --- Android/res/layout/fragment_setup_imu_main.xml | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/Android/res/layout/fragment_setup_imu_main.xml b/Android/res/layout/fragment_setup_imu_main.xml index b7de2b4951..b1bc9a32aa 100644 --- a/Android/res/layout/fragment_setup_imu_main.xml +++ b/Android/res/layout/fragment_setup_imu_main.xml @@ -104,10 +104,12 @@