=== applets/Fab4Skin/Fab4SkinApplet.lua ================================================================== --- applets/Fab4Skin/Fab4SkinApplet.lua (revision 30528) +++ applets/Fab4Skin/Fab4SkinApplet.lua (local) @@ -165,52 +165,115 @@ local deleteKeyBackground = Tile:loadImage( imgpath .. "Buttons/button_delete_text_entry.png") local deleteKeyPressedBackground = Tile:loadImage( imgpath .. "Buttons/button_delete_text_entry_press.png") - local keyBackground = Tile:loadTiles({ - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", - nil, - nil, - nil, - nil, - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", + local keyTopLeft = Tile:loadTiles({ + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_tl.png", + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_t.png", + nil, + nil, + nil, + nil, + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_l.png", }) - local keyRightEdgeBackground = Tile:loadTiles({ - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", - nil, - nil, - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", + local keyTop = Tile:loadTiles({ + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_t.png", + nil, + nil, + nil, + nil, + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", }) - local keyBottomRowBackground = Tile:loadTiles({ - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", - nil, - nil, - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", + + local keyTopRight = Tile:loadTiles({ + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_t.png", + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_tr.png", + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_r.png", + nil, + nil, + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", }) - local keyBottomRightCornerBackground = Tile:loadTiles({ - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", - nil, - imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", + + local keyLeft = Tile:loadTiles({ + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", + nil, + nil, + nil, + nil, + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_l.png", }) + local keyMiddle = Tile:loadTiles({ + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", + nil, + nil, + nil, + nil, + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", + }) + + local keyRight = Tile:loadTiles({ + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_r.png", + nil, + nil, + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", + }) + + local keyBottomLeft = Tile:loadTiles({ + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", + nil, + nil, + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_b.png", + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_bl.png", + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_l.png", + }) + + local keyBottom = Tile:loadTiles({ + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", + nil, + nil, + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_b.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", + }) + + local keyBottomRight = Tile:loadTiles({ + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_dropdown_bkgrd.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_hort.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_r.png", + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_br.png", + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_bkgrd_b.png", + nil, + imgpath .. "Text_Entry/Keyboard_Touch/keyboard_divider_vert.png", + }) + + local titleBox = Tile:loadTiles({ imgpath .. "Titlebar/titlebar.png", @@ -678,32 +741,42 @@ border = { 8, 0, 8, 4 }, } - s.keyboard.button = { + s.keyboard.key = { padding = 0, font = _boldfont(24), fg = TEXT_COLOR, align = 'center', - bgImg = keyBackground, + bgImg = keyMiddle, } - s.keyboard.button_spacer = _uses(s.keyboard.button) - s.keyboard.button_fill = _uses(s.keyboard.button) + s.keyboard.key_topLeft = _uses(s.keyboard.key, { bgImg = keyTopLeft }) + s.keyboard.key_top = _uses(s.keyboard.key, { bgImg = keyTop }) + s.keyboard.key_topRight = _uses(s.keyboard.key, { bgImg = keyTopRight }) + s.keyboard.key_left = _uses(s.keyboard.key, { bgImg = keyLeft }) + s.keyboard.key_middle = _uses(s.keyboard.key, { bgImg = keyMiddle }) + s.keyboard.key_right = _uses(s.keyboard.key, { bgImg = keyRight }) + s.keyboard.key_bottomLeft = _uses(s.keyboard.key, { bgImg = keyBottomLeft }) + s.keyboard.key_bottom = _uses(s.keyboard.key, { bgImg = keyBottom }) + s.keyboard.key_bottomRight = _uses(s.keyboard.key, { bgImg = keyBottomRight }) - s.keyboard.button_rightEdge = _uses(s.keyboard.button, { bgImg = keyRightEdgeBackground }) - s.keyboard.button_bottomRow = _uses(s.keyboard.button, { bgImg = keyBottomRowBackground }) - s.keyboard.button_bottomCorner = _uses(s.keyboard.button, { bgImg = keyBottomRightCornerBackground }) + s.keyboard.spacer_topLeft = _uses(s.keyboard.key_topLeft) + s.keyboard.spacer_top = _uses(s.keyboard.key_top) + s.keyboard.spacer_topRight = _uses(s.keyboard.key_topRight) + s.keyboard.spacer_left = _uses(s.keyboard.key_left) + s.keyboard.spacer_middle = _uses(s.keyboard.key_middle) + s.keyboard.spacer_right = _uses(s.keyboard.key_right) + s.keyboard.spacer_bottomLeft = _uses(s.keyboard.key_bottomLeft) + s.keyboard.spacer_bottom = _uses(s.keyboard.key_bottom) + s.keyboard.spacer_bottomRight = _uses(s.keyboard.key_bottomRight) - s.keyboard.button_rightEdgeSpacer = _uses(s.keyboard.button_rightEdge) - s.keyboard.button_bottomRowSpacer = _uses(s.keyboard.button_bottomRow) - s.keyboard.button_bottomCornerSpacer = _uses(s.keyboard.button_bottomCorner) - - s.keyboard.shiftOff = _uses(s.keyboard.button, { + s.keyboard.shiftOff = _uses(s.keyboard.key_left, { img = _loadImage(self, "Icons/icon_shift_off.png") }) - s.keyboard.shiftOn = _uses(s.keyboard.button, { + s.keyboard.shiftOn = _uses(s.keyboard.key_left, { img = _loadImage(self, "Icons/icon_shift_on.png") }) + s.keyboard.pressed = { shiftOff = _uses(s.keyboard.shiftOff, { bgImg = keyboardPressedBox @@ -711,27 +784,41 @@ shiftOn = _uses(s.keyboard.shiftOn, { bgImg = keyboardPressedBox }), - button = _uses(s.keyboard.button, { + key = _uses(s.keyboard.key, { bgImg = keyboardPressedBox }), - button_fill = _uses(s.keyboard.button_fill, { + key_topLeft = _uses(s.keyboard.key_topLeft, { bgImg = keyboardPressedBox }), - button_rightEdge = _uses(s.keyboard.button_rightEdge, { + key_top = _uses(s.keyboard.key_top, { bgImg = keyboardPressedBox }), - button_bottomRow = _uses(s.keyboard.button_bottomRow, { + key_topRight = _uses(s.keyboard.key_topRight, { bgImg = keyboardPressedBox }), - button_bottomCorner = _uses(s.keyboard.button_bottomCorner, { + key_left = _uses(s.keyboard.key_left, { bgImg = keyboardPressedBox }), - button_spacer = _uses(s.keyboard.button_spacer), - button_rightEdgeSpacer = _uses(s.keyboard.button_rightEdgeSpacer), - button_bottomRowSpacer = _uses(s.keyboard.button_bottomRowSpacer), - button_bottomCornerSpacer = _uses(s.keyboard.button_bottomCornerSpacer), - } + key_middle = _uses(s.keyboard.key_middle, { + bgImg = keyboardPressedBox + }), + key_right = _uses(s.keyboard.key_right, { + bgImg = keyboardPressedBox + }), + key_bottomLeft = _uses(s.keyboard.key_bottomLeft, { + bgImg = keyboardPressedBox + }), + key_bottom = _uses(s.keyboard.key_bottom, { + bgImg = keyboardPressedBox + }), + key_bottomRight = _uses(s.keyboard.key_bottomRight, { + bgImg = keyboardPressedBox + }), +} + + -- one set for buttons, one for spacers + --------- WINDOW STYLES --------- -- -- These styles override the default styles for a specific window === jive/ui/Keyboard.lua ================================================================== --- jive/ui/Keyboard.lua (revision 30528) +++ jive/ui/Keyboard.lua (local) @@ -122,8 +122,8 @@ function _predefinedKeyboards(self) local emailKeyboardBottomRow = { self:_switchKeyboardButton('emailNumeric', keyboardButtonText.emailNumeric), - { style = 'button_fill', text = '.' }, - { keyWidth = 92, style = 'button_fill', text = '@' }, + { keyWidth = 0, text = '.' }, + { keyWidth = 92, text = '@' }, self:_macroKeyButton('.com'), self:_go() } @@ -166,7 +166,7 @@ { '@', '/', '=', '?', '^', '`', '{', '|', '}', '~', '.' }, { self:_switchKeyboardButton(self:_decideKbType('email'), keyboardButtonText.qwertyLower), - { style = 'button_fill', text = '.' }, + { keyWidth = 0, text = '.' }, { keyWidth = 92, text = '@' }, self:_macroKeyButton('.com'), self:_go() @@ -259,27 +259,43 @@ log:debug('keyWidth for this key set to: ', keyWidth) key:setBounds(x, y, keyWidth, defaultKeyHeight) - if j == #row and i == #self.keyboard then + + local keyType = 'key_' + if style ~= 'shiftOff' and style ~= 'shiftOn' then if rowInfo[j].spacer then - key:setStyle('button_bottomCornerSpacer') - else - key:setStyle('button_bottomCorner') + keyType = 'spacer_' + end + -- upper left + if i == 1 and j == 1 then + location = 'topLeft' + -- top middle + elseif i == 1 and j < #row then + location = 'top' + -- top right + elseif i == 1 and j == #row then + location = 'topRight' + -- left + elseif i < #self.keyboard and j == 1 then + location = 'left' + -- middle + elseif i < #self.keyboard and j < #row then + location = 'middle' + -- right edge + elseif i < #self.keyboard and j == #row then + location = 'right' + -- bottom left + elseif i == #self.keyboard and j == 1 then + location = 'bottomLeft' + -- bottom + elseif i == #self.keyboard and j < #row then + location = 'bottom' + -- bottom right + elseif i == #self.keyboard and j == #row then + location = 'bottomRight' end - elseif j == #row then - if rowInfo[j].spacer then - key:setStyle('button_rightEdgeSpacer') - else - key:setStyle('button_rightEdge') - end - elseif i == #self.keyboard then - if rowInfo[j].spacer then - key:setStyle('button_bottomRowSpacer') - else - key:setStyle('button_bottomRow') - end - elseif rowInfo[j].spacer then - key:setStyle('button_spacer') + key:setStyle(keyType .. location) end + x = x + keyWidth end @@ -367,7 +383,7 @@ local button local info = {} if type(v) == 'table' then - local keyStyle = v.style or 'button' + local keyStyle = v.style or 'key' local label if v.icon then label = v.icon @@ -388,7 +404,7 @@ button = Button(label, callback) info = v else - local label = Label("button", v) + local label = Label("key", v) button = Button( label, function() @@ -415,7 +431,7 @@ return { text = keyText, keyWidth = keyWidth, - style = 'button', + style = 'key', callback = function() local stringTable = string.split('', keyText) for _, v in ipairs(stringTable) do