Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
V
vlc-2-2
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-2-2
Commits
b83c1d09
Commit
b83c1d09
authored
Nov 25, 2007
by
Jean-Baptiste Kempf
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Qt4 - lame attempt for the resizing of the interface.
parent
70027747
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
133 additions
and
93 deletions
+133
-93
modules/gui/qt4/components/interface_widgets.cpp
modules/gui/qt4/components/interface_widgets.cpp
+76
-59
modules/gui/qt4/components/interface_widgets.hpp
modules/gui/qt4/components/interface_widgets.hpp
+5
-6
modules/gui/qt4/dialogs/playlist.cpp
modules/gui/qt4/dialogs/playlist.cpp
+3
-2
modules/gui/qt4/dialogs/playlist.hpp
modules/gui/qt4/dialogs/playlist.hpp
+1
-0
modules/gui/qt4/main_interface.cpp
modules/gui/qt4/main_interface.cpp
+45
-24
modules/gui/qt4/main_interface.hpp
modules/gui/qt4/main_interface.hpp
+3
-2
No files found.
modules/gui/qt4/components/interface_widgets.cpp
View file @
b83c1d09
...
...
@@ -41,9 +41,6 @@
#include <QPalette>
#include <QResizeEvent>
#define ICON_SIZE 128
#define MAX_BG_SIZE 300
/**********************************************************************
* Video Widget. A simple frame on which video is drawn
* This class handles resize issues
...
...
@@ -57,6 +54,7 @@ VideoWidget::VideoWidget( intf_thread_t *_p_i ) : QFrame( NULL ), p_intf( _p_i )
{
vlc_mutex_init
(
p_intf
,
&
lock
);
p_vout
=
NULL
;
CONNECT
(
this
,
askResize
(),
this
,
SetMinSize
()
);
CONNECT
(
this
,
askVideoToShow
(),
this
,
show
()
);
setSizePolicy
(
QSizePolicy
::
Preferred
,
QSizePolicy
::
Preferred
);
...
...
@@ -110,37 +108,48 @@ void VideoWidget::release( void *p_win )
{
p_vout
=
NULL
;
}
/**********************************************************************
* Background Widget. Show a simple image background. Currently,
* it's a static cone.
**********************************************************************/
#define ICON_SIZE 128
#define MAX_BG_SIZE 400
#define MIN_BG_SIZE 64
BackgroundWidget
::
BackgroundWidget
(
intf_thread_t
*
_p_i
)
:
QFrame
(
NULL
),
p_intf
(
_p_i
)
{
/* We should use that one to take the more size it can */
setSizePolicy
(
QSizePolicy
::
Preferred
,
QSizePolicy
::
MinimumExpanding
);
/* A dark background */
setAutoFillBackground
(
true
);
plt
=
palette
();
plt
.
setColor
(
QPalette
::
Active
,
QPalette
::
Window
,
Qt
::
black
);
plt
.
setColor
(
QPalette
::
Inactive
,
QPalette
::
Window
,
Qt
::
black
);
setPalette
(
plt
);
setSizePolicy
(
QSizePolicy
::
Preferred
,
QSizePolicy
::
Preferred
);
/* A cone in the middle */
label
=
new
QLabel
;
// label->setScaledContents( true );
label
->
setMargin
(
5
);
label
->
setMaximumHeight
(
MAX_BG_SIZE
);
label
->
setMaximumWidth
(
MAX_BG_SIZE
);
label
->
setScaledContents
(
true
);
label
->
setMinimumHeight
(
MIN_BG_SIZE
);
label
->
setMinimumWidth
(
MIN_BG_SIZE
);
label
->
setPixmap
(
QPixmap
(
":/vlc128.png"
)
);
backgroundLayout
=
new
QHBoxLayout
;
QVBoxLayout
*
backgroundLayout
=
new
QVBoxLayout
(
this
);
backgroundLayout
->
addWidget
(
label
);
setLayout
(
backgroundLayout
);
resize
(
300
,
150
);
updateGeometry
();
}
BackgroundWidget
::~
BackgroundWidget
()
{
backgroundLayout
->
takeAt
(
0
);
delete
backgroundLayout
;
}
{}
void
BackgroundWidget
::
setArt
(
QString
url
)
{
...
...
@@ -153,20 +162,15 @@ void BackgroundWidget::setArt( QString url )
QSize
BackgroundWidget
::
sizeHint
()
const
{
return
label
->
maximumS
ize
();
return
label
->
s
ize
();
}
void
BackgroundWidget
::
resizeEvent
(
QResizeEvent
*
e
)
{
if
(
e
->
size
().
height
()
<
MAX_BG_SIZE
-
1
)
msg_Dbg
(
p_intf
,
"BG size, %i, %i"
,
e
->
size
().
width
(),
e
->
size
().
height
()
);
if
(
e
->
size
().
height
()
<
label
->
height
()
)
{
label
->
setMaximumWidth
(
e
->
size
().
height
()
);
label
->
setMaximumHeight
(
e
->
size
().
width
()
);
}
else
{
label
->
setMaximumHeight
(
MAX_BG_SIZE
);
label
->
setMaximumWidth
(
MAX_BG_SIZE
);
label
->
resize
(
e
->
size
().
height
(),
e
->
size
().
height
()
);
}
}
...
...
@@ -174,11 +178,12 @@ void BackgroundWidget::contextMenuEvent( QContextMenuEvent *event )
{
QVLCMenu
::
PopupMenu
(
p_intf
,
true
);
}
/**********************************************************************
* Visualization selector panel
**********************************************************************/
VisualSelector
::
VisualSelector
(
intf_thread_t
*
_p_i
)
:
QFrame
(
NULL
),
p_intf
(
_p_i
)
QFrame
(
NULL
),
p_intf
(
_p_i
)
{
QHBoxLayout
*
layout
=
new
QHBoxLayout
(
this
);
layout
->
setMargin
(
0
);
...
...
@@ -203,7 +208,6 @@ VisualSelector::VisualSelector( intf_thread_t *_p_i ) :
VisualSelector
::~
VisualSelector
()
{
}
void
VisualSelector
::
prev
()
...
...
@@ -242,25 +246,24 @@ AdvControlsWidget::AdvControlsWidget( intf_thread_t *_p_i ) :
advLayout
->
setMargin
(
0
);
advLayout
->
setSpacing
(
0
);
/* FIXME A to B functi
on */
/* A to B Butt
on */
ABButton
=
new
QPushButton
(
"AB"
);
ABButton
->
setMaximumSize
(
QSize
(
26
,
26
)
);
ABButton
->
setIconSize
(
QSize
(
20
,
20
)
);
advLayout
->
addWidget
(
ABButton
);
BUTTON_SET_ACT
(
ABButton
,
"AB"
,
qtr
(
"A to B"
),
fromAtoB
()
);
timeA
=
0
;
timeB
=
0
;
timeA
=
timeB
=
0
;
CONNECT
(
THEMIM
->
getIM
(),
positionUpdated
(
float
,
int
,
int
),
this
,
AtoBLoop
(
float
,
int
,
int
)
);
//FIXME Frame by frame function
//FIXME Frame by frame function
frameButton
=
new
QPushButton
(
"Fr"
);
frameButton
->
setMaximumSize
(
QSize
(
26
,
26
)
);
frameButton
->
setIconSize
(
QSize
(
20
,
20
)
);
advLayout
->
addWidget
(
frameButton
);
BUTTON_SET_ACT
(
frameButton
,
"Fr"
,
qtr
(
"Frame by Frame"
),
frame
()
);
/* FIXME Record function */
/* FIXME Record function */
recordButton
=
new
QPushButton
(
"R"
);
recordButton
->
setMaximumSize
(
QSize
(
26
,
26
)
);
recordButton
->
setIconSize
(
QSize
(
20
,
20
)
);
...
...
@@ -268,23 +271,23 @@ AdvControlsWidget::AdvControlsWidget( intf_thread_t *_p_i ) :
BUTTON_SET_ACT_I
(
recordButton
,
""
,
record_16px
.
png
,
qtr
(
"Record"
),
record
()
);
/* Snapshot Button */
snapshotButton
=
new
QPushButton
(
"S"
);
snapshotButton
->
setMaximumSize
(
QSize
(
26
,
26
)
);
snapshotButton
->
setIconSize
(
QSize
(
20
,
20
)
);
advLayout
->
addWidget
(
snapshotButton
);
BUTTON_SET_ACT
(
snapshotButton
,
"S"
,
qtr
(
"Take a snapshot"
),
snapshot
()
);
}
AdvControlsWidget
::~
AdvControlsWidget
()
{
}
{}
void
AdvControlsWidget
::
enableInput
(
bool
enable
)
{
ABButton
->
setEnabled
(
enable
);
recordButton
->
setEnabled
(
enable
);
}
void
AdvControlsWidget
::
enableVideo
(
bool
enable
)
{
snapshotButton
->
setEnabled
(
enable
);
...
...
@@ -293,14 +296,12 @@ void AdvControlsWidget::enableVideo( bool enable )
void
AdvControlsWidget
::
snapshot
()
{
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
vlc_object_find
(
p_intf
,
VLC_OBJECT_VOUT
,
FIND_ANYWHERE
);
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
vlc_object_find
(
p_intf
,
VLC_OBJECT_VOUT
,
FIND_ANYWHERE
);
if
(
p_vout
)
vout_Control
(
p_vout
,
VOUT_SNAPSHOT
);
}
void
AdvControlsWidget
::
frame
()
{
}
/* Function called when the button is clicked() */
void
AdvControlsWidget
::
fromAtoB
()
{
if
(
!
timeA
)
...
...
@@ -321,8 +322,7 @@ void AdvControlsWidget::fromAtoB()
ABButton
->
setText
(
"AB"
);
}
void
AdvControlsWidget
::
record
(){}
/* Function called regularly when in an AtoB loop */
void
AdvControlsWidget
::
AtoBLoop
(
float
f_pos
,
int
i_time
,
int
i_length
)
{
if
(
timeB
)
...
...
@@ -332,24 +332,27 @@ void AdvControlsWidget::AtoBLoop( float f_pos, int i_time, int i_length )
}
}
void
AdvControlsWidget
::
record
(){}
void
AdvControlsWidget
::
frame
(){}
/*****************************
* DA Control Widget !
*****************************/
ControlsWidget
::
ControlsWidget
(
intf_thread_t
*
_p_i
,
bool
b_advControls
,
bool
b_shiny
)
:
QFrame
(
NULL
),
p_intf
(
_p_i
)
QFrame
(
NULL
),
p_intf
(
_p_i
)
{
controlLayout
=
new
QGridLayout
(
this
);
controlLayout
->
setSpacing
(
0
);
setSizePolicy
(
QSizePolicy
::
Preferred
,
QSizePolicy
::
Fixed
);
setSizePolicy
(
QSizePolicy
::
Preferred
,
QSizePolicy
::
Minimum
);
/** The main Slider **/
slider
=
new
InputSlider
(
Qt
::
Horizontal
,
NULL
);
controlLayout
->
addWidget
(
slider
,
0
,
1
,
1
,
16
);
/* Update the position when the IM has changed */
CONNECT
(
THEMIM
->
getIM
(),
positionUpdated
(
float
,
int
,
int
),
slider
,
setPosition
(
float
,
int
,
int
)
);
slider
,
setPosition
(
float
,
int
,
int
)
);
/* And update the IM, when the position has changed */
CONNECT
(
slider
,
sliderDragged
(
float
),
THEMIM
->
getIM
(),
sliderUpdate
(
float
)
);
...
...
@@ -431,7 +434,7 @@ ControlsWidget::ControlsWidget( intf_thread_t *_p_i,
playButton
->
setMinimumSize
(
QSize
(
45
,
45
)
);
playButton
->
setIconSize
(
QSize
(
30
,
30
)
);
controlLayout
->
addWidget
(
playButton
,
2
,
0
,
2
,
2
);
controlLayout
->
addWidget
(
playButton
,
2
,
0
,
2
,
2
,
Qt
::
AlignBottom
);
controlLayout
->
setColumnMinimumWidth
(
2
,
20
);
controlLayout
->
setColumnStretch
(
2
,
0
);
...
...
@@ -462,7 +465,7 @@ ControlsWidget::ControlsWidget( intf_thread_t *_p_i,
controlButLayout
->
addWidget
(
nextButton
);
/* Add this block to the main layout */
controlLayout
->
addLayout
(
controlButLayout
,
3
,
3
,
1
,
3
);
controlLayout
->
addLayout
(
controlButLayout
,
3
,
3
,
1
,
3
,
Qt
::
AlignBottom
);
BUTTON_SET_ACT_I
(
playButton
,
""
,
play
.
png
,
qtr
(
"Play"
),
play
()
);
BUTTON_SET_ACT_I
(
prevButton
,
""
,
previous
.
png
,
...
...
@@ -481,12 +484,12 @@ ControlsWidget::ControlsWidget( intf_thread_t *_p_i,
fullscreenButton
=
new
QPushButton
(
"F"
);
BUTTON_SET_ACT
(
fullscreenButton
,
"F"
,
qtr
(
"Fullscreen"
),
fullscreen
()
);
setupSmallButton
(
fullscreenButton
);
controlLayout
->
addWidget
(
fullscreenButton
,
3
,
10
);
controlLayout
->
addWidget
(
fullscreenButton
,
3
,
10
,
Qt
::
AlignBottom
);
/** Playlist Button **/
playlistButton
=
new
QPushButton
;
setupSmallButton
(
playlistButton
);
controlLayout
->
addWidget
(
playlistButton
,
3
,
11
);
controlLayout
->
addWidget
(
playlistButton
,
3
,
11
,
Qt
::
AlignBottom
);
BUTTON_SET_IMG
(
playlistButton
,
""
,
playlist
.
png
,
qtr
(
"Show playlist"
)
);
/** extended Settings **/
...
...
@@ -494,7 +497,7 @@ ControlsWidget::ControlsWidget( intf_thread_t *_p_i,
BUTTON_SET_ACT
(
extSettingsButton
,
"Ex"
,
qtr
(
"Extended Settings"
),
extSettings
()
);
setupSmallButton
(
extSettingsButton
);
controlLayout
->
addWidget
(
extSettingsButton
,
3
,
12
);
controlLayout
->
addWidget
(
extSettingsButton
,
3
,
12
,
Qt
::
AlignBottom
);
controlLayout
->
setColumnStretch
(
14
,
5
);
...
...
@@ -505,7 +508,7 @@ ControlsWidget::ControlsWidget( intf_thread_t *_p_i,
volMuteLabel
->
setPixmap
(
QPixmap
(
":/pixmaps/volume-high.png"
)
);
volMuteLabel
->
setToolTip
(
qtr
(
"Mute"
)
);
volMuteLabel
->
installEventFilter
(
hVolLabel
);
controlLayout
->
addWidget
(
volMuteLabel
,
3
,
15
);
controlLayout
->
addWidget
(
volMuteLabel
,
3
,
15
,
Qt
::
AlignBottom
);
if
(
b_shiny
)
{
...
...
@@ -521,7 +524,7 @@ ControlsWidget::ControlsWidget( intf_thread_t *_p_i,
volumeSlider
->
setMaximumSize
(
QSize
(
200
,
40
)
);
volumeSlider
->
setMinimumSize
(
QSize
(
80
,
20
)
);
volumeSlider
->
setFocusPolicy
(
Qt
::
NoFocus
);
controlLayout
->
addWidget
(
volumeSlider
,
3
,
16
,
1
,
2
);
controlLayout
->
addWidget
(
volumeSlider
,
3
,
16
,
1
,
2
,
Qt
::
AlignBottom
);
/* Set the volume from the config */
volumeSlider
->
setValue
(
(
config_GetInt
(
p_intf
,
"volume"
)
)
*
...
...
@@ -532,15 +535,17 @@ ControlsWidget::ControlsWidget( intf_thread_t *_p_i,
CONNECT
(
volumeSlider
,
valueChanged
(
int
),
this
,
updateVolume
(
int
)
);
msg_Dbg
(
p_intf
,
"controls size: %i - %i"
,
size
().
width
(),
size
().
height
()
);
}
ControlsWidget
::~
ControlsWidget
()
{
}
/*
QSize ControlsWidget::sizeHint() const
{
return QSize( 300, 50 );
}
*/
void
ControlsWidget
::
stop
()
{
...
...
@@ -646,7 +651,8 @@ void ControlsWidget::setStatus( int status )
*/
void
ControlsWidget
::
fullscreen
()
{
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
vlc_object_find
(
p_intf
,
VLC_OBJECT_VOUT
,
FIND_ANYWHERE
);
vout_thread_t
*
p_vout
=
(
vout_thread_t
*
)
vlc_object_find
(
p_intf
,
VLC_OBJECT_VOUT
,
FIND_ANYWHERE
);
if
(
p_vout
)
{
var_SetBool
(
p_vout
,
"fullscreen"
,
!
var_GetBool
(
p_vout
,
"fullscreen"
)
);
...
...
@@ -710,9 +716,16 @@ void ControlsWidget::toggleAdvanced()
#include "components/playlist/panels.hpp"
#include "components/playlist/selector.hpp"
PlaylistWidget
::
PlaylistWidget
(
intf_thread_t
*
_p_i
)
:
#include <QSplitter>
PlaylistWidget
::
PlaylistWidget
(
intf_thread_t
*
_p_i
,
QSettings
*
settings
)
:
p_intf
(
_p_i
)
{
/* In case we want to keep the splitter informations */
settings
->
beginGroup
(
"Playlist"
);
restoreState
(
settings
->
value
(
"splitterSizes"
).
toByteArray
());
settings
->
endGroup
();
/* Left Part and design */
QWidget
*
leftW
=
new
QWidget
(
this
);
QVBoxLayout
*
left
=
new
QVBoxLayout
(
leftW
);
...
...
@@ -760,10 +773,10 @@ PlaylistWidget::PlaylistWidget( intf_thread_t *_p_i ) :
setCollapsible
(
1
,
false
);
QList
<
int
>
sizeList
;
sizeList
<<
180
<<
5
20
;
sizeList
<<
180
<<
4
20
;
setSizes
(
sizeList
);
setSizePolicy
(
QSizePolicy
::
Preferred
,
QSizePolicy
::
Preferred
);
resize
(
700
,
200
);
resize
(
600
,
300
);
updateGeometry
();
}
...
...
@@ -784,13 +797,20 @@ void PlaylistWidget::setArt( QString url )
QSize
PlaylistWidget
::
sizeHint
()
const
{
return
QSize
(
700
,
2
00
);
return
QSize
(
600
,
3
00
);
}
PlaylistWidget
::~
PlaylistWidget
()
{
}
void
PlaylistWidget
::
saveSettings
(
QSettings
*
settings
)
{
settings
->
beginGroup
(
"Playlist"
);
settings
->
setValue
(
"splitterSizes"
,
saveState
()
);
settings
->
endGroup
();
}
/**********************************************************************
* Speed control widget
**********************************************************************/
...
...
@@ -828,8 +848,7 @@ SpeedControlWidget::SpeedControlWidget( intf_thread_t *_p_i ) :
}
SpeedControlWidget
::~
SpeedControlWidget
()
{
}
{}
#define RATE_SLIDER_MAXIMUM 3.0
#define RATE_SLIDER_MINIMUM 0.3
...
...
@@ -884,12 +903,12 @@ void SpeedControlWidget::updateRate( int sliderValue )
if
(
sliderValue
<
0.0
)
{
rate
=
INPUT_RATE_DEFAULT
*
RATE_SLIDER_LENGTH
/
(
sliderValue
*
(
1.0
-
RATE_SLIDER_MINIMUM
)
+
RATE_SLIDER_LENGTH
)
;
(
sliderValue
*
(
1.0
-
RATE_SLIDER_MINIMUM
)
+
RATE_SLIDER_LENGTH
)
;
}
else
{
rate
=
INPUT_RATE_DEFAULT
*
RATE_SLIDER_LENGTH
/
(
sliderValue
*
(
RATE_SLIDER_MAXIMUM
-
1.0
)
+
RATE_SLIDER_LENGTH
);
(
sliderValue
*
(
RATE_SLIDER_MAXIMUM
-
1.0
)
+
RATE_SLIDER_LENGTH
);
}
THEMIM
->
getIM
()
->
setRate
(
rate
);
...
...
@@ -899,5 +918,3 @@ void SpeedControlWidget::resetRate()
{
THEMIM
->
getIM
()
->
setRate
(
INPUT_RATE_DEFAULT
);
}
modules/gui/qt4/components/interface_widgets.hpp
View file @
b83c1d09
...
...
@@ -83,11 +83,8 @@ public:
private:
QPalette
plt
;
QLabel
*
label
;
QHBoxLayout
*
backgroundLayout
;
virtual
void
resizeEvent
(
QResizeEvent
*
e
);
virtual
void
contextMenuEvent
(
QContextMenuEvent
*
event
);
int
DrawBackground
();
int
CleanBackground
();
intf_thread_t
*
p_intf
;
public
slots
:
void
setArt
(
QString
);
...
...
@@ -149,7 +146,7 @@ class ControlsWidget : public QFrame
public:
/* p_intf, advanced control visible or not, blingbling or not */
ControlsWidget
(
intf_thread_t
*
,
bool
,
bool
);
QSize
sizeHint
()
const
;
//
QSize sizeHint() const;
virtual
~
ControlsWidget
();
QPushButton
*
playlistButton
;
...
...
@@ -239,14 +236,16 @@ class QSignalMapper;
class
PLSelector
;
class
PLPanel
;
class
QPushButton
;
class
QSettings
;
class
PlaylistWidget
:
public
QSplitter
{
Q_OBJECT
;
public:
PlaylistWidget
(
intf_thread_t
*
_p_i
)
;
PlaylistWidget
(
intf_thread_t
*
_p_i
,
QSettings
*
settings
)
;
virtual
~
PlaylistWidget
();
QSize
sizeHint
()
const
;
void
saveSettings
(
QSettings
*
settings
);
private:
PLSelector
*
selector
;
PLPanel
*
rightPanel
;
...
...
@@ -254,7 +253,7 @@ private:
QLabel
*
art
;
QString
prevArt
;
protected:
intf_thread_t
*
p_intf
;
intf_thread_t
*
p_intf
;
private
slots
:
void
setArt
(
QString
);
signals:
...
...
modules/gui/qt4/dialogs/playlist.cpp
View file @
b83c1d09
...
...
@@ -37,7 +37,8 @@
PlaylistDialog
*
PlaylistDialog
::
instance
=
NULL
;
PlaylistDialog
::
PlaylistDialog
(
intf_thread_t
*
_p_intf
)
:
QVLCMW
(
_p_intf
)
PlaylistDialog
::
PlaylistDialog
(
intf_thread_t
*
_p_intf
)
:
QVLCMW
(
_p_intf
)
{
QWidget
*
main
=
new
QWidget
(
this
);
setCentralWidget
(
main
);
...
...
@@ -45,7 +46,7 @@ PlaylistDialog::PlaylistDialog( intf_thread_t *_p_intf ) : QVLCMW( _p_intf )
setWindowOpacity
(
config_GetFloat
(
p_intf
,
"qt-opacity"
)
);
QHBoxLayout
*
l
=
new
QHBoxLayout
(
centralWidget
()
);
PlaylistWidget
*
plw
=
new
PlaylistWidget
(
p_intf
);
PlaylistWidget
*
plw
=
new
PlaylistWidget
(
p_intf
,
NULL
);
l
->
addWidget
(
plw
);
readSettings
(
"playlist"
,
QSize
(
600
,
700
)
);
...
...
modules/gui/qt4/dialogs/playlist.hpp
View file @
b83c1d09
...
...
@@ -31,6 +31,7 @@
class
QSignalMapper
;
class
PLSelector
;
class
PLPanel
;
class
QSettings
;
class
PlaylistDialog
:
public
QVLCMW
{
...
...
modules/gui/qt4/main_interface.cpp
View file @
b83c1d09
...
...
@@ -96,9 +96,10 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf )
bgWidget
=
NULL
;
videoWidget
=
NULL
;
playlistWidget
=
NULL
;
embeddedPlaylistWasActive
=
videoIsActive
=
false
;
input_name
=
""
;
playlistWidget
=
new
PlaylistWidget
(
p_intf
);
/* Ask for the network policy on first startup */
/**
* Ask for the network policy on FIRST STARTUP
*/
if
(
config_GetInt
(
p_intf
,
"privacy-ask"
)
)
{
QList
<
ConfigControl
*>
controls
;
...
...
@@ -145,16 +146,15 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf )
* UI and Widgets design
**************************/
setVLCWindowsTitle
();
dockPL
=
new
QDockWidget
(
qtr
(
"Playlist"
),
thi
s
);
handleMainUi
(
setting
s
);
/* Create a Dock to get the playlist */
handleMainUi
(
setting
s
);
dockPL
=
new
QDockWidget
(
qtr
(
"Playlist"
),
thi
s
);
dockPL
->
setAllowedAreas
(
Qt
::
LeftDockWidgetArea
|
Qt
::
RightDockWidgetArea
|
Qt
::
BottomDockWidgetArea
);
dockPL
->
setFeatures
(
QDockWidget
::
AllDockWidgetFeatures
);
dockPL
->
setWidget
(
playlistWidget
);
addDockWidget
(
Qt
::
BottomDockWidgetArea
,
dockPL
);
/* Menu Bar */
QVLCMenu
::
createMenuBar
(
this
,
p_intf
,
visualSelectorEnabled
);
...
...
@@ -222,8 +222,7 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf )
/* Init input manager */
MainInputManager
::
getInstance
(
p_intf
);
ON_TIMEOUT
(
updateOnTimer
()
);
// ON_TIMEOUT( debug() );
//ON_TIMEOUT( debug() );
/********************
* Various CONNECTs *
...
...
@@ -284,6 +283,7 @@ MainInterface::MainInterface( intf_thread_t *_p_intf ) : QVLCMW( _p_intf )
CONNECT
(
this
,
askReleaseVideo
(
void
*
),
this
,
releaseVideoSlot
(
void
*
)
);
CONNECT
(
dockPL
,
topLevelChanged
(
bool
),
this
,
doComponentsUpdate
()
);
// DEBUG FIXME
hide
();
updateGeometry
();
...
...
@@ -301,9 +301,10 @@ MainInterface::~MainInterface()
vlc_object_release
(
p_playlist
);
}
settings
->
setValue
(
"playlist-
embedded"
,
!
dockPL
->
isFloating
()
);
settings
->
setValue
(
"playlist-
floats"
,
dockPL
->
isFloating
()
);
settings
->
setValue
(
"adv-controls"
,
getControlsVisibilityStatus
()
&
CONTROLS_ADVANCED
);
settings
->
setValue
(
"pos"
,
pos
()
);
playlistWidget
->
saveSettings
(
settings
);
settings
->
endGroup
();
delete
settings
;
p_intf
->
b_interaction
=
VLC_FALSE
;
...
...
@@ -383,7 +384,6 @@ void MainInterface::handleMainUi( QSettings *settings )
bgWidget
->
updateGeometry
();
mainLayout
->
insertWidget
(
0
,
bgWidget
);
CONNECT
(
this
,
askBgWidgetToToggle
(),
bgWidget
,
toggle
()
);
CONNECT
(
playlistWidget
,
artSet
(
QString
),
bgWidget
,
setArt
(
QString
)
);
}
if
(
videoEmbeddedFlag
)
...
...
@@ -415,15 +415,16 @@ void MainInterface::privacyDialog( QList<ConfigControl *> controls )
QGroupBox
*
blabla
=
new
QGroupBox
(
qtr
(
"Privacy and Network Warning"
)
);
QGridLayout
*
blablaLayout
=
new
QGridLayout
(
blabla
);
QLabel
*
text
=
new
QLabel
(
qtr
(
"<p>The <i>VideoLAN Team</i> doesn't like when an application goes
online without
"
"authorisation.</p>
\n
"
"<p>The <i>VideoLAN Team</i> doesn't like when an application goes "
"
online without
authorisation.</p>
\n
"
"<p><i>VLC media player</i> can request limited information on "
"Internet, espically to get CD Covers and songs metadata or to know "
"if updates are available.</p>
\n
"
"<p><i>VLC media player</i> <b>DOES NOT</b> send or collect <b>ANY</b> information, even anonymously about your "
"<p><i>VLC media player</i> <b>DOES NOT</b> send or collect <b>ANY</b> "
"information, even anonymously about your "
"usage.</p>
\n
"
"<p>Therefore please check the following options, the default being
almost no
"
"access on the web.</p>
\n
"
)
);
"<p>Therefore please check the following options, the default being "
"a
lmost no a
ccess on the web.</p>
\n
"
)
);
text
->
setWordWrap
(
true
);
text
->
setTextFormat
(
Qt
::
RichText
);
...
...
@@ -476,6 +477,25 @@ void MainInterface::debug()
/**********************************************************************
* Handling of sizing of the components
**********************************************************************/
QSize
MainInterface
::
sizeHint
()
const
{
msg_Dbg
(
p_intf
,
"Annoying debug to remove, main sizeHint was called %i %i "
,
menuBar
()
->
size
().
height
(),
menuBar
()
->
size
().
width
()
);
QSize
tempSize
=
controls
->
sizeHint
()
+
QSize
(
100
,
menuBar
()
->
size
().
height
()
+
statusBar
()
->
size
().
height
()
);
if
(
VISIBLE
(
bgWidget
)
)
tempSize
+=
bgWidget
->
sizeHint
();
else
if
(
videoIsActive
)
tempSize
+=
videoWidget
->
size
();
if
(
!
dockPL
->
isFloating
()
&&
dockPL
->
widget
()
)
tempSize
+=
dockPL
->
widget
()
->
size
();
return
tempSize
;
}
#if 0
void MainInterface::calculateInterfaceSize()
{
...
...
@@ -563,8 +583,9 @@ void *MainInterface::requestVideo( vout_thread_t *p_nvout, int *pi_x,
if
(
ret
)
{
videoIsActive
=
true
;
bool
bgWasVisible
=
false
;
/* Did we have a bg */
if
(
VISIBLE
(
bgWidget
)
)
{
bgWasVisible
=
true
;
...
...
@@ -655,9 +676,10 @@ void MainInterface::togglePlaylist()
if
(
!
playlistWidget
)
{
msg_Dbg
(
p_intf
,
"Creating a new playlist"
);
playlistWidget
=
new
PlaylistWidget
(
p_intf
);
playlistWidget
=
new
PlaylistWidget
(
p_intf
,
settings
);
if
(
bgWidget
)
CONNECT
(
playlistWidget
,
artSet
(
QString
),
bgWidget
,
setArt
(
QString
)
);
CONNECT
(
playlistWidget
,
artSet
(
QString
),
bgWidget
,
setArt
(
QString
)
);
//FIXME
/* playlistWidget->widgetSize = settings->value( "playlistSize",
...
...
@@ -671,12 +693,11 @@ void MainInterface::togglePlaylist()
msg_Dbg
(
p_intf
,
"Creating a new playlist"
);
/* Make the playlist floating is requested. Default is not. */
if
(
!
(
settings
->
value
(
"playlist-embedded"
,
true
)
).
toBool
()
);
if
(
settings
->
value
(
"playlist-floats"
,
false
).
toBool
()
);
{
msg_Dbg
(
p_intf
,
"we don't want it inside"
);
//
dockPL->setFloating( true );
dockPL
->
setFloating
(
true
);
}
}
else
{
...
...
@@ -731,13 +752,13 @@ void MainInterface::toggleMinimalView()
/* Video widget cannot do this synchronously as it runs in another thread */
/* Well, could it, actually ? Probably dangerous ... */
#if 0
void
MainInterface
::
doComponentsUpdate
()
{
calculateInterfaceSize();
resize( mainSize );
msg_Dbg
(
p_intf
,
"trying"
);
resize
(
sizeHint
()
);
}
#endif
void
MainInterface
::
toggleAdvanced
()
{
...
...
modules/gui/qt4/main_interface.hpp
View file @
b83c1d09
...
...
@@ -72,6 +72,7 @@ public:
QSystemTrayIcon
*
getSysTray
()
{
return
sysTray
;
};
QMenu
*
getSysTrayMenu
()
{
return
systrayMenu
;
};
int
getControlsVisibilityStatus
();
QSize
sizeHint
()
const
;
protected:
// void resizeEvent( QResizeEvent * );
void
dropEvent
(
QDropEvent
*
);
...
...
@@ -96,7 +97,7 @@ private:
void
handleMainUi
(
QSettings
*
);
void
handleSystray
();
void
doComponentsUpdate
();
void
createSystray
();
void
privacyDialog
(
QList
<
ConfigControl
*>
controls
);
...
...
@@ -143,7 +144,7 @@ public slots:
private
slots
:
void
debug
();
void
updateOnTimer
();
void
doComponentsUpdate
();
void
setStatus
(
int
);
void
setRate
(
int
);
void
setName
(
QString
);
...
...
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