def __init__(self, lsysargv, sysargv): xfl.fl_set_border_width(-2) xfl.fl_initialize(lsysargv, sysargv, "FormDemo", None, 0) pform = xfl.fl_bgn_form(xfl.FL_UP_BOX, 350, 250) pobj = xfl.fl_add_pixmap(xfl.FL_NORMAL_PIXMAP, 60, 70, 100, 100, "") xfl.fl_set_object_boxtype(pobj, xfl.FL_DOWN_BOX) xfl.fl_set_pixmap_file(pobj, "porsche.xpm") ppos = xfl.fl_add_positioner(xfl.FL_OVERLAY_POSITIONER, 60, 70, \ 100, 100, "") xfl.fl_set_positioner_xbounds(ppos, 0, 1) xfl.fl_set_positioner_ybounds(ppos, 0, 1) xfl.fl_set_object_callback(ppos, self.positioner_cb, 0) self.pxval = xfl.fl_add_box(xfl.FL_DOWN_BOX, 230, 40, 100, 30, "") xfl.fl_set_object_color(self.pxval, xfl.FL_COL1, xfl.FL_COL1) self.pyval = xfl.fl_add_box(xfl.FL_DOWN_BOX, 230, 90, 100, 30, "") xfl.fl_set_object_color(self.pyval, xfl.FL_COL1, xfl.FL_COL1) xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 230, 200, 100, 30, \ "Exit") xfl.fl_end_form() xfl.fl_show_form(pform, xfl.FL_PLACE_CENTER, xfl.FL_TRANSIENT, \ "XOR Positioner") self.positioner_cb(ppos, 0) xfl.fl_do_forms() xfl.fl_hide_form(pform) xfl.fl_finish() sys.exit(0)
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.ppixmap = xfl.fl_add_pixmap(xfl.FL_NORMAL_PIXMAP, 40, 40, 240, 90, 'one\ndemo\npixmap') xfl.fl_set_object_boxtype(self.ppixmap, xfl.FL_FRAME_BOX) xfl.fl_set_pixmap_align(self.ppixmap, xfl.FL_ALIGN_RIGHT|xfl.FL_ALIGN_INSIDE, 3, 3) xfl.fl_set_pixmap_file(self.ppixmap, 'crab45.xpm') xfl.fl_set_object_color(self.ppixmap, xfl.FL_COL1, xfl.FL_COL1) xfl.fl_set_object_lalign(self.ppixmap, xfl.FL_ALIGN_BOTTOM) xfl.fl_set_object_lstyle(self.ppixmap, xfl.FL_NORMAL_STYLE) xfl.fl_set_object_lsize(self.ppixmap, xfl.FL_DEFAULT_SIZE) xfl.fl_set_object_lcol(self.ppixmap, xfl.FL_BLACK) xfl.fl_set_object_resize(self.ppixmap, xfl.FL_RESIZE_ALL) xfl.fl_set_object_gravity(self.ppixmap, xfl.FL_NoGravity, xfl.FL_NoGravity) xfl.fl_set_object_shortcut(self.ppixmap, 'm', 1) xfl.fl_set_object_callback(self.ppixmap, self.pmapcb, 0) xfl.fl_end_form()
def load_file(self, fname, pvdata): #ldata = xfl.fls_convert_ptrvoid_to_ptrlongc(pvdata).contents.value #print("ldata", ldata) if not fname or not os.path.exists(fname): print("Missing file name\n") return 0 fnameonly = os.path.basename(fname) if os.path.isdir(fname): xfl.fl_set_directory(fname) else: # a file p, ext = os.path.splitext(fnameonly) if not ext: print("Missing file extension\n") return 0 else: if fname.endswith(b".xpm"): xfl.fl_hide_object(self.fd_ttt.bm) xfl.fl_free_pixmap_pixmap(self.fd_ttt.pm) xfl.fl_set_pixmap_file(self.fd_ttt.pm, fname) xfl.fl_show_object(self.fd_ttt.pm) elif fname.endswith(b".xbm"): xfl.fl_hide_object(self.fd_ttt.pm) xfl.fl_set_bitmap_file(self.fd_ttt.bm, fname) xfl.fl_show_object(self.fd_ttt.bm) else: message = "Invalid file extension, neither" \ ".xpm nor .xbm file: %s\n" % ext print(message) return 0 return 1
def create_form_form0(self): fdui = FD_form0() fdui.form0 = xfl.fl_bgn_form(xfl.FL_NO_BOX, 351, 180) pobj = xfl.fl_add_box(xfl.FL_UP_BOX, 0, 0, 351, 180, "") if not TEST_PIXMAP_ALIGN: fdui.box = xfl.fl_add_box(xfl.FL_UP_BOX, 190, 40, 90, 55, "This is\na label") else: fdui.box = xfl.fl_add_pixmap(xfl.FL_NORMAL_PIXMAP, 190, 35, \ 90, 60, "") xfl.fl_set_pixmap_file(fdui.box, "crab.xpm") xfl.fl_set_object_boxtype(fdui.box, xfl.FL_UP_BOX) fdui.inside = xfl.fl_add_lightbutton(xfl.FL_PUSH_BUTTON, 20, 125, \ 90, 30, "Inside") xfl.fl_set_button(fdui.inside, 1) xfl.fl_set_object_callback(fdui.inside, self.inside_cb, 0) xfl.fl_bgn_group() pobj = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 20, 20, 30, 30, "@#7->") xfl.fl_set_object_lcol(pobj, xfl.FL_BLUE) xfl.fl_set_object_callback(pobj, self.align_cb, xfl.FL_ALIGN_LEFT_TOP) pobj = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 50, 20, 30, 30, "@#8->") xfl.fl_set_object_lcol(pobj, xfl.FL_BLUE) xfl.fl_set_object_callback(pobj, self.align_cb, xfl.FL_ALIGN_TOP) pobj = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 80, 20, 30, 30, "@#9->") xfl.fl_set_object_lcol(pobj, xfl.FL_BLUE) xfl.fl_set_object_callback(pobj, self.align_cb, \ xfl.FL_ALIGN_RIGHT_TOP) pobj = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 80, 50, 30, 30, "@#->") xfl.fl_set_object_lcol(pobj, xfl.FL_BLUE) xfl.fl_set_object_callback(pobj, self.align_cb, xfl.FL_ALIGN_RIGHT) fdui.center_ = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 50, 50, 30, 30, "@circle") xfl.fl_set_object_lcol(fdui.center_, xfl.FL_RED) xfl.fl_set_object_callback(fdui.center_, self.align_cb, \ xfl.FL_ALIGN_CENTER) pobj = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 20, 50, 30, 30, "@#<-") xfl.fl_set_object_lcol(pobj, xfl.FL_BLUE) xfl.fl_set_object_callback(pobj, self.align_cb, xfl.FL_ALIGN_LEFT) pobj = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 20, 80, 30, 30, "@#1->") xfl.fl_set_object_lcol(pobj, xfl.FL_BLUE) xfl.fl_set_object_callback(pobj, self.align_cb, \ xfl.FL_ALIGN_LEFT_BOTTOM) pobj = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 50, 80, 30, 30, "@#2->") xfl.fl_set_object_lcol(pobj, xfl.FL_BLUE) xfl.fl_set_object_callback(pobj, self.align_cb, xfl.FL_ALIGN_BOTTOM) pobj = xfl.fl_add_button(xfl.FL_RADIO_BUTTON, 80, 80, 30, 30, "@#3->") xfl.fl_set_object_lcol(pobj, xfl.FL_BLUE) xfl.fl_set_object_callback(pobj, self.align_cb, \ xfl.FL_ALIGN_RIGHT_BOTTOM) xfl.fl_end_group() pobj = xfl.fl_add_button(xfl.FL_NORMAL_BUTTON, 200, 135, 70, 30, \ "Done") xfl.fl_end_form() return fdui
def create_form_staticform(self): fdui = FD_staticform() fdui.staticform = xfl.fl_bgn_form(xfl.FL_NO_BOX, 431, 211) pobj = xfl.fl_add_box(xfl.FL_FLAT_BOX, 0, 0, 431, 211, "") xfl.fl_set_object_color(pobj, xfl.FL_INDIANRED, xfl.FL_INDIANRED) xfl.fl_set_object_lcolor(pobj, xfl.FL_INDIANRED) pobj1 = xfl.fl_add_box(xfl.FL_UP_BOX, 40, 40, 60, 45, "A Box") pobj2 = xfl.fl_add_labelframe(xfl.FL_ENGRAVED_FRAME, 130, 30, 120, 55, "LabelFrame") xfl.fl_set_object_color(pobj2, xfl.FL_BLACK, xfl.FL_INDIANRED) xfl.fl_set_object_lstyle(pobj2, xfl.FL_BOLD_STYLE) fdui.chart = xfl.fl_add_chart(xfl.FL_PIE_CHART, 270, 20, 130, 105, "") xfl.fl_set_object_color(fdui.chart, xfl.FL_INDIANRED, xfl.FL_COL1) pobj3 = xfl.fl_add_clock(xfl.FL_ANALOG_CLOCK, 30, 100, 85, 85, "") xfl.fl_set_object_color(pobj3, xfl.FL_COL1, xfl.FL_RIGHT_BCOL) pobj4 = xfl.fl_add_bitmap(xfl.FL_NORMAL_BITMAP, 150, 140, 30, 25, "") xfl.fl_set_bitmap_file(pobj4, "srs.xbm") pobj5 = xfl.fl_add_pixmap(xfl.FL_NORMAL_PIXMAP, 210, 120, 60, 60, "") xfl.fl_set_pixmap_file(pobj5, "porsche.xpm") pobj6 = xfl.fl_add_text(xfl.FL_NORMAL_TEXT, 310, 150, 70, 25, "Text") xfl.fl_set_object_boxtype(pobj6, xfl.FL_BORDER_BOX) xfl.fl_end_form() return fdui
def test_fl_set_pixmap_file__fail3(self): # failing: 2nd arg missing self.statusmsg = "%s: should fail." % sys._getframe().f_code.co_name xfl.fl_set_pixmap_file(self.pxmobj0)
def test_fl_set_pixmap_file__fail2(self): # failing: 1st and 2nd args of unfit type self.statusmsg = "%s: should fail." % sys._getframe().f_code.co_name xfl.fl_set_pixmap_file(102, self.pxmobj0)