2
* This file is part of Maliit plugins
4
* Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies). All rights reserved.
6
* Contact: Jakub Pavelek <jpavelek@live.com>
8
* Redistribution and use in source and binary forms, with or without modification,
9
* are permitted provided that the following conditions are met:
11
* Redistributions of source code must retain the above copyright notice, this list
12
* of conditions and the following disclaimer.
13
* Redistributions in binary form must reproduce the above copyright notice, this list
14
* of conditions and the following disclaimer in the documentation and/or other materials
15
* provided with the distribution.
16
* Neither the name of Nokia Corporation nor the names of its contributors may be
17
* used to endorse or promote products derived from this software without specific
18
* prior written permission.
20
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND ANY
21
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
22
* MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL
23
* THE COPYRIGHT OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
24
* EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
25
* SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
26
* HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
27
* OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
28
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
33
import "KeyboardUiConstants.js" as UI
37
property string icon: ""
38
property string caption: ""
39
property alias mouseArea: mouse_area
40
property int fontSize: UI.FONT_SIZE
41
property int sourceWidth: -1
42
property int sourceHeight: -1
43
property bool landscape: false
46
signal pressedAndHoldPass()
51
source: (landscape) ? "meegotouch-keyboard-function-key-left-landscape.png" : "meegotouch-keyboard-function-key-left.png"
52
anchors { left: parent.left; top: parent.top }
56
source: (landscape) ? "meegotouch-keyboard-function-key-mid-landscape.png" : "meegotouch-keyboard-function-key-mid.png"
57
anchors { left: leftBit.right; top: parent.top; right: rightBit.left}
61
source: (landscape) ? "meegotouch-keyboard-function-key-right-landscape.png" : "meegotouch-keyboard-function-key-right.png"
62
anchors { top: parent.top; right: parent.right }
69
onClicked: { clickedPass() }
70
onPressed: aFunctKey.opacity = 0.6
71
onCanceled: aFunctKey.opacity = 1
72
onReleased: { parent.released(); aFunctKey.opacity = 1 }
73
onPressAndHold: { pressedAndHoldPass() }
77
anchors.centerIn: parent
79
sourceSize.width: (sourceWidth == -1) ? width : sourceWidth
80
sourceSize.height: (sourceHeight == -1) ? height : sourceHeight
84
anchors.centerIn: parent
85
horizontalAlignment: Text.AlignHCenter
86
verticalAlignment: Text.AlignVCenter
88
font.pixelSize: fontSize