CProgressWindow: reassign y position of body items on disabled header

This commit is contained in:
2014-11-30 22:20:00 +01:00
parent 1d574d93bc
commit 32af48cc80
2 changed files with 23 additions and 2 deletions

View File

@@ -82,7 +82,8 @@ void CProgressWindow::Init()
addWindowItem(global_bar); addWindowItem(global_bar);
y_item += 2*h_pbar; y_item += 2*h_pbar;
height = y_item + ccw_head->getHeight(); h_height = ccw_head->getHeight();
height = y_item + h_height;
setCenterPos(); setCenterPos();
} }
@@ -96,6 +97,18 @@ void CProgressWindow::setTitle(const neutrino_locale_t title)
#endif // VFD_UPDATE #endif // VFD_UPDATE
} }
//if header is disabled we need new position for body items
void CProgressWindow::fitItems()
{
if (ccw_show_header)
return;
for(size_t i=0; i<ccw_body->size() ;i++){
int y_item = ccw_body->getCCItem(i)->getYPos() + h_height - 10;
ccw_body->getCCItem(i)->setYPos(y_item);
}
}
void CProgressWindow::showStatus(const unsigned int prog) void CProgressWindow::showStatus(const unsigned int prog)
{ {
if (global_progress == prog) if (global_progress == prog)
@@ -177,3 +190,9 @@ int CProgressWindow::exec(CMenuTarget* parent, const std::string & /*actionKey*/
return menu_return::RETURN_REPAINT; return menu_return::RETURN_REPAINT;
} }
void CProgressWindow::paint(bool do_save_bg)
{
fitItems();
CComponentsWindow::paint(do_save_bg);
}

View File

@@ -37,8 +37,9 @@ class CProgressWindow : public CComponentsWindow, public CMenuTarget
unsigned int global_progress; unsigned int global_progress;
unsigned int local_progress; unsigned int local_progress;
int w_bar_frame; int w_bar_frame;
int h_height;
void Init(); void Init();
void fitItems();
public: public:
@@ -53,6 +54,7 @@ class CProgressWindow : public CComponentsWindow, public CMenuTarget
unsigned int getGlobalStatus(void); unsigned int getGlobalStatus(void);
void showLocalStatus(const unsigned int prog); void showLocalStatus(const unsigned int prog);
void showStatusMessageUTF(const std::string & text); // UTF-8 void showStatusMessageUTF(const std::string & text); // UTF-8
void paint(bool do_save_bg = true);
}; };