|
Blender
V2.93
|
#include <cstring>#include "BLI_listbase.h"#include "BKE_screen.h"#include "ED_screen.h"#include "ED_space_api.h"#include "ED_spreadsheet.h"#include "DNA_scene_types.h"#include "DNA_screen_types.h"#include "DNA_space_types.h"#include "MEM_guardedalloc.h"#include "UI_interface.h"#include "UI_resources.h"#include "UI_view2d.h"#include "DEG_depsgraph_query.h"#include "RNA_access.h"#include "WM_api.h"#include "WM_types.h"#include "BLF_api.h"#include "spreadsheet_intern.hh"#include "spreadsheet_context.hh"#include "spreadsheet_data_source_geometry.hh"#include "spreadsheet_layout.hh"Go to the source code of this file.
| void ED_spacetype_spreadsheet | ( | void | ) |
Definition at line 514 of file space_spreadsheet.cc.
References BKE_spacetype_register(), BKE_ST_MAXNAME, BLI_addhead(), SpaceType::create, ARegionType::draw, SpaceType::duplicate, ED_KEYMAP_HEADER, ED_KEYMAP_UI, ED_KEYMAP_VIEW2D, ARegionType::free, SpaceType::free, HEADERY, SpaceType::id_remap, ARegionType::init, SpaceType::init, SpaceType::keymap, ARegionType::keymapflag, ARegionType::listener, MEM_callocN, SpaceType::name, SpaceType::operatortypes, ARegionType::prefsizey, ARegionType::regionid, SpaceType::regiontypes, RGN_TYPE_FOOTER, RGN_TYPE_HEADER, RGN_TYPE_WINDOW, SPACE_SPREADSHEET, SpaceType::spaceid, spreadsheet_create(), spreadsheet_duplicate(), spreadsheet_footer_region_draw(), spreadsheet_footer_region_free(), spreadsheet_footer_region_init(), spreadsheet_footer_region_listener(), spreadsheet_free(), spreadsheet_header_region_draw(), spreadsheet_header_region_free(), spreadsheet_header_region_init(), spreadsheet_header_region_listener(), spreadsheet_id_remap(), spreadsheet_init(), spreadsheet_keymap(), spreadsheet_main_region_draw(), spreadsheet_main_region_init(), spreadsheet_main_region_listener(), and spreadsheet_operatortypes().
Referenced by ED_spacetypes_init().
| ID* ED_spreadsheet_get_current_id | ( | struct SpaceSpreadsheet * | sspreadsheet | ) |
Definition at line 167 of file space_spreadsheet.cc.
References BLI_listbase_is_empty(), SpaceSpreadsheet::context_path, ListBase::first, if(), SpreadsheetContextObject::object, SPREADSHEET_CONTEXT_OBJECT, and SpreadsheetContext::type.
Referenced by get_data_source().
|
static |
Definition at line 270 of file space_spreadsheet.cc.
References BLF_size(), BLF_width(), blender::StringRefBase::data(), blender::ed::spreadsheet::ColumnValues::default_width, blender::ed::spreadsheet::ColumnValues::name(), blender::StringRefBase::size(), UI_DEFAULT_TEXT_POINTS, UI_style_get(), UI_UNIT_X, uiFontStyle::uifont_id, and uiStyle::widget.
Referenced by get_column_width_in_pixels().
|
static |
Definition at line 282 of file space_spreadsheet.cc.
References get_column_width(), and SPREADSHEET_WIDTH_UNIT.
Referenced by spreadsheet_main_region_draw().
|
static |
Definition at line 246 of file space_spreadsheet.cc.
References C, CTX_data_depsgraph_pointer(), CTX_wm_space_spreadsheet(), blender::ed::spreadsheet::data_source_from_geometry(), DEG_get_evaluated_object(), depsgraph, ED_spreadsheet_get_current_id(), ELEM, GS, ID_OB, ID::name, OB_MESH, OB_POINTCLOUD, and Object::type.
Referenced by spreadsheet_main_region_draw().
|
static |
Definition at line 287 of file space_spreadsheet.cc.
References BLF_size(), BLF_width(), max, std::to_string(), UI_style_get(), UI_style_get_dpi(), UI_UNIT_X, uiFontStyle::uifont_id, and uiStyle::widget.
Referenced by spreadsheet_main_region_draw().
|
static |
Definition at line 56 of file space_spreadsheet.cc.
References ARegion::alignment, BLI_addtail(), MEM_callocN, SpaceSpreadsheet::regionbase, ARegion::regiontype, RGN_ALIGN_BOTTOM, RGN_ALIGN_TOP, RGN_TYPE_FOOTER, RGN_TYPE_HEADER, RGN_TYPE_WINDOW, SPACE_SPREADSHEET, SpaceSpreadsheet::spacetype, and USER_HEADER_BOTTOM.
Referenced by ED_spacetype_spreadsheet().
Definition at line 110 of file space_spreadsheet.cc.
References BLI_addtail(), BLI_listbase_clear(), SpaceSpreadsheet::columns, SpaceSpreadsheet::context_path, LISTBASE_FOREACH, LISTBASE_FOREACH_MUTABLE, MEM_dupallocN, SpaceSpreadsheet::runtime, blender::ed::spreadsheet::spreadsheet_column_copy(), and blender::ed::spreadsheet::spreadsheet_context_copy().
Referenced by ED_spacetype_spreadsheet().
Definition at line 468 of file space_spreadsheet.cc.
References BLI_str_format_int_grouped(), C, CTX_wm_space_spreadsheet(), SpaceSpreadsheet::runtime, ARegion::sizex, TH_BACK, SpaceSpreadsheet_Runtime::tot_columns, SpaceSpreadsheet_Runtime::tot_rows, UI_block_align_end(), UI_block_begin(), UI_block_draw(), UI_block_end(), UI_block_layout(), UI_block_layout_resolve(), UI_EMBOSS, UI_HEADER_OFFSET, UI_LAYOUT_ALIGN_RIGHT, UI_LAYOUT_HEADER, UI_LAYOUT_HORIZONTAL, UI_style_get_dpi(), UI_ThemeClearColor(), UI_UNIT_Y, uiItemL(), uiItemSpacer(), uiLayoutSetAlignment(), SpaceSpreadsheet_Runtime::visible_rows, and ARegion::winy.
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 506 of file space_spreadsheet.cc.
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 463 of file space_spreadsheet.cc.
References ED_region_header_init().
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 510 of file space_spreadsheet.cc.
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 88 of file space_spreadsheet.cc.
References SpaceSpreadsheet::columns, context, SpaceSpreadsheet::context_path, LISTBASE_FOREACH_MUTABLE, MEM_SAFE_FREE, SpaceSpreadsheet::runtime, blender::ed::spreadsheet::spreadsheet_column_free(), and blender::ed::spreadsheet::spreadsheet_context_free().
Referenced by ED_spacetype_spreadsheet().
Definition at line 420 of file space_spreadsheet.cc.
References C, ED_region_header(), and update_context_path().
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 426 of file space_spreadsheet.cc.
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 415 of file space_spreadsheet.cc.
References ED_region_header_init().
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 430 of file space_spreadsheet.cc.
References wmNotifier::category, wmNotifier::data, ED_region_tag_redraw(), NC_GEOM, NC_OBJECT, NC_SCENE, NC_SPACE, ND_MODE, ND_OB_ACTIVE, ND_SPACE_SPREADSHEET, and params.
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 135 of file space_spreadsheet.cc.
References context, SpaceSpreadsheet::context_path, GS, ID_OB, LISTBASE_FOREACH, ID::name, SpreadsheetContextObject::object, and SPREADSHEET_CONTEXT_OBJECT.
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 101 of file space_spreadsheet.cc.
References blender::compositor::area(), if(), MEM_callocN, and SpaceSpreadsheet::runtime.
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 131 of file space_spreadsheet.cc.
Referenced by ED_spacetype_spreadsheet().
Definition at line 327 of file space_spreadsheet.cc.
References blender::ResourceScope::add(), blender::IndexRange::as_span(), BKE_area_find_region_type(), BLI_assert, C, blender::ed::spreadsheet::SpreadsheetLayout::columns, SpaceSpreadsheet::columns, CTX_wm_area(), CTX_wm_space_spreadsheet(), DEG_get_original_object(), blender::ed::spreadsheet::draw_spreadsheet_in_region(), ED_region_tag_redraw(), SpaceSpreadsheet::filter_flag, get_column_width_in_pixels(), get_data_source(), get_index_column_width(), blender::ed::spreadsheet::SpreadsheetLayout::index_column_width, LISTBASE_FOREACH, Object::mode, OB_MESH, OB_MODE_EDIT, RGN_TYPE_FOOTER, blender::ed::spreadsheet::SpreadsheetLayout::row_indices, SpaceSpreadsheet::runtime, blender::Span< T >::size(), blender::ed::spreadsheet::spreadsheet_drawer_from_layout(), SPREADSHEET_FILTER_SELECTED_ONLY, SpaceSpreadsheet_Runtime::tot_columns, SpaceSpreadsheet_Runtime::tot_rows, Object::type, update_context_path(), update_visible_columns(), SpaceSpreadsheet_Runtime::visible_rows, and width.
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 153 of file space_spreadsheet.cc.
References View2D::align, wmWindowManager::defaultconf, ARegion::handlers, View2D::keeptot, View2D::keepzoom, View2D::maxzoom, View2D::minzoom, View2D::scroll, UI_view2d_region_reinit(), ARegion::v2d, V2D_ALIGN_NO_NEG_X, V2D_ALIGN_NO_POS_Y, V2D_COMMONVIEW_LIST, V2D_KEEPASPECT, V2D_KEEPTOT_STRICT, V2D_LIMITZOOM, V2D_LOCKZOOM_X, V2D_LOCKZOOM_Y, V2D_SCROLL_BOTTOM, V2D_SCROLL_RIGHT, ARegion::winx, ARegion::winy, WM_event_add_keymap_handler(), and WM_keymap_ensure().
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 380 of file space_spreadsheet.cc.
References wmNotifier::category, wmNotifier::data, ED_region_tag_redraw(), NC_GEOM, NC_OBJECT, NC_SCENE, NC_SPACE, NC_TEXTURE, ND_FRAME, ND_MODE, ND_OB_ACTIVE, ND_SPACE_SPREADSHEET, and params.
Referenced by ED_spacetype_spreadsheet().
|
static |
Definition at line 235 of file space_spreadsheet.cc.
References C, CTX_wm_space_spreadsheet(), SpaceSpreadsheet::flag, SPREADSHEET_FLAG_PINNED, update_context_path_from_context(), and update_pinned_context_path_if_outdated().
Referenced by spreadsheet_header_region_draw(), and spreadsheet_main_region_draw().
|
static |
Definition at line 211 of file space_spreadsheet.cc.
References BLI_addtail(), BLI_listbase_is_empty(), C, SpaceSpreadsheet::context_path, CTX_data_active_object(), CTX_wm_space_spreadsheet(), ED_spreadsheet_context_path_clear(), ListBase::first, if(), SpreadsheetContextObject::object, blender::ed::spreadsheet::spreadsheet_context_new(), SPREADSHEET_CONTEXT_OBJECT, and SpreadsheetContext::type.
Referenced by update_context_path().
|
static |
Definition at line 181 of file space_spreadsheet.cc.
References BLI_addtail(), BLI_listbase_is_empty(), C, context, SpaceSpreadsheet::context_path, CTX_data_active_object(), CTX_wm_space_spreadsheet(), ED_spreadsheet_context_path_clear(), SpaceSpreadsheet::flag, LISTBASE_FOREACH, SpreadsheetContextObject::object, blender::ed::spreadsheet::spreadsheet_context_new(), SPREADSHEET_CONTEXT_OBJECT, and SPREADSHEET_FLAG_PINNED.
Referenced by update_context_path().
|
static |
Definition at line 295 of file space_spreadsheet.cc.
References blender::Set< Key, InlineBufferCapacity, ProbingStrategy, Hash, IsEqual, Slot, Allocator >::add(), BLI_remlink(), blender::ed::spreadsheet::DataSource::foreach_default_column_ids(), blender::ed::spreadsheet::DataSource::get_column_values(), LISTBASE_FOREACH_MUTABLE, and blender::ed::spreadsheet::spreadsheet_column_free().
Referenced by spreadsheet_main_region_draw().