add calculator
git-svn-id: http://www.neo1973-germany.de/svn@205 46df4e5c-bc4e-4628-a0fc-830ba316316d
18
epydial/calc_screen.py
Normal file
|
@ -0,0 +1,18 @@
|
||||||
|
#!/usr/bin/env python2.5
|
||||||
|
# -*- coding: utf-8 -*-
|
||||||
|
__author__ = "Soeren Apel (abraxa@dar-clan.de), Frank Gau (fgau@gau-net.de), Thomas Gstaedtner (thomas (a) gstaedtner (.) net)"
|
||||||
|
__version__ = "prototype"
|
||||||
|
__copyright__ = "Copyright (c) 2008"
|
||||||
|
__license__ = "GPL3"
|
||||||
|
|
||||||
|
from epydial import *
|
||||||
|
|
||||||
|
class CalcScreen(EdjeGroup):
|
||||||
|
def __init__(self, screen_manager):
|
||||||
|
EdjeGroup.__init__(self, screen_manager, CALC_SCREEN_NAME)
|
||||||
|
|
||||||
|
@edje.decorators.signal_callback("mouse,up,1", "*")
|
||||||
|
def on_edje_signal_calc_screen_triggered(self, emission, source):
|
||||||
|
if source == "background":
|
||||||
|
PyneoController.show_dialer_screen()
|
||||||
|
|
494
epydial/data/themes/blackwhite/calc_screen.edc
Normal file
|
@ -0,0 +1,494 @@
|
||||||
|
// calculator_screen.edc
|
||||||
|
// this is a theme for epydial, a pyneo dialer
|
||||||
|
//
|
||||||
|
// TODO: make the font colors shinier :)
|
||||||
|
//
|
||||||
|
// Signal1:
|
||||||
|
|
||||||
|
data {
|
||||||
|
item: "author" "http://www.gurumeditation.it/blog/wp-content/uploads/releases/calculator03.tgz";
|
||||||
|
item: "version" "prototype";
|
||||||
|
item: "name" "epydial_blackwhite";
|
||||||
|
}
|
||||||
|
|
||||||
|
images {
|
||||||
|
image: "bg.png" COMP;
|
||||||
|
image: "0.png" COMP;
|
||||||
|
image: "1.png" COMP;
|
||||||
|
image: "2.png" COMP;
|
||||||
|
image: "3.png" COMP;
|
||||||
|
image: "4.png" COMP;
|
||||||
|
image: "5.png" COMP;
|
||||||
|
image: "6.png" COMP;
|
||||||
|
image: "7.png" COMP;
|
||||||
|
image: "8.png" COMP;
|
||||||
|
image: "9.png" COMP;
|
||||||
|
image: "bg_calc.png" COMP;
|
||||||
|
image: "canc.png" COMP;
|
||||||
|
image: "divide.png" COMP;
|
||||||
|
image: "multiply.png" COMP;
|
||||||
|
image: "minus.png" COMP;
|
||||||
|
image: "plus.png" COMP;
|
||||||
|
image: "point.png" COMP;
|
||||||
|
image: "result.png" COMP;
|
||||||
|
image: "m-c.png" COMP;
|
||||||
|
image: "m-minus.png" COMP;
|
||||||
|
image: "m-plus.png" COMP;
|
||||||
|
image: "m-r.png" COMP;
|
||||||
|
}
|
||||||
|
|
||||||
|
fonts {
|
||||||
|
font: "Vera.ttf" "vera";
|
||||||
|
}
|
||||||
|
|
||||||
|
collections {
|
||||||
|
group {
|
||||||
|
name: "pyneo/calc/screen";
|
||||||
|
script {
|
||||||
|
public current = 0; //Current float number
|
||||||
|
public sum = 0;
|
||||||
|
public sub = 0;
|
||||||
|
public mul = 0;
|
||||||
|
public div = 0;
|
||||||
|
public restart = 0;
|
||||||
|
public locale = 0; //The ascii value used for '.' by current locale
|
||||||
|
|
||||||
|
public get_locale()
|
||||||
|
{
|
||||||
|
new buf[5];
|
||||||
|
snprintf(buf, 4, "%f", 1.1);
|
||||||
|
set_int(locale, buf[1]);
|
||||||
|
}
|
||||||
|
|
||||||
|
public calc_digit_add(val)
|
||||||
|
{
|
||||||
|
new buf[32];
|
||||||
|
new text[32];
|
||||||
|
|
||||||
|
get_text(PART:"display", text, 31);
|
||||||
|
|
||||||
|
//need a new number (+.-,*,/ pressed)
|
||||||
|
if (get_int(restart))
|
||||||
|
snprintf(buf, 31, "%i", val);
|
||||||
|
//point pressed
|
||||||
|
else if (val == -1)
|
||||||
|
snprintf(buf, 31, "%i%c", get_int(current), get_int(locale));
|
||||||
|
//only the 0 digit is on screen
|
||||||
|
else if ((text[0] == '0') && (text[1] == 0))
|
||||||
|
snprintf(buf, 31, "%i", val);
|
||||||
|
//Normal: append the number
|
||||||
|
else
|
||||||
|
snprintf(buf, 31, "%s%i", text, val);
|
||||||
|
|
||||||
|
set_text(PART:"display", buf);
|
||||||
|
set_float(current, atof(buf));
|
||||||
|
|
||||||
|
if (get_int(restart))
|
||||||
|
set_int(restart, 0);
|
||||||
|
}
|
||||||
|
|
||||||
|
public calc_reset()
|
||||||
|
{
|
||||||
|
set_float(current, 0.0);
|
||||||
|
set_float(sum, 0.0);
|
||||||
|
set_float(sub, 0.0);
|
||||||
|
set_float(mul, 0.0);
|
||||||
|
set_float(div, 0.0);
|
||||||
|
set_text(PART:"display", "0");
|
||||||
|
}
|
||||||
|
|
||||||
|
public calc_result()
|
||||||
|
{
|
||||||
|
new buf[32];
|
||||||
|
|
||||||
|
if (get_float(sum))
|
||||||
|
{
|
||||||
|
snprintf(buf, 31, "%f", get_float(sum) + get_float(current));
|
||||||
|
set_float(sum, 0.0);
|
||||||
|
}
|
||||||
|
else if (get_float(sub))
|
||||||
|
{
|
||||||
|
snprintf(buf, 31, "%f", get_float(sub) - get_float(current));
|
||||||
|
set_float(sub, 0.0);
|
||||||
|
}
|
||||||
|
else if (get_float(mul))
|
||||||
|
{
|
||||||
|
snprintf(buf, 31, "%f", get_float(mul) * get_float(current));
|
||||||
|
set_float(mul, 0.0);
|
||||||
|
}
|
||||||
|
else if (get_float(div))
|
||||||
|
{
|
||||||
|
snprintf(buf, 31, "%f", get_float(div) / get_float(current));
|
||||||
|
set_float(div, 0.0);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
//remove leading zeroes
|
||||||
|
new i = 0;
|
||||||
|
while (buf[i] != 0) i++;
|
||||||
|
i--;
|
||||||
|
while (i && (buf[i] == '0'))
|
||||||
|
{
|
||||||
|
buf[i] = 0;
|
||||||
|
i--;
|
||||||
|
}
|
||||||
|
if (buf[i] == get_int(locale)) buf[i] = 0;
|
||||||
|
|
||||||
|
//Set result
|
||||||
|
set_text(PART:"display", buf);
|
||||||
|
set_float(current, atof(buf));
|
||||||
|
}
|
||||||
|
|
||||||
|
public calc_sum()
|
||||||
|
{
|
||||||
|
if (get_float(sum))
|
||||||
|
calc_result();
|
||||||
|
set_float(sum, get_float(current));
|
||||||
|
set_float(current, 0.0);
|
||||||
|
set_int(restart, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
public calc_sub()
|
||||||
|
{
|
||||||
|
if (get_float(sub))
|
||||||
|
calc_result();
|
||||||
|
set_float(sub, get_float(current));
|
||||||
|
set_float(current, 0.0);
|
||||||
|
set_int(restart, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
public calc_mul()
|
||||||
|
{
|
||||||
|
if (get_float(mul))
|
||||||
|
calc_result();
|
||||||
|
set_float(mul, get_float(current));
|
||||||
|
set_float(current, 0.0);
|
||||||
|
set_int(restart, 1);
|
||||||
|
}
|
||||||
|
|
||||||
|
public calc_div()
|
||||||
|
{
|
||||||
|
if (get_float(div))
|
||||||
|
calc_result();
|
||||||
|
set_float(div, get_float(current));
|
||||||
|
set_float(current, 0.0);
|
||||||
|
set_int(restart, 1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
parts {
|
||||||
|
part {
|
||||||
|
name: "background";
|
||||||
|
type: IMAGE;
|
||||||
|
mouse_events: 1;
|
||||||
|
description {
|
||||||
|
state: "default" 0;
|
||||||
|
rel1 { relative: 0 0; offset: 0 0; }
|
||||||
|
rel2 { relative: 1 1; offset: 0 0; }
|
||||||
|
image { normal: "bg.png"; }
|
||||||
|
}
|
||||||
|
}
|
||||||
|
part {
|
||||||
|
name: "bg_calc";
|
||||||
|
type: IMAGE;
|
||||||
|
mouse_events: 1;
|
||||||
|
description {
|
||||||
|
state: "default" 0.0;
|
||||||
|
aspect: 0.9 0.9;
|
||||||
|
aspect_preference: BOTH;
|
||||||
|
image {
|
||||||
|
normal: "bg_calc.png";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
part {
|
||||||
|
name: "display";
|
||||||
|
type: TEXT;
|
||||||
|
mouse_events: 0;
|
||||||
|
description {
|
||||||
|
state: "default" 0.0;
|
||||||
|
color: 68 72 63 200;
|
||||||
|
rel1 {
|
||||||
|
relative: 0.07 0.09;
|
||||||
|
to: "bg_calc";
|
||||||
|
}
|
||||||
|
rel2 {
|
||||||
|
relative: 0.93 0.22;
|
||||||
|
to: "bg_calc";
|
||||||
|
}
|
||||||
|
text{
|
||||||
|
font: "vera";
|
||||||
|
size: 20;
|
||||||
|
fit: 0 1;
|
||||||
|
align: 1 0.5;
|
||||||
|
text: "012345";
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
part {
|
||||||
|
name: "num_bg";
|
||||||
|
type: RECT;
|
||||||
|
mouse_events: 0;
|
||||||
|
description {
|
||||||
|
state: "default" 0.0;
|
||||||
|
color: 255 0 255 0;
|
||||||
|
rel1 {
|
||||||
|
relative: 0.14 0.27;
|
||||||
|
to: "bg_calc";
|
||||||
|
}
|
||||||
|
rel2 {
|
||||||
|
relative: 0.73 0.95;
|
||||||
|
to: "bg_calc";
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
#define BTN(pname, rel1x, rel1y, rel2x, rel2y) \
|
||||||
|
part { \
|
||||||
|
name: pname; \
|
||||||
|
type: IMAGE; \
|
||||||
|
description { \
|
||||||
|
state: "default" 0.0; \
|
||||||
|
align: 0.5 0.5; \
|
||||||
|
image { \
|
||||||
|
normal: pname".png"; \
|
||||||
|
} \
|
||||||
|
rel1 { \
|
||||||
|
relative: (rel1x+0.01) (rel1y+0.01); \
|
||||||
|
to: "num_bg"; \
|
||||||
|
} \
|
||||||
|
rel2 { \
|
||||||
|
relative: (rel2x-0.01) (rel2y-0.01); \
|
||||||
|
to: "num_bg"; \
|
||||||
|
} \
|
||||||
|
} \
|
||||||
|
description { \
|
||||||
|
state: "pressed" 0.0; \
|
||||||
|
align: 0.5 0.5; \
|
||||||
|
image { \
|
||||||
|
normal: pname".png"; \
|
||||||
|
} \
|
||||||
|
rel1 { \
|
||||||
|
relative: (rel1x+0.01) (rel1y+0.05); \
|
||||||
|
to: "num_bg"; \
|
||||||
|
} \
|
||||||
|
rel2 { \
|
||||||
|
relative: (rel2x-0.01) (rel2y-0.05); \
|
||||||
|
to: "num_bg"; \
|
||||||
|
} \
|
||||||
|
} \
|
||||||
|
}
|
||||||
|
|
||||||
|
BTN("0", 0.0, 0.75, 0.33, 1.0)
|
||||||
|
BTN("1", 0.0, 0.50, 0.33, 0.75)
|
||||||
|
BTN("2", 0.33, 0.50, 0.66, 0.75)
|
||||||
|
BTN("3", 0.66, 0.50, 0.99, 0.75)
|
||||||
|
BTN("4", 0.0, 0.25, 0.33, 0.50)
|
||||||
|
BTN("5", 0.33, 0.25, 0.66, 0.50)
|
||||||
|
BTN("6", 0.66, 0.25, 0.99, 0.50)
|
||||||
|
BTN("7", 0.0, 0.0, 0.33, 0.25)
|
||||||
|
BTN("8", 0.33, 0.0, 0.66, 0.25)
|
||||||
|
BTN("9", 0.66, 0.0, 0.99, 0.25)
|
||||||
|
BTN("point", 0.33, 0.75, 0.66, 1.0)
|
||||||
|
BTN("result", 0.66, 0.75, 0.99, 1.0)
|
||||||
|
BTN("canc", 1.03, 0.0, 1.30, 0.20)
|
||||||
|
BTN("divide", 1.03, 0.20, 1.30, 0.40)
|
||||||
|
BTN("multiply", 1.03, 0.40, 1.30, 0.60)
|
||||||
|
BTN("minus", 1.03, 0.60, 1.30, 0.80)
|
||||||
|
BTN("plus", 1.03, 0.80, 1.30, 1.0)
|
||||||
|
|
||||||
|
}
|
||||||
|
#define BTN_PROG(__pname) \
|
||||||
|
program { \
|
||||||
|
name: "pressed_"__pname; \
|
||||||
|
signal: "mouse,down,*"; \
|
||||||
|
source: __pname; \
|
||||||
|
action: STATE_SET "pressed" 0.0; \
|
||||||
|
transition: SINUSOIDAL 0.2; \
|
||||||
|
target: __pname; \
|
||||||
|
after: "released_"__pname; \
|
||||||
|
} \
|
||||||
|
program { \
|
||||||
|
name: "released_"__pname; \
|
||||||
|
source: ""; \
|
||||||
|
action: STATE_SET "default" 0.0;\
|
||||||
|
transition: SINUSOIDAL 0.2; \
|
||||||
|
target: __pname; \
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
programs {
|
||||||
|
program {
|
||||||
|
name: "init";
|
||||||
|
signal: "load";
|
||||||
|
source: "";
|
||||||
|
script {
|
||||||
|
set_text(PART:"display", "0");
|
||||||
|
get_locale();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
BTN_PROG("0")
|
||||||
|
BTN_PROG("1")
|
||||||
|
BTN_PROG("2")
|
||||||
|
BTN_PROG("3")
|
||||||
|
BTN_PROG("4")
|
||||||
|
BTN_PROG("5")
|
||||||
|
BTN_PROG("6")
|
||||||
|
BTN_PROG("7")
|
||||||
|
BTN_PROG("8")
|
||||||
|
BTN_PROG("9")
|
||||||
|
BTN_PROG("point")
|
||||||
|
BTN_PROG("result")
|
||||||
|
BTN_PROG("canc")
|
||||||
|
BTN_PROG("divide")
|
||||||
|
BTN_PROG("multiply")
|
||||||
|
BTN_PROG("plus")
|
||||||
|
BTN_PROG("minus")
|
||||||
|
|
||||||
|
program {
|
||||||
|
name: "clicked_0";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "0";
|
||||||
|
script {
|
||||||
|
calc_digit_add(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_1";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "1";
|
||||||
|
script {
|
||||||
|
calc_digit_add(1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_2";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "2";
|
||||||
|
script {
|
||||||
|
calc_digit_add(2);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_3";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "3";
|
||||||
|
script {
|
||||||
|
calc_digit_add(3);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_4";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "4";
|
||||||
|
script {
|
||||||
|
calc_digit_add(4);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_5";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "5";
|
||||||
|
script {
|
||||||
|
calc_digit_add(5);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_6";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "6";
|
||||||
|
script {
|
||||||
|
calc_digit_add(6);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_7";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "7";
|
||||||
|
script {
|
||||||
|
calc_digit_add(7);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_8";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "8";
|
||||||
|
script {
|
||||||
|
calc_digit_add(8);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_9";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "9";
|
||||||
|
script {
|
||||||
|
calc_digit_add(9);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_point";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "point";
|
||||||
|
script {
|
||||||
|
calc_digit_add(-1);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_canc";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "canc";
|
||||||
|
script {
|
||||||
|
calc_reset();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_plus";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "plus";
|
||||||
|
script {
|
||||||
|
calc_sum();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_minus";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "minus";
|
||||||
|
script {
|
||||||
|
calc_sub();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_multiply";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "multiply";
|
||||||
|
script {
|
||||||
|
calc_mul();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_divide";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "divide";
|
||||||
|
script {
|
||||||
|
calc_div();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
program {
|
||||||
|
name: "clicked_result";
|
||||||
|
signal: "mouse,down,*";
|
||||||
|
source: "result";
|
||||||
|
script {
|
||||||
|
calc_result();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
BIN
epydial/data/themes_data/blackwhite/images/0.png
Normal file
After Width: | Height: | Size: 5 KiB |
BIN
epydial/data/themes_data/blackwhite/images/1.png
Normal file
After Width: | Height: | Size: 4.8 KiB |
BIN
epydial/data/themes_data/blackwhite/images/2.png
Normal file
After Width: | Height: | Size: 5 KiB |
BIN
epydial/data/themes_data/blackwhite/images/3.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
BIN
epydial/data/themes_data/blackwhite/images/4.png
Normal file
After Width: | Height: | Size: 5 KiB |
BIN
epydial/data/themes_data/blackwhite/images/5.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
BIN
epydial/data/themes_data/blackwhite/images/6.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
BIN
epydial/data/themes_data/blackwhite/images/7.png
Normal file
After Width: | Height: | Size: 4.9 KiB |
BIN
epydial/data/themes_data/blackwhite/images/8.png
Normal file
After Width: | Height: | Size: 5.3 KiB |
BIN
epydial/data/themes_data/blackwhite/images/9.png
Normal file
After Width: | Height: | Size: 5 KiB |
BIN
epydial/data/themes_data/blackwhite/images/bg_calc.png
Normal file
After Width: | Height: | Size: 15 KiB |
BIN
epydial/data/themes_data/blackwhite/images/canc.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
epydial/data/themes_data/blackwhite/images/divide.png
Normal file
After Width: | Height: | Size: 3.7 KiB |
BIN
epydial/data/themes_data/blackwhite/images/m-c.png
Normal file
After Width: | Height: | Size: 4.2 KiB |
BIN
epydial/data/themes_data/blackwhite/images/m-minus.png
Normal file
After Width: | Height: | Size: 4.1 KiB |
BIN
epydial/data/themes_data/blackwhite/images/m-plus.png
Normal file
After Width: | Height: | Size: 4 KiB |
BIN
epydial/data/themes_data/blackwhite/images/m-r.png
Normal file
After Width: | Height: | Size: 4.2 KiB |
BIN
epydial/data/themes_data/blackwhite/images/minus.png
Normal file
After Width: | Height: | Size: 3.5 KiB |
BIN
epydial/data/themes_data/blackwhite/images/multiply.png
Normal file
After Width: | Height: | Size: 3.8 KiB |
BIN
epydial/data/themes_data/blackwhite/images/plus.png
Normal file
After Width: | Height: | Size: 3.6 KiB |
BIN
epydial/data/themes_data/blackwhite/images/point.png
Normal file
After Width: | Height: | Size: 4.5 KiB |
BIN
epydial/data/themes_data/blackwhite/images/result.png
Normal file
After Width: | Height: | Size: 5.1 KiB |
|
@ -1,6 +1,6 @@
|
||||||
#!/usr/bin/env python2.5
|
#!/usr/bin/env python2.5
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
__author__ = "Soeren Apel (abraxa@dar-clan.de), Frank Gau (fgau@gau-net.de), Thomas Gstaedner (thomas (a) gstaedtner (.) net)"
|
__author__ = "Soeren Apel (abraxa@dar-clan.de), Frank Gau (fgau@gau-net.de), Thomas Gstaedtner (thomas (a) gstaedtner (.) net)"
|
||||||
__version__ = "prototype"
|
__version__ = "prototype"
|
||||||
__copyright__ = "Copyright (c) 2008"
|
__copyright__ = "Copyright (c) 2008"
|
||||||
__license__ = "GPL3"
|
__license__ = "GPL3"
|
||||||
|
@ -122,6 +122,11 @@ class DialerScreen(EdjeGroup):
|
||||||
self.part_text_set("numberdisplay_text", "".join(self.text))
|
self.part_text_set("numberdisplay_text", "".join(self.text))
|
||||||
PyneoController.power_status_gps()
|
PyneoController.power_status_gps()
|
||||||
PyneoController.show_gps_status_screen()
|
PyneoController.show_gps_status_screen()
|
||||||
|
elif source == "dial" and ''.join(self.text) == "3":
|
||||||
|
print '--- Calculator'
|
||||||
|
self.text =[]
|
||||||
|
self.part_text_set("numberdisplay_text", "".join(self.text))
|
||||||
|
PyneoController.show_calc_screen()
|
||||||
elif source == "dial" and ''.join(self.text) == "6":
|
elif source == "dial" and ''.join(self.text) == "6":
|
||||||
print '--- Hon Screen'
|
print '--- Hon Screen'
|
||||||
self.text = []
|
self.text = []
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#!/usr/bin/env python2.5
|
#!/usr/bin/env python2.5
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
__author__ = "Soeren Apel (abraxa@dar-clan.de), Frank Gau (fgau@gau-net.de), Thomas Gstaedner (thomas (a) gstaedtner (.) net)"
|
__author__ = "Soeren Apel (abraxa@dar-clan.de), Frank Gau (fgau@gau-net.de), Thomas Gstaedtner (thomas (a) gstaedtner (.) net)"
|
||||||
__version__ = "prototype"
|
__version__ = "prototype"
|
||||||
__copyright__ = "Copyright (c) 2008"
|
__copyright__ = "Copyright (c) 2008"
|
||||||
__license__ = "GPL3"
|
__license__ = "GPL3"
|
||||||
|
@ -23,6 +23,7 @@ INCALL_SCREEN_NAME = "pyneo/dialer/incall"
|
||||||
GSM_STATUS_SCREEN_NAME = "pyneo/gsm/status"
|
GSM_STATUS_SCREEN_NAME = "pyneo/gsm/status"
|
||||||
GPS_STATUS_SCREEN_NAME = "pyneo/gps/status"
|
GPS_STATUS_SCREEN_NAME = "pyneo/gps/status"
|
||||||
HON_SCREEN_NAME = "pyneo/hon/screen"
|
HON_SCREEN_NAME = "pyneo/hon/screen"
|
||||||
|
CALC_SCREEN_NAME = "pyneo/calc/screen"
|
||||||
|
|
||||||
from datetime import datetime
|
from datetime import datetime
|
||||||
from dbus import SystemBus
|
from dbus import SystemBus
|
||||||
|
@ -41,7 +42,7 @@ from pyneo.dbus_support import *
|
||||||
from pyneo.sys_support import pr_set_name
|
from pyneo.sys_support import pr_set_name
|
||||||
|
|
||||||
from ConfigParser import SafeConfigParser
|
from ConfigParser import SafeConfigParser
|
||||||
import cairo
|
#import cairo
|
||||||
|
|
||||||
|
|
||||||
class EdjeGroup(edje.Edje):
|
class EdjeGroup(edje.Edje):
|
||||||
|
@ -365,6 +366,10 @@ class PyneoController(object):
|
||||||
def show_hon_screen(class_):
|
def show_hon_screen(class_):
|
||||||
class_.notify_callbacks("show_hon_screen")
|
class_.notify_callbacks("show_hon_screen")
|
||||||
|
|
||||||
|
@classmethod
|
||||||
|
def show_calc_screen(class_):
|
||||||
|
class_.notify_callbacks("show_calc_screen")
|
||||||
|
|
||||||
@classmethod
|
@classmethod
|
||||||
def brightness_change(class_, up_down):
|
def brightness_change(class_, up_down):
|
||||||
if up_down == 'button_right_bg_brightness':
|
if up_down == 'button_right_bg_brightness':
|
||||||
|
@ -382,6 +387,7 @@ from incall_screen import *
|
||||||
from gsm_status_screen import *
|
from gsm_status_screen import *
|
||||||
from gps_status_screen import *
|
from gps_status_screen import *
|
||||||
from hon_screen import *
|
from hon_screen import *
|
||||||
|
from calc_screen import *
|
||||||
|
|
||||||
class Dialer(object):
|
class Dialer(object):
|
||||||
screens = None
|
screens = None
|
||||||
|
@ -403,6 +409,7 @@ class Dialer(object):
|
||||||
PyneoController.register_callback("show_gps_status_screen", self.on_gps_status_screen)
|
PyneoController.register_callback("show_gps_status_screen", self.on_gps_status_screen)
|
||||||
PyneoController.register_callback("show_dialer_screen", self.on_call_end)
|
PyneoController.register_callback("show_dialer_screen", self.on_call_end)
|
||||||
PyneoController.register_callback("show_hon_screen", self.on_hon_screen)
|
PyneoController.register_callback("show_hon_screen", self.on_hon_screen)
|
||||||
|
PyneoController.register_callback("show_calc_screen", self.on_calc_screen)
|
||||||
|
|
||||||
# Initialize the D-Bus interface to pyneo
|
# Initialize the D-Bus interface to pyneo
|
||||||
dbus_ml = e_dbus.DBusEcoreMainLoop()
|
dbus_ml = e_dbus.DBusEcoreMainLoop()
|
||||||
|
@ -457,6 +464,10 @@ class Dialer(object):
|
||||||
self.init_screen(HON_SCREEN_NAME, HonScreen(self))
|
self.init_screen(HON_SCREEN_NAME, HonScreen(self))
|
||||||
self.show_screen(HON_SCREEN_NAME)
|
self.show_screen(HON_SCREEN_NAME)
|
||||||
|
|
||||||
|
def on_calc_screen(self):
|
||||||
|
self.init_screen(CALC_SCREEN_NAME, CalcScreen(self))
|
||||||
|
self.show_screen(CALC_SCREEN_NAME)
|
||||||
|
|
||||||
|
|
||||||
class EvasCanvas(object):
|
class EvasCanvas(object):
|
||||||
def __init__(self, fullscreen, engine_name):
|
def __init__(self, fullscreen, engine_name):
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#!/usr/bin/env python2.5
|
#!/usr/bin/env python2.5
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
__author__ = "Soeren Apel (abraxa@dar-clan.de), Frank Gau (fgau@gau-net.de), Thomas Gstaedner (thomas (a) gstaedtner (.) net)"
|
__author__ = "Soeren Apel (abraxa@dar-clan.de), Frank Gau (fgau@gau-net.de), Thomas Gstaedtner (thomas (a) gstaedtner (.) net)"
|
||||||
__version__ = "prototype"
|
__version__ = "prototype"
|
||||||
__copyright__ = "Copyright (c) 2008"
|
__copyright__ = "Copyright (c) 2008"
|
||||||
__license__ = "GPL3"
|
__license__ = "GPL3"
|
||||||
|
@ -8,14 +8,14 @@ __license__ = "GPL3"
|
||||||
from epydial import *
|
from epydial import *
|
||||||
|
|
||||||
class HonScreen(EdjeGroup):
|
class HonScreen(EdjeGroup):
|
||||||
class SignalGraph( evas.ClippedSmartObject ):
|
class PixGraph( evas.ClippedSmartObject ):
|
||||||
def __init__( self, *args, **kargs ):
|
def __init__( self, *args, **kargs ):
|
||||||
evas.ClippedSmartObject.__init__( self, *args, **kargs )
|
evas.ClippedSmartObject.__init__( self, *args, **kargs )
|
||||||
|
|
||||||
def __init__(self, screen_manager):
|
def __init__(self, screen_manager):
|
||||||
EdjeGroup.__init__(self, screen_manager, HON_SCREEN_NAME)
|
EdjeGroup.__init__(self, screen_manager, HON_SCREEN_NAME)
|
||||||
self.signalgraph = self.SignalGraph( self.evas )
|
self.pixgraph = self.PixGraph( self.evas )
|
||||||
print 'signalgraph', self.signalgraph
|
print 'pixgraph', self.pixgraph
|
||||||
|
|
||||||
def register_pyneo_callbacks(self):
|
def register_pyneo_callbacks(self):
|
||||||
PyneoController.register_callback("get_hon", self.on_get_hon)
|
PyneoController.register_callback("get_hon", self.on_get_hon)
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#!/usr/bin/env python2.5
|
#!/usr/bin/env python2.5
|
||||||
# -*- coding: utf-8 -*-
|
# -*- coding: utf-8 -*-
|
||||||
__author__ = "Soeren Apel (abraxa@dar-clan.de), Frank Gau (fgau@gau-net.de), Thomas Gstaedner (thomas (a) gstaedtner (.) net)"
|
__author__ = "Soeren Apel (abraxa@dar-clan.de), Frank Gau (fgau@gau-net.de), Thomas Gstaedtner (thomas (a) gstaedtner (.) net)"
|
||||||
__version__ = "prototype"
|
__version__ = "prototype"
|
||||||
__copyright__ = "Copyright (c) 2008"
|
__copyright__ = "Copyright (c) 2008"
|
||||||
__license__ = "GPL3"
|
__license__ = "GPL3"
|
||||||
|
|