LibreOffice Module svx (master)  1
Public Member Functions | Private Types | Private Member Functions | Private Attributes | List of all members
svxform::FmFilterNavigator Class Referencefinal

#include <filtnav.hxx>

Inheritance diagram for svxform::FmFilterNavigator:
[legend]
Collaboration diagram for svxform::FmFilterNavigator:
[legend]

Public Member Functions

 FmFilterNavigator (vcl::Window *pTopLevel, std::unique_ptr< weld::TreeView > xTreeView)
 
virtual ~FmFilterNavigator () override
 
void GrabFocus ()
 
void EndEditing ()
 
void UpdateContent (const css::uno::Reference< css::container::XIndexAccess > &xControllers, const css::uno::Reference< css::form::runtime::XFormController > &xCurrent)
 
weld::TreeViewget_widget ()
 
sal_Int8 AcceptDrop (const AcceptDropEvent &rEvt)
 
sal_Int8 ExecuteDrop (const ExecuteDropEvent &rEvt)
 
- Public Member Functions inherited from SfxListener
 SfxListener ()
 
 SfxListener (const SfxListener &rCopy)
 
virtual ~SfxListener () COVERITY_NOEXCEPT_FALSE
 
void StartListening (SfxBroadcaster &rBroadcaster, DuplicateHandling eDuplicateHanding=DuplicateHandling::Unexpected)
 
void EndListening (SfxBroadcaster &rBroadcaster, bool bRemoveAllDuplicates=false)
 
void EndListeningAll ()
 
bool IsListening (SfxBroadcaster &rBroadcaster) const
 
sal_uInt16 GetBroadcasterCount () const
 
SfxBroadcasterGetBroadcasterJOE (sal_uInt16 nNo) const
 
void RemoveBroadcaster_Impl (SfxBroadcaster &rBC)
 

Private Types

typedef std::pair< const weld::TreeIter &, OUString > IterString
 

Private Member Functions

 DECL_LINK (KeyInputHdl, const KeyEvent &, bool)
 
 DECL_LINK (PopupMenuHdl, const CommandEvent &, bool)
 
virtual void Notify (SfxBroadcaster &rBC, const SfxHint &rHint) override
 
 DECL_STATIC_LINK (FmFilterNavigator, CustomGetSizeHdl, weld::TreeView::get_size_args, Size)
 
 DECL_STATIC_LINK (FmFilterNavigator, CustomRenderHdl, weld::TreeView::render_args, void)
 
 DECL_LINK (SelectHdl, weld::TreeView &, void)
 
 DECL_LINK (EditingEntryHdl, const weld::TreeIter &, bool)
 
 DECL_LINK (EditedEntryHdl, const IterString &, bool)
 
 DECL_LINK (DragBeginHdl, bool &, bool)
 
void DeleteSelection ()
 
std::unique_ptr< weld::TreeIterFindEntry (const FmFilterData *pItem) const
 
void Insert (FmFilterData *pItem, int nPos)
 
void Remove (FmFilterData const *pItem)
 
 DECL_LINK (OnRemove, void *, void)
 
FmFormItemgetSelectedFilterItems (::std::vector< FmFilterItem * > &_rItemList)
 returns the first form item and the selected FilterItems in the vector More...
 
void insertFilterItem (const ::std::vector< FmFilterItem * > &_rFilterList, FmFilterItems *_pTargetItems, bool _bCopy)
 inserts the filter items into the tree model and creates new FilterItems if needed. More...
 
bool getPrevEntry (weld::TreeIter &rEntry)
 
bool getNextEntry (weld::TreeIter &rEntry)
 

Private Attributes

VclPtr< vcl::Windowm_xTopLevel
 
std::unique_ptr< weld::TreeViewm_xTreeView
 
FmFilterNavigatorDropTarget m_aDropTargetHelper
 
std::unique_ptr< FmFilterModelm_pModel
 
std::unique_ptr< weld::TreeIterm_xEditingCurrently
 
OFilterExchangeHelper m_aControlExchange
 
ImplSVEventm_nAsyncRemoveEvent
 

Detailed Description

Definition at line 229 of file filtnav.hxx.

Member Typedef Documentation

typedef std::pair<const weld::TreeIter&, OUString> svxform::FmFilterNavigator::IterString
private

Definition at line 269 of file filtnav.hxx.

Constructor & Destructor Documentation

svxform::FmFilterNavigator::FmFilterNavigator ( vcl::Window pTopLevel,
std::unique_ptr< weld::TreeView xTreeView 
)
svxform::FmFilterNavigator::~FmFilterNavigator ( )
overridevirtual

Member Function Documentation

sal_Int8 svxform::FmFilterNavigator::AcceptDrop ( const AcceptDropEvent rEvt)
svxform::FmFilterNavigator::DECL_LINK ( KeyInputHdl  ,
const KeyEvent ,
bool   
)
private
svxform::FmFilterNavigator::DECL_LINK ( PopupMenuHdl  ,
const CommandEvent ,
bool   
)
private
svxform::FmFilterNavigator::DECL_LINK ( SelectHdl  ,
weld::TreeView ,
void   
)
private
svxform::FmFilterNavigator::DECL_LINK ( EditingEntryHdl  ,
const weld::TreeIter ,
bool   
)
private
svxform::FmFilterNavigator::DECL_LINK ( EditedEntryHdl  ,
const IterString ,
bool   
)
private
svxform::FmFilterNavigator::DECL_LINK ( DragBeginHdl  ,
bool &  ,
bool   
)
private
svxform::FmFilterNavigator::DECL_LINK ( OnRemove  ,
void ,
void   
)
private
svxform::FmFilterNavigator::DECL_STATIC_LINK ( FmFilterNavigator  ,
CustomGetSizeHdl  ,
weld::TreeView::get_size_args  ,
Size   
)
private
svxform::FmFilterNavigator::DECL_STATIC_LINK ( FmFilterNavigator  ,
CustomRenderHdl  ,
weld::TreeView::render_args  ,
void   
)
private
void svxform::FmFilterNavigator::DeleteSelection ( )
private

