策略抽离

This commit is contained in:
2026-08-02 14:20:27 +08:00
parent 6d000f43b4
commit 2df8959ed6
87 changed files with 2454 additions and 1390 deletions
+4 -5
View File
@@ -43,11 +43,11 @@ std::vector<double> Abs_Axis_Private::create_tick_vector(double tick_step, const
}
return result;
}
std::vector<std::string> Abs_Axis_Private::create_label_vector(const std::vector<double>& ticks, State_Role State_Role) {
std::vector<std::string> Abs_Axis_Private::create_label_vector(const std::vector<double>& ticks, Abs_Axis_Render_State* state) {
std::vector<std::string> result;
result.reserve(ticks.size());
for (double tick_coord : ticks)
result.push_back(get_tick_label(tick_coord, State_Role));
result.push_back(get_tick_label(tick_coord, state));
return result;
}
std::vector<double> Abs_Axis_Private::create_sub_tick_vector(int sub_tick_count, const std::vector<double>& ticks, const Range& range) {
@@ -164,9 +164,8 @@ double Abs_Axis_Private::pick_closest(double target, const std::vector<double>&
else
return target - *(it - 1) < *it - target ? *(it - 1) : *it;
}
std::string Abs_Axis_Private::get_tick_label(double tick, State_Role State_Role) {
auto render_state = reinterpret_cast<Abs_Axis_Render_State*>(state(State_Role));
return format_number(tick, Number_Format{.precision = render_state->label_precision});
std::string Abs_Axis_Private::get_tick_label(double tick, Abs_Axis_Render_State* state) {
return format_number(tick, Number_Format{.precision = state->label_precision});
}
double Abs_Axis::start_coord() {
return d()->edit_axis_state()->coord_start;