Skip to content
GitLab
Projects
Groups
Snippets
Help
Loading...
Help
What's new
7
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Open sidebar
VideoLAN
VLMC
Commits
48205b9f
Commit
48205b9f
authored
Aug 08, 2017
by
luyikei
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Implement TransitionsListView
parent
4fc8e2f0
Changes
6
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
145 additions
and
0 deletions
+145
-0
Makefile.am
Makefile.am
+3
-0
src/Gui/MainWindow.cpp
src/Gui/MainWindow.cpp
+10
-0
src/Gui/MainWindow.h
src/Gui/MainWindow.h
+4
-0
src/Gui/transition/TransitionsListView.cpp
src/Gui/transition/TransitionsListView.cpp
+65
-0
src/Gui/transition/TransitionsListView.h
src/Gui/transition/TransitionsListView.h
+28
-0
src/Gui/transition/TransitionsListView.qml
src/Gui/transition/TransitionsListView.qml
+35
-0
No files found.
Makefile.am
View file @
48205b9f
...
@@ -173,6 +173,7 @@ vlmc_SOURCES += \
...
@@ -173,6 +173,7 @@ vlmc_SOURCES += \
src/Gui/effectsengine/EffectsListView.cpp
\
src/Gui/effectsengine/EffectsListView.cpp
\
src/Gui/effectsengine/EffectStack.cpp
\
src/Gui/effectsengine/EffectStack.cpp
\
src/Gui/effectsengine/EffectWidget.cpp
\
src/Gui/effectsengine/EffectWidget.cpp
\
src/Gui/transition/TransitionsListView.cpp
\
src/Gui/export/RendererSettings.cpp
\
src/Gui/export/RendererSettings.cpp
\
src/Gui/export/ShareOnInternet.cpp
\
src/Gui/export/ShareOnInternet.cpp
\
src/Gui/import/TagWidget.cpp
\
src/Gui/import/TagWidget.cpp
\
...
@@ -319,6 +320,7 @@ nodist_vlmc_SOURCES += \
...
@@ -319,6 +320,7 @@ nodist_vlmc_SOURCES += \
src/Gui/media/ClipMetadataDisplayer.moc.cpp
\
src/Gui/media/ClipMetadataDisplayer.moc.cpp
\
src/Gui/effectsengine/EffectWidget.moc.cpp
\
src/Gui/effectsengine/EffectWidget.moc.cpp
\
src/Gui/effectsengine/EffectInstanceWidget.moc.cpp
\
src/Gui/effectsengine/EffectInstanceWidget.moc.cpp
\
src/Gui/transition/TransitionsListView.moc.cpp
\
src/Gui/preview/LCDTimecode.moc.cpp
\
src/Gui/preview/LCDTimecode.moc.cpp
\
src/Gui/effectsengine/EffectStack.moc.cpp
\
src/Gui/effectsengine/EffectStack.moc.cpp
\
src/Gui/wizard/firstlaunch/WorkspaceLocation.moc.cpp
\
src/Gui/wizard/firstlaunch/WorkspaceLocation.moc.cpp
\
...
@@ -402,6 +404,7 @@ vlmc_QML = \
...
@@ -402,6 +404,7 @@ vlmc_QML = \
src/Gui/library/ui/ClipItem.qml
\
src/Gui/library/ui/ClipItem.qml
\
src/Gui/effectsengine/Effect.qml
\
src/Gui/effectsengine/Effect.qml
\
src/Gui/effectsengine/EffectsListView.qml
\
src/Gui/effectsengine/EffectsListView.qml
\
src/Gui/transition/TransitionsListView.qml
\
$(NULL)
$(NULL)
EXTRA_DIST
+=
$(vlmc_QML)
EXTRA_DIST
+=
$(vlmc_QML)
...
...
src/Gui/MainWindow.cpp
View file @
48205b9f
...
@@ -56,6 +56,7 @@
...
@@ -56,6 +56,7 @@
/* Widgets */
/* Widgets */
#include "effectsengine/EffectsListView.h"
#include "effectsengine/EffectsListView.h"
#include "transition/TransitionsListView.h"
#include "library/MediaLibraryView.h"
#include "library/MediaLibraryView.h"
#include "library/ClipLibraryView.h"
#include "library/ClipLibraryView.h"
#include "preview/PreviewWidget.h"
#include "preview/PreviewWidget.h"
...
@@ -178,6 +179,7 @@ MainWindow::retranslateUi()
...
@@ -178,6 +179,7 @@ MainWindow::retranslateUi()
{
{
m_dockedUndoView
->
setWindowTitle
(
tr
(
"History"
)
);
m_dockedUndoView
->
setWindowTitle
(
tr
(
"History"
)
);
m_dockedEffectsList
->
setWindowTitle
(
tr
(
"Effects List"
)
);
m_dockedEffectsList
->
setWindowTitle
(
tr
(
"Effects List"
)
);
m_dockedTransitionsList
->
setWindowTitle
(
tr
(
"Transitions List"
)
);
m_dockedMediaLibrary
->
setWindowTitle
(
tr
(
"Media Library"
)
);
m_dockedMediaLibrary
->
setWindowTitle
(
tr
(
"Media Library"
)
);
m_dockedClipLibrary
->
setWindowTitle
(
tr
(
"Clip Library"
)
);
m_dockedClipLibrary
->
setWindowTitle
(
tr
(
"Clip Library"
)
);
m_dockedClipPreview
->
setWindowTitle
(
tr
(
"Clip Preview"
)
);
m_dockedClipPreview
->
setWindowTitle
(
tr
(
"Clip Preview"
)
);
...
@@ -482,6 +484,7 @@ MainWindow::initializeDockWidgets()
...
@@ -482,6 +484,7 @@ MainWindow::initializeDockWidgets()
setupLibrary
();
setupLibrary
();
setupEffectsList
();
setupEffectsList
();
setupTransitionsList
();
setupClipPreview
();
setupClipPreview
();
setupProjectPreview
();
setupProjectPreview
();
setupUndoRedoWidget
();
setupUndoRedoWidget
();
...
@@ -508,6 +511,13 @@ MainWindow::setupEffectsList()
...
@@ -508,6 +511,13 @@ MainWindow::setupEffectsList()
m_dockedEffectsList
=
dockWidget
(
m_effectsList
->
container
(),
Qt
::
TopDockWidgetArea
);
m_dockedEffectsList
=
dockWidget
(
m_effectsList
->
container
(),
Qt
::
TopDockWidgetArea
);
}
}
void
MainWindow
::
setupTransitionsList
()
{
m_transitionsList
=
new
TransitionsListView
(
this
);
m_dockedTransitionsList
=
dockWidget
(
m_transitionsList
->
container
(),
Qt
::
TopDockWidgetArea
);
}
void
void
MainWindow
::
setupLibrary
()
MainWindow
::
setupLibrary
()
{
{
...
...
src/Gui/MainWindow.h
View file @
48205b9f
...
@@ -37,6 +37,7 @@ class QProgressBar;
...
@@ -37,6 +37,7 @@ class QProgressBar;
#include "ui/MainWindow.h"
#include "ui/MainWindow.h"
class
EffectsListView
;
class
EffectsListView
;
class
TransitionsListView
;
class
ClipLibraryView
;
class
ClipLibraryView
;
class
MediaLibraryView
;
class
MediaLibraryView
;
class
PreviewWidget
;
class
PreviewWidget
;
...
@@ -88,6 +89,7 @@ private:
...
@@ -88,6 +89,7 @@ private:
void
setupClipPreview
();
void
setupClipPreview
();
void
setupProjectPreview
();
void
setupProjectPreview
();
void
setupEffectsList
();
void
setupEffectsList
();
void
setupTransitionsList
();
void
setupUndoRedoWidget
();
void
setupUndoRedoWidget
();
void
retranslateUi
();
void
retranslateUi
();
#ifdef WITH_CRASHBUTTON
#ifdef WITH_CRASHBUTTON
...
@@ -132,9 +134,11 @@ private:
...
@@ -132,9 +134,11 @@ private:
MediaLibraryView
*
m_mediaLibrary
;
MediaLibraryView
*
m_mediaLibrary
;
ClipLibraryView
*
m_clipLibrary
;
ClipLibraryView
*
m_clipLibrary
;
EffectsListView
*
m_effectsList
;
EffectsListView
*
m_effectsList
;
TransitionsListView
*
m_transitionsList
;
QUndoView
*
m_undoView
;
QUndoView
*
m_undoView
;
QDockWidget
*
m_dockedUndoView
;
QDockWidget
*
m_dockedUndoView
;
QDockWidget
*
m_dockedEffectsList
;
QDockWidget
*
m_dockedEffectsList
;
QDockWidget
*
m_dockedTransitionsList
;
QDockWidget
*
m_dockedClipLibrary
;
QDockWidget
*
m_dockedClipLibrary
;
QDockWidget
*
m_dockedMediaLibrary
;
QDockWidget
*
m_dockedMediaLibrary
;
QDockWidget
*
m_dockedClipPreview
;
QDockWidget
*
m_dockedClipPreview
;
...
...
src/Gui/transition/TransitionsListView.cpp
0 → 100644
View file @
48205b9f
#include "TransitionsListView.h"
#include "Backend/IBackend.h"
#include "Backend/IInfo.h"
#include "Backend/ITransition.h"
#include <QWidget>
#include <QJsonObject>
#include <QQuickView>
#include <QQmlContext>
#include <QDrag>
#include <QMimeData>
TransitionsListView
::
TransitionsListView
(
QWidget
*
parent
)
:
QObject
(
parent
)
{
setObjectName
(
QStringLiteral
(
"TransitionsListView"
)
);
auto
view
=
new
QQuickView
;
m_container
=
QWidget
::
createWindowContainer
(
view
,
parent
);
m_container
->
setMinimumSize
(
100
,
1
);
m_container
->
setObjectName
(
objectName
()
);
view
->
rootContext
()
->
setContextProperty
(
QStringLiteral
(
"view"
),
this
);
view
->
setSource
(
QUrl
(
QStringLiteral
(
"qrc:/QML/TransitionsListView.qml"
)
)
);
view
->
setResizeMode
(
QQuickView
::
SizeRootObjectToView
);
}
TransitionsListView
::~
TransitionsListView
()
{
}
QWidget
*
TransitionsListView
::
container
()
{
return
m_container
;
}
QJsonArray
TransitionsListView
::
transitions
()
{
QJsonArray
array
;
for
(
auto
p
:
Backend
::
instance
()
->
availableTransitions
()
)
{
auto
info
=
p
.
second
;
QJsonObject
jInfo
;
jInfo
[
QStringLiteral
(
"identifier"
)]
=
QString
::
fromStdString
(
info
->
identifier
()
);
jInfo
[
QStringLiteral
(
"name"
)]
=
QString
::
fromStdString
(
info
->
name
()
);
jInfo
[
QStringLiteral
(
"description"
)]
=
QString
::
fromStdString
(
info
->
description
()
);
jInfo
[
QStringLiteral
(
"author"
)]
=
QString
::
fromStdString
(
info
->
author
()
);
array
.
append
(
jInfo
);
}
return
array
;
}
void
TransitionsListView
::
startDrag
(
const
QString
&
transitionId
)
{
QDrag
*
drag
=
new
QDrag
(
this
);
QMimeData
*
mimeData
=
new
QMimeData
;
mimeData
->
setData
(
QStringLiteral
(
"vlmc/transition_id"
),
transitionId
.
toUtf8
()
);
drag
->
setMimeData
(
mimeData
);
drag
->
exec
();
}
src/Gui/transition/TransitionsListView.h
0 → 100644
View file @
48205b9f
#ifndef TRANSITIONSLISTVIEW_H
#define TRANSITIONSLISTVIEW_H
#include <QObject>
#include <QJsonArray>
class
TransitionsListView
:
public
QObject
{
Q_OBJECT
Q_DISABLE_COPY
(
TransitionsListView
)
public:
explicit
TransitionsListView
(
QWidget
*
parent
=
0
);
virtual
~
TransitionsListView
();
QWidget
*
container
();
Q_INVOKABLE
QJsonArray
transitions
();
public
slots
:
void
startDrag
(
const
QString
&
transitionId
);
private:
QWidget
*
m_container
;
};
#endif // TRANSITIONSLISTVIEW_H
src/Gui/transition/TransitionsListView.qml
0 → 100644
View file @
48205b9f
import
QtQuick
2.0
import
QtQuick
.
Controls
1.4
Rectangle
{
anchors.fill
:
parent
color
:
"
#999999
"
ListModel
{
id
:
transitionsList
}
Component.onCompleted
:
{
var
transitionsInfo
=
view
.
transitions
();
for
(
var
i
=
0
;
i
<
transitionsInfo
.
length
;
++
i
)
{
transitionsList
.
append
(
transitionsInfo
[
i
]
);
}
}
ScrollView
{
id
:
sView
height
:
parent
.
height
width
:
parent
.
width
ListView
{
width
:
sView
.
viewport
.
width
model
:
transitionsList
delegate
:
Effect
{
width
:
sView
.
viewport
.
width
identifier
:
model
.
identifier
name
:
model
.
name
description
:
model
.
description
}
}
}
}
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