qmlfrontend/Page1.qml
changeset 16012 caba603f461f
parent 15891 d52f5d8e75e6
equal deleted inserted replaced
16011:52b51d92e88d 16012:caba603f461f
     1 import QtQuick 2.7
     1 import QtQuick
     2 import Hedgewars.Engine 1.0
     2 import Hedgewars.Engine 1.0
     3 
     3 
     4 Page1Form {
     4 Page1Form {
     5     focus: true
     5   focus: true
     6 
     6 
     7     property HWEngine hwEngine
     7   property HWEngine hwEngine
     8     property NetSession netSession
     8   property NetSession netSession
     9 
     9 
    10     Component {
    10   Component {
    11         id: hwEngineComponent
    11     id: hwEngineComponent
    12 
    12 
    13         HWEngine {
    13     HWEngine {
    14             engineLibrary: "../rust/lib-hedgewars-engine/target/debug/libhedgewars_engine.so"
    14       engineLibrary: "../rust/lib-hedgewars-engine/target/debug/libhedgewars_engine.so"
    15             dataPath: "../share/hedgewars/Data"
    15       dataPath: "../share/hedgewars/Data"
    16             previewAcceptor: PreviewAcceptor
    16       previewAcceptor: PreviewAcceptor
    17             onPreviewImageChanged: previewImage.source = "image://preview/image"
    17       onPreviewImageChanged: previewImage.source = "image://preview/image"
    18             onPreviewIsRendering: previewImage.source = "qrc:/res/iconTime.png"
    18       onPreviewIsRendering: previewImage.source = "qrc:/res/iconTime.png"
    19         }
       
    20     }
    19     }
       
    20   }
    21 
    21 
    22     Component {
    22   Component {
    23         id: netSessionComponent
    23     id: netSessionComponent
    24 
    24 
    25         NetSession {
    25     NetSession {
    26             nickname: "test0272"
    26       nickname: "test0272"
    27             url: "hwnet://gameserver.hedgewars.org:46632"
    27       url: "hwnet://gameserver.hedgewars.org:46632"
    28         }
       
    29     }
    28     }
       
    29   }
    30 
    30 
    31     Component.onCompleted: {
    31   Component.onCompleted: {
    32         hwEngine = hwEngineComponent.createObject()
    32     hwEngine = hwEngineComponent.createObject()
       
    33   }
       
    34 
       
    35   tickButton {
       
    36     onClicked: {
       
    37       tickButton.visible = false
       
    38       gameView.tick(100)
    33     }
    39     }
       
    40   }
       
    41   gameButton {
       
    42     visible: !gameView.engineInstance
       
    43     onClicked: {
       
    44       const engineInstance = hwEngine.runQuickGame()
       
    45       gameView.engineInstance = engineInstance
       
    46     }
       
    47   }
       
    48   button1 {
       
    49     visible: !gameView.engineInstance
       
    50     onClicked: {
       
    51       hwEngine.getPreview()
       
    52     }
       
    53   }
       
    54   preview {
       
    55     visible: !gameView.engineInstance
       
    56   }
    34 
    57 
    35     tickButton {
    58   netButton.onClicked: {
    36         onClicked: {
    59     netSession = netSessionComponent.createObject()
    37             tickButton.visible = false
    60     netSession.open()
    38             gameView.tick(100)
    61   }
    39         }
       
    40     }
       
    41     gameButton {
       
    42         visible: !gameView.engineInstance
       
    43         onClicked: {
       
    44             const engineInstance = hwEngine.runQuickGame()
       
    45             gameView.engineInstance = engineInstance
       
    46         }
       
    47     }
       
    48     button1 {
       
    49         visible: !gameView.engineInstance
       
    50         onClicked: {
       
    51             hwEngine.getPreview()
       
    52         }
       
    53     }
       
    54     netButton.onClicked: {
       
    55         netSession = netSessionComponent.createObject()
       
    56         netSession.open()
       
    57     }
       
    58 
    62 
    59     Keys.onPressed: {
    63   Keys.onPressed: {
    60         if (event.key === Qt.Key_Enter)
    64     if (event.key === Qt.Key_Enter)
    61             gameView.engineInstance.longEvent(Engine.Attack, Engine.Set)
    65       gameView.engineInstance.longEvent(Engine.Attack, Engine.Set)
    62     }
    66   }
    63 
    67 
    64     Keys.onReleased: {
    68   Keys.onReleased: {
    65         if (event.key === Qt.Key_Enter)
    69     if (event.key === Qt.Key_Enter)
    66             gameView.engineInstance.longEvent(Engine.Attack, Engine.Unset)
    70       gameView.engineInstance.longEvent(Engine.Attack, Engine.Unset)
    67     }
    71   }
       
    72 
       
    73   gameMouseArea {
       
    74     onPressed: event => {
       
    75                  gameMouseArea.lastPoint = Qt.point(event.x, event.y)
       
    76                }
       
    77     onPositionChanged: event => {
       
    78                          gameView.engineInstance.moveCamera(
       
    79                            Qt.point(event.x - gameMouseArea.lastPoint.x,
       
    80                                     event.y - gameMouseArea.lastPoint.y))
       
    81 
       
    82                          gameMouseArea.lastPoint = Qt.point(event.x, event.y)
       
    83                        }
       
    84   }
    68 }
    85 }