menue.h/cpp: add method to override menu position from user settings

Origin commit data
------------------
Branch: ni/coolstream
Commit: 341ce4a9c7
Author: Thilo Graf <dbt@novatux.de>
Date: 2019-06-20 (Thu, 20 Jun 2019)


------------------
No further description and justification available within origin commit message!

------------------
This commit was generated by Migit
This commit is contained in:
2019-06-20 21:32:01 +02:00
committed by vanhofen
parent ed519a1199
commit 78d101e731
2 changed files with 10 additions and 3 deletions

View File

@@ -638,6 +638,7 @@ void CMenuWidget::Init(const std::string &NameString, const std::string &Icon, c
//pos //pos
x = y = 0; x = y = 0;
height = 0; height = 0;
w_pos_mode = MENU_POS_PRESET;
//caption and icon //caption and icon
nameString = NameString; nameString = NameString;
@@ -1454,8 +1455,10 @@ void CMenuWidget::setMenuPos(const int& menu_width)
int real_h = full_height + hint_h; // full_height includes footer_height : see calcSize int real_h = full_height + hint_h; // full_height includes footer_height : see calcSize
int x_old = x; int x_old = x;
int y_old = y; int y_old = y;
//configured positions
switch(g_settings.menu_pos) //configured/custom positions
int menu_pos = w_pos_mode == MENU_POS_PRESET ? g_settings.menu_pos : w_pos_mode;
switch(menu_pos)
{ {
case MENU_POS_CENTER: case MENU_POS_CENTER:
x = offx + scr_x + ((scr_w - menu_width ) >> 1 ); x = offx + scr_x + ((scr_w - menu_width ) >> 1 );

View File

@@ -555,6 +555,7 @@ class CMenuWidget : public CMenuTarget, public CComponentsSignals
CComponentsHeader *header, *sub_header; CComponentsHeader *header, *sub_header;
CComponentsFooter *footer; CComponentsFooter *footer;
std::string subhead_text; std::string subhead_text;
int w_pos_mode;
unsigned int saveScreen_width ; unsigned int saveScreen_width ;
unsigned int saveScreen_height; unsigned int saveScreen_height;
unsigned int saveScreen_y; unsigned int saveScreen_y;
@@ -664,7 +665,9 @@ class CMenuWidget : public CMenuTarget, public CComponentsSignals
MENU_POS_TOP_LEFT , MENU_POS_TOP_LEFT ,
MENU_POS_TOP_RIGHT , MENU_POS_TOP_RIGHT ,
MENU_POS_BOTTOM_LEFT , MENU_POS_BOTTOM_LEFT ,
MENU_POS_BOTTOM_RIGHT MENU_POS_BOTTOM_RIGHT ,
MENU_POS_PRESET
}; };
void addKey(neutrino_msg_t key, CMenuTarget *menue, const std::string &action); void addKey(neutrino_msg_t key, CMenuTarget *menue, const std::string &action);
void setFooter(const struct button_label *_fbutton_label, const int _fbutton_count, bool repaint = false); void setFooter(const struct button_label *_fbutton_label, const int _fbutton_count, bool repaint = false);
@@ -672,6 +675,7 @@ class CMenuWidget : public CMenuTarget, public CComponentsSignals
void setNextShortcut(int sc) { nextShortcut = sc; }; void setNextShortcut(int sc) { nextShortcut = sc; };
int getNextShortcut() { return nextShortcut; }; int getNextShortcut() { return nextShortcut; };
bool gotAction() { return !no_action; }; bool gotAction() { return !no_action; };
void setMenuPosMode(int pos_mode){w_pos_mode = pos_mode;}
}; };
class CPINProtection class CPINProtection