mirror of
https://github.com/RGBCube/serenity
synced 2025-07-28 14:07:45 +00:00
Meta+Userland: Pass Gfx::Color by value
Gfx::Color is always 4 bytes (it's just a wrapper over u32) it's less work just to pass the color directly. This also updates IPCCompiler to prevent from generating Gfx::Color const &, which makes replacement easier.
This commit is contained in:
parent
f76c7f3788
commit
bbc149ebb9
28 changed files with 65 additions and 54 deletions
|
@ -32,7 +32,7 @@ void Card::paint(GUI::Painter& painter) const
|
|||
painter.blit(position(), bitmap, bitmap->rect());
|
||||
}
|
||||
|
||||
void Card::clear(GUI::Painter& painter, Color const& background_color) const
|
||||
void Card::clear(GUI::Painter& painter, Color background_color) const
|
||||
{
|
||||
painter.fill_rect({ old_position(), { width, height } }, background_color);
|
||||
}
|
||||
|
@ -43,7 +43,7 @@ void Card::save_old_position()
|
|||
m_old_position_valid = true;
|
||||
}
|
||||
|
||||
void Card::clear_and_paint(GUI::Painter& painter, Color const& background_color)
|
||||
void Card::clear_and_paint(GUI::Painter& painter, Color background_color)
|
||||
{
|
||||
if (is_old_position_valid())
|
||||
clear(painter, background_color);
|
||||
|
|
|
@ -108,8 +108,8 @@ public:
|
|||
void save_old_position();
|
||||
|
||||
void paint(GUI::Painter&) const;
|
||||
void clear(GUI::Painter&, Color const& background_color) const;
|
||||
void clear_and_paint(GUI::Painter& painter, Color const& background_color);
|
||||
void clear(GUI::Painter&, Color background_color) const;
|
||||
void clear_and_paint(GUI::Painter& painter, Color background_color);
|
||||
|
||||
private:
|
||||
Card(Suit, Rank);
|
||||
|
|
|
@ -121,7 +121,7 @@ Gfx::Color CardGame::background_color() const
|
|||
return palette().color(background_role());
|
||||
}
|
||||
|
||||
void CardGame::set_background_color(Gfx::Color const& color)
|
||||
void CardGame::set_background_color(Gfx::Color color)
|
||||
{
|
||||
auto new_palette = palette();
|
||||
new_palette.set_color(Gfx::ColorRole::Background, color);
|
||||
|
|
|
@ -19,7 +19,7 @@ public:
|
|||
virtual ~CardGame() = default;
|
||||
|
||||
Gfx::Color background_color() const;
|
||||
void set_background_color(Gfx::Color const&);
|
||||
void set_background_color(Gfx::Color);
|
||||
|
||||
NonnullRefPtrVector<CardStack>& stacks() { return m_stacks; }
|
||||
NonnullRefPtrVector<CardStack> const& stacks() const { return m_stacks; }
|
||||
|
|
|
@ -32,7 +32,7 @@ void CardStack::clear()
|
|||
m_stack_positions.clear();
|
||||
}
|
||||
|
||||
void CardStack::paint(GUI::Painter& painter, Gfx::Color const& background_color)
|
||||
void CardStack::paint(GUI::Painter& painter, Gfx::Color background_color)
|
||||
{
|
||||
auto draw_background_if_empty = [&]() {
|
||||
size_t number_of_moving_cards = 0;
|
||||
|
|
|
@ -50,7 +50,7 @@ public:
|
|||
|
||||
bool is_allowed_to_push(Card const&, size_t stack_size = 1, MovementRule movement_rule = MovementRule::Alternating) const;
|
||||
void add_all_grabbed_cards(Gfx::IntPoint const& click_location, NonnullRefPtrVector<Card>& grabbed, MovementRule movement_rule = MovementRule::Alternating);
|
||||
void paint(GUI::Painter&, Gfx::Color const& background_color);
|
||||
void paint(GUI::Painter&, Gfx::Color background_color);
|
||||
void clear();
|
||||
|
||||
private:
|
||||
|
|
|
@ -316,7 +316,7 @@ Optional<Color> Color::from_string(StringView string)
|
|||
return Color(r.value(), g.value(), b.value(), a.value());
|
||||
}
|
||||
|
||||
Color Color::mixed_with(Color const& other, float weight) const
|
||||
Color Color::mixed_with(Color other, float weight) const
|
||||
{
|
||||
if (alpha() == other.alpha() || with_alpha(0) == other.with_alpha(0)) {
|
||||
return Gfx::Color {
|
||||
|
@ -382,7 +382,7 @@ ErrorOr<void> IPC::decode(Decoder& decoder, Color& color)
|
|||
return {};
|
||||
}
|
||||
|
||||
ErrorOr<void> AK::Formatter<Gfx::Color>::format(FormatBuilder& builder, Gfx::Color const& value)
|
||||
ErrorOr<void> AK::Formatter<Gfx::Color>::format(FormatBuilder& builder, Gfx::Color value)
|
||||
{
|
||||
return Formatter<StringView>::format(builder, value.to_deprecated_string());
|
||||
}
|
||||
|
|
|
@ -236,9 +236,9 @@ public:
|
|||
#endif
|
||||
}
|
||||
|
||||
Color mixed_with(Color const& other, float weight) const;
|
||||
Color mixed_with(Color other, float weight) const;
|
||||
|
||||
Color interpolate(Color const& other, float weight) const noexcept
|
||||
Color interpolate(Color other, float weight) const noexcept
|
||||
{
|
||||
u8 r = red() + round_to<u8>(static_cast<float>(other.red() - red()) * weight);
|
||||
u8 g = green() + round_to<u8>(static_cast<float>(other.green() - green()) * weight);
|
||||
|
@ -247,7 +247,7 @@ public:
|
|||
return Color(r, g, b, a);
|
||||
}
|
||||
|
||||
constexpr Color multiply(Color const& other) const
|
||||
constexpr Color multiply(Color other) const
|
||||
{
|
||||
return Color(
|
||||
red() * other.red() / 255,
|
||||
|
@ -256,7 +256,7 @@ public:
|
|||
alpha() * other.alpha() / 255);
|
||||
}
|
||||
|
||||
constexpr float distance_squared_to(Color const& other) const
|
||||
constexpr float distance_squared_to(Color other) const
|
||||
{
|
||||
int delta_red = other.red() - red();
|
||||
int delta_green = other.green() - green();
|
||||
|
@ -271,7 +271,7 @@ public:
|
|||
return (red() * 0.2126f + green() * 0.7152f + blue() * 0.0722f);
|
||||
}
|
||||
|
||||
constexpr float contrast_ratio(Color const& other)
|
||||
constexpr float contrast_ratio(Color other)
|
||||
{
|
||||
auto l1 = luminosity();
|
||||
auto l2 = other.luminosity();
|
||||
|
@ -340,14 +340,14 @@ public:
|
|||
return Color(~red(), ~green(), ~blue(), alpha());
|
||||
}
|
||||
|
||||
constexpr Color xored(Color const& other) const
|
||||
constexpr Color xored(Color other) const
|
||||
{
|
||||
return Color(((other.m_value ^ m_value) & 0x00ffffff) | (m_value & 0xff000000));
|
||||
}
|
||||
|
||||
constexpr ARGB32 value() const { return m_value; }
|
||||
|
||||
constexpr bool operator==(Color const& other) const
|
||||
constexpr bool operator==(Color other) const
|
||||
{
|
||||
return m_value == other.m_value;
|
||||
}
|
||||
|
@ -566,7 +566,7 @@ namespace AK {
|
|||
|
||||
template<>
|
||||
struct Formatter<Gfx::Color> : public Formatter<StringView> {
|
||||
ErrorOr<void> format(FormatBuilder&, Gfx::Color const&);
|
||||
ErrorOr<void> format(FormatBuilder&, Gfx::Color);
|
||||
};
|
||||
|
||||
}
|
||||
|
|
|
@ -1856,7 +1856,7 @@ ErrorOr<NonnullRefPtr<Bitmap>> Painter::get_region_bitmap(IntRect const& region,
|
|||
return m_target->cropped(bitmap_region, format);
|
||||
}
|
||||
|
||||
ALWAYS_INLINE void Painter::set_physical_pixel_with_draw_op(u32& pixel, Color const& color)
|
||||
ALWAYS_INLINE void Painter::set_physical_pixel_with_draw_op(u32& pixel, Color color)
|
||||
{
|
||||
// This always sets a single physical pixel, independent of scale().
|
||||
// This should only be called by routines that already handle scale.
|
||||
|
@ -1874,7 +1874,7 @@ ALWAYS_INLINE void Painter::set_physical_pixel_with_draw_op(u32& pixel, Color co
|
|||
}
|
||||
}
|
||||
|
||||
ALWAYS_INLINE void Painter::fill_physical_scanline_with_draw_op(int y, int x, int width, Color const& color)
|
||||
ALWAYS_INLINE void Painter::fill_physical_scanline_with_draw_op(int y, int x, int width, Color color)
|
||||
{
|
||||
// This always draws a single physical scanline, independent of scale().
|
||||
// This should only be called by routines that already handle scale.
|
||||
|
|
|
@ -163,8 +163,8 @@ public:
|
|||
protected:
|
||||
IntRect to_physical(IntRect const& r) const { return r.translated(translation()) * scale(); }
|
||||
IntPoint to_physical(IntPoint const& p) const { return p.translated(translation()) * scale(); }
|
||||
void set_physical_pixel_with_draw_op(u32& pixel, Color const&);
|
||||
void fill_physical_scanline_with_draw_op(int y, int x, int width, Color const& color);
|
||||
void set_physical_pixel_with_draw_op(u32& pixel, Color);
|
||||
void fill_physical_scanline_with_draw_op(int y, int x, int width, Color color);
|
||||
void fill_rect_with_draw_op(IntRect const&, Color);
|
||||
void blit_with_opacity(IntPoint const&, Gfx::Bitmap const&, IntRect const& src_rect, float opacity, bool apply_alpha = true);
|
||||
void draw_physical_pixel(IntPoint const&, Color, int thickness = 1);
|
||||
|
|
|
@ -327,13 +327,13 @@ public:
|
|||
void set_font_size(float font_size) { m_inherited.font_size = font_size; }
|
||||
void set_font_weight(int font_weight) { m_inherited.font_weight = font_weight; }
|
||||
void set_font_variant(CSS::FontVariant font_variant) { m_inherited.font_variant = font_variant; }
|
||||
void set_color(Color const& color) { m_inherited.color = color; }
|
||||
void set_color(Color color) { m_inherited.color = color; }
|
||||
void set_clip(CSS::Clip const& clip) { m_noninherited.clip = clip; }
|
||||
void set_content(ContentData const& content) { m_noninherited.content = content; }
|
||||
void set_cursor(CSS::Cursor cursor) { m_inherited.cursor = cursor; }
|
||||
void set_image_rendering(CSS::ImageRendering value) { m_inherited.image_rendering = value; }
|
||||
void set_pointer_events(CSS::PointerEvents value) { m_inherited.pointer_events = value; }
|
||||
void set_background_color(Color const& color) { m_noninherited.background_color = color; }
|
||||
void set_background_color(Color color) { m_noninherited.background_color = color; }
|
||||
void set_background_layers(Vector<BackgroundLayerData>&& layers) { m_noninherited.background_layers = move(layers); }
|
||||
void set_float(CSS::Float value) { m_noninherited.float_ = value; }
|
||||
void set_clear(CSS::Clear value) { m_noninherited.clear = value; }
|
||||
|
|
|
@ -1642,13 +1642,13 @@ private:
|
|||
class ShadowStyleValue final : public StyleValue {
|
||||
public:
|
||||
static NonnullRefPtr<ShadowStyleValue>
|
||||
create(Color const& color, Length const& offset_x, Length const& offset_y, Length const& blur_radius, Length const& spread_distance, ShadowPlacement placement)
|
||||
create(Color color, Length const& offset_x, Length const& offset_y, Length const& blur_radius, Length const& spread_distance, ShadowPlacement placement)
|
||||
{
|
||||
return adopt_ref(*new ShadowStyleValue(color, offset_x, offset_y, blur_radius, spread_distance, placement));
|
||||
}
|
||||
virtual ~ShadowStyleValue() override = default;
|
||||
|
||||
Color const& color() const { return m_color; }
|
||||
Color color() const { return m_color; }
|
||||
Length const& offset_x() const { return m_offset_x; }
|
||||
Length const& offset_y() const { return m_offset_y; }
|
||||
Length const& blur_radius() const { return m_blur_radius; }
|
||||
|
@ -1659,7 +1659,7 @@ public:
|
|||
virtual bool equals(StyleValue const& other) const override;
|
||||
|
||||
private:
|
||||
explicit ShadowStyleValue(Color const& color, Length const& offset_x, Length const& offset_y, Length const& blur_radius, Length const& spread_distance, ShadowPlacement placement)
|
||||
explicit ShadowStyleValue(Color color, Length const& offset_x, Length const& offset_y, Length const& blur_radius, Length const& spread_distance, ShadowPlacement placement)
|
||||
: StyleValue(Type::Shadow)
|
||||
, m_color(color)
|
||||
, m_offset_x(offset_x)
|
||||
|
|
|
@ -20,8 +20,8 @@ public:
|
|||
m_states.append(State());
|
||||
}
|
||||
|
||||
Gfx::Color const& fill_color() const { return state().fill_color; }
|
||||
Gfx::Color const& stroke_color() const { return state().stroke_color; }
|
||||
Gfx::Color fill_color() const { return state().fill_color; }
|
||||
Gfx::Color stroke_color() const { return state().stroke_color; }
|
||||
float stroke_width() const { return state().stroke_width; }
|
||||
|
||||
void set_fill_color(Gfx::Color color) { state().fill_color = color; }
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue