FL_MOUSE event

Petasis Gewrgios (ph1566@rea.edu.physics.uch.gr)
Fri, 4 Apr 1997 12:42:02 +0200 (WET)

To subscribers of the xforms list from Petasis Gewrgios <ph1566@rea.edu.physics.uch.gr> :

Hi all,
Sorry to report again the same thing...
I think that something is wrong with browser object ...
I include a test program. To reproduce the mallfunction,
just do the following:
When app appears, just click any line of the browser (is a select browser)
and then press page down, while the mouse is in the browser.
You will see it.
what i do is the following:
When you click, the line is selected and the callback is called.
In the callback, i deselect browser, and i select the last line ....
[To TC:
When the browser is loaded before the form is shown, the scrollbar doesn't
appear ...
If you have time, try seeing the gifs:
www.edu.physics.uch.gr/~ph1566/bug.gif (my app...)
www.edu.physics.uch.gr/~ph1566/bug2.gif (this test program)
www.edu.physics.uch.gr/~ph1566/bug3.gif (another gif of my app with different
"visualitation") ]
What follows is the test program...
g.p

#include "forms.h"
#include <stdio.h>

typedef struct {
FL_FORM *test_browser;
void *vdata;
long ldata;
FL_OBJECT *br;
} FD_test_browser;

FD_test_browser *create_form_test_browser(void);
void handle_browser(FL_OBJECT *ob, long data);

int main(int argc, char *argv[])
{
FD_test_browser *fd_test_browser;
FILE *fp;
int i;
char line[100];

fl_initialize(&argc, argv, 0, 0, 0);
fd_test_browser = create_form_test_browser();

fl_set_browser_fontsize(fd_test_browser->br,FL_MEDIUM_SIZE);
/* Fill browser ...*/
fp=fopen("test_browser_tmp","w");
for(i=1;i<16;i++) {
fprintf(fp,"Browser line number # %d !\n",i);
}
fclose(fp);
fl_load_browser(fd_test_browser->br,"test_browser_tmp");

fl_show_form(fd_test_browser->test_browser,FL_PLACE_CENTER,
FL_FULLBORDER,"test_browser");
fl_do_forms();
return 0;
}

void handle_browser(FL_OBJECT *ob, long data)
{
fl_deselect_browser(ob);
fl_select_browser_line(ob,15);
fl_redraw_object(ob);
}

FD_test_browser *create_form_test_browser(void)
{
FL_OBJECT *obj;
FD_test_browser *fdui = (FD_test_browser *) fl_calloc(1, sizeof(*fdui));

fdui->test_browser = fl_bgn_form(FL_NO_BOX, 320, 250);
obj = fl_add_box(FL_FLAT_BOX,0,0,320,250,"");
fdui->br = obj = fl_add_browser(FL_SELECT_BROWSER,20,30,280,210,"");
fl_set_object_color(obj,FL_TOP_BCOL,FL_YELLOW);
fl_set_object_lcolor(obj,FL_BLUE);
fl_set_object_callback(obj,handle_browser,0);
fl_end_form();

fdui->test_browser->fdui = fdui;

return fdui;
}

_________________________________________________
To unsubscribe, send the message "unsubscribe" to
xforms-request@bob.usuf2.usuhs.mil or see
http://bob.usuf2.usuhs.mil/mailserv/xforms.html
Xforms Home Page: http://bragg.phys.uwm.edu/xforms
List Archive: http://bob.usuf2.usuhs.mil/mailserv/list-archives/xforms-archive/