def create_forms(self):

        self.sample = xfl.fl_bgn_form(xfl.FL_NO_BOX, 320, 250)

        self.ptrflobj0 = xfl.fl_add_box(xfl.FL_UP_BOX, 0, 0, 320, 250, '')
        xfl.fl_set_object_color(self.ptrflobj0, xfl.FL_COL1, xfl.FL_COL1)
        xfl.fl_set_object_lalign(self.ptrflobj0, xfl.FL_ALIGN_CENTER)
        xfl.fl_set_object_lstyle(self.ptrflobj0, xfl.FL_NORMAL_STYLE)
        xfl.fl_set_object_lsize(self.ptrflobj0, xfl.FL_DEFAULT_SIZE)
        xfl.fl_set_object_lcol(self.ptrflobj0, xfl.FL_BLACK)
        xfl.fl_set_object_resize(self.ptrflobj0, xfl.FL_RESIZE_ALL)
        xfl.fl_set_object_gravity(self.ptrflobj0, xfl.FL_NoGravity, xfl.FL_NoGravity)
        self.pvalslider = xfl.fl_add_valslider(xfl.FL_HOR_SLIDER, 10, 40, 290, 30, 'Horizontal way')
        xfl.fl_set_object_boxtype(self.pvalslider, xfl.FL_UP_BOX)
        xfl.fl_set_slider_bounds(self.pvalslider, 1, 25)
        xfl.fl_set_slider_value(self.pvalslider, 1)
        xfl.fl_set_slider_increment(self.pvalslider, 0.4, 0.5)
        xfl.fl_set_slider_size(self.pvalslider, 0.20)
        xfl.fl_set_slider_step(self.pvalslider, 1)
        xfl.fl_set_slider_precision(self.pvalslider, 3)
        xfl.fl_set_object_color(self.pvalslider, xfl.FL_COL1, xfl.FL_COL1)
        xfl.fl_set_object_lalign(self.pvalslider, xfl.FL_ALIGN_BOTTOM)
        xfl.fl_set_object_lstyle(self.pvalslider, xfl.FL_NORMAL_STYLE)
        xfl.fl_set_object_lsize(self.pvalslider, xfl.FL_TINY_SIZE)
        xfl.fl_set_object_lcol(self.pvalslider, xfl.FL_BLACK)
        xfl.fl_set_object_resize(self.pvalslider, xfl.FL_RESIZE_ALL)
        xfl.fl_set_object_gravity(self.pvalslider, xfl.FL_NoGravity, xfl.FL_NoGravity)
        xfl.fl_set_object_shortcut(self.pvalslider, 'H', 1)
        xfl.fl_set_object_callback(self.pvalslider, self.slidercb, 4)
        xfl.fl_set_object_return(self.pvalslider, xfl.FL_RETURN_CHANGED|xfl.FL_RETURN_END)

        xfl.fl_end_form()
 def create_form_form0(self):
     fdui = FD_form0()
     fdui.form0 = xfl.fl_bgn_form(xfl.FL_NO_BOX, 321, 276)
     pobj = xfl.fl_add_box(xfl.FL_UP_BOX, 0, 0, 321, 276, "")
     fdui.pobj[0] = xfl.fl_add_valslider(xfl.FL_HOR_SLIDER, 12, 55, \
             138, 22, "")
     xfl.fl_set_object_lalign(fdui.pobj[0], \
             xfl.fl_to_inside_lalign(xfl.FL_ALIGN_BOTTOM))
     xfl.fl_set_object_callback(fdui.pobj[0], self.return_cb, 0)
     xfl.fl_set_object_return(fdui.pobj[0], xfl.FL_RETURN_CHANGED)
     fdui.pobj[1] = xfl.fl_add_counter(xfl.FL_NORMAL_COUNTER, 12, 85, \
             138, 22, "")
     xfl.fl_set_object_lalign(fdui.pobj[1], \
             xfl.fl_to_inside_lalign(xfl.FL_ALIGN_BOTTOM))
     xfl.fl_set_object_callback(fdui.pobj[1], self.return_cb, 1)
     fdui.pobj[2] = xfl.fl_add_input(xfl.FL_NORMAL_INPUT, 12, 150, \
             138, 25, "")
     xfl.fl_set_object_callback(fdui.pobj[2], self.return_cb, 2)
     fdui.br = xfl.fl_add_browser(xfl.FL_NORMAL_BROWSER, 170, 55, \
             140, 160, "")
     fdui.pobj[3] = xfl.fl_add_input(xfl.FL_INT_INPUT, 12, 187, \
             138, 25, "")
     xfl.fl_set_object_lalign(fdui.pobj[3], \
             xfl.fl_to_inside_lalign(xfl.FL_ALIGN_LEFT))
     xfl.fl_set_object_callback(fdui.pobj[3], self.return_cb, 3)
     fdui.when = xfl.fl_add_select(xfl.FL_NORMAL_SELECT, 40, 12, \
             240, 27, "")
     xfl.fl_set_object_callback(fdui.when, self.when_cb, 0)
     pobj = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 170, 239, \
             80, 25, "Done")
     pobj = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 70, 239, \
             80, 25, "ResetLog")
     xfl.fl_set_object_callback(pobj, self.resetlog_cb, 0)
     xfl.fl_end_form()
     return fdui
 def create_form_valuatorform(self):
     fdui = FD_valuatorform()
     fdui.valuatorform = xfl.fl_bgn_form(xfl.FL_NO_BOX, 431, 211)
     pobj = xfl.fl_add_box(xfl.FL_FLAT_BOX, 0, 0, 431, 211, "")
     pobj1 = xfl.fl_add_positioner(xfl.FL_NORMAL_POSITIONER, 280, 50, 82, 72, "")
     xfl.fl_set_positioner_xvalue(pobj1, 0.679012)
     xfl.fl_set_positioner_yvalue(pobj1, 0.71831)
     pobj2 = xfl.fl_add_valslider(xfl.FL_HOR_NICE_SLIDER, 55, 10, 240, 20, "")
     xfl.fl_set_object_boxtype(pobj2, xfl.FL_FLAT_BOX)
     xfl.fl_set_object_color(pobj2, xfl.FL_COL1, xfl.FL_RIGHT_BCOL)
     xfl.fl_set_object_return(pobj2, xfl.FL_RETURN_CHANGED)
     xfl.fl_set_slider_value(pobj2, 0.87)
     pobj3 = xfl.fl_add_counter(xfl.FL_NORMAL_COUNTER, 130, 110, 110, 20, "")
     xfl.fl_set_counter_value(pobj3, -1.0)
     pobj4 = xfl.fl_add_slider(xfl.FL_VERT_NICE_SLIDER, 10, 30, 20, 160, "")
     xfl.fl_set_object_boxtype(pobj4, xfl.FL_FLAT_BOX)
     xfl.fl_set_object_color(pobj4, xfl.FL_COL1, xfl.FL_RED)
     xfl.fl_set_object_return(pobj4, xfl.FL_RETURN_CHANGED)
     xfl.fl_set_slider_value(pobj4, 0.49)
     pobj5 = xfl.fl_add_valslider(xfl.FL_HOR_BROWSER_SLIDER, 70, 170, 150, 21, "")
     xfl.fl_set_object_return(pobj5, xfl.FL_RETURN_CHANGED)
     pobj6 = xfl.fl_add_slider(xfl.FL_HOR_FILL_SLIDER, 69, 57, 159, 22, "")
     xfl.fl_set_object_color(pobj6, xfl.FL_COL1, xfl.FL_SLATEBLUE)
     xfl.fl_set_object_return(pobj6, xfl.FL_RETURN_CHANGED)
     xfl.fl_set_slider_value(pobj6, 0.25)
     pobj7 = xfl.fl_add_dial(xfl.FL_NORMAL_DIAL, 60, 90, 60, 58, "")
     xfl.fl_set_object_boxtype(pobj7, xfl.FL_UP_BOX)
     xfl.fl_set_object_return(pobj7, xfl.FL_RETURN_END_CHANGED)
     pobj8 = xfl.fl_add_scrollbar(xfl.FL_VERT_THIN_SCROLLBAR, 394, 14, 18, 180, "")
     xfl.fl_set_object_boxtype(pobj8, xfl.FL_DOWN_BOX)
     xfl.fl_set_object_resize(pobj8, xfl.FL_RESIZE_ALL)
     xfl.fl_set_scrollbar_size(pobj8, 0.20)
     pobj9 = xfl.fl_add_scrollbar(xfl.FL_HOR_SCROLLBAR, 238, 158, 140, 16, "")
     xfl.fl_set_object_resize(pobj9, xfl.FL_RESIZE_ALL)
     xfl.fl_set_scrollbar_size(pobj9, 0.25)
     xfl.fl_end_form()
     return fdui
    def __init__(self, lsysargv, sysargv):
        # application default. Can be overriden by the command line options
        xfl.fl_set_border_width(1)
        xfl.fl_initialize(lsysargv, sysargv, "FormDemo", None, 0)
        self.pbwform = xfl.fl_bgn_form(xfl.FL_NO_BOX, 380, 340)
        self.pbwgroup = xfl.fl_bgn_group()
        xfl.fl_add_box(xfl.FL_UP_BOX, 0, 0, 380, 340, "")
        xfl.fl_add_frame(xfl.FL_EMBOSSED_FRAME, 220, 60, 135, 145, "")
        xfl.fl_add_frame(xfl.FL_ENGRAVED_FRAME, 15, 60, 185, 145, "")
        xfl.fl_add_slider(xfl.FL_HOR_SLIDER, 25, 70, 160, 20, "")
        xfl.fl_add_valslider(xfl.FL_HOR_BROWSER_SLIDER, 25, 105, \
                160, 20, "")
        self.pobj = xfl.fl_add_scrollbar(xfl.FL_HOR_THIN_SCROLLBAR,
                25, 140, 160, 20, "")
        xfl.fl_set_scrollbar_size(self.pobj, 0.2)
        xfl.fl_add_counter(xfl.FL_NORMAL_COUNTER, 25, 175, \
                160, 20, "")
        self.ppmobj = xfl.fl_add_pixmapbutton(xfl.FL_NORMAL_BUTTON, \
                305, 145, 40, 35, "")
        xfl.fl_add_positioner(xfl.FL_NORMAL_POSITIONER, 30, 225, \
                100, 80, "")
        xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 230, 65, 100, 28, \
                "Button")
        xfl.fl_add_lightbutton(xfl.FL_PUSH_BUTTON, 230, 98, 100, 28, \
                "LightButton")
        xfl.fl_add_roundbutton(xfl.FL_PUSH_BUTTON, 230, 128, \
                80, 32, "Button")
        self.pobj = xfl.fl_add_round3dbutton(xfl.FL_PUSH_BUTTON, \
                230, 152, 80, 32, "Button")
        xfl.fl_set_object_color(self.pobj, xfl.FL_COL1, xfl.FL_BLUE)
        xfl.fl_add_checkbutton(xfl.FL_PUSH_BUTTON, 230, 175, \
                80, 32, "Button")
        xfl.fl_add_input(xfl.FL_NORMAL_INPUT, 195, 240, 160, 28, \
                "Input")
        self.pbwselect = xfl.fl_add_select(xfl.FL_MENU_SELECT, 105, \
                20, 100, 28, "Border Width")
        xfl.fl_set_object_callback(self.pbwselect, self.bw_callback, 0)
        xfl.fl_end_group()
        self.pdoneobj = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 270, 290, \
                75, 30, "Done")
        xfl.fl_set_object_callback(self.pdoneobj, self.done_callback, 0)
        xfl.fl_end_form()
        # end create_form_bwform

        # form initialization code
        xfl.fl_set_pixmapbutton_file(self.ppmobj, "crab.xpm")
        xfl.fl_add_select_items(self.pbwselect, \
                "-5 Pixel|-4 Pixel|-3 Pixel|-2 Pixel|-1 Pixel|" \
                " 1 Pixel| 2 Pixel| 3 Pixel| 4 Pixel| 5 Pixel")
        pbw = xfl.fl_get_border_width()
        if (pbw < -5 or pbw == 0 or pbw > 5):
            pbw = -2
            xfl.fl_set_border_width(pbw)

        txt = "%2d Pixel" % pbw
        ppupentr = xfl.fl_get_select_item_by_label(self.pbwselect, txt)
        xfl.fl_set_select_item(self.pbwselect, ppupentr)

        # show the form
        xfl.fl_show_form(self.pbwform, xfl.FL_PLACE_CENTER, \
                xfl.FL_TRANSIENT, "bwform")

        while xfl.fl_do_forms():
            pass                # empty
