Initial textbox text color is foreground color

This commit is contained in:
Yousef Khadadeh 2026-06-04 20:31:16 +03:00
parent 7096d96518
commit 3486d534b2
3 changed files with 6 additions and 1 deletions

View file

@ -35,11 +35,14 @@ TextBoxCanvasComponent::TextBoxCanvasComponent():
skia::textlayout::TextStyle tStyle; skia::textlayout::TextStyle tStyle;
textBox->set_initial_text_style(tStyle); textBox->set_initial_text_style(tStyle);
textBox->set_initial_text_style_modifier(std::make_shared<ColorTextStyleModifier>(Vector4f{1.0f, 1.0f, 1.0f, 1.0f}));
textBox->set_initial_text_style_modifier(std::make_shared<SizeTextStyleModifier>(18.0f)); textBox->set_initial_text_style_modifier(std::make_shared<SizeTextStyleModifier>(18.0f));
textBox->set_initial_text_style_modifier(std::make_shared<FontFamiliesTextStyleModifier>(std::vector<SkString>{SkString{"Roboto"}})); textBox->set_initial_text_style_modifier(std::make_shared<FontFamiliesTextStyleModifier>(std::vector<SkString>{SkString{"Roboto"}}));
} }
void TextBoxCanvasComponent::set_initial_text_color(const Vector4f& initialColor) {
textBox->set_initial_text_style_modifier(std::make_shared<ColorTextStyleModifier>(initialColor));
}
CanvasComponentType TextBoxCanvasComponent::get_type() const { CanvasComponentType TextBoxCanvasComponent::get_type() const {
return CanvasComponentType::TEXTBOX; return CanvasComponentType::TEXTBOX;
} }

View file

@ -35,6 +35,7 @@ class TextBoxCanvasComponent : public CanvasComponent {
virtual void load_file(cereal::PortableBinaryInputArchive& a, VersionNumber version) override; virtual void load_file(cereal::PortableBinaryInputArchive& a, VersionNumber version) override;
std::unique_ptr<CanvasComponent> get_data_copy() const override; std::unique_ptr<CanvasComponent> get_data_copy() const override;
virtual void set_data_from(const CanvasComponent& other) override; virtual void set_data_from(const CanvasComponent& other) override;
void set_initial_text_color(const Vector4f& initialColor);
// User input data // User input data
struct Data { struct Data {

View file

@ -63,6 +63,7 @@ void TextBoxTool::input_mouse_button_on_canvas_callback(const InputManager::Mous
newTextBox.d.p1 = newTextBox.d.p2 = startAt; newTextBox.d.p1 = newTextBox.d.p2 = startAt;
newTextBox.d.p2 = ensure_points_have_distance(newTextBox.d.p1, newTextBox.d.p2, MINIMUM_DISTANCE_BETWEEN_BOUNDS); newTextBox.d.p2 = ensure_points_have_distance(newTextBox.d.p1, newTextBox.d.p2, MINIMUM_DISTANCE_BETWEEN_BOUNDS);
newTextBox.d.editing = true; newTextBox.d.editing = true;
newTextBox.set_initial_text_color(drawP.world.main.toolConfig.globalConf.foregroundColor);
newContainer->coords = drawP.world.drawData.cam.c; newContainer->coords = drawP.world.drawData.cam.c;
newContainer->coords.scale_about_double(drawP.world.drawData.cam.c.from_space(startAt), 1.0 / drawP.world.main.get_scale_and_density_factor_gui()); newContainer->coords.scale_about_double(drawP.world.drawData.cam.c.from_space(startAt), 1.0 / drawP.world.main.get_scale_and_density_factor_gui());
objInfoBeingEdited = drawP.layerMan.add_component_to_layer_being_edited(newContainer); objInfoBeingEdited = drawP.layerMan.add_component_to_layer_being_edited(newContainer);