mirror of https://github.com/stella-emu/stella.git
removed some superfluous redraws
This commit is contained in:
parent
7433e14cec
commit
cec27bb899
|
@ -242,15 +242,15 @@ void DataGridWidget::setRange(int lower, int upper)
|
|||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void DataGridWidget::handleMouseEntered()
|
||||
{
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void DataGridWidget::handleMouseLeft()
|
||||
{
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
|
|
@ -285,15 +285,15 @@ void RomListWidget::handleMouseWheel(int x, int y, int direction)
|
|||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void RomListWidget::handleMouseEntered()
|
||||
{
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void RomListWidget::handleMouseLeft()
|
||||
{
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
|
|
@ -181,15 +181,15 @@ void TiaZoomWidget::handleMouseMoved(int x, int y)
|
|||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void TiaZoomWidget::handleMouseEntered()
|
||||
{
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void TiaZoomWidget::handleMouseLeft()
|
||||
{
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
myMouseMoving = false;
|
||||
}
|
||||
|
||||
|
|
|
@ -43,15 +43,15 @@ ToggleWidget::ToggleWidget(GuiObject* boss, const GUI::Font& font,
|
|||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void ToggleWidget::handleMouseEntered()
|
||||
{
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void ToggleWidget::handleMouseLeft()
|
||||
{
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
|
|
@ -438,19 +438,6 @@ void Dialog::drawDialog()
|
|||
clearDirty();
|
||||
}
|
||||
|
||||
Widget* w = _firstWidget;
|
||||
|
||||
// Draw all children
|
||||
w = _firstWidget;
|
||||
while(w)
|
||||
{
|
||||
|
||||
// only redraw changed widgets
|
||||
if(w->needsRedraw())
|
||||
w->draw();
|
||||
w = w->_next;
|
||||
}
|
||||
|
||||
// Draw outlines for focused widgets
|
||||
// Don't change focus, since this will trigger lost and received
|
||||
// focus events
|
||||
|
@ -458,8 +445,20 @@ void Dialog::drawDialog()
|
|||
{
|
||||
_focusedWidget = Widget::setFocusForChain(this, getFocusList(),
|
||||
_focusedWidget, 0, false);
|
||||
if(_focusedWidget)
|
||||
_focusedWidget->draw(); // make sure the highlight color is drawn initially
|
||||
// if(_focusedWidget)
|
||||
// _focusedWidget->draw(); // make sure the highlight color is drawn initially
|
||||
}
|
||||
|
||||
Widget* w = _firstWidget;
|
||||
|
||||
// Draw all children
|
||||
w = _firstWidget;
|
||||
while(w)
|
||||
{
|
||||
// only redraw changed widgets
|
||||
if(w->needsRedraw())
|
||||
w->draw();
|
||||
w = w->_next;
|
||||
}
|
||||
}
|
||||
|
||||
|
|
|
@ -51,15 +51,15 @@ void EditTextWidget::setText(const string& str, bool changed)
|
|||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void EditTextWidget::handleMouseEntered()
|
||||
{
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled() && isEditable())
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void EditTextWidget::handleMouseLeft()
|
||||
{
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled() && isEditable())
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
|
|
@ -97,8 +97,22 @@ class GuiObject : public CommandReceiver
|
|||
virtual bool isChainDirty() const = 0;
|
||||
virtual bool needsRedraw() { return isDirty() || isChainDirty(); };
|
||||
|
||||
void setFlags(uInt32 flags) { _flags |= flags; setDirty(); }
|
||||
void clearFlags(uInt32 flags) { _flags &= ~flags; setDirty(); }
|
||||
void setFlags(uInt32 flags)
|
||||
{
|
||||
uInt32 oldFlags = _flags;
|
||||
|
||||
_flags |= flags;
|
||||
if(oldFlags != _flags)
|
||||
setDirty();
|
||||
}
|
||||
void clearFlags(uInt32 flags)
|
||||
{
|
||||
uInt32 oldFlags = _flags;
|
||||
|
||||
_flags &= ~flags;
|
||||
if(oldFlags != _flags)
|
||||
setDirty();
|
||||
}
|
||||
uInt32 getFlags() const { return _flags; }
|
||||
|
||||
bool hasBorder() const { return _flags & FLAG_BORDER; }
|
||||
|
|
|
@ -161,15 +161,15 @@ void PopUpWidget::handleMouseWheel(int x, int y, int direction)
|
|||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void PopUpWidget::handleMouseEntered()
|
||||
{
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void PopUpWidget::handleMouseLeft()
|
||||
{
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
|
|
@ -243,16 +243,16 @@ void ScrollBarWidget::checkBounds(int old_pos)
|
|||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void ScrollBarWidget::handleMouseEntered()
|
||||
{
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void ScrollBarWidget::handleMouseLeft()
|
||||
{
|
||||
_part = Part::None;
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
|
|
@ -53,15 +53,15 @@ void StringListWidget::setList(const StringList& list)
|
|||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void StringListWidget::handleMouseEntered()
|
||||
{
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void StringListWidget::handleMouseLeft()
|
||||
{
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
if(isEnabled())
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
|
|
@ -216,15 +216,15 @@ void TabWidget::handleMouseDown(int x, int y, MouseButton b, int clickCount)
|
|||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void TabWidget::handleMouseEntered()
|
||||
{
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
//if(isEnabled())
|
||||
// setFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void TabWidget::handleMouseLeft()
|
||||
{
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
setDirty();
|
||||
//if(isEnabled())
|
||||
// clearFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
|
|
@ -157,6 +157,7 @@ void Widget::draw()
|
|||
_x = oldX;
|
||||
_y = oldY;
|
||||
}
|
||||
clearDirty();
|
||||
|
||||
// Draw all children
|
||||
Widget* w = _firstWidget;
|
||||
|
@ -166,7 +167,6 @@ void Widget::draw()
|
|||
w->draw();
|
||||
w = w->_next;
|
||||
}
|
||||
clearDirty();
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
@ -448,13 +448,15 @@ ButtonWidget::ButtonWidget(GuiObject* boss, const GUI::Font& font,
|
|||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void ButtonWidget::handleMouseEntered()
|
||||
{
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
if(isEnabled())
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void ButtonWidget::handleMouseLeft()
|
||||
{
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
if(isEnabled())
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
@ -558,13 +560,15 @@ CheckboxWidget::CheckboxWidget(GuiObject* boss, const GUI::Font& font,
|
|||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void CheckboxWidget::handleMouseEntered()
|
||||
{
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
if(isEnabled())
|
||||
setFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
void CheckboxWidget::handleMouseLeft()
|
||||
{
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
if(isEnabled())
|
||||
clearFlags(Widget::FLAG_HILITED);
|
||||
}
|
||||
|
||||
// - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
|
||||
|
|
Loading…
Reference in New Issue