def create_form_objsform():
    fdui = FD_objsform()
    fdui.objsform = xfl.fl_bgn_form(xfl.FL_NO_BOX, 456, 361)
    xfl.fl_add_box(xfl.FL_FLAT_BOX, 0, 0, 456, 361, "")
    xfl.fl_add_box(xfl.FL_UP_BOX, 0, 0, 455, 360, "")
    xfl.fl_add_box(xfl.FL_UP_BOX, 0, 0, 456, 70, "")
    fdui.button[0] = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 15, 20, 75, \
            30, "Static")
    xfl.fl_set_object_lsize(fdui.button[0], xfl.FL_NORMAL_SIZE)
    xfl.fl_set_object_lstyle(fdui.button[0], xfl.FL_TIMESBOLD_STYLE)
    xfl.fl_set_object_callback(fdui.button[0], show_group, 0)
    fdui.button[1] = xfl.fl_add_button( xfl.FL_RADIO_BUTTON, 90, 20, 75, \
            30, "Button")
    xfl.fl_set_object_lsize(fdui.button[1], xfl.FL_NORMAL_SIZE)
    xfl.fl_set_object_lstyle(fdui.button[1], xfl.FL_TIMESBOLD_STYLE)
    xfl.fl_set_object_callback(fdui.button[1], show_group, 1)
    fdui.button[2] = xfl.fl_add_button( xfl.FL_RADIO_BUTTON, 165, 20, 70, \
            30, "Valuator")
    xfl.fl_set_object_lsize(fdui.button[2], xfl.FL_NORMAL_SIZE)
    xfl.fl_set_object_lstyle(fdui.button[2], xfl.FL_TIMESBOLD_STYLE)
    xfl.fl_set_object_callback(fdui.button[2], show_group, 2)
    fdui.button[3] = xfl.fl_add_button( xfl.FL_RADIO_BUTTON, 235, 20, 70, \
            30, "Input")
    xfl.fl_set_object_lsize(fdui.button[3], xfl.FL_NORMAL_SIZE)
    xfl.fl_set_object_lstyle(fdui.button[3], xfl.FL_TIMESBOLD_STYLE)
    xfl.fl_set_object_callback(fdui.button[3], show_group, 3)
    fdui.button[4] = xfl.fl_add_button( xfl.FL_RADIO_BUTTON, 305, 20, 70, \
            30, "Other")
    xfl.fl_set_object_lsize(fdui.button[4], xfl.FL_NORMAL_SIZE)
    xfl.fl_set_object_lstyle(fdui.button[4], xfl.FL_TIMESBOLD_STYLE)
    xfl.fl_set_object_callback(fdui.button[4], show_group, 4)
    xfl.fl_add_box(xfl.FL_UP_BOX, 0, 70, 456, 291, "")
    xfl.fl_add_box(xfl.FL_DOWN_BOX, 9, 90, 435, 260, "")
    fdui.group[2] = xfl.fl_bgn_group()
    pobj = xfl.fl_add_text(xfl.FL_NORMAL_TEXT, 260, 140, 80, 30, "Text")
    xfl.fl_set_object_lalign(pobj, xfl.fl_to_inside_lalign(xfl.FL_ALIGN_LEFT))
    xfl.fl_add_slider(xfl.FL_HOR_BROWSER_SLIDER, 60, 120, 170, 25, "")
    pobj = xfl.fl_add_slider(xfl.FL_HOR_FILL_SLIDER, 60, 160, 170, 30, "")
    xfl.fl_set_slider_value(pobj, 0.54)
    pobj = xfl.fl_add_slider(xfl.FL_VERT_SLIDER, 390, 110, 30, 170, "")
    xfl.fl_set_slider_value(pobj, 0.48)
    xfl.fl_add_valslider(xfl.FL_VERT_SLIDER, 350, 110, 30, 170, "")
    pobj = xfl.fl_add_dial(xfl.FL_FILL_DIAL, 50, 220, 90, 70, "")
    xfl.fl_set_object_color(pobj, xfl.FL_COL1, xfl.FL_BLUE)
    xfl.fl_add_positioner(xfl.FL_NORMAL_POSITIONER, 150, 210, 120, 100, "")
    xfl.fl_add_counter(xfl.FL_NORMAL_COUNTER, 300, 300, 130, 30, "")
    xfl.fl_end_group()
    fdui.group[1] = xfl.fl_bgn_group()
    fdui.bitbutton = xfl.fl_add_bitmapbutton(xfl.FL_NORMAL_BUTTON, 60, 250, \
            50, 40, "")
    fdui.pixbutton = xfl.fl_add_pixmapbutton(xfl.FL_NORMAL_BUTTON, 85, 120, \
            80, 80, "")
    xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 290, 270, 90, 35, "Button")
    pobj = xfl.fl_add_round3dbutton(xfl.FL_PUSH_BUTTON, 260, 95, 60, 40, \
            "Round3DButton")
    xfl.fl_set_object_color(pobj, xfl.FL_COL1, xfl.FL_MAGENTA)
    xfl.fl_add_roundbutton(xfl.FL_PUSH_BUTTON, 220, 140, 60, 40, \
            "RoundButton")
    pobj = xfl.fl_add_checkbutton(xfl.FL_PUSH_BUTTON, 190, 230, 50, 40, \
            "CheckButton")
    xfl.fl_set_object_color(pobj, xfl.FL_COL1, xfl.FL_BLUE)
    xfl.fl_add_lightbutton(xfl.FL_PUSH_BUTTON, 290, 200, 100, 30, \
            "LightButton")
    pobj = xfl.fl_add_button(xfl.FL_PUSH_BUTTON, 120, 290, 100, 35, \
            "Button")
    xfl.fl_set_object_boxtype(pobj, xfl.FL_ROUNDED3D_UPBOX)
    xfl.fl_end_group()
    fdui.group[0] = xfl.fl_bgn_group()
    pobj = xfl.fl_add_box(xfl.FL_UP_BOX, 40, 120, 70, 70, "A Box")
    xfl.fl_set_object_lsize(pobj, xfl.FL_NORMAL_SIZE)
    xfl.fl_set_object_lstyle(pobj, xfl.FL_TIMESBOLD_STYLE)
    fdui.bit = xfl.fl_add_bitmap(xfl.FL_NORMAL_BITMAP, 30, 220, 80, 70, \
            "bitmap")
    xfl.fl_add_clock(xfl.FL_ANALOG_CLOCK, 330, 240, 90, 80, "")
    pobj = xfl.fl_add_frame(xfl.FL_ENGRAVED_FRAME, 130, 120, 80, 70, \
            "A Frame")
    xfl.fl_set_object_lsize(pobj, xfl.FL_NORMAL_SIZE)
    xfl.fl_set_object_lstyle(pobj, xfl.FL_TIMESBOLD_STYLE)
    fdui.pix = xfl.fl_add_pixmap(xfl.FL_NORMAL_PIXMAP, 340, 110, 90, 70, \
            "pixmap")
    fdui.chart = xfl.fl_add_chart(xfl.FL_PIE_CHART, 160, 210, 130, 110, \
            "chart")
    pobj = xfl.fl_add_text(xfl.FL_NORMAL_TEXT, 240, 130, 100, 30, \
            "Text stuff\nand more stuff")
    xfl.fl_set_object_lalign(pobj, \
            xfl.fl_to_inside_lalign(xfl.FL_ALIGN_CENTER))
    xfl.fl_end_group()
    fdui.group[3] = xfl.fl_bgn_group()
    xfl.fl_add_input(xfl.FL_NORMAL_INPUT, 140, 120, 150, 30, "Input")
    xfl.fl_add_input(xfl.FL_MULTILINE_INPUT, 60, 170, 320, 130, "")
    xfl.fl_end_group()
    fdui.quit = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 385, 20, 60, 30, \
            "Quit")
    fdui.group[4] = xfl.fl_bgn_group()
    fdui.menu = xfl.fl_add_nmenu(xfl.FL_NORMAL_NMENU, 190, 110, 40, 19, \
            "Menu")
    xfl.fl_set_object_boxtype(fdui.menu, xfl.FL_FLAT_BOX)
    fdui.choice = xfl.fl_add_select(xfl.FL_NORMAL_SELECT, 290, 110, 120, \
            30, "")
    fdui.browser = xfl.fl_add_browser(xfl.FL_NORMAL_BROWSER, 30, 140, \
            140, 150, "")
    fdui.xyplot = xfl.fl_add_xyplot( xfl.FL_IMPULSE_XYPLOT, 190, 150, \
            240, 180, "")
    xfl.fl_set_object_lsize(fdui.xyplot, xfl.FL_DEFAULT_SIZE)
    xfl.fl_end_group()
    xfl.fl_end_form()
    return fdui
    def create_form(self):

        self.pform = xfl.fl_bgn_form(xfl.FL_NO_BOX, 720, 520)

        pobj = xfl.fl_add_box(xfl.FL_UP_BOX, 0, 0, 720, 520, "")
        xfl.fl_set_object_color(pobj, xfl.FL_BLUE, xfl.FL_COL1)

        pobj = xfl.fl_add_box(xfl.FL_DOWN_BOX, 10, 90, 700, 420, "")
        xfl.fl_set_object_color(pobj, xfl.FL_COL1, xfl.FL_COL1)

        pobj = xfl.fl_add_box(xfl.FL_DOWN_BOX, 10, 10, 700, 70, "")
        xfl.fl_set_object_color(pobj, xfl.FL_SLATEBLUE, xfl.FL_COL1)

        tobj[0] = xfl.fl_add_box(xfl.FL_UP_BOX, 30, 110, 110, 110, "Box")

        tobj[1] = xfl.fl_add_text(xfl.FL_NORMAL_TEXT, 30, 240, 110, 30, "Text")

        tobj[2] = xfl.fl_add_bitmap(xfl.FL_NORMAL_BITMAP, 40, 280, 90, 80, "Bitmap")
        xfl.fl_set_object_lcol(tobj[2], xfl.FL_BLUE)

        tobj[3] = xfl.fl_add_chart(xfl.FL_BAR_CHART, 160, 110, 160, 110, "Chart")

        tobj[4] = xfl.fl_add_clock(xfl.FL_ANALOG_CLOCK, 40, 390, 90, 90, "Clock")
        xfl.fl_set_object_dblbuffer(tobj[4], 1)

        tobj[5] = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 340, 110, 120, 30, "Button")

        tobj[6] = xfl.fl_add_lightbutton(xfl.FL_PUSH_BUTTON, 340, 150, 120, 30, "Lightbutton")

        tobj[7] = xfl.fl_add_roundbutton(xfl.FL_PUSH_BUTTON, 340, 190, 120, 30, "Roundbutton")

        tobj[8] = xfl.fl_add_slider(xfl.FL_VERT_SLIDER, 160, 250, 40, 230, "Slider")

        tobj[9] = xfl.fl_add_valslider(xfl.FL_VERT_SLIDER, 220, 250, 40, 230, "Valslider")

        tobj[10] = xfl.fl_add_dial(xfl.FL_LINE_DIAL, 280, 250, 100, 100, "Dial")

        tobj[11] = xfl.fl_add_positioner(xfl.FL_NORMAL_POSITIONER, 280, 380, 150, 100, "Positioner")

        tobj[12] = xfl.fl_add_counter(xfl.FL_NORMAL_COUNTER, 480, 110, 210, 30, "Counter")

        tobj[13] = xfl.fl_add_input(xfl.FL_NORMAL_INPUT, 520, 170, 170, 30, "Input")

        tobj[14] = xfl.fl_add_nmenu(xfl.FL_NORMAL_NMENU, 400, 240, 100, 30, "Menu")

        tobj[15] = xfl.fl_add_select(xfl.FL_NORMAL_SELECT, 580, 250, 110, 30, "Select")

        tobj[16] = xfl.fl_add_timer(xfl.FL_VALUE_TIMER, 580, 210, 110, 30, "Timer")
        xfl.fl_set_object_dblbuffer(tobj[16], 1)

        tobj[17] = xfl.fl_add_browser(xfl.FL_NORMAL_BROWSER, 450, 300, 240, 180, "Browser")

        self.pexitob = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 590, 30, 100, 30, "Exit")

        self.pbtypeob = xfl.fl_add_select(xfl.FL_NORMAL_SELECT, 110, 30, 130, 30, "Boxtype")
        xfl.fl_set_object_callback(self.pbtypeob, self.boxtype_cb, 0)
        xfl.fl_popup_set_title(xfl.fl_get_select_popup(self.pbtypeob), "Boxtype")

        self.pmodeob = xfl.fl_add_select(xfl.FL_NORMAL_SELECT, 370, 30, 130, 30, "Graphics mode")
        xfl.fl_set_object_callback(self.pmodeob, self.mode_cb, 0)
        xfl.fl_popup_set_title(xfl.fl_get_select_popup(self.pmodeob), "Graphics mode")

        xfl.fl_end_form()
    def create_form_form(self):

        self.pform = xfl.fl_bgn_form(xfl.FL_NO_BOX, 780, 320)

        pobj = xfl.fl_add_box(xfl.FL_UP_BOX, 0, 0, 780, 320, "")
        xfl.fl_set_object_color(pobj, xfl.FL_PALEGREEN, xfl.FL_COL1)
        pobj = xfl.fl_add_box(xfl.FL_SHADOW_BOX, 20, 30, 360, 270, \
                "SLIDER")
        xfl.fl_set_object_color(pobj, xfl.FL_SLATEBLUE, 47)
        xfl.fl_set_object_lalign(pobj, xfl.FL_ALIGN_TOP)
        xfl.fl_set_object_lstyle(pobj, xfl.FL_BOLD_STYLE)
        pobj = xfl.fl_add_box(xfl.FL_SHADOW_BOX, 390, 30, 370, 270, \
                "VALSLIDER")
        xfl.fl_set_object_color(pobj, xfl.FL_SLATEBLUE, xfl.FL_COL1)
        xfl.fl_set_object_lalign(pobj, xfl.FL_ALIGN_TOP)
        xfl.fl_set_object_lstyle(pobj, xfl.FL_BOLD_STYLE)
        pobj = xfl.fl_add_slider(xfl.FL_VERT_SLIDER, 30, 50, 40, 220, \
                "vert")
        xfl.fl_set_object_color(pobj, xfl.FL_INDIANRED, xfl.FL_PALEGREEN)
        pobj = xfl.fl_add_slider(xfl.FL_VERT_FILL_SLIDER, 80, 50, 40, 220, \
                "vert_fill")
        xfl.fl_set_object_color(pobj, xfl.FL_INDIANRED, xfl.FL_PALEGREEN)
        pobj = xfl.fl_add_slider(xfl.FL_HOR_SLIDER, 180, 50, 195, 40, "hor")
        xfl.fl_set_object_color(pobj, xfl.FL_INDIANRED, xfl.FL_PALEGREEN)
        pobj = xfl.fl_add_slider(xfl.FL_HOR_FILL_SLIDER, 180, 110, 190, 40, \
                "hor_fill")
        xfl.fl_set_object_color(pobj, xfl.FL_INDIANRED, xfl.FL_PALEGREEN)
        pobj = xfl.fl_add_valslider(xfl.FL_VERT_NICE_SLIDER, 610, 50, \
                30, 220, "vert_nice")
        xfl.fl_set_object_boxtype(pobj, xfl.FL_FLAT_BOX)
        xfl.fl_set_object_color(pobj, xfl.FL_SLATEBLUE, xfl.FL_INDIANRED)
        pobj = xfl.fl_add_valslider(xfl.FL_VERT_FILL_SLIDER, 660, 50, \
                40, 220, "vert_fill")
        xfl.fl_set_object_color(pobj, xfl.FL_INDIANRED, xfl.FL_PALEGREEN)
        pobj = xfl.fl_add_valslider(xfl.FL_HOR_SLIDER, 400, 50, 190, 40, \
                "hor")
        xfl.fl_set_object_color(pobj, xfl.FL_INDIANRED, xfl.FL_PALEGREEN)
        pobj = xfl.fl_add_valslider(xfl.FL_HOR_FILL_SLIDER, 400, 110, \
                190, 40, "hor_fill")
        xfl.fl_set_object_color(pobj, xfl.FL_INDIANRED, xfl.FL_PALEGREEN)
        xfl.fl_add_valslider(xfl.FL_HOR_BROWSER_SLIDER, 400, 220, 190, 25, \
                "hor_browser")
        self.pexitobj = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 450, 260, \
                100, 30, "Exit")
        xfl.fl_set_object_color(self.pexitobj, xfl.FL_INDIANRED, xfl.FL_RED)
        pobj = xfl.fl_add_slider(xfl.FL_VERT_NICE_SLIDER, 130, 50, 30, 220, \
                "vert_nice")
        xfl.fl_set_object_boxtype(pobj, xfl.FL_FLAT_BOX)
        xfl.fl_set_object_color(pobj, xfl.FL_SLATEBLUE, xfl.FL_INDIANRED)
        pobj = xfl.fl_add_slider(xfl.FL_HOR_NICE_SLIDER, 180, 170, 190, 30, \
                "hor_nice")
        xfl.fl_set_object_boxtype(pobj, xfl.FL_FLAT_BOX)
        xfl.fl_set_object_color(pobj, xfl.FL_SLATEBLUE, xfl.FL_INDIANRED)
        xfl.fl_add_slider(xfl.FL_HOR_BROWSER_SLIDER, 180, 220, 190, 25, \
                "hor_browser")
        pobj = xfl.fl_add_valslider(xfl.FL_HOR_NICE_SLIDER, 400, 170, \
                190, 30, "hor_nice")
        xfl.fl_set_object_boxtype(pobj, xfl.FL_FLAT_BOX)
        xfl.fl_set_object_color(pobj, xfl.FL_SLATEBLUE, xfl.FL_INDIANRED)
        pobj = xfl.fl_add_valslider(xfl.FL_VERT_SLIDER, 710, 50, 40, 220, \
                "vert")
        xfl.fl_set_object_color(pobj, xfl.FL_INDIANRED, xfl.FL_PALEGREEN)

        xfl.fl_end_form()
def create_form_drawfree():
    #gctx = xfl.fl_gc()       #xfl.fl_state[xfl.fl_get_vclass()].gc[0]
    #xfl.fl_set_background(gctx, xfl.FL_BLACK)
    fdui = FD_drawfree()
    fdui.drawfree = xfl.fl_bgn_form(xfl.FL_NO_BOX, 530, 490)
    pobj = xfl.fl_add_box(xfl.FL_UP_BOX, 0, 0, 530, 490, "")
    pobj = xfl.fl_add_frame(xfl.FL_DOWN_FRAME, 145, 30, 370, 405, "")
    xfl.fl_set_object_gravity(pobj, xfl.FL_NorthWest, xfl.FL_SouthEast)
    fdui.freeobj = xfl.fl_add_free(xfl.FL_NORMAL_FREE, 145, 30, \
            370, 405, "", freeobject_handler)
    xfl.fl_set_object_gravity(fdui.freeobj, xfl.FL_NorthWest, \
            xfl.FL_SouthEast)
    xfl.fl_set_object_color(fdui.freeobj, xfl.FL_WHITE, xfl.FL_BLACK)
    pobj = xfl.fl_add_checkbutton(xfl.FL_PUSH_BUTTON, 15, 25, 100, 35, \
            "Outline")
    xfl.fl_set_object_color(pobj, xfl.FL_MCOL, xfl.FL_BLUE)
    xfl.fl_set_object_gravity(pobj, xfl.FL_NorthWest, xfl.FL_NorthWest)
    xfl.fl_set_object_callback(pobj, fill_cb, 0)
    fdui.figgrp = xfl.fl_bgn_group()
    fdui.drobj[0] = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 10, 60, 40, \
            40, "@#circle")
    xfl.fl_set_object_lcol(fdui.drobj[0], xfl.FL_YELLOW)
    xfl.fl_set_object_callback(fdui.drobj[0], switch_object, 0)
    fdui.drobj[1] = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 50, 60, 40, \
            40, "@#square")
    xfl.fl_set_object_lcol(fdui.drobj[1], xfl.FL_YELLOW)
    xfl.fl_set_object_callback(fdui.drobj[1], switch_object, 1)
    fdui.drobj[2] = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 90, 60, 40, \
            40, "@#8>")
    xfl.fl_set_object_lcol(fdui.drobj[2], xfl.FL_YELLOW)
    xfl.fl_set_object_callback(fdui.drobj[2], switch_object, 2)
    xfl.fl_end_group()
    fdui.colgrp = xfl.fl_bgn_group()
    fdui.colorobj = xfl.fl_add_box(xfl.FL_BORDER_BOX, 25, 140, 90, 25, "")
    fdui.rsli = xfl.fl_add_slider(xfl.FL_VERT_FILL_SLIDER, 25, 170, \
            30, 125, "")
    xfl.fl_set_object_color(fdui.rsli, xfl.FL_COL1, xfl.FL_RED)
    xfl.fl_set_object_callback(fdui.rsli, change_color, 0)
    xfl.fl_set_object_return(fdui.rsli, xfl.FL_RETURN_CHANGED)
    fdui.gsli = xfl.fl_add_slider(xfl.FL_VERT_FILL_SLIDER, 55, 170, \
            30, 125, "")
    xfl.fl_set_object_color(fdui.gsli, xfl.FL_COL1, xfl.FL_GREEN)
    xfl.fl_set_object_callback(fdui.gsli, change_color, 1)
    xfl.fl_set_object_return(fdui.gsli, xfl.FL_RETURN_CHANGED)
    fdui.bsli = xfl.fl_add_slider(xfl.FL_VERT_FILL_SLIDER, 85, 170, \
            30, 125, "")
    xfl.fl_set_object_color(fdui.bsli, xfl.FL_COL1, xfl.FL_BLUE)
    xfl.fl_set_object_callback(fdui.bsli, change_color, 2)
    xfl.fl_set_object_return(fdui.bsli, xfl.FL_RETURN_CHANGED)
    xfl.fl_end_group()
    fdui.miscgrp = xfl.fl_bgn_group()
    pobj = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 420, 455, 105, 30, "Quit")
    xfl.fl_set_button_shortcut(pobj, "Qq#q", 1)
    pobj = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 280, 445, 105, \
            30, "Refresh")
    xfl.fl_set_object_callback(pobj, refresh_cb, 0)
    pobj = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 165, 445, 105, \
            30, "Clear")
    xfl.fl_set_object_callback(pobj, clear_cb, 0)
    xfl.fl_end_group()
    fdui.sizegrp = xfl.fl_bgn_group()
    fdui.hsli = xfl.fl_add_valslider(xfl.FL_HOR_SLIDER, 15, 410, 120, 25, \
            "Height")
    xfl.fl_set_object_lalign(fdui.hsli, xfl.FL_ALIGN_TOP)
    xfl.fl_set_object_callback(fdui.hsli, change_size, 1)
    xfl.fl_set_object_return(fdui.hsli, xfl.FL_RETURN_CHANGED)
    fdui.wsli = xfl.fl_add_valslider(xfl.FL_HOR_SLIDER, 15, 370, \
            120, 25, "Width")
    xfl.fl_set_object_lalign(fdui.wsli, xfl.FL_ALIGN_TOP)
    xfl.fl_set_object_callback(fdui.wsli, change_size, 0)
    xfl.fl_set_object_return(fdui.wsli, xfl.FL_RETURN_CHANGED)
    xfl.fl_end_group()
    xfl.fl_end_form()
    return fdui
 def create_form_cl(self):
     if self.pcl:
         return
     self.pcl = xfl.fl_bgn_form(xfl.FL_NO_BOX, 330, 385)
     pobj = xfl.fl_add_box(xfl.FL_UP_BOX, 0, 0, 330, 385, "")
     xfl.fl_set_object_color(pobj, xfl.FL_COL1, xfl.FL_COL1)
     pobj = xfl.fl_add_box(xfl.FL_NO_BOX, 40, 10, 250, 30, "Color Browser")
     xfl.fl_set_object_lcol(pobj, xfl.FL_RED)
     xfl.fl_set_object_lsize(pobj, xfl.FL_HUGE_SIZE)
     xfl.fl_set_object_lstyle(pobj, xfl.FL_BOLD_STYLE + xfl.FL_SHADOW_STYLE)
     xfl.fl_set_object_gravity(pobj, xfl.FL_North, xfl.FL_North)
     xfl.fl_set_object_resize(pobj, xfl.FL_RESIZE_NONE)
     self.pdbobj = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 40, 50, \
             250, 25, "")
     xfl.fl_set_object_boxtype(self.pdbobj, xfl.FL_BORDER_BOX)
     if xfl.fl_get_visual_depth() == 1:
         tmpcolr = xfl.FL_WHITE
     else:
         tmpcolr = xfl.FL_COL1
     xfl.fl_set_object_color(self.pdbobj, tmpcolr, xfl.FL_COL1)
     xfl.fl_set_object_callback(self.pdbobj, self.db_cb, 0)
     xfl.fl_set_object_gravity(self.pdbobj, xfl.FL_North, xfl.FL_North)
     xfl.fl_set_object_resize(self.pdbobj, xfl.FL_RESIZE_X)
     self.prescol = xfl.fl_add_box(xfl.FL_FLAT_BOX, 225, 90, 90, 35, "")
     xfl.fl_set_object_color(self.prescol, xfl.FL_FREE_COL4, \
             xfl.FL_FREE_COL4)
     xfl.fl_set_object_boxtype(self.prescol, xfl.FL_BORDER_BOX)
     xfl.fl_set_object_resize(self.prescol, xfl.FL_RESIZE_NONE)
     xfl.fl_set_object_gravity(self.prescol, xfl.FL_NorthEast, \
             xfl.FL_East)
     self.prs = xfl.fl_add_valslider(xfl.FL_VERT_FILL_SLIDER, 225, 130, \
             30, 200, "")
     xfl.fl_set_object_color(self.prs, xfl.FL_COL1, xfl.FL_RED)
     xfl.fl_set_slider_bounds(self.prs, 0, 255)
     xfl.fl_set_slider_precision(self.prs, 0)
     xfl.fl_set_object_callback(self.prs, self.search_rgb, 0)
     #xfl.fl_set_object_return(self.prs, 0)
     xfl.fl_set_object_resize(self.prs, xfl.FL_RESIZE_Y)
     xfl.fl_set_object_gravity(self.prs, xfl.FL_NorthEast, \
             xfl.FL_SouthEast)
     xfl.fl_set_object_return(self.prs, xfl.FL_RETURN_CHANGED)
     self.pgs = xfl.fl_add_valslider(xfl.FL_VERT_FILL_SLIDER, 255, 130, \
             30, 200, "")
     xfl.fl_set_object_color(self.pgs, xfl.FL_COL1, xfl.FL_GREEN)
     xfl.fl_set_slider_bounds(self.pgs, 0, 255)
     xfl.fl_set_slider_precision(self.pgs, 0)
     xfl.fl_set_object_callback(self.pgs, self.search_rgb, 1)
     #xfl.fl_set_object_return(self.pgs, 0)
     xfl.fl_set_object_resize(self.pgs, xfl.FL_RESIZE_Y)
     xfl.fl_set_object_gravity(self.pgs, xfl.FL_NorthEast, \
             xfl.FL_SouthEast)
     xfl.fl_set_object_return(self.pgs, xfl.FL_RETURN_CHANGED)
     self.pbs = xfl.fl_add_valslider(xfl.FL_VERT_FILL_SLIDER, 285, 130, \
             30, 200, "")
     xfl.fl_set_object_color(self.pbs, xfl.FL_COL1, xfl.FL_BLUE)
     xfl.fl_set_slider_bounds(self.pbs, 0, 255)
     xfl.fl_set_slider_precision(self.pbs, 0)
     xfl.fl_set_object_callback(self.pbs, self.search_rgb, 2)
     #xfl.fl_set_object_return(self.pbs, 0)
     xfl.fl_set_object_resize(self.pbs, xfl.FL_RESIZE_Y)
     xfl.fl_set_object_gravity(self.pbs, xfl.FL_NorthEast, \
             xfl.FL_SouthEast)
     xfl.fl_set_object_return(self.pbs, xfl.FL_RETURN_CHANGED)
     self.pcolbr = xfl.fl_add_browser(xfl.FL_HOLD_BROWSER, 10, 90, \
             205, 240, "")
     xfl.fl_set_browser_fontstyle(self.pcolbr, xfl.FL_FIXED_STYLE)
     xfl.fl_set_object_callback(self.pcolbr, self.br_cb, 0)
     xfl.fl_set_object_gravity(self.pcolbr, xfl.FL_NorthWest, \
             xfl.FL_SouthEast)
     pobj = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 135, 345, \
             80, 30, "Done")
     xfl.fl_set_object_callback(pobj, self.done_cb, 0)
     xfl.fl_set_object_gravity(pobj, xfl.FL_South, xfl.FL_South)
     xfl.fl_set_object_resize(pobj, xfl.FL_RESIZE_NONE)
     xfl.fl_end_form()
     xfl.fl_scale_form(self.pcl, 1.1, 1.0)