Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
VideoLAN
VLMC
Commits
c7f780d7
Commit
c7f780d7
authored
Aug 14, 2009
by
Ludovic Fauvet
Browse files
TracksView is now a singleton
parent
d976963c
Changes
3
Hide whitespace changes
Inline
Side-by-side
src/gui/Timeline.cpp
View file @
c7f780d7
...
...
@@ -39,7 +39,7 @@ Timeline::Timeline( QWidget *parent ) :
m_mainWorkflow
=
new
MainWorkflow
(
MAX_TRACKS
);
m_tracksScene
=
new
TracksScene
(
this
);
m_tracksView
=
new
TracksView
(
m_tracksScene
,
m_mainWorkflow
,
m_ui
.
tracksFrame
);
m_tracksView
=
TracksView
::
instance
(
m_tracksScene
,
m_mainWorkflow
,
m_ui
.
tracksFrame
);
m_tracksView
->
setSizePolicy
(
QSizePolicy
::
Expanding
,
QSizePolicy
::
Expanding
);
m_tracksView
->
scale
(
1
,
1
);
m_tracksView
->
setAlignment
(
Qt
::
AlignLeft
|
Qt
::
AlignTop
);
...
...
src/gui/TracksView.cpp
View file @
c7f780d7
...
...
@@ -35,9 +35,26 @@
#include "GraphicsCursorItem.h"
#include "Commands.hpp"
TracksView
*
TracksView
::
m_instance
=
NULL
;
TracksView
*
TracksView
::
instance
(
QGraphicsScene
*
scene
,
MainWorkflow
*
mainWorkflow
,
QWidget
*
parent
)
{
if
(
m_instance
)
return
m_instance
;
m_instance
=
new
TracksView
(
scene
,
mainWorkflow
,
parent
);
return
m_instance
;
}
TracksView
*
TracksView
::
instance
()
{
Q_ASSERT
(
m_instance
);
return
m_instance
;
}
TracksView
::
TracksView
(
QGraphicsScene
*
scene
,
MainWorkflow
*
mainWorkflow
,
QWidget
*
parent
)
:
QGraphicsView
(
scene
,
parent
),
m_scene
(
scene
),
m_mainWorkflow
(
mainWorkflow
)
{
connect
(
qApp
,
SIGNAL
(
aboutToQuit
()
),
this
,
SLOT
(
deleteLater
()
)
);
//TODO should be defined by the settings
m_tracksHeight
=
25
;
...
...
src/gui/TracksView.h
View file @
c7f780d7
...
...
@@ -81,7 +81,8 @@ class TracksView : public QGraphicsView
Q_OBJECT
public:
TracksView
(
QGraphicsScene
*
scene
,
MainWorkflow
*
mainWorkflow
,
QWidget
*
parent
=
0
);
static
TracksView
*
instance
(
QGraphicsScene
*
scene
,
MainWorkflow
*
mainWorkflow
,
QWidget
*
parent
=
0
);
static
TracksView
*
instance
();
void
setDuration
(
int
duration
);
int
duration
()
const
{
return
m_projectDuration
;
}
int
tracksHeight
()
const
{
return
m_tracksHeight
;
}
...
...
@@ -112,11 +113,14 @@ private slots:
void
updateDuration
();
private:
TracksView
(
QGraphicsScene
*
scene
,
MainWorkflow
*
mainWorkflow
,
QWidget
*
parent
=
0
);
virtual
~
TracksView
()
{
}
void
createLayout
();
void
addVideoTrack
();
void
addAudioTrack
();
void
moveMediaItem
(
AbstractGraphicsMediaItem
*
item
,
QPoint
position
);
void
moveMediaItem
(
AbstractGraphicsMediaItem
*
item
,
int
track
,
int
time
);
static
TracksView
*
m_instance
;
QGraphicsScene
*
m_scene
;
int
m_tracksHeight
;
unsigned
int
m_tracksCount
;
...
...
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