LibreOffice Module sw (master)
1
sw
source
core
inc
FormFieldButton.hxx
Go to the documentation of this file.
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
2
/*
3
* This file is part of the LibreOffice project.
4
*
5
* This Source Code Form is subject to the terms of the Mozilla Public
6
* License, v. 2.0. If a copy of the MPL was not distributed with this
7
* file, You can obtain one at http://mozilla.org/MPL/2.0/.
8
*/
9
10
#pragma once
11
12
#include <
vcl/ctrl.hxx
>
13
#include <
vcl/weld.hxx
>
14
#include <
swrect.hxx
>
15
16
class
SwEditWin
;
17
namespace
sw::mark
18
{
19
class
Fieldmark;
20
}
21
25
class
FormFieldButton
:
public
Control
26
{
27
public
:
28
FormFieldButton
(
SwEditWin
* pEditWin,
sw::mark::Fieldmark
& rFieldMark);
29
virtual
~FormFieldButton
()
override
;
30
virtual
void
dispose
()
override
;
31
32
void
CalcPosAndSize
(
const
SwRect
& rPortionPaintArea);
33
34
virtual
void
MouseButtonDown
(
const
MouseEvent
& rMEvt)
override
;
35
DECL_LINK
(FieldPopupModeEndHdl,
weld::Popover
&,
void
);
36
37
virtual
void
Paint
(
vcl::RenderContext
& rRenderContext,
const
tools::Rectangle
& rRect)
override
;
38
virtual
WindowHitTest
ImplHitTest
(
const
Point
& rFramePos)
override
;
39
40
virtual
void
LaunchPopup
();
41
virtual
void
DestroyPopup
();
42
43
private
:
44
tools::Rectangle
m_aFieldFramePixel
;
45
46
protected
:
47
sw::mark::Fieldmark
&
m_rFieldmark
;
48
std::unique_ptr<weld::Builder>
m_xFieldPopupBuilder
;
49
std::unique_ptr<weld::Popover>
m_xFieldPopup
;
50
};
51
52
/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */
Control
FormFieldButton
This button is shown when the cursor is on a form field with drop-down capability.
Definition:
FormFieldButton.hxx:26
FormFieldButton::CalcPosAndSize
void CalcPosAndSize(const SwRect &rPortionPaintArea)
Definition:
FormFieldButton.cxx:53
FormFieldButton::m_xFieldPopup
std::unique_ptr< weld::Popover > m_xFieldPopup
Definition:
FormFieldButton.hxx:49
FormFieldButton::dispose
virtual void dispose() override
Definition:
FormFieldButton.cxx:47
FormFieldButton::ImplHitTest
virtual WindowHitTest ImplHitTest(const Point &rFramePos) override
Definition:
FormFieldButton.cxx:147
FormFieldButton::DestroyPopup
virtual void DestroyPopup()
Definition:
FormFieldButton.cxx:41
FormFieldButton::m_aFieldFramePixel
tools::Rectangle m_aFieldFramePixel
Definition:
FormFieldButton.hxx:44
FormFieldButton::m_rFieldmark
sw::mark::Fieldmark & m_rFieldmark
Definition:
FormFieldButton.hxx:47
FormFieldButton::DECL_LINK
DECL_LINK(FieldPopupModeEndHdl, weld::Popover &, void)
FormFieldButton::MouseButtonDown
virtual void MouseButtonDown(const MouseEvent &rMEvt) override
Definition:
FormFieldButton.cxx:79
FormFieldButton::FormFieldButton
FormFieldButton(SwEditWin *pEditWin, sw::mark::Fieldmark &rFieldMark)
Definition:
FormFieldButton.cxx:17
FormFieldButton::Paint
virtual void Paint(vcl::RenderContext &rRenderContext, const tools::Rectangle &rRect) override
Definition:
FormFieldButton.cxx:101
FormFieldButton::LaunchPopup
virtual void LaunchPopup()
Definition:
FormFieldButton.cxx:32
FormFieldButton::m_xFieldPopupBuilder
std::unique_ptr< weld::Builder > m_xFieldPopupBuilder
Definition:
FormFieldButton.hxx:48
FormFieldButton::~FormFieldButton
virtual ~FormFieldButton() override
Definition:
FormFieldButton.cxx:30
MouseEvent
OutputDevice
Point
SwEditWin
Window class for the Writer edit area, this is the one handling mouse and keyboard events and doing t...
Definition:
edtwin.hxx:61
SwRect
Of course Writer needs its own rectangles.
Definition:
swrect.hxx:35
sw::mark::Fieldmark
Definition:
core/inc/bookmark.hxx:204
tools::Rectangle
weld::Popover
ctrl.hxx
sw::mark
Definition:
annotationmark.cxx:35
swrect.hxx
weld.hxx
WindowHitTest
WindowHitTest
Generated on Sun Jul 30 2023 04:28:36 for LibreOffice Module sw (master) by
1.9.3