implement data model binding
This commit is contained in:
@@ -6,8 +6,11 @@ local screens = {
|
||||
home = "screens/home.rml",
|
||||
lock = "screens/lock.rml",
|
||||
dialer = "screens/dialer.rml",
|
||||
calling = "screens/calling.rml",
|
||||
contacts = "screens/contacts.rml",
|
||||
contact_detail = "screens/contact_detail.rml",
|
||||
messages = "screens/messages.rml",
|
||||
chat = "screens/chat.rml",
|
||||
settings = "screens/settings.rml",
|
||||
browser = "screens/browser.rml"
|
||||
}
|
||||
|
||||
@@ -1,80 +0,0 @@
|
||||
-- Phone/Dialer functionality for Virtual Smartphone
|
||||
|
||||
-- Dial pad state
|
||||
local dial_number = ""
|
||||
local max_digits = 15
|
||||
|
||||
-- Add a digit to the dial display
|
||||
function dialPress(digit)
|
||||
if #dial_number < max_digits then
|
||||
dial_number = dial_number .. digit
|
||||
updateDialDisplay()
|
||||
print("Dialed: " .. digit .. " | Number: " .. dial_number)
|
||||
end
|
||||
end
|
||||
|
||||
-- Clear the last digit
|
||||
function dialBackspace()
|
||||
if #dial_number > 0 then
|
||||
dial_number = dial_number:sub(1, -2)
|
||||
updateDialDisplay()
|
||||
print("Backspace | Number: " .. dial_number)
|
||||
end
|
||||
end
|
||||
|
||||
-- Clear all digits
|
||||
function dialClear()
|
||||
dial_number = ""
|
||||
updateDialDisplay()
|
||||
print("Cleared dial pad")
|
||||
end
|
||||
|
||||
-- Update the dial display element
|
||||
function updateDialDisplay()
|
||||
local display = document:GetElementById("dial-display")
|
||||
if display then
|
||||
-- Format number with dashes for readability
|
||||
local formatted = formatPhoneNumber(dial_number)
|
||||
display.inner_rml = formatted
|
||||
end
|
||||
end
|
||||
|
||||
-- Format phone number for display
|
||||
function formatPhoneNumber(number)
|
||||
local len = #number
|
||||
if len == 0 then
|
||||
return ""
|
||||
elseif len <= 3 then
|
||||
return number
|
||||
elseif len <= 6 then
|
||||
return number:sub(1, 3) .. "-" .. number:sub(4)
|
||||
elseif len <= 10 then
|
||||
return "(" .. number:sub(1, 3) .. ") " .. number:sub(4, 6) .. "-" .. number:sub(7)
|
||||
else
|
||||
return "+1 (" .. number:sub(1, 3) .. ") " .. number:sub(4, 6) .. "-" .. number:sub(7, 10)
|
||||
end
|
||||
end
|
||||
|
||||
-- Make a call (simulated)
|
||||
function makeCall()
|
||||
if #dial_number > 0 then
|
||||
print("Calling: " .. dial_number)
|
||||
-- In a real app, this would initiate a call
|
||||
-- For now, just show feedback
|
||||
else
|
||||
print("No number to call")
|
||||
end
|
||||
end
|
||||
|
||||
-- End a call (simulated)
|
||||
function endCall()
|
||||
print("Call ended")
|
||||
dialClear()
|
||||
end
|
||||
|
||||
-- Get the current dial number
|
||||
function getDialNumber()
|
||||
return dial_number
|
||||
end
|
||||
|
||||
print("Phone system initialized")
|
||||
Reference in New Issue
Block a user