module custom version = 'v1.0' names = case_sensitive procedure auto_shadow_changed(integer); create_cb(integer); list_select(); button_cb (); cmix_ok(integer); cmix_cancel(); save_palette_as(); add_or_modify_palette_cb(integer); delete_palette(); help_cb(); exit_cb(); exit_ok_cb(); exit_no_save_cb(); exit_cancel_cb(); object main : XmMainWindow { arguments { XmNmenuBar = XmMenuBar menu_bar; XmNworkWindow = XmForm main_form; }; controls { XmMenuBar menu_bar; XmForm main_form; }; }; object menu_bar : XmMenuBar { arguments { XmNmenuHelpWidget = XmCascadeButtonGadget help_cascade; }; controls { XmCascadeButtonGadget file_cascade; XmCascadeButtonGadget options_cascade; XmCascadeButtonGadget help_cascade; }; }; object file_cascade : XmCascadeButtonGadget { arguments { XmNlabelString = compound_string('File'); }; controls { XmPulldownMenu file_menu; }; }; object options_cascade : XmCascadeButtonGadget { arguments { XmNlabelString = compound_string('Options'); }; controls { XmPulldownMenu options_menu; }; }; object help_cascade : XmCascadeButtonGadget { arguments { XmNlabelString = compound_string('Help'); }; controls { XmPulldownMenu help_menu; }; }; object file_menu : XmPulldownMenu { arguments { XmNtearOffModel = XmTEAR_OFF_ENABLED; }; controls { XmPushButtonGadget save_pb; XmPushButtonGadget save_as_pb; XmPushButtonGadget delete_pb; XmPushButtonGadget exit_pb; }; }; object options_menu : XmPulldownMenu { arguments { }; controls { XmToggleButtonGadget shadow_toggle; }; }; object help_menu : XmPulldownMenu { arguments { }; controls { XmPushButtonGadget help_pb; }; }; object main_form : XmForm { arguments { XmNresizePolicy = XmRESIZE_GROW; XmNhorizontalSpacing = 3; XmNverticalSpacing = 3; }; controls { XmScrolledList palette_list; XmFrame picture_frame; XmFrame color_button_menu_frame; XmLabel shadow_label; XmFrame shadow_button_menu_frame; }; }; object palette_list : XmScrolledList { arguments { XmNwidth = 193; XmNheight = 149; XmNscrollBarDisplayPolicy = XmSTATIC; XmNleftAttachment = XmATTACH_FORM; XmNrightAttachment = XmATTACH_FORM; XmNrightOffset = 170; XmNbottomAttachment = XmATTACH_NONE; XmNtopAttachment = XmATTACH_FORM; }; callbacks { XmNbrowseSelectionCallback = procedures { list_select();}; MrmNcreateCallback = procedures { create_cb(1);}; }; }; object picture_frame : XmFrame { arguments { XmNshadowThickness = 2; XmNshadowType = XmSHADOW_IN; XmNtopAttachment = XmATTACH_FORM; XmNleftAttachment = XmATTACH_WIDGET; XmNleftWidget = XmScrolledList palette_list; XmNbottomAttachment = XmATTACH_NONE; XmNrightAttachment = XmATTACH_NONE; }; controls { XmBulletinBoard picture; }; callbacks { MrmNcreateCallback = procedures { create_cb(6);}; }; }; object picture : XmBulletinBoard { arguments { XmNwidth = 160; XmNheight = 145; XmNmarginWidth = 0; XmNmarginHeight = 0; }; callbacks { MrmNcreateCallback = procedures { create_cb(5);}; }; }; object color_button_menu_frame : XmFrame { arguments { XmNshadowThickness = 2; XmNshadowType = XmSHADOW_IN; XmNleftAttachment = XmATTACH_FORM; XmNrightAttachment = XmATTACH_OPPOSITE_WIDGET; XmNrightWidget = XmFrame picture_frame; XmNrightOffset = 0; XmNtopAttachment = XmATTACH_WIDGET; XmNtopWidget = XmFrame picture_frame; XmNbottomAttachment = XmATTACH_WIDGET; XmNbottomWidget = shadow_label; }; controls { XmRowColumn color_button_menu; }; }; object color_button_menu : XmRowColumn { arguments { XmNresizeWidth = false; XmNadjustLast = false; XmNpacking = XmPACK_TIGHT; XmNorientation = XmHORIZONTAL; XmNspacing = 4; XmNwidth = 356; }; callbacks { MrmNcreateCallback = procedures { create_cb(2);}; }; }; object shadow_label : XmLabel { arguments { XmNlabelString = compound_string('Shadows'); XmNleftAttachment = XmATTACH_FORM; XmNbottomAttachment = XmATTACH_WIDGET; XmNbottomWidget = shadow_button_menu_frame; }; }; object shadow_button_menu_frame : XmFrame { arguments { XmNshadowThickness = 2; XmNshadowType = XmSHADOW_IN; XmNleftAttachment = XmATTACH_FORM; XmNrightAttachment = XmATTACH_OPPOSITE_WIDGET; XmNrightWidget = picture_frame; XmNrightOffset = 0; XmNbottomAttachment = XmATTACH_WIDGET; XmNbottomWidget = shadow_toggle; }; controls { XmRowColumn shadow_button_menu; }; }; object shadow_button_menu : XmRowColumn { arguments { XmNpacking = XmPACK_COLUMN; XmNorientation = XmVERTICAL; XmNspacing = 4; XmNwidth = 500; }; callbacks { MrmNcreateCallback = procedures { create_cb(3);}; }; }; object shadow_toggle : XmToggleButtonGadget { arguments { XmNlabelString = compound_string ('Automatic shadowing'); }; callbacks { MrmNcreateCallback = procedures { create_cb(7);}; XmNvalueChangedCallback = procedures { auto_shadow_changed(0);}; }; }; object save_as_pb : XmPushButtonGadget { arguments { XmNlabelString = compound_string('Save palette as...'); }; callbacks { XmNactivateCallback = procedures { save_palette_as();}; }; }; object delete_pb : XmPushButtonGadget { arguments { XmNlabelString = compound_string('Delete palette'); }; callbacks { XmNactivateCallback = procedures { delete_palette();}; }; }; object save_pb : XmPushButtonGadget { arguments { XmNlabelString = compound_string('Save palette'); }; callbacks { XmNactivateCallback = procedures { add_or_modify_palette_cb(0);}; }; }; object exit_pb : XmPushButtonGadget { arguments { XmNlabelString = compound_string('Exit'); }; callbacks { XmNactivateCallback = procedures { exit_cb();}; }; }; object help_pb : XmPushButtonGadget { arguments { XmNlabelString = compound_string('Overview'); }; callbacks { XmNactivateCallback = procedures { help_cb();}; }; }; object colormix : DXmColorMixDialog { arguments { }; callbacks { XmNokCallback = procedures { cmix_ok (0);}; XmNapplyCallback = procedures { cmix_ok (1);}; XmNcancelCallback = procedures { cmix_cancel ();}; }; }; object exit_popup : XmQuestionDialog { arguments { XmNdialogTitle = compound_string ('Exit'); XmNhelpLabelString = compound_string ('Cancel'); XmNmessageString = compound_string('Are you sure?',separate=true) & '(Color cells will be freed)'; XmNmessageAlignment = XmALIGNMENT_CENTER; }; callbacks { XmNokCallback = procedures { exit_ok_cb ();}; XmNcancelCallback = procedures { exit_no_save_cb ();}; XmNhelpCallback = procedures { exit_cancel_cb ();}; }; }; object text_popup : XmBulletinBoardDialog { arguments { XmNdefaultButton = XmPushButtonGadget text_ok_button; XmNdialogTitle = compound_string ('New palette name'); }; controls { DXmCSText text_widget; XmPushButtonGadget text_ok_button; XmPushButtonGadget text_cancel_button; }; callbacks { }; }; object text_widget : DXmCSText { arguments { XmNwidth = 150; }; callbacks { MrmNcreateCallback = procedures { create_cb(4);}; }; }; object text_ok_button : XmPushButtonGadget { arguments { XmNx = 38; XmNy = 50; XmNlabelString = compound_string('OK'); }; callbacks { XmNactivateCallback = procedures { add_or_modify_palette_cb(1);}; }; }; object text_cancel_button : XmPushButtonGadget { arguments { XmNx = 80; XmNy = 50; XmNlabelString = compound_string('Cancel'); }; }; object help_dialog : DXmHelpDialog { arguments { DXmNapplicationName = compound_string("color customizer"); DXmNoverviewTopic = compound_string("Overview"); DXmNfirstTopic = compound_string("Overview"); DXmNcols = 80; }; }; end module;