Blender
V3.3
|
#include <cstring>
#include "BLI_listbase.h"
#include "BLI_string.h"
#include "BLI_string_ref.hh"
#include "DNA_screen_types.h"
#include "DNA_space_types.h"
#include "BKE_screen.h"
#include "RNA_access.h"
#include "RNA_prototypes.h"
#include "UI_interface.h"
#include "UI_resources.h"
#include "BLT_translation.h"
#include "WM_api.h"
#include "WM_types.h"
#include "spreadsheet_column.hh"
#include "spreadsheet_intern.hh"
#include "spreadsheet_row_filter.hh"
#include "spreadsheet_row_filter_ui.hh"
Go to the source code of this file.
Functions | |
static void | filter_panel_id_fn (void *UNUSED(row_filter_v), char *r_name) |
static std::string | operation_string (const eSpreadsheetColumnValueType data_type, const eSpreadsheetFilterOperation operation) |
static std::string | value_string (const SpreadsheetRowFilter &row_filter, const eSpreadsheetColumnValueType data_type) |
static SpreadsheetColumn * | lookup_visible_column_for_filter (const SpaceSpreadsheet &sspreadsheet, const StringRef column_name) |
static void | spreadsheet_filter_panel_draw_header (const bContext *C, Panel *panel) |
static void | spreadsheet_filter_panel_draw (const bContext *C, Panel *panel) |
static void | spreadsheet_row_filters_layout (const bContext *C, Panel *panel) |
static void | filter_reorder (bContext *C, Panel *panel, int new_index) |
static short | get_filter_expand_flag (const bContext *UNUSED(C), Panel *panel) |
static void | set_filter_expand_flag (const bContext *UNUSED(C), Panel *panel, short expand_flag) |
void | register_row_filter_panels (ARegionType ®ion_type) |
Definition at line 33 of file spreadsheet_row_filter_ui.cc.
References BKE_ST_MAXNAME, and BLI_snprintf().
Referenced by spreadsheet_row_filters_layout().
Definition at line 293 of file spreadsheet_row_filter_ui.cc.
References BLI_assert, BLI_findindex(), BLI_listbase_link_move(), C, CTX_wm_space_spreadsheet(), PointerRNA::data, filter(), SpaceSpreadsheet::row_filters, and UI_panel_custom_data_get().
Referenced by register_row_filter_panels().
Definition at line 307 of file spreadsheet_row_filter_ui.cc.
References PointerRNA::data, filter(), return(), SPREADSHEET_ROW_FILTER_UI_EXPAND, and UI_panel_custom_data_get().
Referenced by register_row_filter_panels().
|
static |
Definition at line 110 of file spreadsheet_row_filter_ui.cc.
References SpaceSpreadsheet::columns, and LISTBASE_FOREACH.
Referenced by spreadsheet_filter_panel_draw(), and spreadsheet_filter_panel_draw_header().
|
static |
Definition at line 39 of file spreadsheet_row_filter_ui.cc.
References BLI_assert_unreachable, ELEM, SPREADSHEET_ROW_FILTER_EQUAL, SPREADSHEET_ROW_FILTER_GREATER, SPREADSHEET_ROW_FILTER_LESS, SPREADSHEET_VALUE_TYPE_BOOL, and SPREADSHEET_VALUE_TYPE_INSTANCES.
Referenced by spreadsheet_filter_panel_draw_header().
void register_row_filter_panels | ( | ARegionType & | region_type | ) |
Definition at line 325 of file spreadsheet_row_filter_ui.cc.
References BLI_addtail(), BLT_I18NCONTEXT_DEFAULT_BPYRNA, PanelType::category, PanelType::draw, PanelType::draw_header, filter_reorder(), PanelType::flag, get_filter_expand_flag(), PanelType::get_list_data_expand_flag, PanelType::idname, PanelType::label, N_, PANEL_TYPE_HEADER_EXPAND, PANEL_TYPE_INSTANCED, PANEL_TYPE_NO_HEADER, ARegionType::paneltypes, PanelType::reorder, set_filter_expand_flag(), PanelType::set_list_data_expand_flag, spreadsheet_filter_panel_draw(), spreadsheet_filter_panel_draw_header(), spreadsheet_row_filters_layout(), and PanelType::translation_context.
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 315 of file spreadsheet_row_filter_ui.cc.
References PointerRNA::data, filter(), SET_FLAG_FROM_TEST, SPREADSHEET_ROW_FILTER_UI_EXPAND, and UI_panel_custom_data_get().
Referenced by register_row_filter_panels().
Definition at line 166 of file spreadsheet_row_filter_ui.cc.
References C, CTX_wm_space_spreadsheet(), PointerRNA::data, SpreadsheetColumn::data_type, filter(), SpaceSpreadsheet::filter_flag, IFACE_, Panel::layout, lookup_visible_column_for_filter(), SPREADSHEET_FILTER_ENABLE, SPREADSHEET_ROW_FILTER_ENABLED, SPREADSHEET_ROW_FILTER_EQUAL, SPREADSHEET_VALUE_TYPE_BOOL, SPREADSHEET_VALUE_TYPE_BYTE_COLOR, SPREADSHEET_VALUE_TYPE_COLOR, SPREADSHEET_VALUE_TYPE_FLOAT, SPREADSHEET_VALUE_TYPE_FLOAT2, SPREADSHEET_VALUE_TYPE_FLOAT3, SPREADSHEET_VALUE_TYPE_INSTANCES, SPREADSHEET_VALUE_TYPE_INT32, SPREADSHEET_VALUE_TYPE_INT8, SPREADSHEET_VALUE_TYPE_STRING, SPREADSHEET_VALUE_TYPE_UNKNOWN, UI_panel_custom_data_get(), uiItemL(), uiItemR(), uiLayoutSetActive(), uiLayoutSetPropDecorate(), and uiLayoutSetPropSep().
Referenced by register_row_filter_panels().
Definition at line 121 of file spreadsheet_row_filter_ui.cc.
References BLI_findindex(), C, CTX_wm_space_spreadsheet(), PointerRNA::data, SpreadsheetColumn::data_type, filter(), SpaceSpreadsheet::filter_flag, IFACE_, Panel::layout, lookup_visible_column_for_filter(), operation_string(), SpaceSpreadsheet::row_filters, SPREADSHEET_FILTER_ENABLE, UI_EMBOSS_NONE, UI_ITEM_R_ICON_ONLY, UI_panel_custom_data_get(), uiItemIntO(), uiItemL(), uiItemR(), uiItemS_ex(), uiLayoutRow(), uiLayoutSetActive(), uiLayoutSetEmboss(), and value_string().
Referenced by register_row_filter_panels().
Definition at line 245 of file spreadsheet_row_filter_ui.cc.
References BLI_assert, C, CTX_wm_region(), CTX_wm_screen(), CTX_wm_space_spreadsheet(), SpaceSpreadsheet::filter_flag, filter_panel_id_fn(), ListBase::first, PanelType::flag, bScreen::id, Panel::layout, LISTBASE_FOREACH, MAX_NAME, MEM_mallocN, Panel::next, PANEL_TYPE_INSTANCED, ARegion::panels, RNA_pointer_create(), SpaceSpreadsheet::row_filters, SPREADSHEET_FILTER_ENABLE, Panel::type, UI_panel_add_instanced(), UI_panel_custom_data_set(), UI_panel_list_matches_data(), UI_panels_free_instanced(), uiItemO(), and uiLayoutSetActive().
Referenced by register_row_filter_panels().
|
static |
Definition at line 58 of file spreadsheet_row_filter_ui.cc.
References BLI_assert_unreachable, SpreadsheetRowFilter::flag, IFACE_, result, SPREADSHEET_ROW_FILTER_BOOL_VALUE, SPREADSHEET_VALUE_TYPE_BOOL, SPREADSHEET_VALUE_TYPE_BYTE_COLOR, SPREADSHEET_VALUE_TYPE_COLOR, SPREADSHEET_VALUE_TYPE_FLOAT, SPREADSHEET_VALUE_TYPE_FLOAT2, SPREADSHEET_VALUE_TYPE_FLOAT3, SPREADSHEET_VALUE_TYPE_INSTANCES, SPREADSHEET_VALUE_TYPE_INT32, SPREADSHEET_VALUE_TYPE_INT8, SPREADSHEET_VALUE_TYPE_STRING, SPREADSHEET_VALUE_TYPE_UNKNOWN, std::to_string(), SpreadsheetRowFilter::value_color, SpreadsheetRowFilter::value_float, SpreadsheetRowFilter::value_float2, SpreadsheetRowFilter::value_float3, SpreadsheetRowFilter::value_int, and SpreadsheetRowFilter::value_string.
Referenced by spreadsheet_filter_panel_draw_header().