On Fri, Oct 7, 2011 at 7:45 PM, Carsten Haitzler <[email protected]> wrote:
> On Fri, 7 Oct 2011 14:16:58 -0700 "Ausmus, James" <[email protected]>
> said:
>
>> On Fri, Oct 7, 2011 at 2:20 AM, Tom Hacohen <[email protected]> wrote:
>> > I'm away from home/computers until Saturday evening (leaving now), I'll
>> > take a look at it soon after.
>> >
>> > But I have a couple of questions until then:
>> > What sizing do you get? what do you expect? The elm minimum height
>> > should change according to the font size (unless it's smaller than the
>> > finger size, which is then used).
>>
>> It's taller than the part underneath it that it is set to be relative
>> to and smaller than. However, I'm betting that the finger size thing
>> is the issue here - any way to override/set the finger size
>> dynamically, to be able to get around that limitation in one-off
>> situations?
>
> use a label then, not entry. an entry is there for the purpose of entering
> text or selecting it etc. - not just display. thus it forces it to be at least
> a finger size in height for single line entries (for multiple line its a bit
> nastier so it doesn't currently). the whole point of finger size it to ensure
> a
> person can reliably press on it. if you have a desktop app finger size should
> be globally on your system set to something low - like "5". so you wont have a
> problem. but elm is fixing the ui to make it usable for people. you don't need
> your ui test department now to tell you to fix it anymore. :)
Unfortunately, I need actual text entry, not just display. I agree
that, if *everything* else on a given platform is working correctly,
then the finger size should already be set at the appropriate value,
and everything would work great. However, if there are other
platform-level issues/misconfigurations/evolutions in play, I either
have to wait for someone else to finish their job, do someone else's
job for them, or just have my deliverables look ugly (and most
higher-level managers I've dealt with don't usually like the "It's not
my fault/job!" answer...).
Again, I agree with the concept, but not having any way to work around
it, *forcing* every possible application to fit within a pre-conceived
paradigm of how the platform should work, seems a little
over-restrictive and broken...
Thanks!
-James
>
>> Thanks!
>>
>> -James
>>
>> >
>> > --
>> > Tom.
>> >
>> > On 07/10/11 02:45, Ausmus, James wrote:
>> >> Hi All-
>> >>
>> >> It appears that a standard Elementary entry widget has a minimum
>> >> height that it refuses to size beneath, regardless of the font size
>> >> being used, as demonstrated by the entry.c and entry.edc files below.
>> >>
>> >> Is there any way around this? How can I get a "short" Elm entry that
>> >> actually obeys the size of the swallow - do I need to fully grok and
>> >> recreate the default Elm theme for an entry in order to reduce the min
>> >> height of it's visual components, or is there a (much) easier way? :)
>> >>
>> >> Thanks!
>> >>
>> >> -James
>> >>
>> >>
>> >> /****************************************************************************/
>> >> /*Begin entry.c */
>> >> #include <stdio.h>
>> >> #include <Elementary.h>
>> >> #include <Edje.h>
>> >>
>> >> //UI signal callbacks
>> >>
>> >> static Evas_Object *ly;
>> >>
>> >> void main_quit_cb(void *data, Evas_Object *obj,
>> >> const char *emission, const char *source)
>> >> {
>> >> int x, y, h, w;
>> >> edje_object_part_geometry_get(elm_layout_edje_get(ly),
>> >> "input_bg", &x, &y, &w, &h);
>> >> printf("after ibg geo: %i/%i, %i/%i\n", x, y, w, h);
>> >> edje_object_part_geometry_get(elm_layout_edje_get(ly),
>> >> "input_swallow", &x, &y, &w, &h);
>> >> printf("after is geo: %i/%i, %i/%i\n", x, y, w, h);
>> >> elm_exit();
>> >> }
>> >>
>> >> static Evas_Object* load_edj(Evas_Object *parent, const char *file,
>> >> const char *group)
>> >> {
>> >> Evas_Object *eo;
>> >> int r;
>> >>
>> >> eo = elm_layout_add(parent);
>> >> if (eo) {
>> >> r = elm_layout_file_set(eo, file, group);
>> >> if (!r) {
>> >> evas_object_del(eo);
>> >> return NULL;
>> >> }
>> >>
>> >> evas_object_size_hint_weight_set(eo,
>> >> EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
>> >> }
>> >> return eo;
>> >> }
>> >>
>> >> int elm_main(int argc, char *argv[])
>> >> {
>> >> Evas_Object *win = NULL;
>> >> Evas_Object *tb;
>> >> int nw, nh;
>> >>
>> >> /* create window */
>> >> win = elm_win_add(NULL, "entry", ELM_WIN_BASIC);
>> >> if (win) {
>> >> elm_win_title_set(win, "entry");
>> >> ecore_x_window_size_get(ecore_x_window_root_first_get(),
>> >> &nw, &nh);
>> >> evas_object_resize(win, nw, nh);
>> >> } else {
>> >> printf("couldn't create win!\n");
>> >> return -1;
>> >> }
>> >> /* load edje */
>> >> ly = load_edj(win, "entry.edj", "ui");
>> >> if (ly == NULL) {
>> >> printf("Couldn't create layout!\n");
>> >> return -1;
>> >> }
>> >> elm_win_resize_object_add(win, ly);
>> >> edje_object_signal_callback_add(elm_layout_edje_get(ly),
>> >> "DONE_EXIT", "*", main_quit_cb, NULL);
>> >>
>> >>
>> >> tb = elm_entry_add(ly);
>> >> if (tb) {
>> >> elm_entry_entry_set(tb, "<font size='4' color='white'>");
>> >> elm_entry_single_line_set(tb, EINA_TRUE);
>> >> elm_layout_content_set(ly, "input_swallow", tb);
>> >> } else {
>> >> printf("Got null TB!\n");
>> >> return -1;
>> >> }
>> >>
>> >> evas_object_show(ly);
>> >> evas_object_show(win);
>> >>
>> >> elm_run();
>> >> elm_shutdown();
>> >> return 0;
>> >> }
>> >>
>> >> ELM_MAIN();
>> >>
>> >> /* End entry.c */
>> >> /****************************************************************************/
>> >>
>> >> /****************************************************************************/
>> >> /* Begin entry.edc */
>> >> collections {
>> >>
>> >> group {
>> >> name: "ui";
>> >> parts {
>> >>
>> >> part {
>> >> name: "background";
>> >> type: RECT;
>> >> description {
>> >> state: "default" 0.0;
>> >> color: 0 0 0 100;
>> >> }
>> >> program {
>> >> name: "background_clicked";
>> >> source: "background";
>> >> signal: "mouse,clicked,*";
>> >> action: SIGNAL_EMIT "DONE_EXIT"
>> >> "UI"; }
>> >> }
>> >>
>> >> part {
>> >> name: "input_bg";
>> >> type: RECT;
>> >> description {
>> >> state: "default" 0.0;
>> >> rel1 { relative: 0.37773 0.04375;
>> >> }
>> >> rel2 { relative: 0.62227 0.06; }
>> >> color: 100 100 100 255;
>> >> fixed: 1 1;
>> >> }
>> >> }
>> >>
>> >> part {
>> >> name: "temp_tb_bg";
>> >> type: RECT;
>> >> description {
>> >> state: "default" 0.0;
>> >> rel1 { to: "input_swallow"; }
>> >> rel2 { to: "input_swallow"; }
>> >> color: 255 0 0 255;
>> >> visible: 1;
>> >> }
>> >> }
>> >>
>> >> part {
>> >> name: "input_swallow";
>> >> type: SWALLOW;
>> >> description {
>> >> state: "default" 0.0;
>> >> rel1 { relative: 0.12 0.15;
>> >> to: "input_bg"; }
>> >> rel2 { relative: 0.96 0.9; to:
>> >> "input_bg"; }
>> >> fixed: 1 1;
>> >> }
>> >> }
>> >>
>> >> }
>> >> } //group
>> >> }
>> >>
>> >> /* End entry.edc */
>> >> /****************************************************************************/
>> >>
>> >> ------------------------------------------------------------------------------
>> >> All of the data generated in your IT infrastructure is seriously valuable.
>> >> Why? It contains a definitive record of application performance, security
>> >> threats, fraudulent activity, and more. Splunk takes this data and makes
>> >> sense of it. IT sense. And common sense.
>> >> http://p.sf.net/sfu/splunk-d2dcopy2
>> >> _______________________________________________
>> >> enlightenment-devel mailing list
>> >> [email protected]
>> >> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>> >
>> >
>>
>> ------------------------------------------------------------------------------
>> All of the data generated in your IT infrastructure is seriously valuable.
>> Why? It contains a definitive record of application performance, security
>> threats, fraudulent activity, and more. Splunk takes this data and makes
>> sense of it. IT sense. And common sense.
>> http://p.sf.net/sfu/splunk-d2dcopy2
>> _______________________________________________
>> enlightenment-devel mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/enlightenment-devel
>>
>
>
> --
> ------------- Codito, ergo sum - "I code, therefore I am" --------------
> The Rasterman (Carsten Haitzler) [email protected]
>
>
------------------------------------------------------------------------------
All the data continuously generated in your IT infrastructure contains a
definitive record of customers, application performance, security
threats, fraudulent activity and more. Splunk takes this data and makes
sense of it. Business sense. IT sense. Common sense.
http://p.sf.net/sfu/splunk-d2dcopy1
_______________________________________________
enlightenment-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel