LibreOffice Module avmedia (master)
1
avmedia
inc
mediacontrol.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
20
#pragma once
21
22
#include <
avmedia/mediaitem.hxx
>
23
24
#include <
vcl/InterimItemWindow.hxx
>
25
#include <
vcl/timer.hxx
>
26
#include <
vcl/idle.hxx
>
27
#include <
vcl/weld.hxx
>
28
#include <
avmedia/MediaControlBase.hxx
>
29
30
#define AVMEDIA_CONTROLOFFSET 6
31
32
namespace
avmedia
33
{
34
35
class
MediaItem;
36
37
class
MediaControl
:
public
InterimItemWindow
,
public
MediaControlBase
38
{
39
public
:
40
MediaControl
(
vcl::Window
* pParent,
MediaControlStyle
eControlStyle );
41
virtual
~MediaControl
()
override
;
42
virtual
void
dispose
()
override
;
43
44
void
setState
(
const
MediaItem
& rItem );
45
void
UpdateURLField
(
MediaItem
const
&
maItem
);
46
47
protected
:
48
49
virtual
void
update
() = 0;
50
virtual
void
execute
(
const
MediaItem
& rItem ) = 0;
51
52
virtual
void
InitializeWidgets
()
override
;
53
std::unique_ptr<weld::Label>
mxMediaPath
;
54
55
private
:
56
57
DECL_LINK
(implTimeHdl,
weld::Scale
&,
void
);
58
DECL_LINK
(implTimeEndHdl,
Timer
*,
void
);
59
DECL_LINK
(implVolumeHdl,
weld::Scale
&,
void
);
60
DECL_LINK
(implSelectHdl,
const
OUString&,
void
);
61
DECL_LINK
(implZoomSelectHdl,
weld::ComboBox
&,
void
);
62
DECL_LINK
(implTimeoutHdl,
Timer
*,
void
);
63
64
Idle
maIdle
;
65
Idle
maChangeTimeIdle
;
66
MediaItem
maItem
;
67
bool
mbLocked
;
68
MediaControlStyle
meControlStyle
;
69
};
70
71
}
72
73
/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
InterimItemWindow.hxx
MediaControlBase.hxx
Idle
InterimItemWindow
Timer
avmedia::MediaControl
Definition:
mediacontrol.hxx:38
avmedia::MediaControl::DECL_LINK
DECL_LINK(implTimeoutHdl, Timer *, void)
avmedia::MediaControl::MediaControl
MediaControl(vcl::Window *pParent, MediaControlStyle eControlStyle)
Definition:
mediacontrol.cxx:31
avmedia::MediaControl::maChangeTimeIdle
Idle maChangeTimeIdle
Definition:
mediacontrol.hxx:65
avmedia::MediaControl::mxMediaPath
std::unique_ptr< weld::Label > mxMediaPath
Definition:
mediacontrol.hxx:53
avmedia::MediaControl::setState
void setState(const MediaItem &rItem)
Definition:
mediacontrol.cxx:112
avmedia::MediaControl::InitializeWidgets
virtual void InitializeWidgets() override
Definition:
mediacontrol.cxx:84
avmedia::MediaControl::DECL_LINK
DECL_LINK(implSelectHdl, const OUString &, void)
avmedia::MediaControl::mbLocked
bool mbLocked
Definition:
mediacontrol.hxx:67
avmedia::MediaControl::DECL_LINK
DECL_LINK(implTimeHdl, weld::Scale &, void)
avmedia::MediaControl::meControlStyle
MediaControlStyle meControlStyle
Definition:
mediacontrol.hxx:68
avmedia::MediaControl::maIdle
Idle maIdle
Definition:
mediacontrol.hxx:64
avmedia::MediaControl::update
virtual void update()=0
avmedia::MediaControl::~MediaControl
virtual ~MediaControl() override
Definition:
mediacontrol.cxx:94
avmedia::MediaControl::execute
virtual void execute(const MediaItem &rItem)=0
avmedia::MediaControl::UpdateURLField
void UpdateURLField(MediaItem const &maItem)
Definition:
mediacontrol.cxx:106
avmedia::MediaControl::DECL_LINK
DECL_LINK(implZoomSelectHdl, weld::ComboBox &, void)
avmedia::MediaControl::maItem
MediaItem maItem
Definition:
mediacontrol.hxx:66
avmedia::MediaControl::DECL_LINK
DECL_LINK(implVolumeHdl, weld::Scale &, void)
avmedia::MediaControl::DECL_LINK
DECL_LINK(implTimeEndHdl, Timer *, void)
avmedia::MediaControl::dispose
virtual void dispose() override
Definition:
mediacontrol.cxx:99
avmedia::MediaItem
Definition:
mediaitem.hxx:71
weld::ComboBox
weld::Scale
idle.hxx
mediaitem.hxx
avmedia
avmedia::MediaControlStyle
MediaControlStyle
Definition:
MediaControlBase.hxx:40
vcl::Window
timer.hxx
weld.hxx
Generated on Sun Jul 30 2023 04:40:44 for LibreOffice Module avmedia (master) by
1.9.3