Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-gpu
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Redmine
Redmine
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Operations
Operations
Metrics
Environments
Analytics
Analytics
CI / CD
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
videolan
vlc-gpu
Commits
6e670ff2
Commit
6e670ff2
authored
Aug 26, 2006
by
Clément Stenac
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Volume control
parent
159fa24a
Changes
2
Hide whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
61 additions
and
2 deletions
+61
-2
modules/gui/qt4/main_interface.cpp
modules/gui/qt4/main_interface.cpp
+32
-0
modules/gui/qt4/main_interface.hpp
modules/gui/qt4/main_interface.hpp
+29
-2
No files found.
modules/gui/qt4/main_interface.cpp
View file @
6e670ff2
...
...
@@ -59,6 +59,11 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf )
ui
.
stopButton
->
setIcon
(
QIcon
(
":/pixmaps/stop.png"
)
);
ui
.
volLowLabel
->
setPixmap
(
QPixmap
(
":/pixmaps/volume-low.png"
)
);
ui
.
volHighLabel
->
setPixmap
(
QPixmap
(
":/pixmaps/volume-high.png"
)
);
ui
.
volumeSlider
->
setMaximum
(
100
);
VolumeClickHandler
*
h
=
new
VolumeClickHandler
(
this
);
ui
.
volLowLabel
->
installEventFilter
(
h
);
ui
.
volHighLabel
->
installEventFilter
(
h
);
QVLCMenu
::
createMenuBar
(
menuBar
(),
p_intf
);
...
...
@@ -99,6 +104,10 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf )
/* Init input manager */
MainInputManager
::
getInstance
(
p_intf
);
/* Volume control */
connect
(
ui
.
volumeSlider
,
SIGNAL
(
valueChanged
(
int
)
),
this
,
SLOT
(
updateVolume
(
int
)
)
);
/* Get timer updates */
connect
(
THEDP
->
fixed_timer
,
SIGNAL
(
timeout
()
),
this
,
SLOT
(
updateOnTimer
()
)
);
...
...
@@ -197,12 +206,25 @@ void MainInterface::setStatus( int status )
ui
.
playButton
->
setIcon
(
QIcon
(
":/pixmaps/play.png"
)
);
}
static
bool
b_my_volume
;
void
MainInterface
::
updateOnTimer
()
{
if
(
p_intf
->
b_die
)
{
QApplication
::
quit
();
}
audio_volume_t
i_volume
;
aout_VolumeGet
(
p_intf
,
&
i_volume
);
i_volume
=
(
i_volume
*
200
)
/
AOUT_VOLUME_MAX
;
int
i_gauge
=
ui
.
volumeSlider
->
value
();
b_my_volume
=
false
;
if
(
i_volume
-
i_gauge
>
1
||
i_gauge
-
i_volume
>
1
)
{
b_my_volume
=
true
;
ui
.
volumeSlider
->
setValue
(
i_volume
);
b_my_volume
=
false
;
}
}
void
MainInterface
::
closeEvent
(
QCloseEvent
*
e
)
...
...
@@ -211,6 +233,16 @@ void MainInterface::closeEvent( QCloseEvent *e )
p_intf
->
b_die
=
VLC_TRUE
;
}
void
MainInterface
::
updateVolume
(
int
sliderVolume
)
{
if
(
!
b_my_volume
)
{
int
i_res
=
sliderVolume
*
AOUT_VOLUME_MAX
/
(
2
*
ui
.
volumeSlider
->
maximum
()
);
aout_VolumeSet
(
p_intf
,
i_res
);
}
}
static
int
InteractCallback
(
vlc_object_t
*
p_this
,
const
char
*
psz_var
,
vlc_value_t
old_val
,
vlc_value_t
new_val
,
void
*
param
)
...
...
modules/gui/qt4/main_interface.hpp
View file @
6e670ff2
...
...
@@ -24,6 +24,7 @@
#define _MAIN_INTERFACE_H_
#include <vlc/intf.h>
#include <vlc/aout.h>
#include "ui/main_interface.h"
#include "util/qvlcframe.hpp"
...
...
@@ -32,7 +33,7 @@ class QLabel;
class
InputManager
;
class
InputSlider
;
class
VideoWidget
;
class
VolumeClickHandler
;
class
MainInterface
:
public
QVLCMW
{
Q_OBJECT
;
...
...
@@ -46,6 +47,8 @@ public:
protected:
void
closeEvent
(
QCloseEvent
*
);
Ui
::
MainInterfaceUI
ui
;
friend
class
VolumeClickHandler
;
private:
VideoWidget
*
videoWidget
;
InputManager
*
main_input_manager
;
...
...
@@ -54,7 +57,6 @@ private:
InputSlider
*
slider
;
/// Main input associated to the playlist
input_thread_t
*
p_input
;
Ui
::
MainInterfaceUI
ui
;
private
slots
:
void
setStatus
(
int
);
void
setName
(
QString
);
...
...
@@ -64,6 +66,31 @@ private slots:
void
stop
();
void
prev
();
void
next
();
void
updateVolume
(
int
sliderVolume
);
};
class
VolumeClickHandler
:
public
QObject
{
public:
VolumeClickHandler
(
MainInterface
*
_m
)
:
QObject
(
_m
)
{
m
=
_m
;
}
virtual
~
VolumeClickHandler
()
{};
bool
eventFilter
(
QObject
*
obj
,
QEvent
*
e
)
{
if
(
e
->
type
()
==
QEvent
::
MouseButtonPress
)
{
if
(
obj
->
objectName
()
==
"volLowLabel"
)
{
m
->
ui
.
volumeSlider
->
setValue
(
0
);
}
else
m
->
ui
.
volumeSlider
->
setValue
(
100
);
return
true
;
}
return
false
;
}
private:
MainInterface
*
m
;
};
#endif
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment