Changeset 4918
- Timestamp:
- 02/10/09 05:36:39 (4 years ago)
- Location:
- developers/charlie/Tests/Evas
- Files:
-
- 1 added
- 3 edited
Legend:
- Unmodified
- Added
- Removed
-
developers/charlie/Tests/Evas/test.edc
r4769 r4918 14 14 15 15 collections { 16 group { 17 name: "test"; 18 parts { 19 part { 20 name: "background"; 21 type: RECT; 22 description { 23 state: "default" 0.0; 24 color: 0 0 0 255; 25 } 16 group { 17 name: "test"; 18 parts { 19 part { 20 name: "background"; 21 type: RECT; 22 description { 23 state: "default" 0.0; 24 color: 0 128 0 255; 26 25 } 27 28 29 part {30 name: "main-menu";31 type: SWALLOW;32 description {33 state: "default" 0.0;34 rel1 {35 relative: 0.1 0.1;36 offset: 0 0;37 }38 rel2 {39 relative: 0.9 0.9;40 offset: 0 0;41 }42 }26 } 27 28 29 part { 30 name: "main-menu"; 31 type: SWALLOW; 32 description { 33 state: "default" 0.0; 34 rel1 { 35 relative: 0.1 0.1; 36 offset: 0 0; 37 } 38 rel2 { 39 relative: 0.9 0.9; 40 offset: 0 0; 41 } 43 42 } 44 }45 }46 47 48 group {49 name: "label";50 min: 440 80;51 max: 440 80;52 parts {53 part{54 name: "label";55 type: TEXT;56 description {57 fixed: 1 1;58 text {59 align: 0.0 0.5; 60 min: 1 1;61 size: 48;62 text: "Hello";63 font: "Sans";64 } 65 rel1 {66 relative: 0.1 0.1;67 offset: 0 0;68 }69 rel2 {70 relative: 0.9 0.9;71 offset: 0 0;72 }73 state: "default" 0.0;74 color: 255 255 255 255;75 }43 } 44 } 45 } 46 47 48 group { 49 name: "label"; 50 min: 440 64; 51 max: 440 64; 52 parts { 53 part { 54 name: "label"; 55 type: TEXT; 56 description { 57 fixed: 1 1; 58 text { 59 align: 0.0 0.5; 60 min: 1 1; 61 size: 48; 62 text: "Hello"; 63 font: "Sans"; 64 } 65 rel1 { 66 relative: 0.1 0.1; 67 offset: 0 0; 68 } 69 rel2 { 70 relative: 0.9 0.9; 71 offset: 0 0; 72 } 73 state: "default" 0.0; 74 color: 255 255 255 255; 76 75 } 77 }78 }79 80 group {81 name: "button";82 min: 440 80;83 max: 440 80;84 parts {85 part{86 name: "rect";87 type: RECT;88 description {89 rel1{90 relative: 0.1 0.1;91 offset: 0 0;92 }93 rel2 {94 relative: 0.9 0.9;95 offset: 0 0;96 }97 state: "default" 0.0;98 color: 255 0 0 128;99 }76 } 77 } 78 } 79 80 group { 81 name: "button"; 82 min: 440 80; 83 max: 440 80; 84 parts { 85 part { 86 name: "rect"; 87 type: RECT; 88 description { 89 rel1 { 90 relative: 0.1 0.1; 91 offset: 0 0; 92 } 93 rel2 { 94 relative: 0.9 0.9; 95 offset: 0 0; 96 } 97 state: "default" 0.0; 98 color: 255 255 0 128; 100 99 } 101 } 102 } 103 104 105 group { 106 name: "frame"; 107 min: 440 80; 108 // max: 440 80; 109 parts { 110 part { 111 name: "rect"; 112 type: RECT; 113 description { 114 rel1 { 115 relative: 0.1 0.1; 116 offset: 0 0; 117 } 118 rel2 { 119 relative: 0.9 0.9; 120 offset: 0 0; 121 } 122 state: "default" 0.0; 123 color: 255 0 0 255; 124 } 100 } 101 } 102 programs { 103 program { 104 signal: "mouse,up,1"; 105 source: "rect"; 106 action: SIGNAL_EMIT "clicked" "rect"; 107 } 108 } 109 } 110 111 112 group { 113 name: "frame"; 114 min: 440 80; 115 // max: 440 80; 116 parts { 117 part { 118 name: "rect"; 119 type: RECT; 120 description { 121 rel1 { 122 relative: 0.1 0.1; 123 offset: 0 0; 124 } 125 rel2 { 126 relative: 0.9 0.9; 127 offset: 0 0; 128 } 129 state: "default" 0.0; 130 color: 255 255 0 255; 125 131 } 126 } 127 } 132 } 133 } 134 } 128 135 } 129 136 130 -
developers/charlie/Tests/Evas/test.py
r4769 r4918 1 #!/usr/bin/env python 1 2 2 3 import e_dbus … … 9 10 import etk 10 11 11 class Widget(object): 12 def __init__(self, parent, **kargs): 12 from object import Object 13 14 class Widget(Object): 15 def __init__(self, parent, etk_obj=None, expand=False, **kargs): 16 super(Widget, self).__init__() 17 self.etk_obj = etk_obj 13 18 self.parent = parent 14 self.children = [] 19 self.expand=expand 20 self.children = [] # Not sure we really need that 15 21 if parent is not None: 16 22 parent.add(self) … … 27 33 class Window(Widget): 28 34 def __init__(self, parent, **kargs): 29 self.etk_obj = etk.VBox()30 super(Window, self).__init__(parent, **kargs)35 etk_obj = etk.VBox() # XXX: use a more appropriate container 36 super(Window, self).__init__(parent, etk_obj, **kargs) 31 37 def add(self, child): 32 self.etk_obj.append(child.etk_obj, etk.VBox.START, etk.VBox.NONE, 0) 38 if child.expand: 39 policy = etk.VBox.EXPAND_FILL 40 self.etk_obj.append(child.etk_obj, etk.VBox.START, policy, 0) 33 41 34 42 43 class EdjeSource(object): 44 def __init__(self, edje, source): 45 self.edje = edje 46 self.source = source 47 def callback(self, info, signal, source, callback, *args): 48 callback(self, *args) 49 def connect(self, signal, callback, *args): 50 self.edje._edje_obj.signal_callback_add(signal, self.source, 51 self.callback, callback, 52 *args) 53 54 55 class Edje(Widget): 56 def __init__(self, parent, file, group, **kargs): 57 self.file = file 58 self.group = group 59 etk_obj = etk.Canvas() 60 self._edje_obj = edje.Edje(parent.get_evas(), file=file, group=group) 61 etk_obj.object_add(self._edje_obj) 62 super(Edje, self).__init__(parent, etk_obj, **kargs) 63 64 def source(self, name): 65 return EdjeSource(self, name) 66 67 35 68 class Screen(Widget): 36 69 def __init__(self): … … 39 72 self.edje.size = self.etk_window.evas.size 40 73 self.etk_window.data["edje"] = self.edje 41 self.etk_obj = etk.Embed(self.etk_window.evas)42 Widget.__init__(self, None )74 etk_obj = etk.Embed(self.etk_window.evas) 75 Widget.__init__(self, None, etk_obj) 43 76 44 77 def get_evas(self): … … 54 87 class Frame(Widget): 55 88 def __init__(self, parent, **kargs): 56 self.etk_obj = etk.Canvas()89 etk_obj = etk.Canvas() 57 90 edje_obj = edje.Edje(parent.get_evas(), file='test.edj', group="frame") 58 self.etk_obj.object_add(edje_obj)59 super(Frame, self).__init__(parent, **kargs)91 etk_obj.object_add(edje_obj) 92 super(Frame, self).__init__(parent, etk_obj, **kargs) 60 93 edje_obj.show() 61 94 62 95 class Box(Widget): 63 96 def __init__(self, parent, axis=0, **kargs): 64 self.etk_obj = etk.VBox() 65 super(Box, self).__init__(parent, **kargs) 97 if axis == 0: 98 etk_obj = etk.VBox() 99 else: 100 etk_obj = etk.HBox() 101 super(Box, self).__init__(parent, etk_obj, **kargs) 66 102 def add(self, child): 67 self.etk_obj.append(child.etk_obj, etk.VBox.START, etk.VBox.NONE, 0) 103 policy = etk.VBox.FILL 104 if child.expand: 105 policy = etk.VBox.EXPAND_FILL 106 self.etk_obj.append(child.etk_obj, etk.VBox.START, policy, 0) 68 107 69 108 class Scrolled(Widget): 70 109 def __init__(self, parent, **kargs): 71 self.etk_obj = etk.ScrolledView()72 super(Scrolled, self).__init__(parent, **kargs)110 etk_obj = etk.ScrolledView() 111 super(Scrolled, self).__init__(parent, etk_obj, **kargs) 73 112 def add(self, child): 74 113 self.etk_obj.add_with_viewport(child.etk_obj) 75 114 76 class Button( Widget):115 class Button(Edje): 77 116 def __init__(self, parent, **kargs): 78 self.etk_obj = etk.Canvas() 79 edje_obj = edje.Edje(parent.get_evas(), file='test.edj', group="button") 80 self.etk_obj.object_add(edje_obj) 81 super(Button, self).__init__(parent, **kargs) 82 edje_obj.show() 117 super(Button, self).__init__(parent, 'test.edj', 'button') 118 self.source('rect').connect('clicked', self._on_click) 119 def _on_click(self, *args): 120 self.emit('clicked') 121 122 123 class Edit(Widget): 124 def __init__(self, parent, **kargs): 125 etk_obj = etk.TextView() 126 super(Edit, self).__init__(parent, etk_obj, **kargs) 127 83 128 84 129 class Label(Widget): 85 130 def __init__(self, parent, text, **kargs): 86 self.etk_obj = etk.Canvas()131 etk_obj = etk.Canvas() 87 132 self.edje_obj = edje.Edje(parent.get_evas(), file='test.edj', group="label") 88 133 self.edje_obj.part_text_set("label", text) 89 self.etk_obj.object_add(self.edje_obj)90 super(Label, self).__init__(parent, **kargs)134 etk_obj.object_add(self.edje_obj) 135 super(Label, self).__init__(parent, etk_obj, **kargs) 91 136 self.edje_obj.show() 92 137 … … 99 144 class Spring(Widget): 100 145 def __init__(self, parent, **kargs): 101 self.etk_obj = etk.HSeparator()102 super(Spring, self).__init__(parent, **kargs)146 etk_obj = etk.HSeparator() 147 super(Spring, self).__init__(parent, etk_obj, **kargs) 103 148 104 149 … … 111 156 window = Window(screen) 112 157 113 frame = Frame(window)158 # frame = Frame(window) 114 159 115 # vbox = Box(window) 116 # Label(vbox, "hello") 117 # Spring(vbox) 118 # Label(vbox, "hello") 160 vbox = Box(window, expand=True) 161 Label(vbox, "Text") 162 # Spring(vbox) 163 Label(vbox, "hi") 164 Edit(vbox, expand=True) 119 165 120 121 # scrolled = Scrolled(screen) 122 # window.etk_obj.size_request_set(10,10) 123 # 124 # vbox = Box(scrolled) 125 # 126 # for i in range(10): 127 # b = Button(vbox) 128 # l = Label(b, "hello %d" % i) 129 130 # screen.show() 131 132 166 scrolled = Scrolled(vbox, expand=True) 167 # # window.etk_obj.size_request_set(10,10) 168 169 vbox = Box(scrolled) 170 171 for i in range(10): 172 b = Button(vbox) 173 # b = Edje(vbox, 'test.edj', 'button') 174 # b.source("rect").connect('clicked', self.on_click) 175 b.connect('clicked', self.on_click) 176 l = Label(b, "hello %d" % i) 177 178 screen.show() 179 180 def on_click(self, *args): 181 print "click", args 182 183 133 184 def run(self): 134 185 ecore.main_loop_begin() 135 186 136 187 gui = Gui() 137 188 gui.run() 138
Note: See TracChangeset
for help on using the changeset viewer.
