Blender V5.0
spreadsheet_intern.hh
Go to the documentation of this file.
1/* SPDX-FileCopyrightText: 2023 Blender Authors
2 *
3 * SPDX-License-Identifier: GPL-2.0-or-later */
4
5#pragma once
6
7#include "BKE_geometry_set.hh"
8
10#include "DNA_space_types.h"
11
12struct ARegionType;
13struct Depsgraph;
14struct Object;
15struct SpaceSpreadsheet;
16struct ARegion;
18struct bContext;
19namespace blender::nodes {
20class Bundle;
21}
23class ViewerNodeLog;
24}
25
26#define SPREADSHEET_EDGE_ACTION_ZONE (UI_UNIT_X * 0.3f)
27
29
30class DataSource;
31
37
39 public:
40 int visible_rows = 0;
41 int tot_rows = 0;
42 int tot_columns = 0;
45
46 std::optional<ReorderColumnVisualizationData> reorder_column_visualization_data;
47
49
54};
55
58 const Depsgraph *depsgraph);
59
61 const SpaceSpreadsheet &sspreadsheet);
62
64 Object *object_eval);
65std::optional<bke::GeometrySet> root_geometry_set_get(const SpaceSpreadsheet *sspreadsheet,
66 Object *object_eval);
67
69
72 ARegion &region,
73 const int2 &cursor_re);
74
77 ARegion &region,
78 const int2 &cursor_re);
79
82 ARegion &region,
83 const int2 &cursor_re);
84
87 ARegion &region,
88 const int2 &cursor_re);
89
93std::unique_ptr<DataSource> get_data_source(const bContext &C);
94
100
101} // namespace blender::ed::spreadsheet
#define C
Definition RandGen.cpp:29
BPy_StructRNA * depsgraph
const SpreadsheetTableID * get_active_table_id(const SpaceSpreadsheet &sspreadsheet)
const nodes::geo_eval_log::ViewerNodeLog * viewer_node_log_lookup(const SpaceSpreadsheet &sspreadsheet)
bke::SocketValueVariant geometry_display_data_get(const SpaceSpreadsheet *sspreadsheet, Object *object_eval)
SpreadsheetColumn * find_hovered_column_edge(SpaceSpreadsheet &sspreadsheet, ARegion &region, const int2 &cursor_re)
SpreadsheetColumn * find_hovered_column(SpaceSpreadsheet &sspreadsheet, ARegion &region, const int2 &cursor_re)
std::unique_ptr< DataSource > get_data_source(const bContext &C)
Object * spreadsheet_get_object_eval(const SpaceSpreadsheet *sspreadsheet, const Depsgraph *depsgraph)
SpreadsheetColumn * find_hovered_column_header(SpaceSpreadsheet &sspreadsheet, ARegion &region, const int2 &cursor_re)
SpreadsheetColumn * find_hovered_column_header_edge(SpaceSpreadsheet &sspreadsheet, ARegion &region, const int2 &cursor_re)
void spreadsheet_data_set_region_panels_register(ARegionType &region_type)
std::optional< bke::GeometrySet > root_geometry_set_get(const SpaceSpreadsheet *sspreadsheet, Object *object_eval)
VecBase< int32_t, 2 > int2
SpaceSpreadsheet_Runtime(const SpaceSpreadsheet_Runtime &other)
std::optional< ReorderColumnVisualizationData > reorder_column_visualization_data