Definition at line 1694 of file filtnav.cxx.

References i, m_pModel, and m_xTreeView.

void svxform::FmFilterNavigator::EndEditing ( )

Definition at line 1340 of file filtnav.cxx.

References m_xEditingCurrently, and m_xTreeView.

Referenced by Remove().

sal_Int8 svxform::FmFilterNavigator::ExecuteDrop ( const ExecuteDropEvent rEvt)
std::unique_ptr< weld::TreeIter > svxform::FmFilterNavigator::FindEntry ( const FmFilterData pItem) const
private

Definition at line 1304 of file filtnav.cxx.

References m_xTreeView.

Referenced by AcceptDrop(), ExecuteDrop(), Insert(), Notify(), Remove(), and UpdateContent().

weld::TreeView& svxform::FmFilterNavigator::get_widget ( )
inline

Definition at line 254 of file filtnav.hxx.

References m_xTreeView.

Referenced by svxform::FmFilterNavigatorDropTarget::AcceptDrop().

bool svxform::FmFilterNavigator::getNextEntry ( weld::TreeIter rEntry)
private

Definition at line 1562 of file filtnav.cxx.

References m_xTreeView.

Referenced by svxform::IMPL_LINK().

bool svxform::FmFilterNavigator::getPrevEntry ( weld::TreeIter rEntry)
private

Definition at line 1579 of file filtnav.cxx.

References m_xTreeView.

Referenced by svxform::IMPL_LINK().

FmFormItem * svxform::FmFilterNavigator::getSelectedFilterItems ( ::std::vector< FmFilterItem * > &  _rItemList)
private

returns the first form item and the selected FilterItems in the vector

Parameters
_rItemListIs filled inside. <OUT>
Returns
The first form item.

Definition at line 1363 of file filtnav.cxx.

References svxform::FmFilterData::GetParent(), and m_xTreeView.

void svxform::FmFilterNavigator::GrabFocus ( )
inline

Definition at line 245 of file filtnav.hxx.

void svxform::FmFilterNavigator::Insert ( FmFilterData pItem,
int  nPos 
)
private
void svxform::FmFilterNavigator::insertFilterItem ( const ::std::vector< FmFilterItem * > &  _rFilterList,
FmFilterItems _pTargetItems,
bool  _bCopy 
)
private

inserts the filter items into the tree model and creates new FilterItems if needed.

Parameters
_rFilterListThe items which should be inserted.
_pTargetItemsThe target where to insert the items.
_bCopyIf <TRUE> the items will not be removed from the model, otherwise they will.

Definition at line 1398 of file filtnav.cxx.

References svxform::FmFilterItems::Find(), svxform::FmFilterData::GetParent(), svxform::FmFilterData::GetText(), and m_pModel.

Referenced by ExecuteDrop().

void svxform::FmFilterNavigator::Notify ( SfxBroadcaster rBC,
const SfxHint rHint 
)
overrideprivatevirtual

Reimplemented from SfxListener.

Definition at line 1278 of file filtnav.cxx.

References FindEntry(), Insert(), m_xTreeView, and Remove().

void svxform::FmFilterNavigator::Remove ( FmFilterData const *  pItem)
private

Definition at line 1350 of file filtnav.cxx.

References EndEditing(), FindEntry(), m_xEditingCurrently, and m_xTreeView.

Referenced by Notify().

void svxform::FmFilterNavigator::UpdateContent ( const css::uno::Reference< css::container::XIndexAccess > &  xControllers,
const css::uno::Reference< css::form::runtime::XFormController > &  xCurrent 
)

Definition at line 1082 of file filtnav.cxx.

References FindEntry(), m_pModel, and m_xTreeView.

Member Data Documentation

OFilterExchangeHelper svxform::FmFilterNavigator::m_aControlExchange
private

Definition at line 237 of file filtnav.hxx.

Referenced by AcceptDrop(), and ExecuteDrop().

FmFilterNavigatorDropTarget svxform::FmFilterNavigator::m_aDropTargetHelper
private

Definition at line 233 of file filtnav.hxx.

Referenced by AcceptDrop().

ImplSVEvent* svxform::FmFilterNavigator::m_nAsyncRemoveEvent
private

Definition at line 239 of file filtnav.hxx.

Referenced by ~FmFilterNavigator().

std::unique_ptr<FmFilterModel> svxform::FmFilterNavigator::m_pModel
private
std::unique_ptr<weld::TreeIter> svxform::FmFilterNavigator::m_xEditingCurrently
private

Definition at line 236 of file filtnav.hxx.

Referenced by EndEditing(), and Remove().

VclPtr<vcl::Window> svxform::FmFilterNavigator::m_xTopLevel
private

Definition at line 231 of file filtnav.hxx.

std::unique_ptr<weld::TreeView> svxform::FmFilterNavigator::m_xTreeView
private

The documentation for this class was generated from the following files: