LibreOffice Module vcl (master)
1
|
A thin wrapper around rtl::Reference to implement the acquire and dispose semantics we want for references to vcl::Window subclasses. More...
#include <button.hxx>
Public Member Functions | |
VclPtr () | |
Constructor... More... | |
VclPtr (reference_type *pBody) | |
Constructor... More... | |
VclPtr (reference_type *pBody, __sal_NoAcquire) | |
Constructor... More... | |
template<class derived_type > | |
VclPtr (const VclPtr< derived_type > &rRef, typename std::enable_if< std::is_base_of< reference_type, derived_type >::value, int >::type=0) | |
Up-casting conversion constructor: Copies interface reference. More... | |
virtual | ~VclPtr () |
VclPtr (VclPtr const &)=default | |
VclPtr (VclPtr &&)=default | |
VclPtr & | operator= (VclPtr const &)=default |
VclPtr & | operator= (VclPtr &&)=default |
reference_type * | operator-> () const |
Probably most common used: handle->someBodyOp(). More... | |
reference_type * | get () const |
Get the body. More... | |
void | set (reference_type *pBody) |
void | reset (reference_type *pBody) |
template<typename derived_type > | |
std::enable_if< std::is_base_of< reference_type, derived_type >::value, VclPtr & >::type | operator= (VclPtr< derived_type > const &rRef) |
Up-casting copy assignment operator. More... | |
VclPtr & | operator= (reference_type *pBody) |
operator reference_type * () const | |
operator bool () const | |
void | clear () |
void | reset () |
void | disposeAndClear () |
bool | operator< (const VclPtr< reference_type > &handle) const |
Needed to place VclPtr's into STL collection. More... | |
Static Public Member Functions | |
template<typename... Arg> | |
static VclPtr< reference_type > | Create (Arg &&...arg) |
A construction helper for VclPtr. More... | |
Private Attributes | |
::rtl::Reference< reference_type > | m_rInnerRef |
A thin wrapper around rtl::Reference to implement the acquire and dispose semantics we want for references to vcl::Window subclasses.
For more details on the design please see vcl/README.lifecycle
reference_type | must be a subclass of vcl::Window |
Definition at line 32 of file button.hxx.
Constructor...
Definition at line 69 of file vclptr.hxx.
Constructor...
Definition at line 75 of file vclptr.hxx.
|
inline |
Up-casting conversion constructor: Copies interface reference.
Does not work for up-casts to ambiguous bases. For the special case of up-casting to Reference< XInterface >, see the corresponding conversion operator.
rRef | another reference |
Definition at line 94 of file vclptr.hxx.
Definition at line 104 of file vclptr.hxx.
|
default |
|
default |
Definition at line 190 of file vclptr.hxx.
Referenced by FormatterBase::ClearField(), TextWindow::Command(), Edit::Command(), NotebookBar::dispose(), vcl::AboutDialog::dispose(), TextWindow::dispose(), MenuButton::dispose(), FixedText::dispose(), Splitter::dispose(), Slider::dispose(), MenuFloatingWindow::dispose(), Dialog::dispose(), MenuBarWindow::dispose(), vcl::RoadmapWizard::dispose(), ImplBorderWindow::dispose(), SystemWindow::dispose(), FloatingWindow::dispose(), Menu::dispose(), ToolBox::dispose(), Printer::dispose(), DockingWindow::dispose(), OutputDevice::dispose(), VclFrame::dispose(), ImplListBoxFloatingWindow::dispose(), VclBuilder::disposeBuilder(), NotebookBarContextChangeEventListener::disposing(), Dialog::Execute(), Dialog::ImplInitDialogData(), SplitWindow::RemoveItem(), and Application::RemoveUserEvent().
|
inlinestatic |
A construction helper for VclPtr.
Since VclPtr types are created with a reference-count of one - to help fit into the existing code-flow; this helps us to construct them easily.
For more details on the design please see vcl/README.lifecycle
reference_type | must be a subclass of vcl::Window |
Definition at line 127 of file vclptr.hxx.
Referenced by MessageDialog::create_message_area(), SalInstanceBuilder::create_screenshot_window(), ImplAnimView::draw(), VclBuilder::handleMenu(), vcl::RoadmapWizard::implConstruct(), ImplCopyItem(), MenuBar::ImplCreate(), MenuBarWindow::ImplCreatePopup(), OutputDevice::ImplDrawRotateText(), ImplGetDefaultContextWindow(), ComboBox::ImplInit(), TabControl::ImplInit(), StatusBar::ImplInit(), ListBox::ImplInit(), Printer::ImplInitDisplay(), FloatingWindow::ImplInitFloating(), ImplListBox::ImplListBox(), TabDialog::ImplPosControls(), VirtualDevice::ImplSetOutputSizePixel(), ImplShowHelpWindow(), ImplDockingWindowWrapper::ImplStartDocking(), DockingWindow::ImplStartDocking(), ImplToolBoxPrivateData::ImplToolBoxPrivateData(), VclBuilder::makeObject(), NotebookBarAddonsMerger::MergeNotebookBarAddons(), NotebookbarTabControlBase::NotebookbarTabControlBase(), vcl::RoadmapItem::RoadmapItem(), ImplBorderWindow::SetNotebookBar(), vcl::Window::StartAutoScroll(), SvInplaceEdit2::SvInplaceEdit2(), and WMFWriter::WriteWMF().
Definition at line 200 of file vclptr.hxx.
Referenced by ToolBox::CalcMinimumWindowSizePixel(), DecoToolBox::calcMinSize(), ImplBorderWindow::CloseNotebookBar(), SvImpLBox::Command(), DeInitVCL(), SpinField::dispose(), TabDialog::dispose(), MessageDialog::dispose(), ComboBox::dispose(), OpenGLContext::dispose(), MenuBarWindow::dispose(), vcl::RoadmapWizard::dispose(), ImplBorderWindow::dispose(), ListBox::dispose(), Edit::dispose(), NotebookbarTabControlBase::dispose(), Printer::dispose(), VerticalTabControl::dispose(), VclPaned::dispose(), OutputDevice::dispose(), ImplListBox::dispose(), VclExpander::dispose(), VclScrolledWindow::dispose(), ScopedVclPtr< VirtualDevice >::disposeAndReset(), Dialog::disposeOwnedButtons(), ImplAnimView::draw(), OutputDevice::DrawTransparent(), vcl::Window::EndAutoScroll(), SvxIconChoiceCtrl_Impl::FontModified(), Help::HidePopover(), MenuBarWindow::ImplCreatePopup(), ImplDestroyHelpWindow(), PopupMenu::ImplExecute(), ComboBox::Impl::ImplInitComboBoxData(), SpinField::ImplInitSpinFieldData(), vcl::Window::ImplPaintToDevice(), VirtualDevice::ImplSetOutputSizePixel(), ImplDockingWindowWrapper::ImplStartDocking(), DockingWindow::ImplStartDocking(), OpenGLContext::init(), vcl::Window::SetBorderStyle(), ImplDockingWindowWrapper::SetFloatingMode(), DockingWindow::SetFloatingMode(), ImplBorderWindow::SetNotebookBar(), Printer::SetPrinterProps(), Edit::SetSubEdit(), Dialog::StartExecuteAsync(), WMFWriter::WriteWMF(), ImplAnimView::~ImplAnimView(), ImpVclMEdit::~ImpVclMEdit(), OpenGLContext::~OpenGLContext(), vcl::RoadmapItem::~RoadmapItem(), SalInstanceBuilder::~SalInstanceBuilder(), ScopedVclPtr< VirtualDevice >::~ScopedVclPtr(), SvImpLBox::~SvImpLBox(), SvInplaceEdit2::~SvInplaceEdit2(), SvxIconChoiceCtrl_Impl::~SvxIconChoiceCtrl_Impl(), and TextEngine::~TextEngine().
|
inline |
Get the body.
Can be used instead of operator->(). I.e. handle->someBodyOp() and handle.get()->someBodyOp() are the same.
Definition at line 143 of file vclptr.hxx.
Referenced by VclExpander::calculateRequisition(), MenuButton::CancelMenu(), vcl::Window::CaptureMouse(), MenuBarWindow::ChangeHighlightItem(), GDIMetaFile::Clip(), SvImpLBox::Command(), MessageDialog::create_message_area(), GDIMetaFile::CreateThumbnail(), IntroWindow::dispose(), Menu::dispose(), vcl::Window::dispose(), PaintHelper::DoPaint(), DNDEventDispatcher::dragOver(), ImplAnimView::draw(), DecorationView::DrawSeparator(), ImplAnimView::drawToPos(), OutputDevice::DrawTransparent(), DNDEventDispatcher::drop(), DNDEventDispatcher::dropActionChanged(), WindowUIObject::dumpHierarchy(), vcl::Window::EndAutoScroll(), MenuFloatingWindow::EndExecute(), vcl::Window::EndTracking(), MenuFloatingWindow::Execute(), ButtonUIObject::execute(), MenuButton::ExecuteMenu(), GraphicFilter::ExportGraphic(), VclBuilder::get(), WindowUIObject::get_child(), VclEventBox::get_child(), WindowUIObject::get_children(), SalInstanceTreeView::get_column_title(), SalInstanceTreeView::get_column_width(), MessageDialog::get_message_area(), SalInstanceTreeView::get_sort_indicator(), WindowUIObject::get_state(), GDIMetaFile::GetBoundRect(), ImplListBox::GetMainWindow(), MenuBar::getMenuBarWindow(), VerticalTabControl::GetPageParent(), Menu::GetPopupMenu(), Application::GetTopWindow(), Application::GetTopWindowCount(), ImpVclMEdit::HandleCommand(), VclBuilder::handleObject(), vcl::Window::HasActiveChildFrame(), SalInstanceTreeView::hide(), Menu::HighlightItem(), IMPL_LINK(), GDIMetaFile::ImplAddGradientEx(), Menu::ImplCalcSize(), vcl::Window::ImplCallFocusChangeActivate(), TabControl::ImplChangeTabPage(), MenuBarWindow::ImplCreatePopup(), MenuFloatingWindow::ImplCursorUpDown(), ImplDockingWindowWrapper::ImplDockingWindowWrapper(), FloatingWindow::ImplEndPopupMode(), PopupMenu::ImplExecute(), Menu::ImplFillLayoutData(), ImplFrameData::ImplFrameData(), ImpGraphic::ImplGetBitmap(), vcl::Window::ImplGrabFocus(), ImplHandleMouseEvent(), ImplHandleResize(), ToolBox::ImplHideFocus(), Menu::ImplPaint(), ImplDockingWindowWrapper::ImplPreparePopupMode(), MenuFloatingWindow::ImplScroll(), ToolBox::ImplShowFocus(), EMFWriter::ImplWriteTextRecord(), OpenGLContext::init(), ImplSmallBorderWindowView::Init(), MenuButton::InPopupMode(), VclBuilder::insertObject(), Menu::IsHighlighted(), MenuFloatingWindow::KeyInput(), MenuBarWindow::LayoutChanged(), UITestLogger::logAction(), UITestLogger::logKeyInput(), VclBuilder::makeObject(), NotebookBarAddonsMerger::MergeNotebookBarAddons(), GDIMetaFile::Move(), vcl::BufferDevice::operator->(), VclPtr< VirtualDevice >::operator=(), ScopedVclPtr< VirtualDevice >::operator=(), operator==(), IconViewImpl::Paint(), TabControl::Paint(), vcl::PDFWriterImpl::playMetafile(), vcl::PrintDialog::PrintPreviewWindow::preparePreviewBitmap(), OutputDevice::RemoveTransparenciesFromMetaFile(), vcl::Window::RemoveUserEvent(), GDIMetaFile::Rotate(), SalInstanceTreeView::SalInstanceTreeView(), SalInstanceTreeView::set_column_fixed_widths(), SalInstanceTreeView::set_column_title(), MessageDialog::set_primary_text(), MessageDialog::set_secondary_text(), SalInstanceTreeView::set_sort_indicator(), VclExpander::setAllocation(), ImplDockingWindowWrapper::SetFloatingMode(), DockingWindow::SetFloatingMode(), Menu::SetPopupMenu(), vcl::Window::setPosSizePixel(), TabControl::SetTabPage(), vcl::PrinterController::setupPrinter(), vcl::Cursor::SetWindow(), SalInstanceTreeView::show(), Help::ShowPopover(), vcl::Window::StartAutoScroll(), vcl::Window::StartTracking(), ImplStdBorderWindowView::Tracking(), ImplMenuDelData::~ImplMenuDelData(), SalInstanceBuilder::~SalInstanceBuilder(), and SalInstanceTreeView::~SalInstanceTreeView().
|
inlineexplicit |
Definition at line 185 of file vclptr.hxx.
|
inline |
Definition at line 180 of file vclptr.hxx.
|
inline |
Probably most common used: handle->someBodyOp().
Definition at line 134 of file vclptr.hxx.
|
inline |
Needed to place VclPtr's into STL collection.
Definition at line 212 of file vclptr.hxx.
|
default |
|
default |
|
inline |
Up-casting copy assignment operator.
Does not work for up-casts to ambiguous bases.
rRef | another reference |
Definition at line 168 of file vclptr.hxx.
|
inline |
Definition at line 174 of file vclptr.hxx.
|
inline |
Definition at line 153 of file vclptr.hxx.
Referenced by OpenGLContext::init().
Definition at line 195 of file vclptr.hxx.
Definition at line 148 of file vclptr.hxx.
Referenced by MessageDialog::create_message_area(), MessageDialog::create_owned_areas(), SalInstanceBuilder::create_screenshot_window(), ScopedVclPtr< VirtualDevice >::disposeAndReset(), SpinField::ImplInit(), Dialog::set_action_area(), Dialog::set_content_area(), Edit::SetSubEdit(), NotebookbarTabControlBase::SetToolBox(), SalInstanceBuilder::weld_about_dialog(), SalInstanceBuilder::weld_assistant(), SalInstanceBuilder::weld_dialog(), SalInstanceBuilder::weld_frame(), and SalInstanceBuilder::weld_message_dialog().
|
private |
Definition at line 62 of file vclptr.hxx.