Blender  V3.3
Classes | Functions
outliner_sync.cc File Reference
#include <cstdio>
#include "DNA_armature_types.h"
#include "DNA_layer_types.h"
#include "DNA_outliner_types.h"
#include "DNA_screen_types.h"
#include "DNA_sequence_types.h"
#include "DNA_space_types.h"
#include "BLI_compiler_compat.h"
#include "BLI_ghash.h"
#include "BLI_listbase.h"
#include "BKE_armature.h"
#include "BKE_context.h"
#include "BKE_layer.h"
#include "BKE_main.h"
#include "DEG_depsgraph.h"
#include "ED_armature.h"
#include "ED_object.h"
#include "ED_outliner.h"
#include "SEQ_select.h"
#include "WM_api.h"
#include "WM_types.h"
#include "outliner_intern.hh"

Go to the source code of this file.

Classes

struct  SyncSelectTypes
 
struct  SelectedItems
 
struct  SyncSelectActiveData
 

Functions

void ED_outliner_select_sync_from_object_tag (bContext *C)
 
void ED_outliner_select_sync_from_edit_bone_tag (bContext *C)
 
void ED_outliner_select_sync_from_pose_bone_tag (bContext *C)
 
void ED_outliner_select_sync_from_sequence_tag (bContext *C)
 
void ED_outliner_select_sync_from_all_tag (bContext *C)
 
bool ED_outliner_select_sync_is_dirty (const bContext *C)
 
void ED_outliner_select_sync_flag_outliners (const bContext *C)
 
static void outliner_sync_select_from_outliner_set_types (bContext *C, SpaceOutliner *space_outliner, SyncSelectTypes *sync_types)
 
static bool outliner_sync_select_to_outliner_set_types (const bContext *C, SpaceOutliner *space_outliner, SyncSelectTypes *sync_types)
 
static void selected_items_init (SelectedItems *selected_items)
 
static void selected_items_free (SelectedItems *selected_items)
 
static bool is_object_selected (GSet *selected_objects, Base *base)
 
static bool is_edit_bone_selected (GSet *selected_ebones, EditBone *ebone)
 
static bool is_pose_bone_selected (GSet *selected_pbones, bPoseChannel *pchan)
 
static void add_selected_item (GSet *selected, void *data)
 
static void outliner_select_sync_to_object (ViewLayer *view_layer, TreeElement *te, TreeStoreElem *tselem, GSet *selected_objects)
 
static void outliner_select_sync_to_edit_bone (ViewLayer *view_layer, TreeElement *te, TreeStoreElem *tselem, GSet *selected_ebones)
 
static void outliner_select_sync_to_pose_bone (TreeElement *te, TreeStoreElem *tselem, GSet *selected_pbones)
 
static void outliner_select_sync_to_sequence (Scene *scene, TreeStoreElem *tselem)
 
static void outliner_sync_selection_from_outliner (Scene *scene, ViewLayer *view_layer, ListBase *tree, const SyncSelectTypes *sync_types, SelectedItems *selected_items)
 
void ED_outliner_select_sync_from_outliner (bContext *C, SpaceOutliner *space_outliner)
 
static void outliner_select_sync_from_object (ViewLayer *view_layer, Object *obact, TreeElement *te, TreeStoreElem *tselem)
 
static void outliner_select_sync_from_edit_bone (EditBone *ebone_active, TreeElement *te, TreeStoreElem *tselem)
 
static void outliner_select_sync_from_pose_bone (bPoseChannel *pchan_active, TreeElement *te, TreeStoreElem *tselem)
 
static void outliner_select_sync_from_sequence (Sequence *sequence_active, TreeStoreElem *tselem)
 
static void outliner_sync_selection_to_outliner (ViewLayer *view_layer, SpaceOutliner *space_outliner, ListBase *tree, SyncSelectActiveData *active_data, const SyncSelectTypes *sync_types)
 
static void get_sync_select_active_data (const bContext *C, SyncSelectActiveData *active_data)
 
void outliner_sync_selection (const bContext *C, SpaceOutliner *space_outliner)
 

Function Documentation

◆ add_selected_item()

static void add_selected_item ( GSet selected,
void data 
)
static

◆ ED_outliner_select_sync_flag_outliners()

void ED_outliner_select_sync_flag_outliners ( const bContext C)

◆ ED_outliner_select_sync_from_all_tag()

void ED_outliner_select_sync_from_all_tag ( bContext C)

◆ ED_outliner_select_sync_from_edit_bone_tag()

void ED_outliner_select_sync_from_edit_bone_tag ( bContext C)

◆ ED_outliner_select_sync_from_object_tag()

void ED_outliner_select_sync_from_object_tag ( struct bContext C)

◆ ED_outliner_select_sync_from_outliner()

