add accept call
git-svn-id: http://www.neo1973-germany.de/svn@204 46df4e5c-bc4e-4628-a0fc-830ba316316d
This commit is contained in:
parent
5a3d06140f
commit
4cf11fd16c
6 changed files with 156 additions and 88 deletions
|
@ -50,7 +50,7 @@ color_classes {
|
|||
styles {
|
||||
style {
|
||||
name: "textblock_style";
|
||||
base: "font=sans.bold font_size=20 align=left valign=top color=#fff wrap=word";
|
||||
base: "font=Vera font_size=20 align=left valign=top color=#fff";
|
||||
tag: "h1" "+ font_size=28";
|
||||
tag: "/h1" "- \n";
|
||||
tag: "p" "+";
|
||||
|
@ -58,6 +58,10 @@ styles {
|
|||
tag: "em" "+ style=underline underline_color=#000A underline2_color=#0005";
|
||||
tag: "/em" "-";
|
||||
tag: "br" "\n";
|
||||
tag: "c1" "+ color=#fff";
|
||||
tag: "/c1" "-";
|
||||
tag: "c2" "+ color=#f3f";
|
||||
tag: "/c2" "-";
|
||||
}
|
||||
}
|
||||
|
||||
|
@ -107,12 +111,6 @@ part { \
|
|||
} \
|
||||
} \
|
||||
} \
|
||||
program { \
|
||||
name: "button_"button_number"_signal_emit"; \
|
||||
signal: "mouse,down,*"; \
|
||||
source: "button_"button_number; \
|
||||
action: SIGNAL_EMIT "gsm_send" button_caption; \
|
||||
} \
|
||||
program { \
|
||||
name: "button_"button_number"_animation"; \
|
||||
signal: "mouse,down,*"; \
|
||||
|
@ -131,57 +129,13 @@ program { \
|
|||
|
||||
#define HBAR(barname, bordercolor, borderwidth, rel1x, rel1y, rel2x, rel2y, left_right_offset) \
|
||||
part { \
|
||||
name: "border_left_"barname; \
|
||||
type: RECT; \
|
||||
description { \
|
||||
color_class: bordercolor; \
|
||||
rel1 { relative: rel1x rel1y; offset: left_right_offset 0; }; \
|
||||
rel2 { relative: rel1x rel2y; offset: (borderwidth+left_right_offset) 0; }; \
|
||||
} \
|
||||
} \
|
||||
part { \
|
||||
name: "border_right_"barname; \
|
||||
type: RECT; \
|
||||
description { \
|
||||
color_class: bordercolor; \
|
||||
rel1 { relative: rel2x rel1y; offset: (0-left_right_offset-borderwidth) 0; }; \
|
||||
rel2 { relative: rel2x rel2y; offset: 0-left_right_offset 0; }; \
|
||||
} \
|
||||
} \
|
||||
part { \
|
||||
name: "border_bottom_"barname; \
|
||||
type: RECT; \
|
||||
description { \
|
||||
color_class: bordercolor; \
|
||||
rel1 { relative: rel1x rel2y; offset: (borderwidth+left_right_offset) -borderwidth; }; \
|
||||
rel2 { relative: rel2x rel2y; offset: 0-left_right_offset 0; }; \
|
||||
} \
|
||||
} \
|
||||
part { \
|
||||
name: "border_top_left"barname; \
|
||||
type: RECT; \
|
||||
description { \
|
||||
color_class: bordercolor; \
|
||||
rel1 { relative: rel1x rel1y; offset: left_right_offset 0; }; \
|
||||
rel2 { relative: rel2x/4 rel1y; offset: 0-left_right_offset borderwidth; }; \
|
||||
} \
|
||||
} \
|
||||
part { \
|
||||
name: "border_top_right"barname; \
|
||||
type: RECT; \
|
||||
description { \
|
||||
color_class: bordercolor; \
|
||||
rel1 { relative: 1-rel2x/4 rel1y; offset: left_right_offset 0; }; \
|
||||
rel2 { relative: rel2x rel1y; offset: 0-left_right_offset borderwidth; }; \
|
||||
} \
|
||||
} \
|
||||
part { \
|
||||
name: "top_description_"barname; \
|
||||
name: "description_"barname; \
|
||||
type: TEXT; \
|
||||
mouse_events: 0; \
|
||||
description { \
|
||||
color_class: bordercolor; \
|
||||
rel1 { relative: 1-rel2x/2 rel1y; offset: -80 -10; }; \
|
||||
rel2 { relative: 1-rel2x/2 rel1y; offset: +80 10; }; \
|
||||
rel1 { relative: rel1x rel1y; }; \
|
||||
rel2 { relative: rel2x rel2y; }; \
|
||||
text { \
|
||||
text: barname; \
|
||||
font: "VeraBd"; \
|
||||
|
@ -189,6 +143,122 @@ part { \
|
|||
} \
|
||||
} \
|
||||
} \
|
||||
part { \
|
||||
name: "button_left_bg_"barname; \
|
||||
type: RECT; \
|
||||
description { \
|
||||
state: "default" 0; \
|
||||
color_class: "unvisible"; \
|
||||
rel1 { relative: rel1x rel1y; offset: 0 0; }; \
|
||||
rel2 { relative: rel2x/4 rel2y; offset: 0 0; }; \
|
||||
} \
|
||||
description { \
|
||||
state: "default" 0.5; \
|
||||
inherit: "default" 0; \
|
||||
color_class: "unvisible"; \
|
||||
rel1.offset: 0 -5; \
|
||||
rel2.offset: 0 5; \
|
||||
} \
|
||||
description { \
|
||||
state: "default" 1; \
|
||||
inherit: "default" 0; \
|
||||
} \
|
||||
} \
|
||||
part { \
|
||||
name: "button_right_bg_"barname; \
|
||||
type: RECT; \
|
||||
description { \
|
||||
state: "default" 0; \
|
||||
color_class: "unvisible"; \
|
||||
rel1 { relative: 1-rel2x/4 rel1y; offset: 0 0; }; \
|
||||
rel2 { relative: rel2x rel2y; offset: 0 0; }; \
|
||||
} \
|
||||
description { \
|
||||
state: "default" 0.5; \
|
||||
inherit: "default" 0; \
|
||||
color_class: "unvisible"; \
|
||||
rel1.offset: 0 -5; \
|
||||
rel2.offset: 0 5; \
|
||||
} \
|
||||
description { \
|
||||
state: "default" 1; \
|
||||
inherit: "default" 0; \
|
||||
} \
|
||||
} \
|
||||
part { \
|
||||
name: "button_left_"barname; \
|
||||
type: TEXT; \
|
||||
mouse_events: 0; \
|
||||
description { \
|
||||
state: "default" 0; \
|
||||
color_class: bordercolor; \
|
||||
rel1 { to: "button_left_bg_"barname; relative: 0 0; }; \
|
||||
rel2 { to: "button_left_bg_"barname; relative: 1 1; }; \
|
||||
text { \
|
||||
text: "-"; \
|
||||
font: "VeraBd"; \
|
||||
size: 52; \
|
||||
fit: 1 1; \
|
||||
} \
|
||||
} \
|
||||
} \
|
||||
part { \
|
||||
name: "button_right_"barname; \
|
||||
type: TEXT; \
|
||||
mouse_events: 0; \
|
||||
description { \
|
||||
state: "default" 0; \
|
||||
color_class: bordercolor; \
|
||||
rel1 { to: "button_right_bg_"barname; relative: 0 0; }; \
|
||||
rel2 { to: "button_right_bg_"barname; relative: 1 1; }; \
|
||||
text { \
|
||||
text: "+"; \
|
||||
font: "VeraBd"; \
|
||||
size: 52; \
|
||||
fit: 1 1; \
|
||||
} \
|
||||
} \
|
||||
} \
|
||||
part { \
|
||||
name: "scale_fg_"barname; \
|
||||
type: RECT; \
|
||||
mouse_events: 0; \
|
||||
description { \
|
||||
color_class: scale; \
|
||||
rel1 { relative: rel2x/4 (rel1y+((rel2y-rel1y)/4)); }; \
|
||||
rel2 { relative: 1-rel2x/4 (rel2y-((rel2y-rel1y)/4)); }; \
|
||||
} \
|
||||
} \
|
||||
program { \
|
||||
name: "button_left_bg_"barname"_animation"; \
|
||||
signal: "mouse,down,*"; \
|
||||
source: "button_left_bg_"barname; \
|
||||
action: STATE_SET "default" 0.5; \
|
||||
target: "button_left_bg_"barname; \
|
||||
} \
|
||||
program { \
|
||||
name: "button_left_bg_"barname"_animation_end"; \
|
||||
signal: "mouse,up,*"; \
|
||||
source: "button_left_bg_"barname; \
|
||||
action: STATE_SET "default" 1; \
|
||||
target: "button_left_bg_"barname; \
|
||||
transition: DECELERATE 0.1; \
|
||||
} \
|
||||
program { \
|
||||
name: "button_right_bg_"barname"_animation"; \
|
||||
signal: "mouse,down,*"; \
|
||||
source: "button_right_bg_"barname; \
|
||||
action: STATE_SET "default" 0.5; \
|
||||
target: "button_right_bg_"barname; \
|
||||
} \
|
||||
program { \
|
||||
name: "button_right_bg_"barname"_animation_end"; \
|
||||
signal: "mouse,up,*"; \
|
||||
source: "button_right_bg_"barname; \
|
||||
action: STATE_SET "default" 1; \
|
||||
target: "button_right_bg_"barname; \
|
||||
transition: DECELERATE 0.1; \
|
||||
} \
|
||||
|
||||
collections {
|
||||
group {
|
||||
|
@ -216,8 +286,8 @@ collections {
|
|||
rel1 { relative: 0 0; }
|
||||
rel2 { relative: 1 1/7; }
|
||||
text {
|
||||
text: "gsm status";
|
||||
size: 18;
|
||||
text: "settings";
|
||||
size: 10;
|
||||
font: "VeraBd";
|
||||
fit: 1 1;
|
||||
}
|
||||
|
@ -234,19 +304,16 @@ collections {
|
|||
rel1 { relative: 0 3/20; }
|
||||
rel2 { relative: 1 10/20; }
|
||||
text {
|
||||
text: "gsm";
|
||||
text: "";
|
||||
style: "textblock_style";
|
||||
}
|
||||
}
|
||||
} /* end gsm_caption */
|
||||
BUTTON(4, 0, 36/70, 1/4, 46/70, "-", button_inactive, 0.5, 0.5);
|
||||
BUTTON(7, 1/4, 36/70, 3/4, 46/70, "||||||||||", scale, 0, 0);
|
||||
BUTTON(5, 1/4, 36/70, 3/4, 46/70, "|", button_inactive, 0, 0);
|
||||
BUTTON(6, 3/4, 36/70, 4/4, 46/70, "+", button_inactive, 0.5, 0.5);
|
||||
BUTTON(11, 1/3, 58/70, 2/3, 68/70, "on", button_inactive, 0.5, 0.5);
|
||||
BUTTON(12, 0, 58/70 , 1/3, 68/70, "<", button_inactive, 0.5, 0.5);
|
||||
HBAR("Brightness", button_inactive, 1, 0, 36/70, 1, 46/70, 10);
|
||||
HBAR("Volume", button_inactive, 1, 0, 47/70, 3/3, 57/70, 10);
|
||||
HBAR("beer level", button_inactive, 1, 0, 26/70, 1, 36/70, 10);
|
||||
HBAR("brightness", button_inactive, 1, 0, 36/70, 1, 46/70, 10);
|
||||
HBAR("volume", button_inactive, 1, 0, 46/70, 1, 56/70, 10);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
|
@ -62,7 +62,7 @@ class DialerScreen(EdjeGroup):
|
|||
self.part_text_set("signalq_text", "%s dBm /"%str(rssi))
|
||||
|
||||
def display_time(self):
|
||||
self.part_text_set("time_text", time.strftime("%H:%M", time.localtime()));
|
||||
self.part_text_set("time_text", datetime.now().strftime('%H:%M'));
|
||||
return True;
|
||||
|
||||
|
||||
|
|
|
@ -41,6 +41,7 @@ from pyneo.dbus_support import *
|
|||
from pyneo.sys_support import pr_set_name
|
||||
|
||||
from ConfigParser import SafeConfigParser
|
||||
import cairo
|
||||
|
||||
|
||||
class EdjeGroup(edje.Edje):
|
||||
|
@ -203,6 +204,8 @@ class PyneoController(object):
|
|||
|
||||
@classmethod
|
||||
def gsm_dial(class_, number):
|
||||
class_.notify_callbacks("gsm_phone_call_start")
|
||||
|
||||
os.system('alsactl -f /usr/share/openmoko/scenarios/gsmhandset.state restore')
|
||||
|
||||
name = class_.gsm_wireless.Initiate(number, dbus_interface=DIN_VOICE_CALL_INITIATOR, timeout=200)
|
||||
|
@ -210,27 +213,18 @@ class PyneoController(object):
|
|||
|
||||
# Initialize "active call" counter
|
||||
class_._calls[call] = 1
|
||||
|
||||
# class_.notify_callbacks("gsm_dialing")
|
||||
|
||||
@classmethod
|
||||
def gsm_hangup(class_):
|
||||
# Find call with highest "active call" counter - it'll be the one currently active
|
||||
call = None
|
||||
highest = 0
|
||||
|
||||
for (call_obj, counter) in class_._calls.items():
|
||||
if counter > highest:
|
||||
highest = counter
|
||||
call = call_obj
|
||||
|
||||
# if call:
|
||||
call = object_by_url('dbus:///org/pyneo/gsmdevice/Call/1')
|
||||
call.Hangup(dbus_interface=DIN_CALL)
|
||||
os.system('alsactl -f /usr/share/openmoko/scenarios/stereoout.state restore')
|
||||
class_.call_type = 'nix'
|
||||
|
||||
# Remove the call from our list
|
||||
# class_._calls.__delitem__(call_obj)
|
||||
@classmethod
|
||||
def gsm_accept(class_):
|
||||
call = object_by_url('dbus:///org/pyneo/gsmdevice/Call/1')
|
||||
call.Accept(dbus_interface=DIN_CALL)
|
||||
os.system('alsactl -f /usr/share/openmoko/scenarios/gsmhandset.state restore')
|
||||
|
||||
@classmethod
|
||||
def on_gsm_wireless_status(class_, status_map):
|
||||
|
@ -255,11 +249,10 @@ class PyneoController(object):
|
|||
if status.has_key('phone_activity_status'):
|
||||
ph_status = status['phone_activity_status']
|
||||
|
||||
if ph_status == 0 and class_.call_type != 'outgoing':
|
||||
# class_.pwr.BlinkenLeds("power:blue", 0, 0, 0, dbus_interface=DIN_POWER)
|
||||
if ph_status == 0:
|
||||
class_.notify_callbacks("gsm_phone_call_end")
|
||||
os.system('alsactl -f /usr/share/openmoko/scenarios/stereoout.state restore')
|
||||
if ph_status == 3:
|
||||
# class_.pwr.BlinkenLeds("power:blue", 400, 1300, 0, dbus_interface=DIN_POWER)
|
||||
class_.notify_callbacks("gsm_phone_ringing")
|
||||
if ph_status == 4:
|
||||
class_.notify_callbacks("gsm_phone_call_start")
|
||||
|
@ -374,7 +367,7 @@ class PyneoController(object):
|
|||
|
||||
@classmethod
|
||||
def brightness_change(class_, up_down):
|
||||
if up_down == '+':
|
||||
if up_down == 'button_right_bg_brightness':
|
||||
class_.brightness_value += 10
|
||||
if class_.brightness_value > 100: class_.brightness_value = 100
|
||||
else:
|
||||
|
|
|
@ -32,17 +32,18 @@ class GsmStatusScreen(EdjeGroup):
|
|||
self.part_text_set("button_11_caption", p_status)
|
||||
self.part_text_set("pwr_caption", "gsm device is %s"%p_status)
|
||||
|
||||
@edje.decorators.signal_callback("gsm_send", "*")
|
||||
@edje.decorators.signal_callback("mouse,up,1", "*")
|
||||
def on_edje_signal_dialer_status_triggered(self, emission, source):
|
||||
status = self.part_text_get("button_11_caption")
|
||||
if source == "<":
|
||||
if source == "button_12":
|
||||
PyneoController.show_dialer_screen()
|
||||
elif source == "on" and status == "on":
|
||||
PyneoController.power_down_gsm()
|
||||
elif source == "on" and status == "off":
|
||||
PyneoController.power_up_gsm()
|
||||
elif source == "+":
|
||||
elif source == "button_right_bg_brightness":
|
||||
PyneoController.brightness_change(source)
|
||||
elif source == "-":
|
||||
elif source == "button_left_bg_brightness":
|
||||
PyneoController.brightness_change(source)
|
||||
print 'settings source: ', source
|
||||
|
||||
|
|
|
@ -8,8 +8,14 @@ __license__ = "GPL3"
|
|||
from epydial import *
|
||||
|
||||
class HonScreen(EdjeGroup):
|
||||
class SignalGraph( evas.ClippedSmartObject ):
|
||||
def __init__( self, *args, **kargs ):
|
||||
evas.ClippedSmartObject.__init__( self, *args, **kargs )
|
||||
|
||||
def __init__(self, screen_manager):
|
||||
EdjeGroup.__init__(self, screen_manager, HON_SCREEN_NAME)
|
||||
self.signalgraph = self.SignalGraph( self.evas )
|
||||
print 'signalgraph', self.signalgraph
|
||||
|
||||
def register_pyneo_callbacks(self):
|
||||
PyneoController.register_callback("get_hon", self.on_get_hon)
|
||||
|
|
|
@ -24,4 +24,5 @@ class InCallScreen(EdjeGroup):
|
|||
PyneoController.gsm_hangup()
|
||||
if source == "Accept Call":
|
||||
print source
|
||||
PyneoController.gsm_accept()
|
||||
|
||||
|
|
Loading…
Reference in a new issue