On Tue, Jun 24, 2008 at 10:19:21AM +0800, Toma wrote: > 2008/6/22 Toma <[EMAIL PROTECTED]>: > > Hi! > > Finally got EFL frontend working and here are some initial thoughts! > > > > 1. Line 102 of login.py > > elif event.keyname == "b": > > self._evas.borderless = not self._evas.borderless > > > > Should be F5 or something less intrusive than 'b' since people with a > > 'b' in their user or pass will be making the window borderless and > > bordered. > > hehe, as you already know, the current code is all a proof of concept thing, so that b and f shortcuts were just to test how the fullscreen and borderless stuff works.. +I think it was copy/pasted from one of the python-efl example files :p
> > 2. First part block in dp_frame.edc is covered in /* */ ??? Should > > just be one at the start and one at the end... > > Probably my emacs, selected the region, then chose 'comment out region'... uncommenting would be as simple as reselecting and 'uncomment region'. > > 3. There is an inconsistency in methods of of using edje... eg. state, > > and state: > > The later is now the standard method. > > Yeah, I was using ':' but emacs was not indenting correctly, pissed me off, halfway through the code, I realized it didn't "unindent" my stuff with ',' so I used that instead... > > 4. The login arrow could be better, Ive not looking too far into it > > just yet, but you setup a block that moves relative to the focused > > entry part then on that block, animate the arrow to bounce left and > > right. Tho from what it looks like, the login swallows are not telling > > the edj theyre focused so the position of the arrow wont move. > > the arrow is really really bad, it's not nice, it's an eye candy, but it's bad, hurts the eye, etc... it had only ONE PURPOSE and only one : - prove to the world that "yes, you can even do stuff like that from your theme file"... for the current aMSN 0.x versions, the skin developers always have to ask us "can you modify the tcl code so we can have this tiny thingy in our skins"... with edje, no need for that, you control everything directly in the edj file, so I made that arrow as a 'proof' (of concept:p). Now that the world knows.. it should be removed :) > > And on that note, it may be a good idea to separate the actual ETK > > parts themes into an internal theme at some point OR just let ETK > > handle it all (eg. background, text, etc etc) > > Toma > > well, I don't know about that, so I'll leave that to you! > > Heres a few patches... lumped into 1 using svn diff > toma_fixes.patch > A few notes: > > 1. Fixed the somewhat strange choice to use f and b to set window > options. Poor [EMAIL PROTECTED] made his screen freak out. > (Hypothetical email address) > hehe, cool. > 2. Fixed the "name, NAME;" formatting to be a more unified and > standard "name: NAME;" format... > thanks > 3. Fixed the over the top commenting out in dp_frame.edc > hehe > And lastly, > 4. Added some standard install locations to PKG_CONFIG_PATH in the > rebuild script in python-etk for the folks that like to install to > /usr/local and the more daring /usr paths. > oh cool.. actually that script wasn't meant to be in svn, it was for my personal use when I was writing some of the python bindings to help the InDT guys... oh well, if it helps others! :) > Hope this helps :) > Toma Thanks for your patch! I'll commit it right away! :) KaKaRoTo > Index: amsn2/gui/front_ends/efl/login.py > =================================================================== > --- amsn2/gui/front_ends/efl/login.py (revision 10240) > +++ amsn2/gui/front_ends/efl/login.py (working copy) > @@ -97,9 +97,9 @@ > > # Private methods > def __on_key_down(self, obj, event): > - if event.keyname in ("F6", "f"): > + if event.keyname in ("F6"): > self._evas.fullscreen = not self._evas.fullscreen > - elif event.keyname == "b": > + elif event.keyname == "F5": > self._evas.borderless = not self._evas.borderless > elif event.keyname == "Escape": > self._amsn_core.quit() > Index: amsn2/themes/default/edc/login_screen/options_frame.edc > =================================================================== > --- amsn2/themes/default/edc/login_screen/options_frame.edc (revision 10240) > +++ amsn2/themes/default/edc/login_screen/options_frame.edc (working copy) > @@ -2,30 +2,30 @@ > > #define CREATE_OPTION(NAME, OFFSET) \ > part { \ > - name, NAME; \ > - type, TEXT; \ > - clip_to, "options_frame"; \ > + name: NAME; \ > + type: TEXT; \ > + clip_to: "options_frame"; \ > description { \ > - min, 50 20; \ > - max, 500 20; \ > - state, "default" 0.0; \ > + min: 50 20; \ > + max: 500 20; \ > + state: "default" 0.0; \ > rel1 { \ > - to, "options_frame"; \ > - relative, 0.2 0.0; \ > - offset, 0 (OFFSET); \ > + to: "options_frame"; \ > + relative: 0.2 0.0; \ > + offset: 0 (OFFSET); \ > } \ > rel2 { \ > - to, "options_frame"; \ > - relative, 0.8 0.0; \ > - offset, 0 (OFFSET+20); \ > + to: "options_frame"; \ > + relative: 0.8 0.0; \ > + offset: 0 (OFFSET+20); \ > } \ > text { \ > - align, 0.0 0.5; \ > - font, "VeraBd"; \ > - size, 10; \ > - text, NAME; \ > - min, 0 0; \ > - elipsis, 0.0; \ > + align: 0.0 0.5; \ > + font: "VeraBd"; \ > + size: 10; \ > + text: NAME; \ > + min: 0 0; \ > + elipsis: 0.0; \ > } \ > } \ > } > Index: amsn2/themes/default/edc/login_screen/links_frame.edc > =================================================================== > --- amsn2/themes/default/edc/login_screen/links_frame.edc (revision 10240) > +++ amsn2/themes/default/edc/login_screen/links_frame.edc (working copy) > @@ -2,32 +2,32 @@ > > #define CREATE_LINK(NAME, LABEL, OFFSET) \ > part { \ > - name, NAME; \ > - type, TEXT; \ > - clip_to, "links_frame"; \ > + name: NAME; \ > + type: TEXT; \ > + clip_to: "links_frame"; \ > description { \ > - min, 50 20; \ > - max, 500 20; \ > - state, "default" 0.0; \ > - color, 0 0 0 255; \ > - color2, 225 225 225 128; \ > + min: 50 20; \ > + max: 500 20; \ > + state: "default" 0.0; \ > + color: 0 0 0 255; \ > + color2: 225 225 225 128; \ > rel1 { \ > - to, "links_frame"; \ > - relative, 0.2 0.0; \ > - offset, 0 (OFFSET); \ > + to: "links_frame"; \ > + relative: 0.2 0.0; \ > + offset: 0 (OFFSET); \ > } \ > rel2 { \ > - to, "links_frame"; \ > - relative, 0.8 0.0; \ > - offset, 0 (OFFSET+20); \ > + to: "links_frame"; \ > + relative: 0.8 0.0; \ > + offset: 0 (OFFSET+20); \ > } \ > text { \ > - align, 0.0 0.5; \ > - font, "VeraBd"; \ > - size, 10; \ > - text, LABEL; \ > - min, 0 0; \ > - elipsis, 0.0; \ > + align: 0.0 0.5; \ > + font: "VeraBd"; \ > + size: 10; \ > + text: LABEL; \ > + min: 0 0; \ > + elipsis: 0.0; \ > } \ > } \ > } > Index: amsn2/themes/default/edc/login_screen/more_frame.edc > =================================================================== > --- amsn2/themes/default/edc/login_screen/more_frame.edc (revision 10240) > +++ amsn2/themes/default/edc/login_screen/more_frame.edc (working copy) > @@ -1,29 +1,29 @@ > CREATE_FRAME("more_frame", "update_frame", 20) > > part { > - name, "more_button"; > - type, TEXT; > - clip_to, "more_frame"; > + name: "more_button"; > + type: TEXT; > + clip_to: "more_frame"; > description { > - state, "default" 0.0; > + state: "default" 0.0; > rel1 { > - to, "more_frame"; > - relative, 0.8 0.0; > - offset, -40 0; > + to: "more_frame"; > + relative: 0.8 0.0; > + offset: -40 0; > } > rel2 { > - to, "more_frame"; > - relative, 0.8 0.0; > - offset, 0 20; > + to: "more_frame"; > + relative: 0.8 0.0; > + offset: 0 20; > } > - color, 10 50 100 255 ; > + color: 10 50 100 255 ; > text { > - align, 0.5 0.5; > - font, "VeraBd"; > - size, 10; > - text, "More"; > - min, 0 0; > - elipsis, 0.0; > + align: 0.5 0.5; > + font: "VeraBd"; > + size: 10; > + text: "More"; > + min: 0 0; > + elipsis: 0.0; > } > } > } > Index: amsn2/themes/default/edc/login_screen/update_frame.edc > =================================================================== > --- amsn2/themes/default/edc/login_screen/update_frame.edc (revision 10240) > +++ amsn2/themes/default/edc/login_screen/update_frame.edc (working copy) > @@ -2,32 +2,32 @@ > > > part { > - name, "update_text"; > - type, TEXT; > - clip_to, "update_frame"; > + name: "update_text"; > + type: TEXT; > + clip_to: "update_frame"; > description { > - min, 50 20; > - max, 500 20; > - state, "default" 0.0; > - color, 0 0 0 255; > - color2, 225 225 225 128; > + min: 50 20; > + max: 500 20; > + state: "default" 0.0; > + color: 0 0 0 255; > + color2: 225 225 225 128; > rel1 { > - to, "update_frame"; > - relative, 0.0 0.0; > - offset, 0 0; > + to: "update_frame"; > + relative: 0.0 0.0; > + offset: 0 0; > } > rel2 { > - to, "update_frame"; > - relative, 1.0 0.0; > - offset, 0 20; > + to: "update_frame"; > + relative: 1.0 0.0; > + offset: 0 20; > } > text { > - align, 0.5 0.5; > - font, "VeraBd"; > - size, 10; > - text, "Check for updated"; > - min, 0 0; > - elipsis, 0.0; > + align: 0.5 0.5; > + font: "VeraBd"; > + size: 10; > + text: "Check for updated"; > + min: 0 0; > + elipsis: 0.0; > } > } > } > Index: amsn2/themes/default/edc/login_screen/dp_frame.edc > =================================================================== > --- amsn2/themes/default/edc/login_screen/dp_frame.edc (revision 10240) > +++ amsn2/themes/default/edc/login_screen/dp_frame.edc (working copy) > @@ -1,81 +1,83 @@ > CREATE_FRAME("dp_frame", "language_frame", 118) > -/* part { */ > -/* name, "dp_frame"; */ > -/* type, RECT; */ > -/* description { */ > -/* state, "default" 0.0; */ > -/* color, 255 255 255 100; */ > -/* rel1 { */ > -/* to, "language_frame"; */ > -/* relative, 0.0 1.0; */ > -/* offset, 0 0; */ > -/* } */ > -/* rel2 { */ > -/* to, "language_frame"; */ > -/* relative, 1.0 1.0; */ > -/* offset, 0 118; */ > -/* } */ > -/* } */ > -/* description { */ > -/* state, "hidden" 0.0; */ > -/* inherit, "default" 0.0; */ > -/* visible, 0; */ > -/* rel1 { */ > -/* to, "language_frame"; */ > -/* relative, 0.0 1.0; */ > -/* offset, 0 0; */ > -/* } */ > -/* rel2 { */ > -/* to, "language_frame"; */ > -/* relative, 1.0 1.0; */ > -/* offset, 0 0; */ > -/* } */ > -/* } */ > -/* } */ > +/* > +part { > + name: "dp_frame"; > + type: RECT; > + description { > + state: "default" 0.0; > + color: 255 255 255 100; > + rel1 { > + to: "language_frame"; > + relative: 0.0 1.0; > + offset: 0 0; > + } > + rel2 { > + to: "language_frame"; > + relative: 1.0 1.0; > + offset: 0 118; > + } > + } > + description { > + state: "hidden" 0.0; > + inherit: "default" 0.0; > + visible: 0; > + rel1 { > + to: "language_frame"; > + relative: 0.0 1.0; > + offset: 0 0; > + } > + rel2 { > + to: "language_frame"; > + relative: 1.0 1.0; > + offset: 0 0; > + } > + } > +} > +*/ > > part { > - name, "dp_border"; > - type, IMAGE; > - clip_to, "dp_frame"; > - mouse_events, 0; > + name: "dp_border"; > + type: IMAGE; > + clip_to: "dp_frame"; > + mouse_events: 0; > description { > - state, "default" 0.0; > + state: "default" 0.0; > rel1 { > - to, "dp_frame"; > - relative, 0.5 0.0; > - offset, -56 3; > + to: "dp_frame"; > + relative: 0.5 0.0; > + offset: -56 3; > } > rel2 { > - to, "dp_frame"; > - relative, 0.5 1.0; > - offset, 56 -3; > + to: "dp_frame"; > + relative: 0.5 1.0; > + offset: 56 -3; > } > image { > - normal, "login_screen/dp_border.png"; > - border, 8 8 8 8; > + normal: "login_screen/dp_border.png"; > + border: 8 8 8 8; > } > } > } > > part { > - name, "dp_image"; > - type, IMAGE; > - clip_to, "dp_frame"; > - mouse_events, 0; > + name: "dp_image"; > + type: IMAGE; > + clip_to: "dp_frame"; > + mouse_events: 0; > description { > - state, "default" 0.0; > + state: "default" 0.0; > rel1 { > - to, "dp_border"; > - relative, 0.0 0.0; > - offset, 8 8; > + to: "dp_border"; > + relative: 0.0 0.0; > + offset: 8 8; > } > rel2 { > - to, "dp_border"; > - relative, 1.0 1.0; > - offset, -9 -9; > + to: "dp_border"; > + relative: 1.0 1.0; > + offset: -9 -9; > } > image { > - normal, "login_screen/amsn.png"; > + normal: "login_screen/amsn.png"; > } > } > } > Index: amsn2/themes/default/edc/login_screen/language_frame.edc > =================================================================== > --- amsn2/themes/default/edc/login_screen/language_frame.edc (revision 10240) > +++ amsn2/themes/default/edc/login_screen/language_frame.edc (working copy) > @@ -1,104 +1,104 @@ > part { > - name, "language_frame"; > - type, RECT; > + name: "language_frame"; > + type: RECT; > description { > - state, "default" 0.0; > - visible, 1; > + state: "default" 0.0; > + visible: 1; > rel1 { > - relative, 0.0 0.0; > - offset, 0 0; > + relative: 0.0 0.0; > + offset: 0 0; > } > rel2 { > - relative, 1.0 0.0; > - offset, 0 70; > + relative: 1.0 0.0; > + offset: 0 70; > } > } > description { > - state, "hidden" 0.0; > - inherit, "default" 0.0; > - visible, 0; > + state: "hidden" 0.0; > + inherit: "default" 0.0; > + visible: 0; > rel1 { > - relative, 0.0 0.0; > - offset, 0 0; > + relative: 0.0 0.0; > + offset: 0 0; > } > rel2 { > - relative, 1.0 0.0; > - offset, 0 0; > + relative: 1.0 0.0; > + offset: 0 0; > } > } > description { > - state, "connecting" 0.0; > - inherit, "hidden" 0.0; > + state: "connecting" 0.0; > + inherit: "hidden" 0.0; > } > } > > part { > - name, "language_button"; > - type, IMAGE; > - clip_to, "language_frame"; > + name: "language_button"; > + type: IMAGE; > + clip_to: "language_frame"; > description { > - state, "default" 0.0; > + state: "default" 0.0; > > rel1 { > - to, "language_frame"; > - relative, 0.0 0.0; > - offset, 4 4; > + to: "language_frame"; > + relative: 0.0 0.0; > + offset: 4 4; > } > rel2 { > - to, "language_frame"; > - relative, 0.0 1.0; > - offset, 67 -4; > + to: "language_frame"; > + relative: 0.0 1.0; > + offset: 67 -4; > } > image { > - normal, "login_screen/language_icon.png"; > - border, 0 0 0 0; > + normal: "login_screen/language_icon.png"; > + border: 0 0 0 0; > } > } > } > part { > - name, "language_spacer"; > - type, RECT; > - clip_to, "language_frame"; > + name: "language_spacer"; > + type: RECT; > + clip_to: "language_frame"; > description { > - state, "default" 0.0; > - color, 0 0 0 0; > + state: "default" 0.0; > + color: 0 0 0 0; > rel1 { > - to, "language_button"; > - relative, 1.0 0.0; > - offset, 0 0; > + to: "language_button"; > + relative: 1.0 0.0; > + offset: 0 0; > } > rel2 { > - to, "language_button"; > - relative, 1.0 1.0; > - offset, 5 0; > + to: "language_button"; > + relative: 1.0 1.0; > + offset: 5 0; > } > } > } > part { > - name, "language_text"; > - type, TEXT; > - clip_to, "language_frame"; > + name: "language_text"; > + type: TEXT; > + clip_to: "language_frame"; > description { > - state, "default" 0.0; > + state: "default" 0.0; > rel1 { > - to, "language_spacer"; > - relative, 1.0 0.0; > - offset, 0 0; > + to: "language_spacer"; > + relative: 1.0 0.0; > + offset: 0 0; > } > rel2 { > - to_y, "language_spacer"; > - relative, 1.0 1.0; > - offset, -4 0; > + to_y: "language_spacer"; > + relative: 1.0 1.0; > + offset: -4 0; > } > - color, 0 0 0 255; > - color2, 225 225 225 128; > + color: 0 0 0 255; > + color2: 225 225 225 128; > text { > - align, 0.0 0.5; > - font, "VeraBd"; > - size, 10; > - text, "Change Language"; > - min, 0 0; > - elipsis, 0.0; > + align: 0.0 0.5; > + font: "VeraBd"; > + size: 10; > + text: "Change Language"; > + min: 0 0; > + elipsis: 0.0; > } > } > } > Index: amsn2/themes/default/edc/login_screen/fields_frame.edc > =================================================================== > --- amsn2/themes/default/edc/login_screen/fields_frame.edc (revision 10240) > +++ amsn2/themes/default/edc/login_screen/fields_frame.edc (working copy) > @@ -2,52 +2,52 @@ > > #define CREATE_FIELD(NAME, OFFSET, LABEL) \ > part { \ > - name, NAME"_label"; \ > - type, TEXT; \ > - clip_to, "fields_frame"; \ > + name: NAME"_label"; \ > + type: TEXT; \ > + clip_to: "fields_frame"; \ > description { \ > - state, "default" 0.0; \ > - min, 50 20; \ > - max, 500 20; \ > + state: "default" 0.0; \ > + min: 50 20; \ > + max: 500 20; \ > rel1 { \ > - to, "fields_frame"; \ > - relative, 0.2 0.0; \ > - offset, 0 OFFSET; \ > + to: "fields_frame"; \ > + relative: 0.2 0.0; \ > + offset: 0 OFFSET; \ > } \ > rel2 { \ > - to, "fields_frame"; \ > - relative, 0.8 0.0; \ > - offset, 0 (OFFSET+20); \ > + to: "fields_frame"; \ > + relative: 0.8 0.0; \ > + offset: 0 (OFFSET+20); \ > } \ > - color, 0 0 0 255; \ > - color2, 225 225 225 128; \ > + color: 0 0 0 255; \ > + color2: 225 225 225 128; \ > text { \ > - align, 0.0 0.5; \ > - font, "VeraBd"; \ > - size, 10; \ > - text, LABEL" :"; \ > - min, 0 0; \ > - elipsis, 0.0; \ > + align: 0.0 0.5; \ > + font: "VeraBd"; \ > + size: 10; \ > + text: LABEL" :"; \ > + min: 0 0; \ > + elipsis: 0.0; \ > } \ > } \ > } \ > part { \ > - name, NAME; \ > - type, SWALLOW; \ > - clip_to, "fields_frame"; \ > + name: NAME; \ > + type: SWALLOW; \ > + clip_to: "fields_frame"; \ > description { \ > - state, "default" 0.0; \ > - min, 50 20; \ > - max, 500 20; \ > + state: "default" 0.0; \ > + min: 50 20; \ > + max: 500 20; \ > rel1 { \ > - to, NAME"_label"; \ > - relative, 0.0 1.0; \ > - offset, 0 0; \ > + to: NAME"_label"; \ > + relative: 0.0 1.0; \ > + offset: 0 0; \ > } \ > rel2 { \ > - to, NAME"_label"; \ > - relative, 1.0 1.0; \ > - offset, 0 20; \ > + to: NAME"_label"; \ > + relative: 1.0 1.0; \ > + offset: 0 20; \ > } \ > } \ > } > @@ -57,40 +57,39 @@ > CREATE_FIELD("login_screen.status", 83, "Sign-in status") > > part { > - name, "arrow"; > - type, IMAGE; > - clip_to, "fields_frame"; > - mouse_events, 0; > + name: "arrow"; > + type: IMAGE; > + clip_to: "fields_frame"; > + mouse_events: 0; > description { > - state, "default" 0.0; > + state: "default" 0.0; > rel1 { > - to, "fields_frame"; > - relative, 0.2 0.0; > - offset, -30 20; > + to: "fields_frame"; > + relative: 0.2 0.0; > + offset: -30 20; > } > rel2 { > - to, "fields_frame"; > - relative, 0.2 0.0; > - offset, 0 40; > + to: "fields_frame"; > + relative: 0.2 0.0; > + offset: 0 40; > } > image { > - normal, "login_screen/arrow.png"; > + normal: "login_screen/arrow.png"; > } > } > description { > - state, "left" 0.0; > - inherit, "default" 0.0; > + state: "left" 0.0; > + inherit: "default" 0.0; > rel1 { > - to, "fields_frame"; > - relative, 0.2 0.0; > - offset, -50 20; > + to: "fields_frame"; > + relative: 0.2 0.0; > + offset: -50 20; > } > rel2 { > - to, "fields_frame"; > - relative, 0.2 0.0; > - offset, -20 40; > + to: "fields_frame"; > + relative: 0.2 0.0; > + offset: -20 40; > } > - > } > } > > Index: amsn2/themes/default/edc/login_screen/signin_frame.edc > =================================================================== > --- amsn2/themes/default/edc/login_screen/signin_frame.edc (revision 10240) > +++ amsn2/themes/default/edc/login_screen/signin_frame.edc (working copy) > @@ -1,22 +1,22 @@ > CREATE_FRAME("signin_frame", "options_frame", 40) > > part { > - name, "login_screen.signin"; > - type, SWALLOW; > - clip_to, "signin_frame"; > + name: "login_screen.signin"; > + type: SWALLOW; > + clip_to: "signin_frame"; > description { > - min, 20 20; > - max, 100 30; > - state, "default" 0.0; > + min: 20 20; > + max: 100 30; > + state: "default" 0.0; > rel1 { > - to, "signin_frame"; > - relative, 0.0 0.0; > - offset, 0 0; > + to: "signin_frame"; > + relative: 0.0 0.0; > + offset: 0 0; > } > rel2 { > - to, "signin_frame"; > - relative, 1.0 1.0; > - offset, 0 0; > + to: "signin_frame"; > + relative: 1.0 1.0; > + offset: 0 0; > } > } > } > Index: python-etk/rebuild > =================================================================== > --- python-etk/rebuild (revision 10240) > +++ python-etk/rebuild (working copy) > @@ -1,4 +1,4 @@ > -export PKG_CONFIG_PATH=/opt/e17/lib/pkgconfig/ > +export > PKG_CONFIG_PATH=/opt/e17/lib/pkgconfig/:/usr/lib/pkgconfig/:/usr/local/lib/pkgconfig > rm -f etk/*.[ch] > rm -rf build > python setup.py build && sudo -E python setup.py install > ------------------------------------------------------------------------- > Check out the new SourceForge.net Marketplace. > It's the best place to buy or sell services for > just about anything Open Source. > http://sourceforge.net/services/buy/index.php > _______________________________________________ > Amsn-devel mailing list > Amsn-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/amsn-devel ------------------------------------------------------------------------- Check out the new SourceForge.net Marketplace. It's the best place to buy or sell services for just about anything Open Source. http://sourceforge.net/services/buy/index.php _______________________________________________ Amsn-devel mailing list Amsn-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/amsn-devel