Outline of labels/strings drawn to desktop

* Rather than duplicating the decision taking logic involving wheter or not to draw
the outline or glow in every replicant, update be_control_look to make it more
generic.
* The Monitoring of the background preferences is now only done in Tracker (where it
was already being done).
* Add a BControlLook::B_IGNORE_OUTLINE flag to avoid this new behaviour.
* Remove that said logic from ActivityMonitor and use be_control_look.
* Use the ignore flag in DeskCalc to avoid the outline in its case.

Should fix #7716, #7291.
This commit is contained in:
Philippe Saint-Pierre
2012-02-22 19:06:22 -05:00
parent f1553a0fc4
commit d63b75faf8
7 changed files with 136 additions and 142 deletions
+8
View File
@@ -70,6 +70,7 @@ public:
B_HOVER = 1 << 3,
B_DISABLED = 1 << 4,
B_DEFAULT_BUTTON = 1 << 5,
B_IGNORE_OUTLINE = 1 << 6,
B_BLEND_FRAME = 1 << 16
};
@@ -271,6 +272,8 @@ public:
const rgb_color& base, uint32 flags,
const BPoint& where);
void SetBackgroundInfo(BMessage msg);
protected:
void _DrawButtonFrame(BView* view, BRect& rect,
const BRect& updateRect,
@@ -362,6 +365,11 @@ protected:
const rgb_color& bevelTopColor,
const rgb_color& bevelRightColor,
const BGradientLinear& fillGradient);
private:
bool fCachedOutline;
int32 fCachedWorkspace;
BMessage fBackgroundInfo;
};
extern BControlLook* be_control_look;