Compare commits
3 Commits
d01f9019c0
...
72cf0311c0
Author | SHA1 | Date |
---|---|---|
|
72cf0311c0 | |
|
1a6c53d0ce | |
|
77bb12b164 |
|
@ -32,6 +32,30 @@ FluScrollablePage{
|
|||
}
|
||||
}
|
||||
|
||||
FluArea {
|
||||
Layout.fillWidth: true
|
||||
height: 80
|
||||
paddings: 5
|
||||
Layout.topMargin: 20
|
||||
Column{
|
||||
spacing: 5
|
||||
anchors.verticalCenter: parent.verticalCenter
|
||||
FluText{
|
||||
text: "disabled=true"
|
||||
x:10
|
||||
}
|
||||
FluComboBox {
|
||||
disabled: true
|
||||
model: ListModel {
|
||||
id: model_2
|
||||
ListElement { text: "Banana" }
|
||||
ListElement { text: "Apple" }
|
||||
ListElement { text: "Coconut" }
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
FluArea{
|
||||
Layout.fillWidth: true
|
||||
height: 80
|
||||
|
@ -47,14 +71,14 @@ FluScrollablePage{
|
|||
FluComboBox {
|
||||
editable: true
|
||||
model: ListModel {
|
||||
id: model_2
|
||||
id: model_3
|
||||
ListElement { text: "Banana" }
|
||||
ListElement { text: "Apple" }
|
||||
ListElement { text: "Coconut" }
|
||||
}
|
||||
onAccepted: {
|
||||
if (find(editText) === -1)
|
||||
model_2.append({text: editText})
|
||||
model_3.append({text: editText})
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -52,7 +52,12 @@ T.ComboBox {
|
|||
autoScroll: control.editable
|
||||
font:control.font
|
||||
readOnly: control.down
|
||||
color: FluTheme.dark ? Qt.rgba(255/255,255/255,255/255,1) : Qt.rgba(27/255,27/255,27/255,1)
|
||||
color: {
|
||||
if(control.disabled) {
|
||||
return FluTheme.dark ? Qt.rgba(131/255,131/255,131/255,1) : Qt.rgba(160/255,160/255,160/255,1)
|
||||
}
|
||||
return FluTheme.dark ? Qt.rgba(255/255,255/255,255/255,1) : Qt.rgba(27/255,27/255,27/255,1)
|
||||
}
|
||||
inputMethodHints: control.inputMethodHints
|
||||
validator: control.validator
|
||||
selectByMouse: true
|
||||
|
@ -75,7 +80,6 @@ T.ComboBox {
|
|||
accepted()
|
||||
}
|
||||
}
|
||||
|
||||
background: Rectangle {
|
||||
implicitWidth: 140
|
||||
implicitHeight: 32
|
||||
|
@ -95,7 +99,6 @@ T.ComboBox {
|
|||
return hovered ? hoverColor :normalColor
|
||||
}
|
||||
}
|
||||
|
||||
popup: T.Popup {
|
||||
y: control.height
|
||||
width: control.width
|
||||
|
@ -109,7 +112,7 @@ T.ComboBox {
|
|||
model: control.delegateModel
|
||||
currentIndex: control.highlightedIndex
|
||||
highlightMoveDuration: 0
|
||||
boundsMovement: Flickable.StopAtBounds
|
||||
boundsMovement: Flickable.StopAtBounds
|
||||
T.ScrollIndicator.vertical: ScrollIndicator { }
|
||||
}
|
||||
enter: Transition {
|
||||
|
|
|
@ -341,12 +341,9 @@ Rectangle {
|
|||
}
|
||||
TableView {
|
||||
id:table_view
|
||||
ListModel{
|
||||
id:model_columns
|
||||
}
|
||||
boundsBehavior: Flickable.StopAtBounds
|
||||
anchors.fill: parent
|
||||
contentX: header_horizontal.contentX
|
||||
ScrollBar.horizontal:scroll_bar_h
|
||||
ScrollBar.vertical:scroll_bar_v
|
||||
columnWidthProvider: function(column) {
|
||||
var columnObject = d.columns_data[column]
|
||||
|
@ -731,9 +728,10 @@ Rectangle {
|
|||
height: visible ? Math.max(1, contentHeight) : 0
|
||||
boundsBehavior: Flickable.StopAtBounds
|
||||
clip: true
|
||||
contentX: table_view.contentX
|
||||
syncDirection: Qt.Horizontal
|
||||
ScrollBar.horizontal:scroll_bar_h_2
|
||||
columnWidthProvider: table_view.columnWidthProvider
|
||||
ScrollBar.horizontal:scroll_bar_h
|
||||
syncView: table_view.rows === 0 ? null : table_view
|
||||
onContentXChanged:{
|
||||
timer_horizontal_force_layout.restart()
|
||||
}
|
||||
|
@ -760,15 +758,16 @@ Rectangle {
|
|||
syncView: table_view
|
||||
clip: true
|
||||
model: header_row_model
|
||||
delegate: com_row_header_delegate
|
||||
onContentYChanged:{
|
||||
timer_vertical_force_layout.restart()
|
||||
}
|
||||
Connections{
|
||||
target: table_model
|
||||
function onRowCountChanged(){
|
||||
header_row_model.rows = Array.from({length: table_model.rows.length}, (_, i) => ({rowIndex:i+1}))
|
||||
}
|
||||
}
|
||||
onContentYChanged:{
|
||||
timer_vertical_force_layout.restart()
|
||||
}
|
||||
Timer{
|
||||
id:timer_vertical_force_layout
|
||||
interval: 50
|
||||
|
@ -776,19 +775,29 @@ Rectangle {
|
|||
header_vertical.forceLayout()
|
||||
}
|
||||
}
|
||||
delegate: com_row_header_delegate
|
||||
}
|
||||
FluScrollBar {
|
||||
id:scroll_bar_h
|
||||
id: scroll_bar_h
|
||||
anchors{
|
||||
left: layout_mouse_table.left
|
||||
right: parent.right
|
||||
bottom: layout_mouse_table.bottom
|
||||
}
|
||||
visible: table_view.rows !== 0
|
||||
z:999
|
||||
}
|
||||
FluScrollBar {
|
||||
id:scroll_bar_v
|
||||
id: scroll_bar_h_2
|
||||
anchors{
|
||||
left: layout_mouse_table.left
|
||||
right: parent.right
|
||||
bottom: layout_mouse_table.bottom
|
||||
}
|
||||
visible: table_view.rows === 0
|
||||
z:999
|
||||
}
|
||||
FluScrollBar {
|
||||
id: scroll_bar_v
|
||||
anchors{
|
||||
top: layout_mouse_table.top
|
||||
bottom: layout_mouse_table.bottom
|
||||
|
|
|
@ -80,7 +80,6 @@ T.ComboBox {
|
|||
accepted()
|
||||
}
|
||||
}
|
||||
|
||||
background: Rectangle {
|
||||
implicitWidth: 140
|
||||
implicitHeight: 32
|
||||
|
@ -100,7 +99,6 @@ T.ComboBox {
|
|||
return hovered ? hoverColor :normalColor
|
||||
}
|
||||
}
|
||||
|
||||
popup: T.Popup {
|
||||
y: control.height
|
||||
width: control.width
|
||||
|
|
|
@ -342,12 +342,9 @@ Rectangle {
|
|||
}
|
||||
TableView {
|
||||
id:table_view
|
||||
ListModel{
|
||||
id:model_columns
|
||||
}
|
||||
boundsBehavior: Flickable.StopAtBounds
|
||||
anchors.fill: parent
|
||||
contentX: header_horizontal.contentX
|
||||
ScrollBar.horizontal:scroll_bar_h
|
||||
ScrollBar.vertical:scroll_bar_v
|
||||
columnWidthProvider: function(column) {
|
||||
var columnObject = d.columns_data[column]
|
||||
|
@ -732,9 +729,10 @@ Rectangle {
|
|||
height: visible ? Math.max(1, contentHeight) : 0
|
||||
boundsBehavior: Flickable.StopAtBounds
|
||||
clip: true
|
||||
contentX: table_view.contentX
|
||||
syncDirection: Qt.Horizontal
|
||||
ScrollBar.horizontal:scroll_bar_h_2
|
||||
columnWidthProvider: table_view.columnWidthProvider
|
||||
ScrollBar.horizontal:scroll_bar_h
|
||||
syncView: table_view.rows === 0 ? null : table_view
|
||||
onContentXChanged:{
|
||||
timer_horizontal_force_layout.restart()
|
||||
}
|
||||
|
@ -761,15 +759,16 @@ Rectangle {
|
|||
syncView: table_view
|
||||
clip: true
|
||||
model: header_row_model
|
||||
delegate: com_row_header_delegate
|
||||
onContentYChanged:{
|
||||
timer_vertical_force_layout.restart()
|
||||
}
|
||||
Connections{
|
||||
target: table_model
|
||||
function onRowCountChanged(){
|
||||
header_row_model.rows = Array.from({length: table_model.rows.length}, (_, i) => ({rowIndex:i+1}))
|
||||
}
|
||||
}
|
||||
onContentYChanged:{
|
||||
timer_vertical_force_layout.restart()
|
||||
}
|
||||
Timer{
|
||||
id:timer_vertical_force_layout
|
||||
interval: 50
|
||||
|
@ -777,19 +776,29 @@ Rectangle {
|
|||
header_vertical.forceLayout()
|
||||
}
|
||||
}
|
||||
delegate: com_row_header_delegate
|
||||
}
|
||||
FluScrollBar {
|
||||
id:scroll_bar_h
|
||||
id: scroll_bar_h
|
||||
anchors{
|
||||
left: layout_mouse_table.left
|
||||
right: parent.right
|
||||
bottom: layout_mouse_table.bottom
|
||||
}
|
||||
visible: table_view.rows !== 0
|
||||
z:999
|
||||
}
|
||||
FluScrollBar {
|
||||
id:scroll_bar_v
|
||||
id: scroll_bar_h_2
|
||||
anchors{
|
||||
left: layout_mouse_table.left
|
||||
right: parent.right
|
||||
bottom: layout_mouse_table.bottom
|
||||
}
|
||||
visible: table_view.rows === 0
|
||||
z:999
|
||||
}
|
||||
FluScrollBar {
|
||||
id: scroll_bar_v
|
||||
anchors{
|
||||
top: layout_mouse_table.top
|
||||
bottom: layout_mouse_table.bottom
|
||||
|
|
Loading…
Reference in New Issue