Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
L
linphone-desktop
Project
Project
Details
Activity
Releases
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
Administrator
linphone-desktop
Commits
fbcbb7e1
Commit
fbcbb7e1
authored
Sep 28, 2016
by
Ronan Abhamon
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
feat(app): add many links between components
parent
6fa3026c
Changes
9
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
9 changed files
with
501 additions
and
485 deletions
+501
-485
en.ts
tests/languages/en.ts
+1
-1
fr.ts
tests/languages/fr.ts
+1
-1
Chat.qml
tests/ui/modules/Linphone/Chat/Chat.qml
+2
-2
Menu.qml
tests/ui/modules/Linphone/Menu.qml
+6
-8
Contact.qml
tests/ui/views/MainWindow/Contact.qml
+66
-66
Contacts.qml
tests/ui/views/MainWindow/Contacts.qml
+231
-226
Conversation.qml
tests/ui/views/MainWindow/Conversation.qml
+127
-127
Home.qml
tests/ui/views/MainWindow/Home.qml
+48
-48
MainWindow.qml
tests/ui/views/MainWindow/MainWindow.qml
+19
-6
No files found.
tests/languages/en.ts
View file @
fbcbb7e1
...
...
@@ -119,7 +119,7 @@
<
/message
>
<
message
>
<
source
>
addContact
<
/source
>
<
translation
><
/translation
>
<
translation
>
ADD
CONTACTS
<
/translation
>
<
/message
>
<
message
>
<
source
>
displayTooltip
<
/source
>
...
...
tests/languages/fr.ts
View file @
fbcbb7e1
...
...
@@ -119,7 +119,7 @@
<
/message
>
<
message
>
<
source
>
addContact
<
/source
>
<
translation
><
/translation
>
<
translation
>
AJOUTER
CONTACTS
<
/translation
>
<
/message
>
<
message
>
<
source
>
displayTooltip
<
/source
>
...
...
tests/ui/modules/Linphone/Chat/Chat.qml
View file @
fbcbb7e1
...
...
@@ -118,10 +118,10 @@ ScrollableListView {
id
:
loader
source
:
$type
===
'
message
'
?
(
'
qrc:/ui/Linphone/Chat/
'
+
'
qrc:/ui/
modules/
Linphone/Chat/
'
+
(
$outgoing
?
'
Outgoing
'
:
'
Incoming
'
)
+
'
Message.qml
'
)
:
'
qrc:/ui/Linphone/Chat/Event.qml
'
)
:
'
qrc:/ui/
modules/
Linphone/Chat/Event.qml
'
}
}
...
...
tests/ui/modules/Linphone/Menu.qml
View file @
fbcbb7e1
...
...
@@ -24,10 +24,10 @@ ColumnLayout {
model
:
entries
Rectangle
{
color
:
_selectedEntry
===
index
?
MenuStyle
.
entry
.
color
.
select
ed
:
(
mouseArea
.
pressed
?
MenuStyle
.
entry
.
color
.
press
ed
color
:
mouseArea
.
pressed
?
MenuStyle
.
entry
.
color
.
press
ed
:
(
_selectedEntry
===
index
?
MenuStyle
.
entry
.
color
.
select
ed
:
(
mouseArea
.
containsMouse
?
MenuStyle
.
entry
.
color
.
hovered
:
MenuStyle
.
entry
.
color
.
normal
...
...
@@ -76,10 +76,8 @@ ColumnLayout {
hoverEnabled
:
true
onClicked
:
{
if
(
_selectedEntry
!==
index
)
{
_selectedEntry
=
index
entrySelected
(
index
)
}
_selectedEntry
=
index
entrySelected
(
index
)
}
}
}
...
...
tests/ui/views/MainWindow/Contact.qml
View file @
fbcbb7e1
...
...
@@ -5,86 +5,86 @@ import QtQuick.Layouts 1.3
import
Linphone
1.0
ColumnLayout
{
spacing
:
0
spacing
:
0
Rectangle
{
Layout.fillWidth
:
true
Layout.preferredHeight
:
102
color
:
'
#D1D1D1
'
Rectangle
{
Layout.fillWidth
:
true
Layout.preferredHeight
:
102
color
:
'
#D1D1D1
'
RowLayout
{
anchors.left
:
parent
.
left
anchors.leftMargin
:
40
anchors.right
:
parent
.
right
anchors.rightMargin
:
10
anchors.verticalCenter
:
parent
.
verticalCenter
height
:
80
spacing
:
0
width
:
parent
.
width
RowLayout
{
anchors.left
:
parent
.
left
anchors.leftMargin
:
40
anchors.right
:
parent
.
right
anchors.rightMargin
:
10
anchors.verticalCenter
:
parent
.
verticalCenter
height
:
80
spacing
:
0
width
:
parent
.
width
Avatar
{
Layout.fillHeight
:
true
Layout.preferredWidth
:
80
Layout.rightMargin
:
30
presence
:
'
connected
'
// TODO: Use C++.
username
:
'
Cameron Andrews
'
// TODO: Use C++.
}
Avatar
{
Layout.fillHeight
:
true
Layout.preferredWidth
:
80
Layout.rightMargin
:
30
presence
:
'
connected
'
// TODO: Use C++.
username
:
'
Cameron Andrews
'
// TODO: Use C++.
}
// TODO: Replace by text edit.
// Component: EditableContactDescription.
ContactDescription
{
Layout.fillHeight
:
true
Layout.fillWidth
:
true
username
:
'
Cameron Andrews
'
// TODO: Use C++.
}
// TODO: Replace by text edit.
// Component: EditableContactDescription.
ContactDescription
{
Layout.fillHeight
:
true
Layout.fillWidth
:
true
username
:
'
Cameron Andrews
'
// TODO: Use C++.
}
ActionBar
{
iconSize
:
32
Layout.alignment
:
Qt
.
AlignBottom
|
Qt
.
AlignRight
ActionBar
{
iconSize
:
32
Layout.alignment
:
Qt
.
AlignBottom
|
Qt
.
AlignRight
ActionButton
{
icon
:
'
delete
'
onClicked
:
console
.
log
(
'
clicked!!!
'
)
}
ActionButton
{
icon
:
'
history
'
onClicked
:
window
.
setView
(
'
Conversation
'
)
}
ActionButton
{
icon
:
'
contact
'
onClicked
:
console
.
log
(
'
clicked!!!
'
)
}
}
ActionButton
{
icon
:
'
delete
'
onClicked
:
console
.
log
(
'
clicked!!!
'
)
}
}
}
}
Flickable
{
Layout.fillHeight
:
true
Layout.fillWidth
:
true
ScrollBar.vertical
:
ForceScrollBar
{
}
boundsBehavior
:
Flickable
.
StopAtBounds
clip
:
true
contentHeight
:
content
.
height
flickableDirection
:
Flickable
.
VerticalFlick
Flickable
{
Layout.fillHeight
:
true
Layout.fillWidth
:
true
ScrollBar.vertical
:
ForceScrollBar
{
}
boundsBehavior
:
Flickable
.
StopAtBounds
clip
:
true
contentHeight
:
content
.
height
flickableDirection
:
Flickable
.
VerticalFlick
ColumnLayout
{
anchors.left
:
parent
.
left
anchors.margins
:
20
anchors.right
:
parent
.
right
id
:
content
ColumnLayout
{
anchors.left
:
parent
.
left
anchors.margins
:
20
anchors.right
:
parent
.
right
id
:
content
ListForm
{
title
:
qsTr
(
'
sipAccounts
'
)
}
ListForm
{
title
:
qsTr
(
'
sipAccounts
'
)
}
ListForm
{
title
:
qsTr
(
'
address
'
)
}
ListForm
{
title
:
qsTr
(
'
address
'
)
}
ListForm
{
title
:
qsTr
(
'
emails
'
)
}
ListForm
{
title
:
qsTr
(
'
emails
'
)
}
ListForm
{
title
:
qsTr
(
'
webSites
'
)
}
}
ListForm
{
title
:
qsTr
(
'
webSites
'
)
}
}
}
}
tests/ui/views/MainWindow/Contacts.qml
View file @
fbcbb7e1
This diff is collapsed.
Click to expand it.
tests/ui/views/MainWindow/Conversation.qml
View file @
fbcbb7e1
...
...
@@ -5,147 +5,147 @@ import QtQuick.Layouts 1.3
import
Linphone
1.0
ColumnLayout
{
spacing
:
0
spacing
:
0
// Contact bar.
Rectangle
{
Layout.fillWidth
:
true
Layout.preferredHeight
:
102
color
:
'
#D1D1D1
'
RowLayout
{
anchors.left
:
parent
.
left
anchors.leftMargin
:
40
anchors.right
:
parent
.
right
anchors.rightMargin
:
40
anchors.verticalCenter
:
parent
.
verticalCenter
height
:
80
spacing
:
50
width
:
parent
.
width
Avatar
{
Layout.fillHeight
:
true
Layout.preferredWidth
:
80
presence
:
'
connected
'
// TODO: Use C++.
username
:
'
Cameron Andrews
'
// TODO: Use C++.
}
// Contact bar.
Rectangle
{
Column
{
Layout.fillHeight
:
true
Layout.fillWidth
:
true
Layout.preferredHeight
:
102
color
:
'
#D1D1D1
'
RowLayout
{
anchors.left
:
parent
.
left
anchors.leftMargin
:
40
anchors.right
:
parent
.
right
anchors.rightMargin
:
40
anchors.verticalCenter
:
parent
.
verticalCenter
height
:
80
spacing
:
50
width
:
parent
.
width
Avatar
{
Layout.fillHeight
:
true
Layout.preferredWidth
:
80
presence
:
'
connected
'
// TODO: Use C++.
username
:
'
Cameron Andrews
'
// TODO: Use C++.
// Contact description.
ContactDescription
{
height
:
parent
.
height
*
0.60
sipAddress
:
'
cam.andrews@sip.linphone.org
'
// TODO: Use C++.
username
:
'
Cameron Andrews
'
// TODO: Use C++.
width
:
parent
.
width
}
// Contact actions.
Row
{
height
:
parent
.
height
*
0.40
width
:
parent
.
width
ActionBar
{
iconSize
:
32
width
:
parent
.
width
/
2
ActionButton
{
icon
:
'
cam
'
onClicked
:
console
.
log
(
'
clicked!!!
'
)
}
Column
{
Layout.fillHeight
:
true
Layout.fillWidth
:
true
// Contact description.
ContactDescription
{
height
:
parent
.
height
*
0.60
sipAddress
:
'
cam.andrews@sip.linphone.org
'
// TODO: Use C++.
username
:
'
Cameron Andrews
'
// TODO: Use C++.
width
:
parent
.
width
}
// Contact actions.
Row
{
height
:
parent
.
height
*
0.40
width
:
parent
.
width
ActionBar
{
iconSize
:
32
width
:
parent
.
width
/
2
ActionButton
{
icon
:
'
cam
'
onClicked
:
console
.
log
(
'
clicked!!!
'
)
}
ActionButton
{
icon
:
'
call
'
onClicked
:
console
.
log
(
'
clicked!!!
'
)
}
}
ActionBar
{
iconSize
:
32
layoutDirection
:
Qt
.
RightToLeft
width
:
parent
.
width
/
2
ActionButton
{
icon
:
'
delete
'
onClicked
:
console
.
log
(
'
clicked!!!
'
)
}
ActionButton
{
icon
:
'
contact
'
onClicked
:
console
.
log
(
'
clicked!!!
'
)
}
}
}
ActionButton
{
icon
:
'
call
'
onClicked
:
console
.
log
(
'
clicked!!!
'
)
}
}
}
}
// Messages/Calls filter.
Rectangle
{
Layout.fillWidth
:
true
Layout.preferredHeight
:
40
color
:
'
#C7C7C7
'
Rectangle
{
anchors.fill
:
parent
anchors.leftMargin
:
1
ExclusiveButtons
{
anchors.left
:
parent
.
left
anchors.leftMargin
:
40
anchors.verticalCenter
:
parent
.
verticalCenter
texts
:
[
qsTr
(
'
displayCallsAndMessages
'
),
qsTr
(
'
displayCalls
'
),
qsTr
(
'
displayMessages
'
)
]
ActionBar
{
iconSize
:
32
layoutDirection
:
Qt
.
RightToLeft
width
:
parent
.
width
/
2
ActionButton
{
icon
:
'
delete
'
onClicked
:
console
.
log
(
'
clicked!!!
'
)
}
ActionButton
{
icon
:
'
contact
'
onClicked
:
window
.
setView
(
'
Contact
'
)
}
}
}
}
}
}
// Messages/Calls filter.
Rectangle
{
Layout.fillWidth
:
true
Layout.preferredHeight
:
40
color
:
'
#C7C7C7
'
Rectangle
{
Layout.fillHeight
:
true
Layout.fillWidth
:
true
border.color
:
'
#C7C7C7
'
border.width
:
1
id
:
messagesArea
Chat
{
ScrollBar.vertical
:
ForceScrollBar
{
}
anchors.bottomMargin
:
messagesArea
.
border
.
width
anchors.fill
:
parent
anchors.topMargin
:
messagesArea
.
border
.
width
}
anchors.fill
:
parent
anchors.leftMargin
:
1
ExclusiveButtons
{
anchors.left
:
parent
.
left
anchors.leftMargin
:
40
anchors.verticalCenter
:
parent
.
verticalCenter
texts
:
[
qsTr
(
'
displayCallsAndMessages
'
),
qsTr
(
'
displayCalls
'
),
qsTr
(
'
displayMessages
'
)
]
}
}
}
Rectangle
{
Layout.fillHeight
:
true
Layout.fillWidth
:
true
border.color
:
'
#C7C7C7
'
border.width
:
1
id
:
messagesArea
Chat
{
ScrollBar.vertical
:
ForceScrollBar
{
}
anchors.bottomMargin
:
messagesArea
.
border
.
width
anchors.fill
:
parent
anchors.topMargin
:
messagesArea
.
border
.
width
}
}
// Send area.
Rectangle
{
Layout.fillWidth
:
true
Layout.preferredHeight
:
70
border.color
:
textArea
.
activeFocus
?
'
#8E8E8E
'
:
'
#C7C7C7
'
border.width
:
1
id
:
newMessageArea
RowLayout
{
anchors.fill
:
parent
Flickable
{
Layout.preferredHeight
:
parent
.
height
Layout.fillWidth
:
true
ScrollBar.vertical
:
ScrollBar
{
}
TextArea.flickable
:
TextArea
{
id
:
textArea
placeholderText
:
qsTr
(
'
newMessagePlaceholder
'
)
wrapMode
:
TextArea
.
Wrap
}
}
// Send area.
Rectangle
{
Layout.fillWidth
:
true
Layout.preferredHeight
:
70
border.color
:
textArea
.
activeFocus
?
'
#8E8E8E
'
:
'
#C7C7C7
'
border.width
:
1
id
:
newMessageArea
DropZone
{
Layout.preferredHeight
:
parent
.
height
-
newMessageArea
.
border
.
width
*
2
Layout.preferredWidth
:
40
}
RowLayout
{
anchors.fill
:
parent
Flickable
{
Layout.preferredHeight
:
parent
.
height
Layout.fillWidth
:
true
ScrollBar.vertical
:
ScrollBar
{
}
TextArea.flickable
:
TextArea
{
id
:
textArea
placeholderText
:
qsTr
(
'
newMessagePlaceholder
'
)
wrapMode
:
TextArea
.
Wrap
}
}
DropZone
{
Layout.preferredHeight
:
parent
.
height
-
newMessageArea
.
border
.
width
*
2
Layout.preferredWidth
:
40
}
}
}
}
tests/ui/views/MainWindow/Home.qml
View file @
fbcbb7e1
...
...
@@ -6,56 +6,56 @@ import Linphone 1.0
// ===================================================================
ColumnLayout
{
spacing
:
0
ColumnLayout
{
Layout.alignment
:
Qt
.
AlignTop
Layout.fillHeight
:
true
Layout.fillWidth
:
true
Layout.leftMargin
:
50
Layout.topMargin
:
50
spacing
:
30
// Invit friends.
Column
{
spacing
:
8
Text
{
color
:
'
#5A585B
'
font.bold
:
true
font.pointSize
:
11
text
:
qsTr
(
'
invitContactQuestion
'
)
}
TextButtonB
{
text
:
qsTr
(
'
invitContact
'
)
}
}
// Add contacts.
Column
{
spacing
:
8
Text
{
color
:
'
#5A585B
'
font.bold
:
true
font.pointSize
:
11
text
:
qsTr
(
'
addContactQuestion
'
)
}
TextButtonB
{
text
:
qsTr
(
'
addContact
'
)
}
}
spacing
:
0
ColumnLayout
{
Layout.alignment
:
Qt
.
AlignTop
Layout.fillHeight
:
true
Layout.fillWidth
:
true
Layout.leftMargin
:
50
Layout.topMargin
:
50
spacing
:
30
// Invit friends.
Column
{
spacing
:
8
Text
{
color
:
'
#5A585B
'
font.bold
:
true
font.pointSize
:
11
text
:
qsTr
(
'
invitContactQuestion
'
)
}
TextButtonB
{
text
:
qsTr
(
'
invitContact
'
)
}
}
// Tooltip checkbox area.
CheckBoxText
{
Layout.alignment
:
Qt
.
AlignBottom
Layout.fillWidth
:
true
Layout.leftMargin
:
50
Layout.preferredHeight
:
70
// Add contacts.
Column
{
spacing
:
8
text
:
qsTr
(
'
displayTooltip
'
)
Text
{
color
:
'
#5A585B
'
font.bold
:
true
font.pointSize
:
11
text
:
qsTr
(
'
addContactQuestion
'
)
}
TextButtonB
{
text
:
qsTr
(
'
addContact
'
)
}
}
}
// Tooltip checkbox area.
CheckBoxText
{
Layout.alignment
:
Qt
.
AlignBottom
Layout.fillWidth
:
true
Layout.leftMargin
:
50
Layout.preferredHeight
:
70
text
:
qsTr
(
'
displayTooltip
'
)
}
}
tests/ui/views/MainWindow/MainWindow.qml
View file @
fbcbb7e1
...
...
@@ -7,7 +7,12 @@ import Linphone 1.0
import
'
qrc:/ui/scripts/utils.js
'
as
Utils
ApplicationWindow
{
id
:
mainWindow
id
:
window
function
setView
(
view
)
{
loaderContent
.
source
=
'
qrc:/ui/views/MainWindow/
'
+
view
+
'
.qml
'
}
maximumHeight
:
70
minimumHeight
:
70
minimumWidth
:
780
...
...
@@ -32,7 +37,7 @@ ApplicationWindow {
Layout.fillHeight
:
parent
.
height
id
:
collapse
onCollapsed
:
mainW
indowStates
.
state
=
isCollapsed
()
onCollapsed
:
w
indowStates
.
state
=
isCollapsed
()
?
'
collapsed
'
:
''
}
...
...
@@ -48,12 +53,12 @@ ApplicationWindow {
// User actions.
ActionButton
{
Layout.preferredWidth
:
16
onClicked
:
Utils
.
openWindow
(
'
ManageAccounts
'
,
mainW
indow
)
onClicked
:
Utils
.
openWindow
(
'
ManageAccounts
'
,
w
indow
)
}
ActionButton
{
Layout.preferredWidth
:
16
onClicked
:
Utils
.
openWindow
(
'
NewCall
'
,
mainW
indow
)
onClicked
:
Utils
.
openWindow
(
'
NewCall
'
,
w
indow
)
}
// Search.
...
...
@@ -212,6 +217,12 @@ ApplicationWindow {
onEntrySelected
:
{
console
.
log
(
'
entry
'
,
entry
)
if
(
entry
===
0
)
{
setView
(
'
Home
'
)
}
else
if
(
entry
===
1
)
{
setView
(
'
Contacts
'
)
}
}
}
...
...
@@ -273,6 +284,8 @@ ApplicationWindow {
// Main content.
Loader
{
id
:
loaderContent
Layout.fillHeight
:
true
Layout.fillWidth
:
true
source
:
'
qrc:/ui/views/MainWindow/Home.qml
'
...
...
@@ -280,7 +293,7 @@ ApplicationWindow {
}
StateGroup
{
id
:
mainW
indowStates
id
:
w
indowStates
states
:
State
{
name
:
'
collapsed
'
...
...
@@ -290,7 +303,7 @@ ApplicationWindow {
maximumHeight
:
99999
maximumWidth
:
99999
minimumHeight
:
480
target
:
mainW
indow
target
:
w
indow
}
}
}
...
...
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