双缓冲先加上
This commit is contained in:
@@ -172,38 +172,38 @@ inline auto time_axis_fields() {
|
||||
inline auto hover_fields() {
|
||||
using T = Gallery_Hover_Properties;
|
||||
return std::tuple{
|
||||
boolean_property<&T::hover_enabled>("hover_enabled", "悬浮信息", "Hover_Tooltip_Mixin::set_use_hover_info"),
|
||||
number_property<&T::hover_font_size>("hover_font_size", "悬浮字体", "Hover_Tooltip_Mixin::set_hover_tooltip_font"),
|
||||
color_property<&T::hover_text_color>("hover_text_color", "悬浮文字", "Hover_Tooltip_Mixin::set_tooltip_text_pen"),
|
||||
color_property<&T::hover_background>("hover_background", "悬浮背景", "Hover_Tooltip_Mixin::set_hover_tooltip_background_brush")
|
||||
boolean_property<&T::hover_enabled>("hover_enabled", "悬浮信息", "Plottable_State::set<&Properties::tooltip_enabled>"),
|
||||
number_property<&T::hover_font_size>("hover_font_size", "悬浮字体", "Plottable_State::set<&Properties::tooltip_font>"),
|
||||
color_property<&T::hover_text_color>("hover_text_color", "悬浮文字", "Plottable_State::set<&Properties::tooltip_text_pen>"),
|
||||
color_property<&T::hover_background>("hover_background", "悬浮背景", "Plottable_State::set<&Properties::tooltip_background_brush>")
|
||||
};
|
||||
}
|
||||
inline auto spectrum_fields() {
|
||||
using T = Gallery_Spectrum_Properties;
|
||||
return std::tuple{
|
||||
number_property<&T::frequency_point_size>("frequency_point_size", "频率点数", "Spectrum::set_frequency_point_size"),
|
||||
number_property<&T::frequency_origin>("frequency_origin", "数据频率起点", "Spectrum::set_frequency_range"),
|
||||
number_property<&T::frequency_target>("frequency_target", "数据频率终点", "Spectrum::set_frequency_range"),
|
||||
number_property<&T::center_frequency>("center_frequency", "中心频率", "Spectrum::set_center_frequency"),
|
||||
number_property<&T::sweep_origin>("sweep_origin", "扫频区起点", "Spectrum::set_sweep_frequency_range"),
|
||||
number_property<&T::sweep_target>("sweep_target", "扫频区终点", "Spectrum::set_sweep_frequency_range"),
|
||||
boolean_property<&T::max_hold_visible>("max_hold_visible", "最大保持线", "Spectrum::set_max_hold_visible"),
|
||||
boolean_property<&T::min_hold_visible>("min_hold_visible", "最小保持线", "Spectrum::set_min_hold_visible"),
|
||||
boolean_property<&T::max_marker_visible>("max_marker_visible", "峰值 Marker", "Spectrum::set_max_marker_visible"),
|
||||
boolean_property<&T::use_min_marker>("use_min_marker", "最小值 Marker", "Spectrum::set_use_min_marker"),
|
||||
boolean_property<&T::sweep_region_visible>("sweep_region_visible", "扫频区域", "Spectrum::set_sweep_region_visible"),
|
||||
boolean_property<&T::visible_range_only>("visible_range_only", "仅绘制可见范围", "Spectrum::set_visible_range_only"),
|
||||
select_property<&T::line_interpolation>("line_interpolation", "线插值模式", "Spectrum::set_interpolation_mode"),
|
||||
color_property<&T::max_brush>("max_brush", "最大保持填充", "Spectrum::set_max_brush"),
|
||||
color_property<&T::current_brush>("current_brush", "当前曲线填充", "Spectrum::set_current_brush"),
|
||||
color_property<&T::min_brush>("min_brush", "最小保持填充", "Spectrum::set_min_brush"),
|
||||
color_property<&T::max_pen>("max_pen", "最大保持线颜色", "Spectrum::set_max_pen"),
|
||||
color_property<&T::current_pen>("current_pen", "当前曲线颜色", "Spectrum::set_current_pen"),
|
||||
color_property<&T::min_pen>("min_pen", "最小保持线颜色", "Spectrum::set_min_pen"),
|
||||
color_property<&T::selected_marker_pen>("selected_marker_pen", "选中 Marker", "Spectrum::set_selected_marker_pen"),
|
||||
color_property<&T::marker_pen>("marker_pen", "Marker 颜色", "Spectrum::set_marker_pen"),
|
||||
color_property<&T::middle_frequency_pen>("middle_frequency_pen", "中心频率线", "Spectrum::set_middle_frequency_pen"),
|
||||
color_property<&T::sweep_region_brush>("sweep_region_brush", "扫频区填充", "Spectrum::set_sweep_region_brush")
|
||||
number_property<&T::frequency_point_size>("frequency_point_size", "频率点数", "Spectrum::set<&Properties::frequency_point_size>"),
|
||||
number_property<&T::frequency_origin>("frequency_origin", "数据频率起点", "Spectrum::set<&Properties::frequency_range>"),
|
||||
number_property<&T::frequency_target>("frequency_target", "数据频率终点", "Spectrum::set<&Properties::frequency_range>"),
|
||||
number_property<&T::center_frequency>("center_frequency", "中心频率", "Spectrum::set<&Properties::center_frequency>"),
|
||||
number_property<&T::sweep_origin>("sweep_origin", "扫频区起点", "Spectrum::set<&Properties::sweep_frequency_range>"),
|
||||
number_property<&T::sweep_target>("sweep_target", "扫频区终点", "Spectrum::set<&Properties::sweep_frequency_range>"),
|
||||
boolean_property<&T::max_hold_visible>("max_hold_visible", "最大保持线", "Spectrum::set<&Properties::max_hold_visible>"),
|
||||
boolean_property<&T::min_hold_visible>("min_hold_visible", "最小保持线", "Spectrum::set<&Properties::min_hold_visible>"),
|
||||
boolean_property<&T::max_marker_visible>("max_marker_visible", "峰值 Marker", "Spectrum::set<&Properties::max_marker_visible>"),
|
||||
boolean_property<&T::use_min_marker>("use_min_marker", "最小值 Marker", "Spectrum::set<&Properties::use_min_marker>"),
|
||||
boolean_property<&T::sweep_region_visible>("sweep_region_visible", "扫频区域", "Spectrum::set<&Properties::sweep_region_visible>"),
|
||||
boolean_property<&T::visible_range_only>("visible_range_only", "仅绘制可见范围", "Spectrum::set<&Properties::visible_range_only>"),
|
||||
select_property<&T::line_interpolation>("line_interpolation", "线插值模式", "Spectrum::set<&Properties::interpolation_mode>"),
|
||||
color_property<&T::max_brush>("max_brush", "最大保持填充", "Spectrum::set<&Properties::max_brush>"),
|
||||
color_property<&T::current_brush>("current_brush", "当前曲线填充", "Spectrum::set<&Properties::current_brush>"),
|
||||
color_property<&T::min_brush>("min_brush", "最小保持填充", "Spectrum::set<&Properties::min_brush>"),
|
||||
color_property<&T::max_pen>("max_pen", "最大保持线颜色", "Spectrum::set<&Properties::max_pen>"),
|
||||
color_property<&T::current_pen>("current_pen", "当前曲线颜色", "Spectrum::set<&Properties::current_pen>"),
|
||||
color_property<&T::min_pen>("min_pen", "最小保持线颜色", "Spectrum::set<&Properties::min_pen>"),
|
||||
color_property<&T::selected_marker_pen>("selected_marker_pen", "选中 Marker", "Spectrum::set<&Properties::selected_marker_pen>"),
|
||||
color_property<&T::marker_pen>("marker_pen", "Marker 颜色", "Spectrum::set<&Properties::marker_pen>"),
|
||||
color_property<&T::middle_frequency_pen>("middle_frequency_pen", "中心频率线", "Spectrum::set<&Properties::middle_frequency_pen>"),
|
||||
color_property<&T::sweep_region_brush>("sweep_region_brush", "扫频区填充", "Spectrum::set<&Properties::sweep_region_brush>")
|
||||
};
|
||||
}
|
||||
template <class T>
|
||||
@@ -225,10 +225,10 @@ struct Property_Fields<Gallery_Selection_Overlay_Properties> {
|
||||
static auto get() {
|
||||
using T = Gallery_Selection_Overlay_Properties;
|
||||
return std::tuple_cat(Property_Fields<Gallery_Spectrum_Properties>::get(), std::tuple{
|
||||
number_property<&T::selection_font_size>("selection_font_size", "框选标签字体", "Selection_Rectangle_Overlay::set_label_font"),
|
||||
color_property<&T::selection_label_pen>("selection_label_pen", "框选标签颜色", "Selection_Rectangle_Overlay::set_label_pen"),
|
||||
color_property<&T::selection_brush>("selection_brush", "框选填充", "Selection_Rectangle_Overlay::set_selection_brush"),
|
||||
color_property<&T::selection_border>("selection_border", "框选边框", "Selection_Rectangle_Overlay::set_selection_border_pen")
|
||||
number_property<&T::selection_font_size>("selection_font_size", "框选标签字体", "Selection_Rectangle_Overlay::set<&Properties::label_font>"),
|
||||
color_property<&T::selection_label_pen>("selection_label_pen", "框选标签颜色", "Selection_Rectangle_Overlay::set<&Properties::label_pen>"),
|
||||
color_property<&T::selection_brush>("selection_brush", "框选填充", "Selection_Rectangle_Overlay::set<&Properties::selection_brush>"),
|
||||
color_property<&T::selection_border>("selection_border", "框选边框", "Selection_Rectangle_Overlay::set<&Properties::selection_border_pen>")
|
||||
});
|
||||
}
|
||||
};
|
||||
@@ -237,14 +237,14 @@ struct Property_Fields<Gallery_Waterfall_Properties> {
|
||||
static auto get() {
|
||||
using T = Gallery_Waterfall_Properties;
|
||||
return std::tuple_cat(common_fields(), axis_fields(), time_axis_fields(), std::tuple{
|
||||
number_property<&T::frequency_origin>("frequency_origin", "频率起点", "Waterfall::set_frequency_range"),
|
||||
number_property<&T::frequency_target>("frequency_target", "频率终点", "Waterfall::set_frequency_range"),
|
||||
number_property<&T::power_origin>("power_origin", "功率起点", "Waterfall::set_power_range"),
|
||||
number_property<&T::power_target>("power_target", "功率终点", "Waterfall::set_power_range"),
|
||||
number_property<&T::frequency_bin_count>("frequency_bin_count", "频率 Bin", "Waterfall::set_frequency_bin_count"),
|
||||
boolean_property<&T::visible_range_only>("visible_range_only", "仅绘制可见范围", "Waterfall::set_visible_range_only"),
|
||||
select_property<&T::image_interpolation>("image_interpolation", "图像插值(三模式)", "Waterfall::set_interpolation_mode"),
|
||||
select_property<&T::color_map>("color_map", "颜色映射(重建 Builder)", "Waterfall::Builder::set_color_map / Color_Map::set_colors")
|
||||
number_property<&T::frequency_origin>("frequency_origin", "频率起点", "Waterfall::set<&Properties::frequency_range>"),
|
||||
number_property<&T::frequency_target>("frequency_target", "频率终点", "Waterfall::set<&Properties::frequency_range>"),
|
||||
number_property<&T::power_origin>("power_origin", "功率起点", "Waterfall::set<&Properties::power_range>"),
|
||||
number_property<&T::power_target>("power_target", "功率终点", "Waterfall::set<&Properties::power_range>"),
|
||||
number_property<&T::frequency_bin_count>("frequency_bin_count", "频率 Bin", "Waterfall::set<&Properties::frequency_bin_count>"),
|
||||
boolean_property<&T::visible_range_only>("visible_range_only", "仅绘制可见范围", "Waterfall::set<&Properties::visible_range_only>"),
|
||||
select_property<&T::image_interpolation>("image_interpolation", "图像插值(三模式)", "Waterfall::set<&Properties::interpolation_mode>"),
|
||||
select_property<&T::color_map>("color_map", "颜色映射", "Waterfall::set<&Properties::color_map>")
|
||||
}, hover_fields());
|
||||
}
|
||||
};
|
||||
@@ -253,15 +253,15 @@ struct Property_Fields<Gallery_Afterglow_Properties> {
|
||||
static auto get() {
|
||||
using T = Gallery_Afterglow_Properties;
|
||||
return std::tuple_cat(common_fields(), axis_fields(), std::tuple{
|
||||
number_property<&T::frequency_origin>("frequency_origin", "频率起点", "Afterglow::set_frequency_range"),
|
||||
number_property<&T::frequency_target>("frequency_target", "频率终点", "Afterglow::set_frequency_range"),
|
||||
number_property<&T::power_origin>("power_origin", "功率起点", "Afterglow::set_power_range"),
|
||||
number_property<&T::power_target>("power_target", "功率终点", "Afterglow::set_power_range"),
|
||||
number_property<&T::frequency_point_size>("frequency_point_size", "频率格点", "Afterglow::set_frequency_point_size"),
|
||||
number_property<&T::power_point_size>("power_point_size", "功率格点", "Afterglow::set_power_point_size"),
|
||||
boolean_property<&T::interpolate_power>("interpolate_power", "功率 Bin 插值", "Afterglow::set_interpolate"),
|
||||
number_property<&T::attenuation_rate>("attenuation_rate", "衰减率", "Afterglow::set_attenuation_rate"),
|
||||
select_property<&T::color_map>("color_map", "颜色映射(重建 Builder)", "Afterglow::Builder::set_color_map / Color_Map::set_colors")
|
||||
number_property<&T::frequency_origin>("frequency_origin", "频率起点", "Afterglow::set<&Properties::frequency_range>"),
|
||||
number_property<&T::frequency_target>("frequency_target", "频率终点", "Afterglow::set<&Properties::frequency_range>"),
|
||||
number_property<&T::power_origin>("power_origin", "功率起点", "Afterglow::set<&Properties::power_range>"),
|
||||
number_property<&T::power_target>("power_target", "功率终点", "Afterglow::set<&Properties::power_range>"),
|
||||
number_property<&T::frequency_point_size>("frequency_point_size", "频率格点", "Afterglow::set<&Properties::frequency_point_size>"),
|
||||
number_property<&T::power_point_size>("power_point_size", "功率格点", "Afterglow::set<&Properties::power_point_size>"),
|
||||
boolean_property<&T::interpolate_power>("interpolate_power", "功率 Bin 插值", "Afterglow::set<&Properties::interpolate>"),
|
||||
number_property<&T::attenuation_rate>("attenuation_rate", "衰减率", "Afterglow::set<&Properties::attenuation_rate>"),
|
||||
select_property<&T::color_map>("color_map", "颜色映射", "Afterglow::set<&Properties::color_map>")
|
||||
});
|
||||
}
|
||||
};
|
||||
@@ -270,14 +270,14 @@ struct Property_Fields<Gallery_Sweep_Spectrum_Properties> {
|
||||
static auto get() {
|
||||
using T = Gallery_Sweep_Spectrum_Properties;
|
||||
return std::tuple_cat(common_fields(), axis_fields(), std::tuple{
|
||||
number_property<&T::frequency_origin>("frequency_origin", "扫频起点", "Sweep_Spectrum::set_frequency_range"),
|
||||
number_property<&T::frequency_target>("frequency_target", "扫频终点", "Sweep_Spectrum::set_frequency_range"),
|
||||
number_property<&T::bins_per_block>("bins_per_block", "每块 Bin", "Sweep_Spectrum::set_bins_per_block"),
|
||||
number_property<&T::block_count>("block_count", "块数量", "Sweep_Spectrum::set_block_count"),
|
||||
color_property<&T::sweep_pen>("sweep_pen", "扫频曲线", "Sweep_Spectrum::set_pen"),
|
||||
color_property<&T::current_frequency_pen>("current_frequency_pen", "当前频率游标", "Sweep_Spectrum::set_cur_frequency_pen"),
|
||||
boolean_property<&T::visible_range_only>("visible_range_only", "仅绘制可见范围", "Sweep_Spectrum::set_visible_range_only"),
|
||||
select_property<&T::line_interpolation>("line_interpolation", "线插值模式", "Sweep_Spectrum::set_interpolation_mode")
|
||||
number_property<&T::frequency_origin>("frequency_origin", "扫频起点", "Sweep_Spectrum::set<&Properties::frequency_range>"),
|
||||
number_property<&T::frequency_target>("frequency_target", "扫频终点", "Sweep_Spectrum::set<&Properties::frequency_range>"),
|
||||
number_property<&T::bins_per_block>("bins_per_block", "每块 Bin", "Sweep_Spectrum::set<&Properties::bins_per_block>"),
|
||||
number_property<&T::block_count>("block_count", "块数量", "Sweep_Spectrum::set<&Properties::block_count>"),
|
||||
color_property<&T::sweep_pen>("sweep_pen", "扫频曲线", "Sweep_Spectrum::set<&Properties::pen>"),
|
||||
color_property<&T::current_frequency_pen>("current_frequency_pen", "当前频率游标", "Sweep_Spectrum::set<&Properties::current_frequency_pen>"),
|
||||
boolean_property<&T::visible_range_only>("visible_range_only", "仅绘制可见范围", "Sweep_Spectrum::set<&Properties::visible_range_only>"),
|
||||
select_property<&T::line_interpolation>("line_interpolation", "线插值模式", "Sweep_Spectrum::set<&Properties::interpolation_mode>")
|
||||
});
|
||||
}
|
||||
};
|
||||
@@ -286,8 +286,8 @@ struct Property_Fields<Gallery_Frequency_Trace_Properties> {
|
||||
static auto get() {
|
||||
using T = Gallery_Frequency_Trace_Properties;
|
||||
return std::tuple_cat(common_fields(), axis_fields(), time_axis_fields(), std::tuple{
|
||||
color_property<&T::trace_pen>("trace_pen", "轨迹颜色(重建 Builder)", "Frequency_Trace::Builder::set_pen"),
|
||||
number_property<&T::trace_pen_width>("trace_pen_width", "轨迹宽度(重建 Builder)", "Frequency_Trace::Builder::set_pen"),
|
||||
color_property<&T::trace_pen>("trace_pen", "轨迹颜色", "Frequency_Trace::set<&Properties::pen>"),
|
||||
number_property<&T::trace_pen_width>("trace_pen_width", "轨迹宽度", "Frequency_Trace::set<&Properties::pen>"),
|
||||
number_property<&T::trace_value_min>("trace_value_min", "数值下限", "Axis::set_coord_range"),
|
||||
number_property<&T::trace_value_max>("trace_value_max", "数值上限", "Axis::set_coord_range")
|
||||
});
|
||||
@@ -298,15 +298,15 @@ struct Property_Fields<Gallery_Constellation_Properties> {
|
||||
static auto get() {
|
||||
using T = Gallery_Constellation_Properties;
|
||||
return std::tuple_cat(common_fields(), axis_fields(), std::tuple{
|
||||
number_property<&T::i_origin>("i_origin", "I 起点", "Constellation_Diagram::set_i_range"),
|
||||
number_property<&T::i_target>("i_target", "I 终点", "Constellation_Diagram::set_i_range"),
|
||||
number_property<&T::q_origin>("q_origin", "Q 起点", "Constellation_Diagram::set_q_range"),
|
||||
number_property<&T::q_target>("q_target", "Q 终点", "Constellation_Diagram::set_q_range"),
|
||||
color_property<&T::point_color>("point_color", "采样点颜色", "Constellation_Diagram::set_point_color"),
|
||||
color_property<&T::anchor_color>("anchor_color", "锚点颜色", "Constellation_Diagram::set_anchor_color"),
|
||||
number_property<&T::point_lifetime_ms>("point_lifetime_ms", "采样点寿命", "Constellation_Diagram::set_point_lifetime_ms"),
|
||||
select_property<&T::constellation_type>("constellation_type", "星座模式(重建 Builder)", "Constellation_Diagram::Builder::set_type"),
|
||||
number_property<&T::phase_offset>("phase_offset", "相位偏移(重建 Builder)", "Constellation_Diagram::Builder::set_phase_offset_radians")
|
||||
number_property<&T::i_origin>("i_origin", "I 起点", "Constellation_Diagram::set<&Properties::i_range>"),
|
||||
number_property<&T::i_target>("i_target", "I 终点", "Constellation_Diagram::set<&Properties::i_range>"),
|
||||
number_property<&T::q_origin>("q_origin", "Q 起点", "Constellation_Diagram::set<&Properties::q_range>"),
|
||||
number_property<&T::q_target>("q_target", "Q 终点", "Constellation_Diagram::set<&Properties::q_range>"),
|
||||
color_property<&T::point_color>("point_color", "采样点颜色", "Constellation_Diagram::set<&Properties::point_color>"),
|
||||
color_property<&T::anchor_color>("anchor_color", "锚点颜色", "Constellation_Diagram::set<&Properties::anchor_color>"),
|
||||
number_property<&T::point_lifetime_ms>("point_lifetime_ms", "采样点寿命", "Constellation_Diagram::set<&Properties::point_lifetime_ms>"),
|
||||
select_property<&T::constellation_type>("constellation_type", "星座模式", "Constellation_Diagram::set<&Properties::type>"),
|
||||
number_property<&T::phase_offset>("phase_offset", "相位偏移", "Constellation_Diagram::set<&Properties::phase_offset_radians>")
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
Reference in New Issue
Block a user