diff options
Diffstat (limited to 'src/Toolbar.cc')
-rw-r--r-- | src/Toolbar.cc | 17 |
1 files changed, 11 insertions, 6 deletions
diff --git a/src/Toolbar.cc b/src/Toolbar.cc index 082a7f2..1be10e2 100644 --- a/src/Toolbar.cc +++ b/src/Toolbar.cc | |||
@@ -22,7 +22,7 @@ | |||
22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER | 22 | // FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER |
23 | // DEALINGS IN THE SOFTWARE. | 23 | // DEALINGS IN THE SOFTWARE. |
24 | 24 | ||
25 | // $Id: Toolbar.cc,v 1.148 2004/08/25 17:16:40 rathnor Exp $ | 25 | // $Id: Toolbar.cc,v 1.149 2004/08/29 08:33:12 rathnor Exp $ |
26 | 26 | ||
27 | #include "Toolbar.hh" | 27 | #include "Toolbar.hh" |
28 | 28 | ||
@@ -227,6 +227,7 @@ Toolbar::Toolbar(BScreen &scrn, FbTk::XLayer &layer, size_t width): | |||
227 | m_theme.reconfigSig().attach(this); | 227 | m_theme.reconfigSig().attach(this); |
228 | // listen to screen size changes | 228 | // listen to screen size changes |
229 | screen().resizeSig().attach(this); | 229 | screen().resizeSig().attach(this); |
230 | screen().reconfigureSig().attach(this); // get this on antialias change | ||
230 | 231 | ||
231 | moveToLayer((*m_rc_layernum).getNum()); | 232 | moveToLayer((*m_rc_layernum).getNum()); |
232 | 233 | ||
@@ -453,12 +454,16 @@ void Toolbar::reconfigure() { | |||
453 | 454 | ||
454 | ItemList::iterator item_it = m_item_list.begin(); | 455 | ItemList::iterator item_it = m_item_list.begin(); |
455 | ItemList::iterator item_it_end = m_item_list.end(); | 456 | ItemList::iterator item_it_end = m_item_list.end(); |
456 | for (item_it = m_item_list.begin(); item_it != item_it_end; ++item_it) { | 457 | for (; item_it != item_it_end; ++item_it) { |
457 | (*item_it)->renderTheme(); | 458 | (*item_it)->updateSizing(); |
458 | } | 459 | } |
459 | 460 | ||
460 | rearrangeItems(); | 461 | rearrangeItems(); |
461 | 462 | ||
463 | for (item_it = m_item_list.begin(); item_it != item_it_end; ++item_it) { | ||
464 | (*item_it)->renderTheme(); | ||
465 | } | ||
466 | |||
462 | menu().reconfigure(); | 467 | menu().reconfigure(); |
463 | // we're done with all resizing and stuff now we can request a new | 468 | // we're done with all resizing and stuff now we can request a new |
464 | // area to be reserved on screen | 469 | // area to be reserved on screen |
@@ -568,11 +573,11 @@ void Toolbar::update(FbTk::Subject *subj) { | |||
568 | // either screen reconfigured, theme was reloaded | 573 | // either screen reconfigured, theme was reloaded |
569 | // or a tool resized itself | 574 | // or a tool resized itself |
570 | 575 | ||
571 | if (typeid(*subj) == typeid(ToolbarItem::ToolbarItemSubject)) { | 576 | if (typeid(*subj) == typeid(ToolbarItem::ToolbarItemSubject)) |
572 | rearrangeItems(); | 577 | rearrangeItems(); |
573 | } else { | 578 | else |
574 | reconfigure(); | 579 | reconfigure(); |
575 | } | 580 | |
576 | } | 581 | } |
577 | 582 | ||
578 | void Toolbar::setPlacement(Toolbar::Placement where) { | 583 | void Toolbar::setPlacement(Toolbar::Placement where) { |