LibreOffice Module sfx2 (master)
1
sfx2
source
sidebar
ControllerItem.cxx
Go to the documentation of this file.
1
/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
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
* This file incorporates work covered by the following license notice:
10
*
11
* Licensed to the Apache Software Foundation (ASF) under one or more
12
* contributor license agreements. See the NOTICE file distributed
13
* with this work for additional information regarding copyright
14
* ownership. The ASF licenses this file to you under the Apache
15
* License, Version 2.0 (the "License"); you may not use this file
16
* except in compliance with the License. You may obtain a copy of
17
* the License at http://www.apache.org/licenses/LICENSE-2.0 .
18
*/
19
#include <memory>
20
#include <
sfx2/sidebar/ControllerItem.hxx
>
21
22
#include <
sfx2/bindings.hxx
>
23
24
using namespace
css;
25
using namespace
css::uno;
26
27
namespace
sfx2::sidebar
{
28
29
ControllerItem::ControllerItem
(
30
const
sal_uInt16 nSlotId,
31
SfxBindings
&rBindings,
32
ItemUpdateReceiverInterface
& rItemUpdateReceiver)
33
:
SfxControllerItem
(nSlotId, rBindings),
34
mrItemUpdateReceiver(rItemUpdateReceiver)
35
{
36
}
37
38
ControllerItem::~ControllerItem
()
39
{
40
dispose
();
41
}
42
43
void
ControllerItem::StateChangedAtToolBoxControl
(
44
sal_uInt16 nSID,
45
SfxItemState
eState,
46
const
SfxPoolItem
* pState)
47
{
48
mrItemUpdateReceiver
.
NotifyItemUpdate
(nSID, eState, pState);
49
}
50
51
void
ControllerItem::GetControlState
(
52
sal_uInt16 nSID,
53
boost::property_tree::ptree& rState)
54
{
55
mrItemUpdateReceiver
.
GetControlState
(nSID, rState);
56
}
57
58
void
ControllerItem::RequestUpdate
()
59
{
60
std::unique_ptr<SfxPoolItem> pState;
61
const
SfxItemState
eState (
GetBindings
().QueryState(
GetId
(), pState));
62
mrItemUpdateReceiver
.
NotifyItemUpdate
(
GetId
(), eState, pState.get());
63
}
64
65
ControllerItem::ItemUpdateReceiverInterface::~ItemUpdateReceiverInterface
()
66
{
67
}
68
69
}
// end of namespace sfx2::sidebar
70
71
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
ControllerItem.hxx
bindings.hxx
SfxBindings
Definition:
bindings.hxx:92
SfxControllerItem
Definition:
ctrlitem.hxx:31
SfxControllerItem::GetBindings
SfxBindings & GetBindings()
Definition:
ctrlitem.hxx:39
SfxControllerItem::dispose
virtual void dispose()
Definition:
ctrlitem.cxx:196
SfxControllerItem::GetId
sal_uInt16 GetId() const
Definition:
ctrlitem.hxx:63
SfxPoolItem
sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface
Definition:
ControllerItem.hxx:41
sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface::GetControlState
virtual void GetControlState(const sal_uInt16 nSId, boost::property_tree::ptree &rState)=0
sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface::NotifyItemUpdate
virtual void NotifyItemUpdate(const sal_uInt16 nSId, const SfxItemState eState, const SfxPoolItem *pState)=0
sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface::~ItemUpdateReceiverInterface
virtual ~ItemUpdateReceiverInterface()
Definition:
ControllerItem.cxx:65
sfx2::sidebar::ControllerItem::StateChangedAtToolBoxControl
virtual void StateChangedAtToolBoxControl(sal_uInt16 nSId, SfxItemState eState, const SfxPoolItem *pState) override
Definition:
ControllerItem.cxx:43
sfx2::sidebar::ControllerItem::mrItemUpdateReceiver
ItemUpdateReceiverInterface & mrItemUpdateReceiver
Definition:
ControllerItem.hxx:74
sfx2::sidebar::ControllerItem::GetControlState
virtual void GetControlState(sal_uInt16 nSId, boost::property_tree::ptree &rState) override
Definition:
ControllerItem.cxx:51
sfx2::sidebar::ControllerItem::~ControllerItem
virtual ~ControllerItem() override
Definition:
ControllerItem.cxx:38
sfx2::sidebar::ControllerItem::RequestUpdate
void RequestUpdate()
Force the controller item to call its NotifyItemUpdate callback with up-to-date data.
Definition:
ControllerItem.cxx:58
sfx2::sidebar::ControllerItem::ControllerItem
ControllerItem(const sal_uInt16 nId, SfxBindings &rBindings, ItemUpdateReceiverInterface &rItemUpdateReceiver)
This is the simpler constructor variant that still exists for compatibility reasons.
Definition:
ControllerItem.cxx:29
sfx2::sidebar
Definition:
appdata.hxx:56
SfxItemState
SfxItemState
Generated on Sun Jul 30 2023 04:34:00 for LibreOffice Module sfx2 (master) by
1.9.3