void ED_outliner_select_sync_from_outliner ( struct bContext C,
struct SpaceOutliner space_outliner 
)

◆ ED_outliner_select_sync_from_pose_bone_tag()

void ED_outliner_select_sync_from_pose_bone_tag ( bContext C)

◆ ED_outliner_select_sync_from_sequence_tag()

void ED_outliner_select_sync_from_sequence_tag ( bContext C)

◆ ED_outliner_select_sync_is_dirty()

bool ED_outliner_select_sync_is_dirty ( const bContext C)

◆ get_sync_select_active_data()

static void get_sync_select_active_data ( const bContext C,
SyncSelectActiveData active_data 
)
static

◆ is_edit_bone_selected()

static bool is_edit_bone_selected ( GSet selected_ebones,
EditBone ebone 
)
static

Definition at line 188 of file outliner_sync.cc.

References BLI_gset_haskey().

Referenced by outliner_select_sync_to_edit_bone().

◆ is_object_selected()

static bool is_object_selected ( GSet selected_objects,
Base base 
)
static

Definition at line 182 of file outliner_sync.cc.

References BLI_gset_haskey().

Referenced by outliner_select_sync_to_object().

◆ is_pose_bone_selected()

static bool is_pose_bone_selected ( GSet selected_pbones,
bPoseChannel pchan 
)
static

Definition at line 194 of file outliner_sync.cc.

References BLI_gset_haskey().

Referenced by outliner_select_sync_to_pose_bone().

◆ outliner_select_sync_from_edit_bone()

static void outliner_select_sync_from_edit_bone ( EditBone ebone_active,
TreeElement te,
TreeStoreElem tselem 
)
static

◆ outliner_select_sync_from_object()

static void outliner_select_sync_from_object ( ViewLayer view_layer,
Object obact,
TreeElement te,
TreeStoreElem tselem 
)
static

◆ outliner_select_sync_from_pose_bone()

static void outliner_select_sync_from_pose_bone ( bPoseChannel pchan_active,
TreeElement te,
TreeStoreElem tselem 
)
static

◆ outliner_select_sync_from_sequence()

static void outliner_select_sync_from_sequence ( Sequence sequence_active,
TreeStoreElem tselem 
)
static

◆ outliner_select_sync_to_edit_bone()

static void outliner_select_sync_to_edit_bone ( ViewLayer view_layer,
TreeElement te,
TreeStoreElem tselem,
GSet selected_ebones 
)
static

◆ outliner_select_sync_to_object()

static void outliner_select_sync_to_object ( ViewLayer view_layer,
TreeElement te,
TreeStoreElem tselem,
GSet selected_objects 
)
static

◆ outliner_select_sync_to_pose_bone()

static void outliner_select_sync_to_pose_bone ( TreeElement te,
TreeStoreElem tselem,
GSet selected_pbones 
)
static

◆ outliner_select_sync_to_sequence()

static void outliner_select_sync_to_sequence ( Scene scene,
TreeStoreElem tselem 
)
static

◆ outliner_sync_select_from_outliner_set_types()

static void outliner_sync_select_from_outliner_set_types ( bContext C,
SpaceOutliner space_outliner,
SyncSelectTypes sync_types 
)
static

Set which types of data to sync when syncing selection from the outliner based on object interaction mode and outliner display mode

Definition at line 113 of file outliner_sync.cc.

References C, SyncSelectTypes::edit_bone, Object::mode, OB_ARMATURE, TreeViewContext::ob_edit, OB_MODE_POSE, TreeViewContext::ob_pose, SyncSelectTypes::object, outliner_viewcontext_init(), SpaceOutliner::outlinevis, SyncSelectTypes::pose_bone, SyncSelectTypes::sequence, SO_SEQUENCE, and Object::type.

Referenced by ED_outliner_select_sync_from_outliner().

◆ outliner_sync_select_to_outliner_set_types()

static bool outliner_sync_select_to_outliner_set_types ( const bContext C,
SpaceOutliner space_outliner,
SyncSelectTypes sync_types 
)
static

◆ outliner_sync_selection()

void outliner_sync_selection ( const bContext C,
SpaceOutliner space_outliner 
)

◆ outliner_sync_selection_from_outliner()

static void outliner_sync_selection_from_outliner ( Scene scene,
ViewLayer view_layer,
ListBase tree,
const SyncSelectTypes sync_types,
SelectedItems selected_items 
)
static

◆ outliner_sync_selection_to_outliner()

static void outliner_sync_selection_to_outliner ( ViewLayer view_layer,
SpaceOutliner space_outliner,
ListBase tree,
SyncSelectActiveData active_data,
const SyncSelectTypes sync_types 
)
static

◆ selected_items_free()

static void selected_items_free ( SelectedItems selected_items)
static

◆ selected_items_init()

static void selected_items_init ( SelectedItems selected_items)
static