Blender V4.3
abstract_view_item.cc File Reference
#include "BKE_context.hh"
#include "BLI_listbase.h"
#include "WM_api.hh"
#include "UI_interface.hh"
#include "interface_intern.hh"
#include "UI_abstract_view.hh"
#include <stdexcept>

Go to the source code of this file.

Classes

class  blender::ui::ViewItemAPIWrapper
 

Namespaces

namespace  blender
 
namespace  blender::ui
 

Functions

Renaming
static AbstractViewItemblender::ui::find_item_from_rename_button (const uiBut &rename_but)
 
static void blender::ui::rename_button_fn (bContext *C, void *arg, char *)
 
C-API
bool UI_view_item_matches (const AbstractViewItem &a, const AbstractViewItem &b)
 
void ui_view_item_swap_button_pointers (AbstractViewItem &a, AbstractViewItem &b)
 
bool UI_view_item_can_rename (const AbstractViewItem &item)
 
void UI_view_item_begin_rename (AbstractViewItem &item)
 
bool UI_view_item_supports_drag (const AbstractViewItem &item)
 
bool UI_view_item_popup_keep_open (const AbstractViewItem &item)
 
bool UI_view_item_drag_start (bContext &C, const AbstractViewItem &item)
 

Function Documentation

◆ UI_view_item_begin_rename()

void UI_view_item_begin_rename ( AbstractViewItem & item)

◆ UI_view_item_can_rename()

bool UI_view_item_can_rename ( const blender::ui::AbstractViewItem & item)

Can item be renamed right now? Note that this isn't just a mere wrapper around #AbstractViewItem::supports_renaming(). This also checks if there is another item being renamed, and returns false if so.

Definition at line 373 of file abstract_view_item.cc.

References blender::ui::AbstractViewItem::get_view(), blender::ui::AbstractView::is_renaming(), and blender::ui::AbstractViewItem::supports_renaming().

Referenced by ui_do_but_VIEW_ITEM(), and ui_view_item_rename_poll().

◆ UI_view_item_drag_start()

bool UI_view_item_drag_start ( bContext & C,
const blender::ui::AbstractViewItem & item )

Attempt to start dragging item_. This will not work if the view item doesn't support dragging, i.e. if it won't create a drag-controller upon request.

Returns
True if dragging started successfully, otherwise false.

Definition at line 394 of file abstract_view_item.cc.

References blender::ui::AbstractViewItem::create_drag_controller(), WM_DRAG_FREE_DATA, and WM_event_start_drag().

Referenced by ui_but_drag_init().

◆ UI_view_item_matches()

bool UI_view_item_matches ( const AbstractViewItem & a,
const AbstractViewItem & b )

◆ UI_view_item_popup_keep_open()

bool UI_view_item_popup_keep_open ( const blender::ui::AbstractViewItem & item)

If this view is displayed in a popup, don't close it when clicking to activate items.

Definition at line 389 of file abstract_view_item.cc.

References blender::ui::AbstractView::get_popup_keep_open(), and blender::ui::AbstractViewItem::get_view().

Referenced by force_activate_view_item_but().

◆ UI_view_item_supports_drag()

bool UI_view_item_supports_drag ( const AbstractViewItem & item)

◆ ui_view_item_swap_button_pointers()

void ui_view_item_swap_button_pointers ( AbstractViewItem & a,
AbstractViewItem & b )