function _tr(str){ return str;} class Fl_Data_Table extends Flv_Table { _forPrint = null; constructor(px, py, pw, ph, pl=""){ base.constructor(px, py, pw, ph, pl); _forPrint=false; } } class Fl_Box_ClearLabel extends Fl_Box { constructor(px, py, pw, ph, pl=""){ base.constructor(px, py, pw, ph, pl); } } class Flu_Combo_List extends Fl_Box { constructor(px, py, pw, ph, pl=""){ base.constructor(px, py, pw, ph, pl); } } class Fl_Image_Box extends Fl_Box { constructor(px, py, pw, ph, pl=""){ base.constructor(px, py, pw, ph, pl); } } class Fl_Choice_Int extends Fl_Button { constructor(px, py, pw, ph, pl=""){ base.constructor(px, py, pw, ph, pl); } } class Fl_Float_Input_Fmt extends Fl_Float_Input { constructor(px, py, pw, ph, pl=""){ base.constructor(px, py, pw, ph, pl); } } class My_Fl_Float_Input extends Fl_Float_Input { constructor(px, py, pw, ph, pl=""){ base.constructor(px, py, pw, ph, pl); } } class My_Fl_Return_Button extends Fl_Button { constructor(px, py, pw, ph, pl=""){ base.constructor(px, py, pw, ph, pl); } } class Fl_Choice_Str extends Fl_Button { constructor(px, py, pw, ph, pl=""){ base.constructor(px, py, pw, ph, pl); } } class Flu_Combo_Box extends Fl_Button { constructor(px, py, pw, ph, pl=""){ base.constructor(px, py, pw, ph, pl); } } function add_input_field_to_map(tbl, fldname, fld){ } //class BaseReportA4 extends Fl_Group { class BaseReportA4 extends Fl_Window { topGroup=null; group_filter=null; query_limit=null; btnNotes=null; middleGroup=null; grid=null; bottomGroup=null; pack_search_options=null; search_str=null; btnSearch=null; btnSelect=null; btnUpdate=null; btnInsert=null; btnThumbImage=null; pack_search_options2=null; constructor() { base.constructor(10, 50, 800, 560, _tr("Edit Order")); begin(); this->box(FL_FLAT_BOX); this->color(FL_BACKGROUND_COLOR); this->selection_color(FL_BACKGROUND_COLOR); this->labeltype(FL_NO_LABEL); this->labelfont(0); this->labelsize(16); this->labelcolor(FL_FOREGROUND_COLOR); this->align((FL_ALIGN_TOP)); this->when(FL_WHEN_RELEASE); { topGroup = new Fl_Group(0, 0, 800, 35); topGroup->labelsize(16); { group_filter = new Flu_Combo_Box(5, 5, 675, 25); group_filter->resize(5, 5, 675, 25); group_filter->box(FL_DOWN_BOX); group_filter->color(FL_BACKGROUND2_COLOR); group_filter->selection_color(FL_SELECTION_COLOR); group_filter->labeltype(FL_NO_LABEL); group_filter->labelfont(0); group_filter->labelsize(16); group_filter->labelcolor(FL_FOREGROUND_COLOR); group_filter->textsize(16); group_filter->align((FL_ALIGN_LEFT)); group_filter->when(FL_WHEN_RELEASE); } // Flu_Combo_Box* group_filter { local o = query_limit = new Fl_Int_Input(690, 6, 60, 25); query_limit->type(2); query_limit->labeltype(FL_NO_LABEL); query_limit->labelsize(16); query_limit->textsize(16); o->value("50"); } // Fl_Int_Input* query_limit { btnNotes = new Fl_Button(760, 6, 35, 25, _tr("?")); btnNotes->labelsize(16); } // Fl_Button* btnNotes topGroup->end(); } // Fl_Group* topGroup { middleGroup = new Fl_Group(0, 41, 800, 409); middleGroup->labelsize(16); { grid = new Fl_Data_Table(5, 41, 790, 389); grid->resize(5, 41, 790, 389); grid->type(3); grid->box(FL_NO_BOX); grid->color(FL_BACKGROUND2_COLOR); grid->selection_color(FL_SELECTION_COLOR); grid->labeltype(FL_NO_LABEL); grid->labelfont(0); grid->labelsize(16); grid->labelcolor(FL_FOREGROUND_COLOR); grid->textsize(16); grid->align((FL_ALIGN_BOTTOM)); grid->when(FL_WHEN_RELEASE_ALWAYS); Fl_Group.current()->resizable(grid); } // Fl_Data_Table* grid middleGroup->end(); Fl_Group.current()->resizable(middleGroup); } // Fl_Group* middleGroup { bottomGroup = new Fl_Group(4, 440, 790, 115); bottomGroup->box(FL_ENGRAVED_BOX); bottomGroup->color(246); bottomGroup->labelsize(16); { local o = pack_search_options = new Fl_Pack(14, 450, 320, 25); pack_search_options->type(1); pack_search_options->labelsize(16); o->spacing(10); pack_search_options->end(); } // Fl_Pack* pack_search_options { search_str = new Fl_Input(35, 485, 299, 25, _tr("@search")); search_str->resize(35, 485, 299, 25); search_str->label(_tr("@search")); search_str->labelsize(16); search_str->textsize(16); search_str->callback(cb_search_str); search_str->when(FL_WHEN_ENTER_KEY); } // Fl_Input* search_str { btnSearch = new Fl_Button(345, 485, 100, 25, _tr("Search")); btnSearch->labelsize(16); btnSearch->callback(cb_btnSearch); } // Fl_Button* btnSearch { btnSelect = new Fl_Button(14, 520, 100, 25, _tr("Select")); btnSelect->labelsize(16); btnSelect->callback(cb_btnSelect); } // Fl_Button* btnSelect { btnUpdate = new Fl_Button(124, 520, 100, 25, _tr("Update")); btnUpdate->labelsize(16); btnUpdate->callback(cb_btnUpdate); } // Fl_Button* btnUpdate { btnInsert = new Fl_Button(234, 520, 100, 25, _tr("Insert")); btnInsert->labelsize(16); btnInsert->callback(cb_btnInsert); } // Fl_Button* btnInsert { btnThumbImage = new Fl_Image_Box(663, 445, 125, 105); btnThumbImage->box(FL_NO_BOX); btnThumbImage->color(FL_BACKGROUND_COLOR); btnThumbImage->selection_color(FL_BACKGROUND_COLOR); btnThumbImage->labeltype(FL_NORMAL_LABEL); btnThumbImage->labelfont(0); btnThumbImage->labelsize(14); btnThumbImage->labelcolor(FL_FOREGROUND_COLOR); btnThumbImage->align((FL_ALIGN_CLIP|FL_ALIGN_INSIDE)); btnThumbImage->when(FL_WHEN_RELEASE); } // Fl_Image_Box* btnThumbImage { local o = new Fl_Box(650, 445, 5, 105); o->labeltype(FL_NO_LABEL); o->labelsize(16); o->align((FL_ALIGN_CLIP|FL_ALIGN_INSIDE)); Fl_Group.current()->resizable(o); } // Fl_Box* o { local o = pack_search_options2 = new Fl_Pack(345, 520, 300, 25); pack_search_options2->type(1); pack_search_options2->labelsize(16); o->spacing(10); pack_search_options2->end(); } // Fl_Pack* pack_search_options2 bottomGroup->end(); } // Fl_Group* bottomGroup group_filter->textfont(group_filter->labelfont()); group_filter->textsize(group_filter->labelsize()); end(); } function cb_search_str(){} function cb_btnSearch(){} function cb_btnSelect(){} function cb_btnUpdate(){} function cb_btnInsert(){} } //local win = new MainWindow(10, 50, 330, 320, "OURBIZ"); local win = new BaseReportA4(); win->resizable(win); win->show_main(); math.number_format_set_dec_point(","); math.number_format_set_thousand_sep("."); Fl_Input.default_number_format("\0x02,."); //Fl:scheme("plastic"); Fl.scheme("gtk+"); //use partial match to find verdana font Fl.visual(FL_RGB); //allow arrow keys navigation Fl.option(Fl.OPTION_ARROW_FOCUS, true); Fl.run();