[X9D] Grey bar rounded on main view

[X9D] Column headers
This commit is contained in:
bsongis
2013-03-15 18:02:53 +00:00
parent d1d3d7ff95
commit 49f0da06fa
6 changed files with 44 additions and 8 deletions
+11 -1
View File
@@ -646,10 +646,20 @@ void lcd_rect(xcoord_t x, uint8_t y, xcoord_t w, uint8_t h, uint8_t pat, LcdFlag
void lcd_filled_rect(xcoord_t x, int8_t y, xcoord_t w, uint8_t h, uint8_t pat, LcdFlags att)
{
#if defined(CPUM64)
for (int8_t i=y; i<y+h; i++) {
if (i>=0 && i<LCD_H) lcd_hlineStip(x, i, w, pat, att);
lcd_hlineStip(x, i, w, pat, att);
pat = (pat >> 1) + ((pat & 1) << 7);
}
#else
for (int8_t i=y; i<y+h; i++) {
if ((att&ROUND) && (i==y || i==y+h-1))
lcd_hlineStip(x+1, i, w-2, pat, att);
else
lcd_hlineStip(x, i, w, pat, att);
pat = (pat >> 1) + ((pat & 1) << 7);
}
#endif
}
void lcd_invert_line(int8_t y)
+1 -1
View File
@@ -288,7 +288,7 @@ void displayTopBar()
lcd_outdezNAtt(BAR_TIME_X+3*FWNUM-1, BAR_Y+1, t.tm_min, LEADING0, 2);
/* The background */
lcd_filled_rect(BAR_X, BAR_Y, BAR_W, BAR_H, SOLID, FILL_WHITE|GREY_DEFAULT);
lcd_filled_rect(BAR_X, BAR_Y, BAR_W, BAR_H, SOLID, FILL_WHITE|GREY_DEFAULT|ROUND);
/* The inside of the Batt gauge */
uint8_t count = 10 * (g_vbat100mV - g_eeGeneral.vBatMin - 90) / (30 + g_eeGeneral.vBatMax - g_eeGeneral.vBatMin);
+4
View File
@@ -51,6 +51,10 @@
typedef void (*MenuFuncP)(uint8_t event);
void displayScreenIndex(uint8_t index, uint8_t count, uint8_t attr);
inline void displayColumnHeader(const char **headers, uint8_t index)
{
lcd_putsAtt(17*FW, 0, headers[index], 0);
}
#if LCD_W >= 212
#if defined(TRANSLATIONS_FR)
+25 -2
View File
@@ -58,6 +58,12 @@ enum EnumTabModel {
IF_TEMPLATES(e_Templates)
};
#if LCD_W >= 212
const char * STR_PHASES_HEADERS[] = { " Name ", " Switch ", " Trims ", " Fade In ", " Fade Out " };
const char * STR_LIMITS_HEADERS[] = { " Name ", " Offset ", " Min ", " Max ", " Direction ", " PPM Center ", " Symetrical " };
const char * STR_CSW_HEADERS[] = { " Function ", " V1 ", " V2 ", " AND Switch ", " Duration ", " Delay " };
#endif
void menuModelSelect(uint8_t event);
void menuModelSetup(uint8_t event);
void menuModelHeli(uint8_t event);
@@ -1287,6 +1293,13 @@ void menuModelPhasesAll(uint8_t event)
int8_t sub = m_posVert - 1;
horzpos_t posHorz = m_posHorz;
if (sub==0 && posHorz > 0) { posHorz += 2; }
if (sub<MAX_PHASES && posHorz>=0) {
displayColumnHeader(STR_PHASES_HEADERS, posHorz);
}
for (uint8_t i=0; i<LCD_LINES-1; i++) {
uint8_t y = 1 + (i+1)*FH;
uint8_t k = i+s_pgOfs;
@@ -1307,8 +1320,6 @@ void menuModelPhasesAll(uint8_t event)
putsFlightPhase(0, y, k+1, (getFlightPhase()==k ? BOLD : 0) | ((sub==k && m_posHorz<0) ? INVERS : 0));
for (uint8_t j=0; j<ITEM_PHASES_COUNT; j++) {
horzpos_t posHorz = m_posHorz;
if (i==0 && posHorz > 0) { posHorz += 2; }
uint8_t attr = ((sub==k && posHorz==j) ? ((s_editMode>0) ? BLINK|INVERS : INVERS) : 0);
uint8_t active = (attr && (s_editMode>0 || p1valdiff)) ;
switch(j)
@@ -2727,6 +2738,12 @@ void menuModelLimits(uint8_t event)
MENU(STR_MENULIMITS, menuTabModel, e_Limits, 1+NUM_CHNOUT+1, {0, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, ITEM_LIMITS_MAXROW, 0});
#endif
#if LCD_W >= 212
if (sub<NUM_CHNOUT && m_posHorz>=0) {
displayColumnHeader(STR_LIMITS_HEADERS, m_posHorz);
}
#endif
if (s_warning_result) {
LimitData *ld = limitaddress(sub);
ld->revert = !ld->revert;
@@ -3202,6 +3219,12 @@ void menuModelCustomSwitches(uint8_t event)
uint8_t k = 0;
int8_t sub = m_posVert - 1;
#if LCD_W >= 212
if (m_posHorz>=0) {
displayColumnHeader(STR_CSW_HEADERS, m_posHorz);
}
#endif
for (uint8_t i=0; i<LCD_LINES-1; i++) {
y = 1 + (i+1)*FH;
k = i+s_pgOfs;
+2 -3
View File
@@ -488,13 +488,12 @@ enum ResetFunctionParam {
PACK(typedef struct t_CustomFnData { // Function Switches data
int8_t swtch;
uint8_t func;
union {
PACK(union {
char name[LEN_CFN_NAME];
struct {
uint32_t val;
uint16_t spare;
} composite;
} param;
}) param;
uint8_t mode:2;
uint8_t active:6;
}) CustomFnData;
+1 -1
View File
@@ -80,7 +80,7 @@ extern uint16_t sessionTimer;
uint8_t usbPlugged(void);
#define BOOTLOADER_REQUEST() (0)
#define usbBootloader() (0)
#define usbBootloader()
#define SLAVE_MODE() (0/*pwrCheck() == e_power_trainer*/)