mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-08-29 00:11:14 +02:00
Forms/header/clock: implement slot into OnBeforeRePaint
This commit is contained in:
@@ -344,6 +344,9 @@ void CComponentsForm::paintForm(bool do_save_bg)
|
|||||||
|
|
||||||
void CComponentsForm::paint(bool do_save_bg)
|
void CComponentsForm::paint(bool do_save_bg)
|
||||||
{
|
{
|
||||||
|
if(is_painted)
|
||||||
|
OnBeforeRePaint();
|
||||||
|
OnBeforePaint();
|
||||||
paintForm(do_save_bg);
|
paintForm(do_save_bg);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@@ -68,7 +68,9 @@ class CComponentsForm : public CComponentsItem
|
|||||||
///force repaint of all possible text items
|
///force repaint of all possible text items
|
||||||
void forceItemsPaint(bool force);
|
void forceItemsPaint(bool force);
|
||||||
///slot for background paint event, reserved for forceItemsPaint()
|
///slot for background paint event, reserved for forceItemsPaint()
|
||||||
sigc::slot0<void> sl_repaint;
|
sigc::slot0<void> sl_items_repaint;
|
||||||
|
///slot for repaint event, reserved for actions before repaint if paint() already was done.
|
||||||
|
sigc::slot0<void> sl_form_repaint;
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CComponentsForm( const int x_pos = 0, const int y_pos = 0, const int w = 800, const int h = 600,
|
CComponentsForm( const int x_pos = 0, const int y_pos = 0, const int w = 800, const int h = 600,
|
||||||
|
@@ -101,7 +101,7 @@ CComponentsFrmClock::CComponentsFrmClock( const int& x_pos,
|
|||||||
cl_sl_show = sigc::mem_fun0(*this, &CComponentsFrmClock::ShowTime);
|
cl_sl_show = sigc::mem_fun0(*this, &CComponentsFrmClock::ShowTime);
|
||||||
|
|
||||||
//init slot to ensure paint segments after painted background
|
//init slot to ensure paint segments after painted background
|
||||||
sl_repaint = sigc::bind<0>(sigc::mem_fun1(*this, &CComponentsFrmClock::forceItemsPaint), true);
|
sl_items_repaint = sigc::bind(sigc::mem_fun(*this, &CComponentsFrmClock::forceItemsPaint), true);
|
||||||
|
|
||||||
//run clock already if required
|
//run clock already if required
|
||||||
if (activ)
|
if (activ)
|
||||||
@@ -304,7 +304,7 @@ void CComponentsFrmClock::initCCLockItems()
|
|||||||
if(!OnAfterPaintBg.empty())
|
if(!OnAfterPaintBg.empty())
|
||||||
OnAfterPaintBg.clear();
|
OnAfterPaintBg.clear();
|
||||||
//init slot to handle repaint of segments if background was repainted
|
//init slot to handle repaint of segments if background was repainted
|
||||||
OnAfterPaintBg.connect(sl_repaint);
|
OnAfterPaintBg.connect(sl_items_repaint);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@@ -115,7 +115,7 @@ void CComponentsExtTextForm::initVarExtTextForm(const int& x_pos, const int& y_p
|
|||||||
ccx_label_align = ccx_text_align = CTextBox::NO_AUTO_LINEBREAK;
|
ccx_label_align = ccx_text_align = CTextBox::NO_AUTO_LINEBREAK;
|
||||||
|
|
||||||
//init slot to ensure paint text items after painted background
|
//init slot to ensure paint text items after painted background
|
||||||
sl_repaint = sigc::bind<0>(sigc::mem_fun1(*this, &CComponentsExtTextForm::forceItemsPaint), true);
|
sl_items_repaint = sigc::bind(sigc::mem_fun(*this, &CComponentsExtTextForm::forceItemsPaint), true);
|
||||||
|
|
||||||
initParent(parent);
|
initParent(parent);
|
||||||
|
|
||||||
@@ -226,7 +226,7 @@ void CComponentsExtTextForm::initCCTextItems()
|
|||||||
if(!OnAfterPaintBg.empty())
|
if(!OnAfterPaintBg.empty())
|
||||||
OnAfterPaintBg.clear();
|
OnAfterPaintBg.clear();
|
||||||
//init slot to handle repaint of text if background was repainted
|
//init slot to handle repaint of text if background was repainted
|
||||||
OnAfterPaintBg.connect(sl_repaint);
|
OnAfterPaintBg.connect(sl_items_repaint);
|
||||||
}
|
}
|
||||||
|
|
||||||
void CComponentsExtTextForm::setLabelWidthPercent(const uint8_t& percent_val)
|
void CComponentsExtTextForm::setLabelWidthPercent(const uint8_t& percent_val)
|
||||||
|
@@ -136,8 +136,13 @@ void CComponentsHeader::initVarHeader( const int& x_pos, const int& y_pos, const
|
|||||||
cch_cl_sec_format = cch_cl_format;
|
cch_cl_sec_format = cch_cl_format;
|
||||||
cch_cl_enable_run = false;
|
cch_cl_enable_run = false;
|
||||||
|
|
||||||
//init slot to ensure paint segments after painted background
|
//init slot to ensure paint items after painted background
|
||||||
sl_repaint = sigc::bind<0>(sigc::mem_fun1(*this, &CComponentsHeader::forceItemsPaint), true);
|
sl_items_repaint = sigc::bind(sigc::mem_fun(*this, &CComponentsHeader::forceItemsPaint), true);
|
||||||
|
OnAfterPaintBg.connect(sl_items_repaint);
|
||||||
|
|
||||||
|
//init slot before re paint of header, paint() is already done
|
||||||
|
sl_form_repaint = sigc::bind(sigc::mem_fun(*this, &CComponentsHeader::kill), col_body, -1, CC_FBDATA_TYPES, false);
|
||||||
|
OnBeforeRePaint.connect(sl_form_repaint);
|
||||||
|
|
||||||
addContextButton(buttons);
|
addContextButton(buttons);
|
||||||
initCCItems();
|
initCCItems();
|
||||||
@@ -523,11 +528,6 @@ void CComponentsHeader::initCaption()
|
|||||||
*/
|
*/
|
||||||
//height = max(height, cch_text_obj->getHeight());
|
//height = max(height, cch_text_obj->getHeight());
|
||||||
}
|
}
|
||||||
|
|
||||||
if(!OnAfterPaintBg.empty())
|
|
||||||
OnAfterPaintBg.clear();
|
|
||||||
//init slot to handle repaint of text if background was repainted
|
|
||||||
OnAfterPaintBg.connect(sl_repaint);
|
|
||||||
}
|
}
|
||||||
|
|
||||||
void CComponentsHeader::initCCItems()
|
void CComponentsHeader::initCCItems()
|
||||||
|
Reference in New Issue
Block a user