From: Enlightenment S. <no-...@en...> - 2009-11-16 17:49:22
|
Log: Minor improvements for better usability in Editje * Resizing the group was modified to consider the parent scroll. * The parts list is presented in logical order and has actions of reordering and removal. * Remove action for Signals and Animations. Author: tiago Date: 2009-11-16 09:49:14 -0800 (Mon, 16 Nov 2009) New Revision: 43729 Modified: trunk/editje/editje/desktop.py trunk/editje/editje/details_part.py trunk/editje/editje/editable_part.py trunk/editje/editje/parts_list.py trunk/editje/editje/signals.py Modified: trunk/editje/editje/desktop.py =================================================================== --- trunk/editje/editje/desktop.py 2009-11-16 17:07:34 UTC (rev 43728) +++ trunk/editje/editje/desktop.py 2009-11-16 17:49:14 UTC (rev 43729) @@ -112,30 +112,46 @@ part = property(fset=_part_set) def _get_relative_part(self, part): - if not part: - return self.manager.group - else: - return self._group.part_object_get(part) + part = self._group.part_object_get(part) + if part: + return part + return self._group def part_rel1x_set(self, data): self.rel1x_to, rel, ofs = data to = self._get_relative_part(self.rel1x_to) - self.manager.rel1x = (to, rel, ofs) + if self.rel1x_to and to == self._group: + self.rel1x_to = "" + self.part_rel1x_change(rel, ofs) + else: + self.manager.rel1x = (to, rel, ofs) def part_rel1y_set(self, data): self.rel1y_to, rel, ofs = data to = self._get_relative_part(self.rel1y_to) - self.manager.rel1y = (to, rel, ofs) + if self.rel1y_to and to == self._group: + self.rel1y_to = "" + self.part_rel1y_change(rel, ofs) + else: + self.manager.rel1y = (to, rel, ofs) def part_rel2x_set(self, data): self.rel2x_to, rel, ofs = data to = self._get_relative_part(self.rel2x_to) - self.manager.rel2x = (to, rel, ofs) + if self.rel2x_to and to == self._group: + self.rel2x_to = "" + self.part_rel2x_change(rel, ofs) + else: + self.manager.rel2x = (to, rel, ofs) def part_rel2y_set(self, data): self.rel2y_to, rel, ofs = data to = self._get_relative_part(self.rel2y_to) - self.manager.rel2y = (to, rel, ofs) + if self.rel2y_to and to == self._group: + self.rel2y_to = "" + self.part_rel2y_change(rel, ofs) + else: + self.manager.rel2y = (to, rel, ofs) def part_clicked(self, part): self.controller.e.part.name = name @@ -384,7 +400,7 @@ def __mouse_down_cb(self, obj, event): self._parent.parent_view.scroll_hold_push() - self._parent.parent_view.scroll_freeze_push() + self._start_region = self._parent.parent_view.region_get() self._start = event.position.output.xy self._last = self._start self._move_animator = ecore.animator_add(self.__move_animator_do) @@ -396,17 +412,22 @@ return True self._last = cur x, y = cur + sx, sy, sw, sh = self._parent.parent_view.region_get() dw = x - self._start[0] + dw += sx - self._start_region[0] dh = y - self._start[1] + dh += sy - self._start_region[1] self.move(dw, dh) return True def __mouse_up_cb(self, obj, event): + sx, sy, sw, sh = self._parent.parent_view.region_get() dw = event.position.output[0] - self._start[0] + dw += sx - self._start_region[0] dh = event.position.output[1] - self._start[1] + dh += sy - self._start_region[1] self.up(dw, dh) - self._parent.parent_view.scroll_freeze_pop() self._parent.parent_view.scroll_hold_pop() del self._start @@ -428,12 +449,16 @@ self.top_left = group.bottom_right group.on_move_add(self.group_move) group.on_resize_add(self.group_move) + group.on_del_add(self._group_del_cb) self.group_move(group) self.show() else: self._group = None self.hide() + def _group_del_cb(self, obj): + self._group = None + group = property(fset=_group_set) def group_move(self, obj): @@ -487,12 +512,16 @@ self._part = part part.on_move_add(self.part_move) part.on_resize_add(self.part_move) + part.on_del_add(self._part_del_cb) self.part_move(part) self.show() else: self._part = None self.hide() + def _part_del_cb(self, obj): + self._part = None + part = property(fset=_part_set) Modified: trunk/editje/editje/details_part.py =================================================================== --- trunk/editje/editje/details_part.py 2009-11-16 17:07:34 UTC (rev 43728) +++ trunk/editje/editje/details_part.py 2009-11-16 17:49:14 UTC (rev 43729) @@ -105,6 +105,8 @@ self.e.part._part.effect = self._effects.index(value) def _part_update(self, emissor, data): + if not self.e.part._part: + return self._header_table["name"].value = self.e.part.name type = self._part_type_to_text(self.e.part._part.type) self._header_table["type"].value = type Modified: trunk/editje/editje/editable_part.py =================================================================== --- trunk/editje/editje/editable_part.py 2009-11-16 17:07:34 UTC (rev 43728) +++ trunk/editje/editje/editable_part.py 2009-11-16 17:49:14 UTC (rev 43729) @@ -42,7 +42,7 @@ def _part_removed_cb(self, emissor, data): if self._name == data: - self.name = "" + self.name = None # Name def _name_set(self, value): Modified: trunk/editje/editje/parts_list.py =================================================================== --- trunk/editje/editje/parts_list.py 2009-11-16 17:07:34 UTC (rev 43728) +++ trunk/editje/editje/parts_list.py 2009-11-16 17:49:14 UTC (rev 43729) @@ -43,7 +43,7 @@ self._view = PartsListView(self, self.parent.view) def _parts_update(self, emissor, data): - self.populate(data) + self.populate(data[::-1]) def _part_added(self, emissor, data): self.add(data) @@ -51,7 +51,7 @@ self.select(data) def _part_removed(self, emissor, data): - self.remove(data) + self.view.remove(data) def _part_changed(self, emissor, data): if data != self._selected: @@ -68,15 +68,18 @@ NewPart(self.parent).open() def remove(self): - return if self._selected: - self.e.part_del(self._selected) + part = self._selected + self.select("") + self.e.part_del(part) def up(self): - return + self.e.part._part.restack_above() + self.e._parts_reload_cb(self, None) def down(self): - return + self.e.part._part.restack_below() + self.e._parts_reload_cb(self, None) class PartsListView(CListView): Modified: trunk/editje/editje/signals.py =================================================================== --- trunk/editje/editje/signals.py 2009-11-16 17:07:34 UTC (rev 43728) +++ trunk/editje/editje/signals.py 2009-11-16 17:49:14 UTC (rev 43729) @@ -63,7 +63,7 @@ self.select(data) def _signal_removed(self, emissor, data): - self.remove(data) + self.view.remove(data) def _signal_changed(self, emissor, data): if data != self._selected: @@ -80,7 +80,10 @@ NewSignalPopUp(self.parent).open() def remove(self): - pass + if self._selected: + signal = self._selected + self.select("") + self.e.signal_del(signal) class SignalsListView(CListView): |
From: Enlightenment S. <no-...@en...> - 2009-11-18 17:27:59
|
Log: New Animation Popup now uses the commom layout Author: tiago Date: 2009-11-18 09:27:48 -0800 (Wed, 18 Nov 2009) New Revision: 43780 Modified: trunk/editje/editje/animations.py trunk/editje/editje/animations_list.py Modified: trunk/editje/editje/animations.py =================================================================== --- trunk/editje/editje/animations.py 2009-11-18 17:22:55 UTC (rev 43779) +++ trunk/editje/editje/animations.py 2009-11-18 17:27:48 UTC (rev 43780) @@ -16,6 +16,7 @@ # You should have received a copy of the GNU Lesser General Public # License along with Editje. If not, see # <http://www.gnu.org/licenses/>. +import evas import edje import elementary @@ -25,53 +26,61 @@ from details_widget_color import WidgetColor from details_widget_button import WidgetButton from details_widget_combo import WidgetCombo -from floater import Floater +from floater import Wizard from prop import Property, PropertyTable -class NewAnimationPopUp(Floater): +class NewAnimationPopUp(Wizard): def __init__(self, parent): - Floater.__init__(self, parent) - self.title_set("New animation...") + Wizard.__init__(self, parent, "New Animation") + self.page_add("default") + self.style_set("minimal") - box = elementary.Box(parent) - box.size_hint_weight_set(1.0, 1.0) - box.size_hint_align_set(-1.0, -1.0) + self._name_init() - bx2 = elementary.Box(parent) + self.action_add("default", "Cancel", self._cancel, icon="cancel") + self.action_add("default", "Add", self._add, icon="confirm") + self.goto("default") + + def _name_init(self): + bx2 = elementary.Box(self) bx2.horizontal_set(True) bx2.size_hint_weight_set(1.0, 0.0) - bx2.size_hint_align_set(-1.0, -1.0) + bx2.size_hint_align_set(-1.0, 0.0) + bx2.size_hint_min_set(160, 160) + self.content_append("default", bx2) + bx2.show() - lb = elementary.Label(parent) - lb.size_hint_weight_set(0.0, 1.0) - lb.size_hint_align_set(-1.0, -1.0) + lb = elementary.Label(self) lb.label_set("Name:") bx2.pack_end(lb) lb.show() - self.name_entry = elementary.Entry(parent) - self.name_entry.size_hint_weight_set(1.0, 1.0) - self.name_entry.size_hint_align_set(-1.0, -1.0) - self.name_entry.single_line_set(True) - self.name_entry.style_set("editje_dialog") - bx2.pack_end(self.name_entry) - self.name_entry.show() + scr = elementary.Scroller(self) + scr.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 0.0) + scr.size_hint_align_set(evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL) + scr.content_min_limit(False, True) + scr.policy_set(elementary.ELM_SCROLLER_POLICY_OFF, + elementary.ELM_SCROLLER_POLICY_OFF) + scr.bounce_set(False, False) + bx2.pack_end(scr) - box.pack_end(bx2) - bx2.show() - self.content_set(box) - box.show() + self._name = elementary.Entry(self) + self._name.single_line_set(True) + self._name.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 0.0) + self._name.size_hint_align_set(evas.EVAS_HINT_FILL, 0.5) + self._name.entry_set("") + self._name.show() - self.action_add("Add", self._add_anim) - self.action_add("Cancel", self._cancel) + scr.content_set(self._name) + scr.show() - def _add_anim(self, popup, data): - name = self.name_entry.entry_get().replace("<br>", "") + def _add(self, popup, data): + name = self._name.entry_get().replace("<br>", "") if name == "": return + self._parent.e.animation_add(name) - self.close() def _cancel(self, popup, data): self.close() Modified: trunk/editje/editje/animations_list.py =================================================================== --- trunk/editje/editje/animations_list.py 2009-11-18 17:22:55 UTC (rev 43779) +++ trunk/editje/editje/animations_list.py 2009-11-18 17:27:48 UTC (rev 43780) @@ -67,26 +67,8 @@ self.e.animation.name = data def new(self): - obj = self._view - x, y, w, h = obj.geometry - ch, cw = obj.evas.size - ow, oh = 200, 120 - ox = x - (ow - w) / 2 - oy = y - (oh - h) / 2 - if ox < 0: - ox = 0 - elif ox + ow >= cw: - ox = cw - ow - if oy < 0: - oy = 0 - elif oy + oh >= ch: - oy = ch - oh + animations.NewAnimationPopUp(self.parent).open() - pop = animations.NewAnimationPopUp(self.parent) - pop.move(ox, oy) - pop.resize(ow, oh) - pop.show() - def remove(self): if self._selected: anim = self._selected |
From: Enlightenment S. <no-...@en...> - 2009-11-18 17:28:01
|
Log: Editje error notification Author: tiago Date: 2009-11-18 09:27:51 -0800 (Wed, 18 Nov 2009) New Revision: 43781 Modified: trunk/editje/editje/animations.py trunk/editje/editje/editable.py trunk/editje/editje/floater.py trunk/editje/editje/newpart.py trunk/editje/editje/signals.py Modified: trunk/editje/editje/animations.py =================================================================== --- trunk/editje/editje/animations.py 2009-11-18 17:27:48 UTC (rev 43780) +++ trunk/editje/editje/animations.py 2009-11-18 17:27:51 UTC (rev 43781) @@ -78,9 +78,14 @@ def _add(self, popup, data): name = self._name.entry_get().replace("<br>", "") if name == "": + self._notify("Please set part name") return - self._parent.e.animation_add(name) + success = self._parent.e.animation_add(name) + if success: + self.close() + else: + self._notify("Choice another name") def _cancel(self, popup, data): self.close() Modified: trunk/editje/editje/editable.py =================================================================== --- trunk/editje/editje/editable.py 2009-11-18 17:27:48 UTC (rev 43780) +++ trunk/editje/editje/editable.py 2009-11-18 17:27:51 UTC (rev 43781) @@ -217,46 +217,49 @@ self.event_emit("animations.changed", self.animations) def animation_add(self, name): - if not name in self._animations: - self._modificated = True + if name in self._animations: + return False - # END - endname = "@%s@end" % name - self.program_add(endname) - prog = self.program_get(endname) - prog.signal_emit("animation,end", name) + self._modificated = True - # START - startname = "@%s@0.00" % name - self.program_add(startname) - prog = self.program_get(startname) - prog.state_set(startname) - prog.signal = "animation,play" - prog.source = name - prog.after_add("@%s@end" % name) + # END + endname = "@%s@end" % name + self.program_add(endname) + prog = self.program_get(endname) + prog.signal_emit("animation,end", name) - prevstatename = "default 0.00" - statename = startname + " 0.00" - for p in self.parts: - prog.target_add(p) - part = self._edje.part_get(p) - part.state_add(startname) - state = part.state_get(statename) - state.copy_from(prevstatename) + # START + startname = "@%s@0.00" % name + self.program_add(startname) + prog = self.program_get(startname) + prog.state_set(startname) + prog.signal = "animation,play" + prog.source = name + prog.after_add("@%s@end" % name) - # STOP - stopname = "@%s@stop" % name - self.program_add(stopname) - prog = self.program_get(stopname) - prog.action = edje.EDJE_ACTION_TYPE_ACTION_STOP - prog.signal = "animation,stop" - prog.source = name - prog.target_add(startname) - prog.target_add(endname) + prevstatename = "default 0.00" + statename = startname + " 0.00" + for p in self.parts: + prog.target_add(p) + part = self._edje.part_get(p) + part.state_add(startname) + state = part.state_get(statename) + state.copy_from(prevstatename) - self._animations.append(name) - self.event_emit("animation.added", name) + # STOP + stopname = "@%s@stop" % name + self.program_add(stopname) + prog = self.program_get(stopname) + prog.action = edje.EDJE_ACTION_TYPE_ACTION_STOP + prog.signal = "animation,stop" + prog.source = name + prog.target_add(startname) + prog.target_add(endname) + self._animations.append(name) + self.event_emit("animation.added", name) + return True + def animation_del(self, name): if name in self._animations: self._modificated = True Modified: trunk/editje/editje/floater.py =================================================================== --- trunk/editje/editje/floater.py 2009-11-18 17:27:48 UTC (rev 43780) +++ trunk/editje/editje/floater.py 2009-11-18 17:27:51 UTC (rev 43781) @@ -20,7 +20,7 @@ import evas from elementary import Layout, Button, InnerWindow, Box, Pager, Background, \ - Separator, Icon + Separator, Icon, Label, Notify, ELM_NOTIFY_ORIENT_TOP import sysconfig @@ -99,15 +99,20 @@ self.__pages = {} + self.__notification = None + def page_add(self, name, title=None): box = Box(self) - box.size_hint_weight_set(1.0, 1.0) - box.size_hint_align_set(-1.0, -1.0) + box.size_hint_weight_set(evas.EVAS_HINT_EXPAND, + evas.EVAS_HINT_EXPAND) box.show() content = Box(self) - content.size_hint_weight_set(1.0, 1.0) - content.size_hint_align_set(-1.0, -1.0) + content.size_hint_weight_set(evas.EVAS_HINT_EXPAND, + evas.EVAS_HINT_EXPAND) + content.size_hint_align_set(evas.EVAS_HINT_FILL, + evas.EVAS_HINT_FILL) + content.resize(100, 300) box.pack_end(content) content.show() @@ -160,6 +165,29 @@ self.__layout.edje_get().part_text_set("title.text", page[0]) self.__pager.content_promote(page[1]) + def _notify(self, message): + if self.__notification: + self.__notification.hide() + self.__notification.delete() + self.__notification = None + self.__notification = Notify(self) + self.__notification.timeout_set(2) + self.__notification.orient_set(ELM_NOTIFY_ORIENT_TOP) + + bx = Box(self) + bx.size_hint_weight_set(evas.EVAS_HINT_EXPAND, + evas.EVAS_HINT_EXPAND) + bx.horizontal_set(True) + self.__notification.content_set(bx) + bx.show() + + lb = Label(self) + lb.label_set(message) + bx.pack_end(lb) + lb.show() + + self.__notification.show() + def open(self): self._parent.block(True) InnerWindow.show(self) Modified: trunk/editje/editje/newpart.py =================================================================== --- trunk/editje/editje/newpart.py 2009-11-18 17:27:48 UTC (rev 43780) +++ trunk/editje/editje/newpart.py 2009-11-18 17:27:51 UTC (rev 43781) @@ -103,13 +103,14 @@ def _add(self, popup, data): name = self._name.entry_get().replace("<br>", "") if name == "": + self._notify("Please set part name") return success = self._parent.e.part_add(name, self._type) if success: self.close() else: - print "[ERROR] New Part:", name, self._type + self._notify("Choice another name") def _cancel(self, popup, data): self.close() Modified: trunk/editje/editje/signals.py =================================================================== --- trunk/editje/editje/signals.py 2009-11-18 17:27:48 UTC (rev 43780) +++ trunk/editje/editje/signals.py 2009-11-18 17:27:51 UTC (rev 43781) @@ -187,13 +187,14 @@ def _add(self, popup, data): name = self._name.entry_get().replace("<br>", "") if name == "": + self._notify("Please set part name") return success = self._parent.e.signal_add(name, self._type) if success: self.close() else: - print "[ERROR] New Signal:", name, self._type + self._notify("Choice another name") def _cancel(self, popup, data): self.close() |
From: Enlightenment S. <no-...@en...> - 2009-11-18 17:55:01
|
Log: Default States for new parts Author: tiago Date: 2009-11-18 09:54:50 -0800 (Wed, 18 Nov 2009) New Revision: 43787 Modified: trunk/editje/editje/newpart.py Modified: trunk/editje/editje/newpart.py =================================================================== --- trunk/editje/editje/newpart.py 2009-11-18 17:54:46 UTC (rev 43786) +++ trunk/editje/editje/newpart.py 2009-11-18 17:54:50 UTC (rev 43787) @@ -108,10 +108,37 @@ success = self._parent.e.part_add(name, self._type) if success: + self._part_init(name, self._type) self.close() else: self._notify("Choice another name") + def _part_init(self, name, type): + part = self._parent.e._edje.part_get(name) + statename = part.state_selected_get() + state = part.state_get(statename) + if type == edje.EDJE_PART_TYPE_RECTANGLE: + self._part_init_rectangle(part, state) + elif type == edje.EDJE_PART_TYPE_TEXT: + self._part_init_text(part, state) + + def _part_init_rectangle(self, part, state): + part.mouse_events = False + + state.color_set(0, 255, 0, 128) + state.rel1_relative_set(0.3, 0.3) + state.rel2_relative_set(0.7, 0.7) + + def _part_init_text(self, part, state): + part.mouse_events = False + + state.color_set(0, 0, 0, 255) + state.text_set("YOUR TEXT HERE") + state.font_set("Sans") + state.text_size_set(16) + state.rel1_relative_set(0.3, 0.3) + state.rel2_relative_set(0.7, 0.7) + def _cancel(self, popup, data): self.close() |
From: Enlightenment S. <no-...@en...> - 2009-11-22 00:58:39
|
Log: Revert to default theme in Inner Windows Author: tiago Date: 2009-11-21 16:58:27 -0800 (Sat, 21 Nov 2009) New Revision: 43885 Modified: trunk/editje/editje/newpart.py trunk/editje/editje/signals.py Modified: trunk/editje/editje/newpart.py =================================================================== --- trunk/editje/editje/newpart.py 2009-11-21 23:35:52 UTC (rev 43884) +++ trunk/editje/editje/newpart.py 2009-11-22 00:58:27 UTC (rev 43885) @@ -27,7 +27,7 @@ def __init__(self, parent): Wizard.__init__(self, parent, "New Part") self.page_add("default") - self.style_set("minimal") +# self.style_set("minimal") self._name_init() self._types_init() @@ -39,9 +39,9 @@ def _name_init(self): bx2 = elementary.Box(self) bx2.horizontal_set(True) - bx2.size_hint_weight_set(1.0, 0.0) - bx2.size_hint_align_set(-1.0, 0.0) - bx2.size_hint_min_set(160, 160) + bx2.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 0.0) + bx2.size_hint_align_set(evas.EVAS_HINT_FILL, + evas.EVAS_HINT_FILL) self.content_append("default", bx2) bx2.show() @@ -51,8 +51,10 @@ lb.show() scr = elementary.Scroller(self) - scr.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 0.0) - scr.size_hint_align_set(evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL) + scr.size_hint_weight_set(evas.EVAS_HINT_EXPAND, + evas.EVAS_HINT_EXPAND) + scr.size_hint_align_set(evas.EVAS_HINT_FILL, + evas.EVAS_HINT_FILL) scr.content_min_limit(False, True) scr.policy_set(elementary.ELM_SCROLLER_POLICY_OFF, elementary.ELM_SCROLLER_POLICY_OFF) @@ -62,7 +64,7 @@ self._name = elementary.Entry(self) self._name.single_line_set(True) self._name.size_hint_weight_set(evas.EVAS_HINT_EXPAND, 0.0) - self._name.size_hint_align_set(evas.EVAS_HINT_FILL, 0.5) + self._name.size_hint_align_set(evas.EVAS_HINT_FILL, 0.0) self._name.entry_set("") self._name.show() Modified: trunk/editje/editje/signals.py =================================================================== --- trunk/editje/editje/signals.py 2009-11-21 23:35:52 UTC (rev 43884) +++ trunk/editje/editje/signals.py 2009-11-22 00:58:27 UTC (rev 43885) @@ -112,7 +112,7 @@ def __init__(self, parent): Wizard.__init__(self, parent, "New Signal") self.page_add("default") - self.style_set("minimal") +# self.style_set("minimal") self._name_init() self._types_init() |
From: Enlightenment S. <no-...@en...> - 2009-11-25 03:34:57
|
Log: Initial external type support Author: tiago Date: 2009-11-24 19:34:45 -0800 (Tue, 24 Nov 2009) New Revision: 43968 Modified: trunk/editje/editje/details_part.py trunk/editje/editje/details_state.py trunk/editje/editje/newpart.py Modified: trunk/editje/editje/details_part.py =================================================================== --- trunk/editje/editje/details_part.py 2009-11-25 01:10:11 UTC (rev 43967) +++ trunk/editje/editje/details_part.py 2009-11-25 03:34:45 UTC (rev 43968) @@ -135,6 +135,7 @@ def _part_type_to_text(self, type): parttypes = ['NONE', 'RECTANGLE', 'TEXT', 'IMAGE', 'SWALLOW', - 'TEXTBLOCK', 'GRADIENT', 'GROUP', 'BOX', 'TABLE'] + 'TEXTBLOCK', 'GRADIENT', 'GROUP', 'BOX', 'TABLE', + 'EXTERNAL'] return parttypes[type] Modified: trunk/editje/editje/details_state.py =================================================================== --- trunk/editje/editje/details_state.py 2009-11-25 01:10:11 UTC (rev 43967) +++ trunk/editje/editje/details_state.py 2009-11-25 03:34:45 UTC (rev 43968) @@ -231,7 +231,8 @@ def _part_type_to_text(self, type): parttypes = ['NONE', 'RECTANGLE', 'TEXT', 'IMAGE', 'SWALLOW', - 'TEXTBLOCK', 'GRADIENT', 'GROUP', 'BOX', 'TABLE'] + 'TEXTBLOCK', 'GRADIENT', 'GROUP', 'BOX', 'TABLE', + 'EXTERNAL'] return parttypes[type] def _common_props_create(self): Modified: trunk/editje/editje/newpart.py =================================================================== --- trunk/editje/editje/newpart.py 2009-11-25 01:10:11 UTC (rev 43967) +++ trunk/editje/editje/newpart.py 2009-11-25 03:34:45 UTC (rev 43968) @@ -94,6 +94,8 @@ # edje.EDJE_PART_TYPE_BOX) # list.item_append("Table", None, None, self._type_select, # edje.EDJE_PART_TYPE_TABLE) + list.item_append("External Widget", None, None, self._type_select, + edje.EDJE_PART_TYPE_EXTERNAL) list.go() self.content_append("default", list) @@ -111,7 +113,6 @@ success = self._parent.e.part_add(name, self._type) if success: self._part_init(name, self._type) - self.close() else: self._notify("Choice another name") @@ -121,8 +122,14 @@ state = part.state_get(statename) if type == edje.EDJE_PART_TYPE_RECTANGLE: self._part_init_rectangle(part, state) + self.close() elif type == edje.EDJE_PART_TYPE_TEXT: self._part_init_text(part, state) + self.close() + elif type == edje.EDJE_PART_TYPE_EXTERNAL: + self._part_init_external(part, state) + else: + self.close() def _part_init_rectangle(self, part, state): part.mouse_events = False @@ -141,6 +148,123 @@ state.rel1_relative_set(0.3, 0.3) state.rel2_relative_set(0.7, 0.7) + def _part_init_external(self, part, state): + self.page_add("external", "Select Widget") + + self.external = ExternalSelector(self) + self.content_append("external", self.external) + self.external.show() + + self.action_add("external", "Ok", self._external_ok) + + self.goto("external") + + def _external_ok(self, popup, data): + print "SET EXTERNAL TO", self.external.type + def _cancel(self, popup, data): self.close() +class ExternalSelector(elementary.Box): + def __init__(self, parent): + elementary.Box.__init__(self, parent) + self.horizontal_set(True) + self.size_hint_weight_set(evas.EVAS_HINT_EXPAND, + evas.EVAS_HINT_EXPAND) + self.size_hint_align_set(evas.EVAS_HINT_FILL, + evas.EVAS_HINT_FILL) + + self._types_load() + self._namespaces_init() + self._types_init() + self._namespaces_load() + + self.type = "" + + def _name_split(self, name): + names = name.rsplit("/", 1) + if len(names) == 2: + namespace = names[0] + name = names[1] + else: + namespace = "" + return (namespace, name) + + def _type_get(self): + if self._namespace: + return self._namespace + "/" + self._type + return self._type + + def _type_set(self, type): + self._namespace, self._type = self._name_split(type) + + type = property(_type_get, _type_set) + + def _types_load(self): + self._loaded_types = {} + for type in edje.ExternalIterator(): + print type.name + namespace, name = self._name_split(type.name) + + list = self._loaded_types.get(namespace) + if not list: + list = [] + self._loaded_types[namespace] = list + elif name in list: + continue + list.append(name) + + def _namespaces_init(self): + self._namespaces = elementary.List(self) + self._namespaces.size_hint_weight_set(evas.EVAS_HINT_EXPAND, + evas.EVAS_HINT_EXPAND) + self._namespaces.size_hint_align_set(evas.EVAS_HINT_FILL, + evas.EVAS_HINT_FILL) + self.pack_end(self._namespaces) + self._namespaces.show() + + def _types_init(self): + self._types = elementary.List(self) + self._types.size_hint_weight_set(evas.EVAS_HINT_EXPAND, + evas.EVAS_HINT_EXPAND) + self._types.size_hint_align_set(evas.EVAS_HINT_FILL, + evas.EVAS_HINT_FILL) + self.pack_end(self._types) + self._types.show() + + def _namespaces_load(self): + self._namespace = "" + self._namespaces.clear() + list = self._loaded_types.keys() + try: + list.remove("") + except ValueError: + pass + if list: + self._namespaces.item_append(list[0], None, None, + self._namespace_select, list[0]).selected_set(True) + for item in list[1:]: + self._namespaces.item_append(item, None, None, + self._type_select, item) + item = self._namespaces.item_append("Others", None, None, + self._type_select, "") + if not self._namespace: + item.selected_set(True) + self._namespaces.go() + + def _namespace_select(self, li, it, namespace): + self._namespace = namespace + self._types.clear() + list = self._loaded_types.get(namespace) + if list: + self._types.item_append(list[0], None, None, self._type_select, + list[0]).selected_set(True) + for item in list[1:]: + self._types.item_append(item, None, None, self._type_select, item) + self._types.go() + + def _type_select(self, li, it, type): + self._type = type + + + |
From: Enlightenment S. <no-...@en...> - 2009-11-30 18:45:00
|
Log: FileSelector Widget Author: tiago Date: 2009-11-30 10:44:53 -0800 (Mon, 30 Nov 2009) New Revision: 44060 Added: trunk/editje/editje/fileselector.py trunk/editje/editje/openfile.py |
From: Enlightenment S. <no-...@en...> - 2009-11-30 18:45:04
|
Log: Select the first in list Author: tiago Date: 2009-11-30 10:44:51 -0800 (Mon, 30 Nov 2009) New Revision: 44059 Modified: trunk/editje/editje/newpart.py Modified: trunk/editje/editje/newpart.py =================================================================== --- trunk/editje/editje/newpart.py 2009-11-30 18:22:42 UTC (rev 44058) +++ trunk/editje/editje/newpart.py 2009-11-30 18:44:51 UTC (rev 44059) @@ -181,21 +181,19 @@ self.size_hint_align_set(evas.EVAS_HINT_FILL, evas.EVAS_HINT_FILL) + self._module = "" + self._type = "" + self._types_load() self._modules_init() self._types_init() self._modules_load() - self.type = "" - def _type_get(self): return self._type - def _type_set(self, type): - self._type = type + type = property(_type_get) - type = property(_type_get, _type_set) - def _module_get(self): return self._module @@ -204,7 +202,6 @@ def _types_load(self): self._loaded_types = {} for type in edje.ExternalIterator(): - print type.name module = type.module name = type.name label = type.label_get() @@ -239,11 +236,13 @@ self._module = "" self._modules.clear() list = self._loaded_types.keys() - try: - list.remove("") - except ValueError: - pass - for item in list: + + list.sort(key=str.lower) + + if list: + self._modules.item_append(list[0], None, None, self._module_select, + list[0]).selected_set(True) + for item in list[1:]: self._modules.item_append(item, None, None, self._module_select, item) self._modules.go() @@ -252,12 +251,17 @@ self._module = module self._types.clear() list = self._loaded_types.get(module) - for (name, label) in list: + + list.sort(key=lambda x:(str.lower(x[0]))) + + if list: + name, label = list[0] + self._types.item_append(label, None, None, self._type_select, + name).selected_set(True) + for (name, label) in list[1:]: self._types.item_append(label, None, None, self._type_select, name) + self._types.go() def _type_select(self, li, it, type): self._type = type - - - |
From: Enlightenment S. <no-...@en...> - 2009-11-30 18:45:05
|
Log: GroupSelector Author: tiago Date: 2009-11-30 10:44:55 -0800 (Mon, 30 Nov 2009) New Revision: 44061 Added: trunk/editje/editje/groupselector.py |
From: Enlightenment S. <no-...@en...> - 2009-11-30 19:31:42
|
Log: Fix file list in Makefile.am Author: tiago Date: 2009-11-30 11:31:35 -0800 (Mon, 30 Nov 2009) New Revision: 44065 Modified: trunk/editje/editje/Makefile.am Modified: trunk/editje/editje/Makefile.am =================================================================== --- trunk/editje/editje/Makefile.am 2009-11-30 19:10:35 UTC (rev 44064) +++ trunk/editje/editje/Makefile.am 2009-11-30 19:31:35 UTC (rev 44065) @@ -27,12 +27,14 @@ editable_program.py \ editable.py \ editable_state.py \ +editje.sh \ event_manager.py \ +fileselector.py \ floater.py \ +groupselector.py \ newpart.py \ parts_list.py \ popups.py \ prop.py \ -selector.py \ signals.py \ sysconfig.py |
From: Enlightenment S. <no-...@en...> - 2009-11-30 19:41:15
|
Log: Replace .sh by .py Author: tiago Date: 2009-11-30 11:41:04 -0800 (Mon, 30 Nov 2009) New Revision: 44066 Modified: trunk/editje/editje/Makefile.am Modified: trunk/editje/editje/Makefile.am =================================================================== --- trunk/editje/editje/Makefile.am 2009-11-30 19:31:35 UTC (rev 44065) +++ trunk/editje/editje/Makefile.am 2009-11-30 19:41:04 UTC (rev 44066) @@ -27,7 +27,7 @@ editable_program.py \ editable.py \ editable_state.py \ -editje.sh \ +editje.py \ event_manager.py \ fileselector.py \ floater.py \ |
From: Enlightenment S. <no-...@en...> - 2009-12-01 14:36:11
|
Log: Init entry to avoid segfault after installed Author: tiago Date: 2009-12-01 06:35:57 -0800 (Tue, 01 Dec 2009) New Revision: 44098 Modified: trunk/editje/editje/fileselector.py Modified: trunk/editje/editje/fileselector.py =================================================================== --- trunk/editje/editje/fileselector.py 2009-12-01 14:31:19 UTC (rev 44097) +++ trunk/editje/editje/fileselector.py 2009-12-01 14:35:57 UTC (rev 44098) @@ -118,6 +118,7 @@ evas.EVAS_HINT_EXPAND) self._nav_path.size_hint_align_set(evas.EVAS_HINT_FILL, 0.5) self._nav_path.editable_set(False) + self._nav_path.entry_set("PATH") self._nav_path.callback_anchor_clicked_add(self._path_go) self._nav_path.callback_changed_add(self._path_change) sc.content_set(self._nav_path) @@ -234,6 +235,7 @@ if os.path.isdir(path): self._path = path self.file = "" + print self._path self._nav_path.entry_set(self._path) def _path_get(self): |
From: Enlightenment S. <no-...@en...> - 2009-12-03 14:52:11
|
Log: Adding missing files Author: tiago Date: 2009-12-03 06:51:57 -0800 (Thu, 03 Dec 2009) New Revision: 44171 Modified: trunk/editje/editje/Makefile.am Modified: trunk/editje/editje/Makefile.am =================================================================== --- trunk/editje/editje/Makefile.am 2009-12-03 10:26:40 UTC (rev 44170) +++ trunk/editje/editje/Makefile.am 2009-12-03 14:51:57 UTC (rev 44171) @@ -10,6 +10,9 @@ colorpicker.py \ controller.py \ desktop.py \ +desktop_handler.py\ +desktop_part_handlers.py\ +desktop_part_listener.py\ details_group.py \ details_part.py \ details.py \ |
From: Enlightenment S. <no-...@en...> - 2009-12-05 01:15:02
|
Log: Mouse selection Author: tiago Date: 2009-12-04 17:14:51 -0800 (Fri, 04 Dec 2009) New Revision: 44197 Added: trunk/editje/editje/desktop_parts_manager.py Modified: trunk/editje/editje/Makefile.am trunk/editje/editje/desktop.py Modified: trunk/editje/editje/Makefile.am =================================================================== --- trunk/editje/editje/Makefile.am 2009-12-05 01:14:47 UTC (rev 44196) +++ trunk/editje/editje/Makefile.am 2009-12-05 01:14:51 UTC (rev 44197) @@ -13,6 +13,7 @@ desktop_handler.py\ desktop_part_handlers.py\ desktop_part_listener.py\ +desktop_parts_manager.py\ details_group.py \ details_part.py \ details.py \ Modified: trunk/editje/editje/desktop.py =================================================================== --- trunk/editje/editje/desktop.py 2009-12-05 01:14:47 UTC (rev 44196) +++ trunk/editje/editje/desktop.py 2009-12-05 01:14:51 UTC (rev 44197) @@ -26,6 +26,7 @@ from desktop_handler import Handler from desktop_part_listener import PartListener, PartHighlight import desktop_part_handlers as part_handlers +from desktop_parts_manager import PartsManager class Desktop(Controller): @@ -157,7 +158,7 @@ self.manager.rel2y = (to, rel, ofs) def part_clicked(self, part): - self.controller.e.part.name = name + self.controller.e.part.name = part def part_rel1x_change(self, rel, ofs): self.controller.e.part.state.rel1x = (self.rel1x_to, rel, ofs) @@ -208,6 +209,10 @@ group = "editje/desktop/rel2/highlight") self.member_push(self.highlight2y) + self.parts_manager = PartsManager(self.evas) + self.parts_manager.select = self.parent_view.part_clicked + self.member_push(self.parts_manager) + self._handlers_init() self.parent_view.on_resize_add(self._padding_init) @@ -308,6 +313,7 @@ group.show() for obj in self._group_listeners: obj.group = group + self.parts_manager.edje = group def _group_get(self): return self._group |
From: Enlightenment S. <no-...@en...> - 2009-12-05 02:38:14
|
Log: Fix selection after restack part Author: tiago Date: 2009-12-04 18:38:00 -0800 (Fri, 04 Dec 2009) New Revision: 44198 Modified: trunk/editje/editje/desktop_parts_manager.py Modified: trunk/editje/editje/desktop_parts_manager.py =================================================================== --- trunk/editje/editje/desktop_parts_manager.py 2009-12-05 01:14:51 UTC (rev 44197) +++ trunk/editje/editje/desktop_parts_manager.py 2009-12-05 02:38:00 UTC (rev 44198) @@ -28,7 +28,7 @@ self._part = part self._part.on_resize_add(self._resize) self._part.on_move_add(self._move) - self._part.on_resize_add(self._restack) + self._part.on_restack_add(self._restack) self._part.on_del_add(self._del) self._part.on_show_add(self._show) self._part.on_hide_add(self._hide) @@ -46,9 +46,9 @@ self.pos = part.pos def _restack(self, part): - return + above = self._manager.viewports.get(self._part.above) if above: - self.stack_above(above) + self.stack_below(above) below = self._manager.viewports.get(self._part.below) if below: self.stack_above(below) |
From: Enlightenment S. <no-...@en...> - 2009-12-06 02:18:34
|
Log: Multi Selection in FileSelector Author: tiago Date: 2009-12-05 18:18:22 -0800 (Sat, 05 Dec 2009) New Revision: 44208 Modified: trunk/editje/editje/fileselector.py Modified: trunk/editje/editje/fileselector.py =================================================================== --- trunk/editje/editje/fileselector.py 2009-12-06 01:22:54 UTC (rev 44207) +++ trunk/editje/editje/fileselector.py 2009-12-06 02:18:22 UTC (rev 44208) @@ -44,6 +44,7 @@ self._path = "" self._file = "" self.path = os.getenv("PWD") + self.multi = False def _navigator_init(self): bx = elementary.Box(self._parent) @@ -90,6 +91,7 @@ evas.EVAS_HINT_FILL) self._directories.size_hint_weight_set(evas.EVAS_HINT_EXPAND, evas.EVAS_HINT_EXPAND) + self._directories.callback_selected_add(self._folder_change) bx.pack_end(self._directories) self._directories.show() @@ -132,6 +134,15 @@ bx.pack_end(self._files) self._files.show() + def _multi_set(self, value): + self._files.multi_select_set(value) + self._multi = value + + def _multi_get(self): + return self._multi + + multi = property(_multi_get, _multi_set) + def _actions_init(self): sp = elementary.Separator(self._parent) sp.size_hint_align_set(evas.EVAS_HINT_FILL, 0.5) @@ -201,16 +212,13 @@ ic = elementary.Icon(self._parent) ic.standard_set("folder") ic.scale_set(0, 0) - self._directories.item_append(file, ic, None, - self._folder_change, - full) + self._directories.item_append(file, ic, None, None, full) elif os.path.isfile(full): if not filter or self._filter_call(full): ic = elementary.Icon(self._parent) ic.standard_set("file") ic.scale_set(0, 0) - item = self._files.item_append(file, ic, None, - self._file_select, + item = self._files.item_append(file, ic, None, None, full) if full == self.file: item.selected_set(True) @@ -218,12 +226,9 @@ self._files.go() self._directories.go() - def _folder_change(self, li, it, path): - self.path = path + def _folder_change(self, li, id): + self.path = li.selected_item_get().data_get()[0][0] - def _file_select(self, li, it, file): - self.file = file - def _path_change(self, en): self.path = self._nav_path.entry_get() @@ -254,10 +259,21 @@ self._file = "" def _file_get(self): - return self._file + item =self._files.selected_item_get() + if item: + return item.data_get()[0][0] + return "" file = property(_file_get, _file_set) + def _files_get(self): + ret = [] + for i in self._files.selected_items_get(): + ret.append(i.data_get()[0][0]) + return ret + + files = property(_files_get) + def _filter_set(self, filter): if filter and self._filter_call != filter: self._filter.state_set(True) @@ -294,6 +310,8 @@ if __name__ == "__main__": elementary.init() + elementary.policy_set(elementary.ELM_POLICY_QUIT, + elementary.ELM_POLICY_QUIT_LAST_WINDOW_CLOSED) win = elementary.Window("fileselector", elementary.ELM_WIN_BASIC) win.title_set("FileSelector") win.autodel_set(True) |
From: Enlightenment S. <no-...@en...> - 2009-12-06 02:18:35
|
Log: EDC Support Author: tiago Date: 2009-12-05 18:18:25 -0800 (Sat, 05 Dec 2009) New Revision: 44209 Modified: trunk/editje/editje/editable.py trunk/editje/editje/openfile.py Modified: trunk/editje/editje/editable.py =================================================================== --- trunk/editje/editje/editable.py 2009-12-06 02:18:22 UTC (rev 44208) +++ trunk/editje/editje/editable.py 2009-12-06 02:18:25 UTC (rev 44209) @@ -23,8 +23,9 @@ from editable_part import EditablePart from editable_program import EditableProgram from editable_animation import EditableAnimation +from os import system, popen, getcwd, remove, path +from shutil import move - class Editable(Manager, object): def __init__(self, canvas): @@ -35,6 +36,8 @@ self._filename = "" self._group = "" self._edje = None + self._edc = False + self._edc_path = "" self._min_max_init() self._modification_init() @@ -54,15 +57,30 @@ edje = property(_edje_get) # Filename + def realname_get(self): + if self._edc: + return self._edc_path + else: + return self._filename + def _filename_get(self): return self._filename def _filename_set(self, value): - if value != self._filename: + if value == self._filename: + return + if not value.endswith(".edc"): self._filename = value self._edje = None self._edje_group = None - self.event_emit("filename.changed", value) + self._edc = False + else: + self._edc_path = value + tmp_file = "/tmp/" + path.basename(value)[:-3] + "edj"; + system('edje_cc ' + value + ' ' + tmp_file); + self._filename = tmp_file + self._edc = True + self.event_emit("filename.changed", value) filename = property(_filename_get, _filename_set) @@ -139,6 +157,11 @@ def save(self): # if self._modificated: if self._edje.save(): + if self._edc == True: + edje_decc_options = " -no-build-sh -current-dir" + popen('edje_decc ' + self._filename + edje_decc_options) + move(getcwd() + "/generated_source.edc", self._edc_path) + remove("/tmp/" + path.basename(self._filename)) self.event_emit("saved") else: self.event_emit("saved.error") Modified: trunk/editje/editje/openfile.py =================================================================== --- trunk/editje/editje/openfile.py 2009-12-06 02:18:22 UTC (rev 44208) +++ trunk/editje/editje/openfile.py 2009-12-06 02:18:25 UTC (rev 44209) @@ -50,15 +50,16 @@ self._fs.show() def _filter(self, file): - return file.endswith(".edj") + return file.endswith(".edc") or file.endswith(".edj") + def _open(self, bt): if not self._fs.file: self._notify("Select file") return list = edje.file_collection_list(self._fs.file) - if not list: + if not list and not self._fs.file.endswith(".edc"): self._notify("Invalid file") return |
From: Enlightenment S. <no-...@en...> - 2009-12-06 02:29:28
|
Log: Fix Open when EDC file Author: tiago Date: 2009-12-05 18:29:14 -0800 (Sat, 05 Dec 2009) New Revision: 44211 Modified: trunk/editje/editje/editje.py Modified: trunk/editje/editje/editje.py =================================================================== --- trunk/editje/editje/editje.py 2009-12-06 02:18:29 UTC (rev 44210) +++ trunk/editje/editje/editje.py 2009-12-06 02:29:14 UTC (rev 44211) @@ -207,7 +207,7 @@ def _open_cb(self, obj, emission, source): from openfile import OpenFile open = OpenFile() - open.path = os.path.dirname(self.e.filename) + open.path = os.path.dirname(self.e.realname_get()) open.show() def _save_cb(self, obj, emission, source): |
From: Enlightenment S. <no-...@en...> - 2009-12-07 18:06:57
|
Log: Fix timeline when no animation selected Author: tiago Date: 2009-12-07 10:06:45 -0800 (Mon, 07 Dec 2009) New Revision: 44254 Modified: trunk/editje/editje/animations.py trunk/editje/editje/editable_animation.py Modified: trunk/editje/editje/animations.py =================================================================== --- trunk/editje/editje/animations.py 2009-12-07 18:05:04 UTC (rev 44253) +++ trunk/editje/editje/animations.py 2009-12-07 18:06:45 UTC (rev 44254) @@ -154,6 +154,7 @@ self._parent.main_edje.signal_callback_add("timestop", "*", self._timeline_cb) self.e.animation.event_callback_add("animation.changed", self._update) + self.e.animation.event_callback_add("animation.unselected", self._update) self.e.animation.event_callback_add("state.added", self._timestop_add) self.e.animation.event_callback_add("state.changed", self._update_states) Modified: trunk/editje/editje/editable_animation.py =================================================================== --- trunk/editje/editje/editable_animation.py 2009-12-07 18:05:04 UTC (rev 44253) +++ trunk/editje/editje/editable_animation.py 2009-12-07 18:06:45 UTC (rev 44254) @@ -246,6 +246,8 @@ # Info def _length_get(self): - return self.timestops[-1] + if self.timestops: + return self.timestops[-1] + return 0.0 length = property(_length_get) |
From: Enlightenment S. <no-...@en...> - 2009-12-07 18:06:59
|
Log: Resize group without gaps Author: tiago Date: 2009-12-07 10:06:47 -0800 (Mon, 07 Dec 2009) New Revision: 44255 Modified: trunk/editje/editje/desktop.py Modified: trunk/editje/editje/desktop.py =================================================================== --- trunk/editje/editje/desktop.py 2009-12-07 18:06:45 UTC (rev 44254) +++ trunk/editje/editje/desktop.py 2009-12-07 18:06:47 UTC (rev 44255) @@ -395,6 +395,23 @@ self.parent_view.region_show((w - scr_w) / 2, (h - scr_h) / 2, scr_w, scr_h) + def padding_update_grow(self): + w, h = self._group.size + w *= 3 + h *= 3 + scr_x, scr_y, scr_w, scr_h = self.parent_view.region_get() + if w < scr_w: + w = scr_w + if h < scr_h: + h = scr_h + + w0, h0 = self.size_hint_min_get() + if w0 > w: + w = w0 + if h0 > h: + h = h0 + self.size_hint_min_set(w, h) + def padding_update(self): w, h = self._group.size w *= 3 @@ -476,7 +493,7 @@ def move(self, w, h): if self._group: self._parent.group_resize(self._size[0] + w, self._size[1] + h) - self._parent.padding_update() + self._parent.padding_update_grow() def up(self, w, h): if self._group: |
From: Enlightenment S. <no-...@en...> - 2009-12-08 18:13:28
|
Log: Adding support to mouse selection in new parts Author: tiago Date: 2009-12-08 10:13:16 -0800 (Tue, 08 Dec 2009) New Revision: 44286 Modified: trunk/editje/editje/desktop.py trunk/editje/editje/desktop_parts_manager.py Modified: trunk/editje/editje/desktop.py =================================================================== --- trunk/editje/editje/desktop.py 2009-12-08 17:40:46 UTC (rev 44285) +++ trunk/editje/editje/desktop.py 2009-12-08 18:13:16 UTC (rev 44286) @@ -37,6 +37,8 @@ self.e.event_callback_add("group.changed", self._group_load) self.e.event_callback_add("group.min.changed", self._group_min_load) self.e.event_callback_add("group.max.changed", self._group_max_load) + self.e.event_callback_add("part.added", + self._part_added) self.e.part.event_callback_add("part.changed", self._part_load) self.e.part.event_callback_add("part.unselected", @@ -68,6 +70,9 @@ else: self._view.part = None + def _part_added(self, emissor, data): + self._view.manager.parts_manager.part_load(data) + def _rel1x_load(self, emissor, data): self._view.part_rel1x_set(data) Modified: trunk/editje/editje/desktop_parts_manager.py =================================================================== --- trunk/editje/editje/desktop_parts_manager.py 2009-12-08 17:40:46 UTC (rev 44285) +++ trunk/editje/editje/desktop_parts_manager.py 2009-12-08 18:13:16 UTC (rev 44286) @@ -53,6 +53,9 @@ if below: self.stack_above(below) + def stack_update(self): + self._resize(self) + def delete(self): self._part.on_resize_add(self._resize) self._part.on_move_add(self._move) @@ -139,6 +142,16 @@ self.parts_name[viewport] = part self.member_add(viewport) + def part_load(self, part): + if not self.parts.get(part): + part_obj = self._edje.part_object_get(part) + self.parts[part] = part_obj + viewport = PartViewport(self._canvas, self, part_obj) + viewport.stack_update() + self.viewports[part_obj] = viewport + self.parts_name[viewport] = part + self.member_add(viewport) + def _select_cb(self, part): print part |
From: Enlightenment S. <no-...@en...> - 2009-12-08 18:51:24
|
Log: Hack to delay new part notification Author: tiago Date: 2009-12-08 10:51:10 -0800 (Tue, 08 Dec 2009) New Revision: 44288 Modified: trunk/editje/editje/editable.py trunk/editje/editje/newpart.py Modified: trunk/editje/editje/editable.py =================================================================== --- trunk/editje/editje/editable.py 2009-12-08 18:30:41 UTC (rev 44287) +++ trunk/editje/editje/editable.py 2009-12-08 18:51:10 UTC (rev 44288) @@ -182,10 +182,11 @@ self.parts = self._edje.parts self.event_emit("parts.changed", self.parts) - def part_add(self, name, type, source=""): + def part_add(self, name, type, source="", signal=True): if self._edje.part_add(name, type, source): self._modificated = True - self.event_emit("part.added", name) + if signal: + self.event_emit("part.added", name) return True def part_del(self, name): Modified: trunk/editje/editje/newpart.py =================================================================== --- trunk/editje/editje/newpart.py 2009-12-08 18:30:41 UTC (rev 44287) +++ trunk/editje/editje/newpart.py 2009-12-08 18:51:10 UTC (rev 44288) @@ -133,9 +133,10 @@ self._part_add(name) def _part_add(self, name, source=""): - success = self._parent.e.part_add(name, self._type, source) + success = self._parent.e.part_add(name, self._type, source, signal=False) if success: self._part_init(name, self._type) + self._parent.e.event_emit("part.added", name) else: self._notify("Choose another name") |
From: Enlightenment S. <no-...@en...> - 2009-12-09 03:24:59
|
Log: Fix list (un)selections Author: tiago Date: 2009-12-08 19:24:48 -0800 (Tue, 08 Dec 2009) New Revision: 44300 Modified: trunk/editje/editje/animations_list.py trunk/editje/editje/clist.py trunk/editje/editje/parts_list.py trunk/editje/editje/signals.py Modified: trunk/editje/editje/animations_list.py =================================================================== --- trunk/editje/editje/animations_list.py 2009-12-09 03:24:45 UTC (rev 44299) +++ trunk/editje/editje/animations_list.py 2009-12-09 03:24:48 UTC (rev 44300) @@ -102,5 +102,5 @@ self._options_edje.signal_emit("remove,enable", "") def unselect(self, name): - CListView.select(self, name) + CListView.unselect(self, name) self._options_edje.signal_emit("remove,disable", "") Modified: trunk/editje/editje/clist.py =================================================================== --- trunk/editje/editje/clist.py 2009-12-09 03:24:45 UTC (rev 44299) +++ trunk/editje/editje/clist.py 2009-12-09 03:24:48 UTC (rev 44300) @@ -45,6 +45,7 @@ def select(self, item): if self._selected != item: + self._selected = item self._view.select(item) def unselect(self): Modified: trunk/editje/editje/parts_list.py =================================================================== --- trunk/editje/editje/parts_list.py 2009-12-09 03:24:45 UTC (rev 44299) +++ trunk/editje/editje/parts_list.py 2009-12-09 03:24:48 UTC (rev 44300) @@ -126,7 +126,7 @@ self._options_edje.signal_emit("remove,enable", "") def unselect(self, name): - CListView.select(self, name) + CListView.unselect(self, name) self._options_edje.signal_emit("up,disable", "") self._options_edje.signal_emit("down,disable", "") self._options_edje.signal_emit("remove,disable", "") Modified: trunk/editje/editje/signals.py =================================================================== --- trunk/editje/editje/signals.py 2009-12-09 03:24:45 UTC (rev 44299) +++ trunk/editje/editje/signals.py 2009-12-09 03:24:48 UTC (rev 44300) @@ -112,7 +112,7 @@ self._options_edje.signal_emit("remove,enable", "") def unselect(self, name): - CListView.select(self, name) + CListView.unselect(self, name) self._options_edje.signal_emit("remove,disable", "") |
From: Enlightenment S. <no-...@en...> - 2009-12-14 19:06:15
|
Log: Padding when change min/max group size Author: tiago Date: 2009-12-14 11:06:04 -0800 (Mon, 14 Dec 2009) New Revision: 44450 Modified: trunk/editje/editje/desktop.py Modified: trunk/editje/editje/desktop.py =================================================================== --- trunk/editje/editje/desktop.py 2009-12-14 19:06:01 UTC (rev 44449) +++ trunk/editje/editje/desktop.py 2009-12-14 19:06:04 UTC (rev 44450) @@ -311,6 +311,7 @@ elif min_h and h < min_h: h = min_h self._group.resize(w, h) + self.padding_update() # Group def _group_member_add(self): @@ -401,8 +402,8 @@ return w, h = self._group.size - w *= 3 - h *= 3 + w += 600 + h += 600 scr_x, scr_y, scr_w, scr_h = self.parent_view.region_get() if w < scr_w: w = scr_w @@ -416,8 +417,8 @@ def padding_update_grow(self): w, h = self._group.size - w *= 3 - h *= 3 + w += 600 + h += 600 scr_x, scr_y, scr_w, scr_h = self.parent_view.region_get() if w < scr_w: w = scr_w @@ -433,8 +434,8 @@ def padding_update(self): w, h = self._group.size - w *= 3 - h *= 3 + w += 600 + h += 600 scr_x, scr_y, scr_w, scr_h = self.parent_view.region_get() if w < scr_w: w = scr_w |
From: Enlightenment S. <no-...@en...> - 2010-01-04 17:24:19
|
Log: Using new python-evas centers Author: tiago Date: 2010-01-04 09:24:09 -0800 (Mon, 04 Jan 2010) New Revision: 44876 Modified: trunk/editje/editje/desktop_part_handlers.py Modified: trunk/editje/editje/desktop_part_handlers.py =================================================================== --- trunk/editje/editje/desktop_part_handlers.py 2010-01-04 14:57:12 UTC (rev 44875) +++ trunk/editje/editje/desktop_part_handlers.py 2010-01-04 17:24:09 UTC (rev 44876) @@ -51,10 +51,8 @@ class PartHandler_T(PartHandler): def part_move(self, obj): - x, y, w0, h0 = obj.geometry - w, h = self.size - self.pos = (x + (w0 - w)/2, y - h) - if w0 < 10: + self.bottom_center = obj.top_center + if obj.size[0] < 10: self.hide() else: self.show() @@ -102,10 +100,8 @@ class PartHandler_B(PartHandler): def part_move(self, obj): - x, y, w0, h0 = obj.geometry - w, h = self.size - self.pos = (x + (w0 - w)/2, y + h0) - if w0 < 10: + self.top_center = obj.bottom_center + if obj.size[0] < 10: self.hide() else: self.show() @@ -153,10 +149,8 @@ class PartHandler_L(PartHandler): def part_move(self, obj): - x, y, w0, h0 = obj.geometry - w, h = self.size - self.pos = (x - w, y + (h0 - h)/2) - if h0 < 10: + self.right_center = obj.left_center + if obj.size[1] < 10: self.hide() else: self.show() @@ -173,10 +167,8 @@ class PartHandler_R(PartHandler): def part_move(self, obj): - x, y, w0, h0 = obj.geometry - w, h = self.size - self.pos = (x + w0, y + (h0 - h)/2) - if h0 < 10: + self.left_center = obj.right_center + if obj.size[1] < 10: self.hide() else: self.show() |