LibreOffice Module svx (master)
1
svx
source
sidebar
media
MediaPlaybackPanel.hxx
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
#pragma once
20
21
#include <memory>
22
23
#include <
sfx2/sidebar/PanelLayout.hxx
>
24
#include <
avmedia/mediaitem.hxx
>
25
#include <
sfx2/bindings.hxx
>
26
#include <
sfx2/sidebar/ControllerItem.hxx
>
27
#include <
avmedia/MediaControlBase.hxx
>
28
#include <
vcl/idle.hxx
>
29
30
using namespace
css;
31
using namespace
::
com::sun::star::uno
;
32
using namespace
::
com::sun::star::frame
;
33
34
namespace
svx::sidebar
{
35
38
class
MediaPlaybackPanel
39
:
public
PanelLayout
,
40
public
::sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface
,
41
public
::avmedia::MediaControlBase
42
{
43
public
:
44
MediaPlaybackPanel
(
45
weld::Widget
* pParent,
46
SfxBindings
* pBindings);
47
static
std::unique_ptr<PanelLayout>
Create
(
48
weld::Widget
* pParent,
49
SfxBindings
* pBindings);
50
virtual
~MediaPlaybackPanel
()
override
;
51
52
protected
:
53
virtual
void
UpdateToolBoxes
(
const
avmedia::MediaItem
& rMediaItem)
override
;
54
55
private
:
56
std::unique_ptr< ::avmedia::MediaItem >
mpMediaItem
;
57
::sfx2::sidebar::ControllerItem
maMediaController
;
58
Idle
maIdle
;
59
SfxBindings
*
mpBindings
;
60
void
Initialize
();
61
void
Update
();
62
virtual
void
NotifyItemUpdate
(
const
sal_uInt16 nSID,
63
const
SfxItemState
eState,
64
const
SfxPoolItem
* pState)
override
;
65
66
virtual
void
GetControlState
(
67
const
sal_uInt16
/*nSId*/
,
68
boost::property_tree::ptree&
/*rState*/
)
override
{};
69
70
DECL_LINK
(PlayToolBoxSelectHdl,
const
OUString&,
void
);
71
DECL_LINK
(VolumeSlideHdl,
weld::Scale
&,
void
);
72
DECL_LINK
(SeekHdl,
weld::Scale
&,
void
);
73
74
DECL_LINK
(TimeoutHdl,
Timer
*,
void
);
75
};
76
77
78
}
// end of namespace svx::sidebar
79
80
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
ControllerItem.hxx
MediaControlBase.hxx
PanelLayout.hxx
bindings.hxx
Idle
PanelLayout
SfxBindings
SfxPoolItem
Timer
sfx2::sidebar::ControllerItem::ItemUpdateReceiverInterface
sfx2::sidebar::ControllerItem
svx::sidebar::MediaPlaybackPanel
This panel provides media playback control in document.
Definition:
MediaPlaybackPanel.hxx:42
svx::sidebar::MediaPlaybackPanel::Initialize
void Initialize()
Definition:
MediaPlaybackPanel.cxx:61
svx::sidebar::MediaPlaybackPanel::Update
void Update()
Definition:
MediaPlaybackPanel.cxx:101
svx::sidebar::MediaPlaybackPanel::NotifyItemUpdate
virtual void NotifyItemUpdate(const sal_uInt16 nSID, const SfxItemState eState, const SfxPoolItem *pState) override
Definition:
MediaPlaybackPanel.cxx:80
svx::sidebar::MediaPlaybackPanel::maMediaController
::sfx2::sidebar::ControllerItem maMediaController
Definition:
MediaPlaybackPanel.hxx:57
svx::sidebar::MediaPlaybackPanel::mpBindings
SfxBindings * mpBindings
Definition:
MediaPlaybackPanel.hxx:59
svx::sidebar::MediaPlaybackPanel::DECL_LINK
DECL_LINK(SeekHdl, weld::Scale &, void)
svx::sidebar::MediaPlaybackPanel::Create
static std::unique_ptr< PanelLayout > Create(weld::Widget *pParent, SfxBindings *pBindings)
Definition:
MediaPlaybackPanel.cxx:49
svx::sidebar::MediaPlaybackPanel::maIdle
Idle maIdle
Definition:
MediaPlaybackPanel.hxx:58
svx::sidebar::MediaPlaybackPanel::~MediaPlaybackPanel
virtual ~MediaPlaybackPanel() override
Definition:
MediaPlaybackPanel.cxx:75
svx::sidebar::MediaPlaybackPanel::DECL_LINK
DECL_LINK(TimeoutHdl, Timer *, void)
svx::sidebar::MediaPlaybackPanel::UpdateToolBoxes
virtual void UpdateToolBoxes(const avmedia::MediaItem &rMediaItem) override
Definition:
MediaPlaybackPanel.cxx:95
svx::sidebar::MediaPlaybackPanel::DECL_LINK
DECL_LINK(PlayToolBoxSelectHdl, const OUString &, void)
svx::sidebar::MediaPlaybackPanel::mpMediaItem
std::unique_ptr< ::avmedia::MediaItem > mpMediaItem
Definition:
MediaPlaybackPanel.hxx:56
svx::sidebar::MediaPlaybackPanel::DECL_LINK
DECL_LINK(VolumeSlideHdl, weld::Scale &, void)
svx::sidebar::MediaPlaybackPanel::GetControlState
virtual void GetControlState(const sal_uInt16, boost::property_tree::ptree &) override
Definition:
MediaPlaybackPanel.hxx:66
svx::sidebar::MediaPlaybackPanel::MediaPlaybackPanel
MediaPlaybackPanel(weld::Widget *pParent, SfxBindings *pBindings)
Definition:
MediaPlaybackPanel.cxx:31
weld::Scale
weld::Widget
idle.hxx
mediaitem.hxx
com::sun::star::frame
com::sun::star::uno
svx::sidebar
SfxItemState
SfxItemState
avmedia::MediaItem
Generated on Sun Jul 30 2023 04:28:15 for LibreOffice Module svx (master) by
1.9.3