+2001-09-13 Jürgen Spitzmüller <j.spitzmueller@gmx.de>
+
+ * forms/form_graphics.fd: complete rewrite of the dialog
+ (Most work was done by Angus, though).
+
2001-09-12 Jean-Marc Lasgouttes <Jean-Marc.Lasgouttes@inria.fr>
* combox.C (hide): execute the callback _after_ closing the
- combox.
+ combox.
2001-09-12 Angus Leeming <a.leeming@ic.ac.uk>
using std::endl;
+static double const tol = 1.0e-08;
+
typedef FormCB<ControlGraphics, FormDB<FD_form_graphics> > base_class;
FormGraphics::FormGraphics(ControlGraphics & c)
- : base_class(c, _("Graphics")),
- // The buttons c-tor values are the number of buttons we use
- // This is only to reduce memory waste.
- widthButtons(5), heightButtons(4), displayButtons(4),
- last_image_path(".")
+ : base_class(c, _("Graphics"))
{}
// Set the input widgets to issue a callback to input() whenever
// they change, so we can verify their content.
- fl_set_input_return (dialog_->input_width,
- FL_RETURN_CHANGED);
- fl_set_input_return (dialog_->input_height,
- FL_RETURN_CHANGED);
- fl_set_input_return (dialog_->input_filename,
- FL_RETURN_CHANGED);
- fl_set_input_return (dialog_->input_rotate_angle,
- FL_RETURN_CHANGED);
- fl_set_input_return (dialog_->input_subcaption,
- FL_RETURN_CHANGED);
+ fl_set_input_return (dialog_->input_filename, FL_RETURN_CHANGED);
+ fl_set_input_return (dialog_->input_scale, FL_RETURN_CHANGED);
+ fl_set_input_return (dialog_->input_width, FL_RETURN_CHANGED);
+ fl_set_input_return (dialog_->input_height, FL_RETURN_CHANGED);
+ fl_set_input_return (dialog_->input_rotate_angle, FL_RETURN_CHANGED);
+ fl_set_input_return (dialog_->input_subcaption, FL_RETURN_CHANGED);
// Set the maximum characters that can be written in the input texts.
- fl_set_input_maxchars(dialog_->input_width, WIDTH_MAXDIGITS);
- fl_set_input_maxchars(dialog_->input_height, HEIGHT_MAXDIGITS);
- fl_set_input_maxchars(dialog_->input_filename, FILENAME_MAXCHARS);
+ fl_set_input_maxchars(dialog_->input_width, WIDTH_MAXDIGITS);
+ fl_set_input_maxchars(dialog_->input_height, HEIGHT_MAXDIGITS);
+ fl_set_input_maxchars(dialog_->input_filename, FILENAME_MAXCHARS);
fl_set_input_maxchars(dialog_->input_rotate_angle, ROTATE_MAXCHARS);
// Set input filter on width and height to make them accept only
// unsigned numbers.
- fl_set_input_filter(dialog_->input_width,
- fl_unsigned_int_filter);
- fl_set_input_filter(dialog_->input_height,
- fl_unsigned_int_filter);
+ fl_set_input_filter(dialog_->input_scale, fl_unsigned_float_filter);
+ fl_set_input_filter(dialog_->input_width, fl_unsigned_float_filter);
+ fl_set_input_filter(dialog_->input_height, fl_unsigned_float_filter);
// Set input filter on rotate_angle to make it accept only
// floating point numbers.
fl_set_input_filter(dialog_->input_rotate_angle, fl_float_filter);
- // Add the widgets of the width radio buttons to their group
- widthButtons.reset();
- widthButtons.registerRadioButton(dialog_->radio_width_default,
- InsetGraphicsParams::DEFAULT_SIZE);
- widthButtons.registerRadioButton(dialog_->radio_width_cm,
- InsetGraphicsParams::CM);
- widthButtons.registerRadioButton(dialog_->radio_width_inch,
- InsetGraphicsParams::INCH);
- widthButtons.registerRadioButton(dialog_->radio_width_percent_page,
- InsetGraphicsParams::PERCENT_PAGE);
- widthButtons.registerRadioButton(dialog_->radio_width_percent_column,
- InsetGraphicsParams::PERCENT_COLUMN);
-
- // Add the widgets of the height radio buttons to their group
- heightButtons.reset();
- heightButtons.registerRadioButton(dialog_->radio_height_default,
- InsetGraphicsParams::DEFAULT_SIZE);
- heightButtons.registerRadioButton(dialog_->radio_height_cm,
- InsetGraphicsParams::CM);
- heightButtons.registerRadioButton(dialog_->radio_height_inch,
- InsetGraphicsParams::INCH);
- heightButtons.registerRadioButton(dialog_->radio_height_percent_page,
- InsetGraphicsParams::PERCENT_PAGE);
- heightButtons.registerRadioButton(dialog_->radio_height_scale,
- InsetGraphicsParams::SCALE);
-
- // Add the widgets of the display radio buttons to their group
- displayButtons.reset();
- displayButtons.registerRadioButton(dialog_->radio_display_color,
- InsetGraphicsParams::COLOR);
- displayButtons.registerRadioButton(dialog_->radio_display_grayscale,
- InsetGraphicsParams::GRAYSCALE);
- displayButtons.registerRadioButton(dialog_->radio_display_monochrome,
- InsetGraphicsParams::MONOCHROME);
- displayButtons.registerRadioButton(dialog_->radio_no_display,
- InsetGraphicsParams::NONE);
+ // Create the contents of the choices
+ string const width = " cm | inch | page %% | column %% ";
+ fl_addto_choice(dialog_->choice_width_units, width.c_str());
+
+ string const height = " cm | inch | page %% ";
+ fl_addto_choice(dialog_->choice_height_units, height.c_str());
// Manage the ok, apply, restore and cancel/close buttons
bc().setOK(dialog_->button_ok);
bc().addReadOnly(dialog_->input_filename);
bc().addReadOnly(dialog_->button_browse);
+ bc().addReadOnly(dialog_->check_display);
+ bc().addReadOnly(dialog_->input_scale);
bc().addReadOnly(dialog_->input_width);
+ bc().addReadOnly(dialog_->choice_width_units);
bc().addReadOnly(dialog_->input_height);
- bc().addReadOnly(dialog_->radio_button_group_width);
- bc().addReadOnly(dialog_->radio_button_group_height);
- bc().addReadOnly(dialog_->radio_button_group_display);
+ bc().addReadOnly(dialog_->choice_height_units);
bc().addReadOnly(dialog_->input_rotate_angle);
bc().addReadOnly(dialog_->input_subcaption);
bc().addReadOnly(dialog_->check_subcaption);
igp.filename = fl_get_input(dialog_->input_filename);
- igp.display = static_cast < InsetGraphicsParams::DisplayType >
- (displayButtons.getButton());
-
- igp.widthResize = static_cast < InsetGraphicsParams::Resize >
- (widthButtons.getButton());
- igp.widthSize = strToDbl(fl_get_input(dialog_->input_width));
-
- igp.heightResize = static_cast < InsetGraphicsParams::Resize >
- (heightButtons.getButton());
- igp.heightSize = strToDbl(fl_get_input(dialog_->input_height));
+ if (fl_get_button(dialog_->check_display)) {
+ igp.display = InsetGraphicsParams::COLOR;
+ } else {
+ igp.display = InsetGraphicsParams::NONE;
+ }
+ double const scale = strToDbl(fl_get_input(dialog_->input_scale));
+ if (scale < tol) {
+ double const width =
+ strToDbl(fl_get_input(dialog_->input_width));
+
+ if (width < tol) {
+ igp.widthResize = InsetGraphicsParams::DEFAULT_SIZE;
+ igp.widthSize = 0.0;
+ } else {
+ switch (fl_get_choice(dialog_->choice_width_units)) {
+ case 2:
+ igp.widthResize = InsetGraphicsParams::INCH;
+ break;
+ case 3:
+ igp.widthResize =
+ InsetGraphicsParams::PERCENT_PAGE;
+ break;
+ case 4:
+ igp.widthResize =
+ InsetGraphicsParams::PERCENT_COLUMN;
+ break;
+ default:
+ igp.widthResize = InsetGraphicsParams::CM;
+ break;
+ }
+ igp.widthSize = width;
+ }
+
+ double const height =
+ strToDbl(fl_get_input(dialog_->input_height));
+
+ if (height < tol) {
+ igp.heightResize = InsetGraphicsParams::DEFAULT_SIZE;
+ igp.heightSize = 0.0;
+ } else {
+ switch (fl_get_choice(dialog_->choice_height_units)) {
+ case 2:
+ igp.heightResize = InsetGraphicsParams::INCH;
+ break;
+ case 3:
+ igp.heightResize =
+ InsetGraphicsParams::PERCENT_PAGE;
+ break;
+ default:
+ igp.heightResize = InsetGraphicsParams::CM;
+ break;
+ }
+ igp.heightSize = height;
+ }
+
+ } else {
+ igp.widthResize = InsetGraphicsParams::DEFAULT_SIZE;
+ igp.widthSize = 0.0;
+ igp.heightResize = InsetGraphicsParams::SCALE;
+ igp.heightSize = scale;
+ }
+
igp.rotateAngle = strToDbl(fl_get_input(dialog_->input_rotate_angle));
- /* // Need to redo it for floats, but I'm lazy now - BE 20010725
- if (igp.rotateAngle >= 360)
- igp.rotateAngle = igp.rotateAngle % 360;
- if (igp.rotateAngle <= -360)
- igp.rotateAngle = - (( -igp.rotateAngle) % 360);
- */
+ while (igp.rotateAngle < 0.0 || igp.rotateAngle > 360.0) {
+ if (igp.rotateAngle < 0.0) {
+ igp.rotateAngle += 360.0;
+ } else if (igp.rotateAngle > 360.0) {
+ igp.rotateAngle -= 360.0;
+ }
+ }
igp.subcaption = fl_get_button(dialog_->check_subcaption);
igp.subcaptionText = fl_get_input(dialog_->input_subcaption);
fl_set_input(dialog_->input_filename,
igp.filename.c_str());
- // Update the display depth radio buttons
- displayButtons.setButton(igp.display);
+ // To display or not to display
+ if (igp.display == InsetGraphicsParams::NONE) {
+ fl_set_button(dialog_->check_display, 0);
+ } else {
+ fl_set_button(dialog_->check_display, 1);
+ }
+
+ if (igp.heightResize == InsetGraphicsParams::SCALE) {
+ string number = tostr(igp.heightSize);
+ fl_set_input(dialog_->input_scale, number.c_str());
+ fl_set_input(dialog_->input_width, "");
+ fl_set_choice(dialog_->choice_width_units, 1);
+ fl_set_input(dialog_->input_height, "");
+ fl_set_choice(dialog_->choice_height_units, 1);
+
+ } else {
+ fl_set_input(dialog_->input_scale, "");
+
+ string number;
+ if (igp.widthResize != InsetGraphicsParams::DEFAULT_SIZE) {
+ number = tostr(igp.widthSize);
+ }
+ fl_set_input(dialog_->input_width, number.c_str());
+
+ int pos = 1;
+ switch (igp.widthResize) {
+ case InsetGraphicsParams::INCH:
+ pos = 2; break;
- // Update the width radio buttons and input field
- widthButtons.setButton(igp.widthResize);
- fl_set_input(dialog_->input_width,
- tostr(igp.widthSize).c_str());
+ case InsetGraphicsParams::PERCENT_PAGE:
+ pos = 3; break;
+
+ case InsetGraphicsParams::PERCENT_COLUMN:
+ pos = 4; break;
+
+ default:
+ break;
+ }
+ fl_set_choice(dialog_->choice_width_units, pos);
+
+ number.erase();
+ if (igp.heightResize != InsetGraphicsParams::DEFAULT_SIZE) {
+ number = tostr(igp.heightSize);
+ }
+ fl_set_input(dialog_->input_height, number.c_str());
- // Update the height radio buttons and input field
- heightButtons.setButton(igp.heightResize);
- fl_set_input(dialog_->input_height,
- tostr(igp.heightSize).c_str());
+ pos = 1;
+ switch (igp.heightResize) {
+ case InsetGraphicsParams::INCH:
+ pos = 2; break;
+ case InsetGraphicsParams::PERCENT_PAGE:
+ pos = 3; break;
+
+ default:
+ break;
+ }
+ fl_set_choice(dialog_->choice_width_units, pos);
+ }
+
// Update the rotate angle
fl_set_input(dialog_->input_rotate_angle,
tostr(igp.rotateAngle).c_str());
fl_set_button(dialog_->check_subcaption,
igp.subcaption);
fl_set_input(dialog_->input_subcaption,
- igp.subcaptionText.c_str());
+ igp.subcaptionText.c_str());
// Now make sure that the buttons are set correctly.
input(0, 0);
}
-ButtonPolicy::SMInput FormGraphics::input(FL_OBJECT *, long data)
+ButtonPolicy::SMInput FormGraphics::input(FL_OBJECT * ob, long)
{
- State cb = static_cast<State>( data );
-
- ButtonPolicy::SMInput activate = ButtonPolicy::SMI_NOOP;
-
- switch (cb) {
- case CHECKINPUT:
- activate = checkInput();
- break;
- case BROWSE:
- {
+ if (ob == dialog_->button_browse) {
// Get the filename from the dialog
string const in_name = fl_get_input(dialog_->input_filename);
string const out_name = controller().Browse(in_name);
if (out_name != in_name && !out_name.empty()) {
fl_set_input(dialog_->input_filename, out_name.c_str());
- activate = input(0, CHECKINPUT);
}
- break;
}
- case ADVANCEDINPUT:
- lyxerr << "Advanced Options button depressed, "
- << "show advanced options dialog"
- << endl;
- break;
- default:
- break;
+ if (ob == dialog_->input_scale) {
+ double const scale =
+ strToDbl(fl_get_input(dialog_->input_scale));
+ if (scale > tol) {
+ fl_set_input(dialog_->input_width, "");
+ fl_set_choice(dialog_->choice_width_units, 1);
+ fl_set_input(dialog_->input_height, "");
+ fl_set_choice(dialog_->choice_height_units, 1);
+ }
}
-
- return activate;
+
+ if (ob == dialog_->input_width || ob == dialog_->input_height) {
+ double const width =
+ strToDbl(fl_get_input(dialog_->input_width));
+ double const height =
+ strToDbl(fl_get_input(dialog_->input_height));
+
+ if (width > tol || height > tol) {
+ fl_set_input(dialog_->input_scale, "");
+ }
+ }
+
+ return checkInput();
}
ButtonPolicy::SMInput activate = ButtonPolicy::SMI_VALID;
- // Things that we check (meaning they are incorrect states):
- // 1. No filename specified.
- // 2. Width radio button is not Default and width text is not a number.
- // 3. Height radio button is not Default and height text is a not a number
-
- // Note: radio button default means that the user asks for the image
- // to be included as is with no size change, in this case we don't need
- // any width or height.
-
// We verify now that there is a filename, it exists, it's a file
// and it's readable.
string filename = fl_get_input(dialog_->input_filename);
|| !file.isRegular()
|| !file.readable()
)
- activate = ButtonPolicy::SMI_NOOP;
-
- // Width radio button not default and no number.
- if (!fl_get_button(dialog_->radio_width_default)
- && strToDbl(fl_get_input(dialog_->input_width)) <= 0.0) {
-
- activate = ButtonPolicy::SMI_NOOP;
- }
-
- // Height radio button not default and no number.
- if (!fl_get_button(dialog_->radio_height_default)
- && strToDbl(fl_get_input(dialog_->input_height)) <= 0.0) {
-
- activate = ButtonPolicy::SMI_NOOP;
- }
+ activate = ButtonPolicy::SMI_INVALID;
return activate;
}
/// Fdesign generated method
FD_form_graphics * build_graphics();
- /// The radio buttons groups
- RadioButtonGroup widthButtons;
- ///
- RadioButtonGroup heightButtons;
- ///
- RadioButtonGroup displayButtons;
- /// Last used figure path
- string last_image_path;
};
obj = fl_add_box(FL_UP_BOX, 0, 0, 490, 390, "");
fl_set_object_lsize(obj, FL_NORMAL_SIZE);
fl_set_object_gravity(obj, FL_NorthWest, FL_SouthEast);
- obj = fl_add_frame(FL_ENGRAVED_FRAME, 20, 310, 138, 30, "");
{
- char const * const dummy = N_("Graphics File|#F");
- fdui->input_filename = obj = fl_add_input(FL_NORMAL_INPUT, 150, 20, 210, 30, idex(_(dummy)));
+ char const * const dummy = N_("File|#F");
+ fdui->input_filename = obj = fl_add_input(FL_NORMAL_INPUT, 90, 20, 280, 30, idex(_(dummy)));
fl_set_button_shortcut(obj, scex(_(dummy)), 1);
}
fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
{
char const * const dummy = N_("Browse|#B");
- fdui->button_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 370, 20, 90, 30, idex(_(dummy)));
+ fdui->button_browse = obj = fl_add_button(FL_NORMAL_BUTTON, 380, 20, 90, 30, idex(_(dummy)));
fl_set_button_shortcut(obj, scex(_(dummy)), 1);
}
fl_set_object_callback(obj, C_FormBaseInputCB, BROWSE);
- obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 20, 70, 240, 160, _("Width"));
- fl_set_object_lalign(obj, FL_ALIGN_CENTER);
- obj = fl_add_text(FL_NORMAL_TEXT, 164, 60, 60, 20, _("Height"));
- fl_set_object_lalign(obj, FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
- fdui->input_width = obj = fl_add_input(FL_NORMAL_INPUT, 32, 190, 108, 30, "");
- fl_set_object_lsize(obj, FL_NORMAL_SIZE);
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fdui->input_height = obj = fl_add_input(FL_NORMAL_INPUT, 152, 190, 96, 30, "");
- fl_set_object_lsize(obj, FL_NORMAL_SIZE);
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 270, 70, 210, 160, _("Display"));
- fl_set_object_lalign(obj, FL_ALIGN_CENTER);
-
- fdui->radio_button_group_width = fl_bgn_group();
- // xgettext:no-c-format
- fdui->radio_width_percent_page = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 20, 140, 80, 30, _("% of Page"));
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fdui->radio_width_default = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 20, 80, 80, 30, _("Default"));
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fl_set_button(obj, 1);
- fdui->radio_width_cm = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 20, 100, 80, 30, _("cm"));
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fdui->radio_width_inch = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 20, 120, 80, 30, _("Inch"));
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- // xgettext:no-c-format
- fdui->radio_width_percent_column = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 20, 160, 96, 30, _("% of Column"));
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fl_end_group();
-
-
- fdui->radio_button_group_height = fl_bgn_group();
- // xgettext:no-c-format
- fdui->radio_height_percent_page = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 140, 140, 96, 30, _("% of Page"));
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fdui->radio_height_inch = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 140, 120, 96, 30, _("Inch"));
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fdui->radio_height_cm = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 140, 100, 80, 30, _("cm"));
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fdui->radio_height_default = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 140, 80, 96, 30, _("Default"));
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fl_set_button(obj, 1);
- fl_end_group();
-
-
- fdui->radio_button_group_display = fl_bgn_group();
+ obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 20, 70, 240, 140, _("Size"));
{
- char const * const dummy = N_("in Monochrome|#M");
- fdui->radio_display_monochrome = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 295, 80, 98, 30, idex(_(dummy)));
+ char const * const dummy = N_("Width|#W");
+ fdui->input_width = obj = fl_add_input(FL_NORMAL_INPUT, 90, 80, 85, 30, idex(_(dummy)));
fl_set_button_shortcut(obj, scex(_(dummy)), 1);
}
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fl_set_button(obj, 1);
+ fl_set_object_lsize(obj, FL_NORMAL_SIZE);
+ fl_set_object_callback(obj, C_FormBaseInputCB, 0);
+ fdui->choice_width_units = obj = fl_add_choice(FL_NORMAL_CHOICE, 180, 80, 65, 30, "");
+ fl_set_object_boxtype(obj, FL_BORDER_BOX);
+ fl_set_object_callback(obj, C_FormBaseInputCB, 0);
{
- char const * const dummy = N_("in Grayscale|#G");
- fdui->radio_display_grayscale = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 295, 110, 98, 30, idex(_(dummy)));
+ char const * const dummy = N_("Height|#H");
+ fdui->input_height = obj = fl_add_input(FL_NORMAL_INPUT, 90, 120, 85, 30, idex(_(dummy)));
fl_set_button_shortcut(obj, scex(_(dummy)), 1);
}
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
+ fl_set_object_lsize(obj, FL_NORMAL_SIZE);
+ fl_set_object_callback(obj, C_FormBaseInputCB, 0);
+ fdui->choice_height_units = obj = fl_add_choice(FL_NORMAL_CHOICE, 180, 120, 65, 30, "");
+ fl_set_object_boxtype(obj, FL_BORDER_BOX);
+ fl_set_object_callback(obj, C_FormBaseInputCB, 0);
{
- char const * const dummy = N_("in Color|#C");
- fdui->radio_display_color = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 295, 140, 98, 30, idex(_(dummy)));
+ char const * const dummy = N_("Scale|#S");
+ fdui->input_scale = obj = fl_add_input(FL_NORMAL_INPUT, 90, 170, 85, 30, idex(_(dummy)));
fl_set_button_shortcut(obj, scex(_(dummy)), 1);
}
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
+ fl_set_object_lsize(obj, FL_NORMAL_SIZE);
+ fl_set_object_callback(obj, C_FormBaseInputCB, 0);
+ // xgettext:no-c-format
+ obj = fl_add_text(FL_NORMAL_TEXT, 180, 170, 60, 30, _("%"));
+ fl_set_object_lalign(obj, FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
+ obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 270, 70, 200, 70, _("Rotation"));
{
- char const * const dummy = N_("Don't display|#D");
- fdui->radio_no_display = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 295, 170, 98, 30, idex(_(dummy)));
+ char const * const dummy = N_("Angle|#A");
+ fdui->input_rotate_angle = obj = fl_add_input(FL_INT_INPUT, 340, 90, 70, 30, idex(_(dummy)));
fl_set_button_shortcut(obj, scex(_(dummy)), 1);
}
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fl_end_group();
-
- obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 20, 250, 240, 50, _("Rotate"));
+ fl_set_object_callback(obj, C_FormBaseInputCB, 0);
+ obj = fl_add_text(FL_NORMAL_TEXT, 410, 90, 50, 30, _("degs"));
+ fl_set_object_lalign(obj, FL_ALIGN_LEFT|FL_ALIGN_INSIDE);
+ obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 270, 160, 200, 50, _("Display Options"));
{
- char const * const dummy = N_("Angle|#A");
- fdui->input_rotate_angle = obj = fl_add_input(FL_INT_INPUT, 91, 260, 94, 30, idex(_(dummy)));
+ char const * const dummy = N_("Display in LyX|#D");
+ fdui->check_display = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 400, 170, 30, 30, idex(_(dummy)));
fl_set_button_shortcut(obj, scex(_(dummy)), 1);
}
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
- fdui->input_subcaption = obj = fl_add_input(FL_NORMAL_INPUT, 158, 310, 322, 30, "");
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
+ fl_set_object_lalign(obj, FL_ALIGN_LEFT);
+ fl_set_object_callback(obj, C_FormBaseInputCB, 0);
+ obj = fl_add_labelframe(FL_ENGRAVED_FRAME, 20, 230, 450, 90, _("Subcaption"));
{
char const * const dummy = N_("Subcaption|#S");
- fdui->check_subcaption = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 120, 310, 30, 30, idex(_(dummy)));
+ fdui->check_subcaption = obj = fl_add_checkbutton(FL_PUSH_BUTTON, 110, 240, 30, 30, idex(_(dummy)));
fl_set_button_shortcut(obj, scex(_(dummy)), 1);
}
fl_set_object_lalign(obj, FL_ALIGN_LEFT);
fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
{
- char const * const dummy = N_("Update|#U");
+ char const * const dummy = N_("Title|#T");
+ fdui->input_subcaption = obj = fl_add_input(FL_NORMAL_INPUT, 110, 280, 350, 30, idex(_(dummy)));
+ fl_set_button_shortcut(obj, scex(_(dummy)), 1);
+ }
+ fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
+ {
+ char const * const dummy = N_("Restore|#R");
fdui->button_restore = obj = fl_add_button(FL_NORMAL_BUTTON, 20, 350, 90, 30, idex(_(dummy)));
fl_set_button_shortcut(obj, scex(_(dummy)), 1);
}
fl_set_object_gravity(obj, FL_SouthWest, FL_SouthWest);
fl_set_object_callback(obj, C_FormBaseRestoreCB, 0);
- fdui->button_ok = obj = fl_add_button(FL_RETURN_BUTTON, 190, 350, 90, 30, _("Ok"));
+ fdui->button_ok = obj = fl_add_button(FL_RETURN_BUTTON, 180, 350, 90, 30, _("Ok"));
fl_set_object_callback(obj, C_FormBaseOKCB, 0);
{
char const * const dummy = N_("Apply|#A");
- fdui->button_apply = obj = fl_add_button(FL_NORMAL_BUTTON, 290, 350, 90, 30, idex(_(dummy)));
+ fdui->button_apply = obj = fl_add_button(FL_NORMAL_BUTTON, 280, 350, 90, 30, idex(_(dummy)));
fl_set_button_shortcut(obj, scex(_(dummy)), 1);
}
fl_set_object_callback(obj, C_FormBaseApplyCB, 0);
{
char const * const dummy = N_("Cancel|^[");
- fdui->button_cancel = obj = fl_add_button(FL_NORMAL_BUTTON, 390, 350, 90, 30, idex(_(dummy)));
+ fdui->button_cancel = obj = fl_add_button(FL_NORMAL_BUTTON, 380, 350, 90, 30, idex(_(dummy)));
fl_set_button_shortcut(obj, scex(_(dummy)), 1);
}
fl_set_object_callback(obj, C_FormBaseCancelCB, 0);
- fdui->radio_height_scale = obj = fl_add_checkbutton(FL_RADIO_BUTTON, 140, 160, 96, 30, _("Scale"));
- fl_set_object_callback(obj, C_FormBaseInputCB, CHECKINPUT);
fl_end_form();
fdui->form->fdui = fdui;
FL_OBJECT *input_filename;
FL_OBJECT *button_browse;
FL_OBJECT *input_width;
+ FL_OBJECT *choice_width_units;
FL_OBJECT *input_height;
- FL_OBJECT *radio_button_group_width;
- FL_OBJECT *radio_width_percent_page;
- FL_OBJECT *radio_width_default;
- FL_OBJECT *radio_width_cm;
- FL_OBJECT *radio_width_inch;
- FL_OBJECT *radio_width_percent_column;
- FL_OBJECT *radio_button_group_height;
- FL_OBJECT *radio_height_percent_page;
- FL_OBJECT *radio_height_inch;
- FL_OBJECT *radio_height_cm;
- FL_OBJECT *radio_height_default;
- FL_OBJECT *radio_button_group_display;
- FL_OBJECT *radio_display_monochrome;
- FL_OBJECT *radio_display_grayscale;
- FL_OBJECT *radio_display_color;
- FL_OBJECT *radio_no_display;
+ FL_OBJECT *choice_height_units;
+ FL_OBJECT *input_scale;
FL_OBJECT *input_rotate_angle;
- FL_OBJECT *input_subcaption;
+ FL_OBJECT *check_display;
FL_OBJECT *check_subcaption;
+ FL_OBJECT *input_subcaption;
FL_OBJECT *button_restore;
FL_OBJECT *button_ok;
FL_OBJECT *button_apply;
FL_OBJECT *button_cancel;
- FL_OBJECT *radio_height_scale;
};
#endif /* FD_form_graphics_h_ */
Name: form_graphics
Width: 490
Height: 390
-Number of Objects: 37
+Number of Objects: 22
--------------------
class: FL_BOX
callback:
argument:
---------------------
-class: FL_FRAME
-type: ENGRAVED_FRAME
-box: 20 310 138 30
-boxtype: FL_NO_BOX
-colors: FL_BLACK FL_COL1
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label:
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name:
-callback:
-argument:
-
--------------------
class: FL_INPUT
type: NORMAL_INPUT
-box: 150 20 210 30
+box: 90 20 280 30
boxtype: FL_DOWN_BOX
colors: FL_COL1 FL_MCOL
alignment: FL_ALIGN_LEFT
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label: Graphics File|#F
+label: File|#F
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
--------------------
class: FL_BUTTON
type: NORMAL_BUTTON
-box: 370 20 90 30
+box: 380 20 90 30
boxtype: FL_UP_BOX
colors: FL_COL1 FL_COL1
alignment: FL_ALIGN_CENTER
--------------------
class: FL_LABELFRAME
type: ENGRAVED_FRAME
-box: 20 70 240 160
+box: 20 70 240 140
boxtype: FL_NO_BOX
colors: FL_BLACK FL_COL1
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: Width
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name:
-callback:
-argument:
-
---------------------
-class: FL_TEXT
-type: NORMAL_TEXT
-box: 164 60 60 20
-boxtype: FL_FLAT_BOX
-colors: FL_COL1 FL_MCOL
-alignment: FL_ALIGN_LEFT|FL_ALIGN_INSIDE
+alignment: FL_ALIGN_TOP_LEFT
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label: Height
+label: Size
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
--------------------
class: FL_INPUT
type: NORMAL_INPUT
-box: 32 190 108 30
+box: 90 80 85 30
boxtype: FL_DOWN_BOX
colors: FL_COL1 FL_MCOL
alignment: FL_ALIGN_LEFT
style: FL_NORMAL_STYLE
size: FL_NORMAL_SIZE
lcol: FL_BLACK
-label:
+label: Width|#W
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
name: input_width
callback: C_FormBaseInputCB
-argument: CHECKINPUT
+argument: 0
--------------------
-class: FL_INPUT
-type: NORMAL_INPUT
-box: 152 190 96 30
-boxtype: FL_DOWN_BOX
-colors: FL_COL1 FL_MCOL
+class: FL_CHOICE
+type: NORMAL_CHOICE
+box: 180 80 65 30
+boxtype: FL_BORDER_BOX
+colors: FL_COL1 FL_BLACK
alignment: FL_ALIGN_LEFT
style: FL_NORMAL_STYLE
-size: FL_NORMAL_SIZE
-lcol: FL_BLACK
-label:
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name: input_height
-callback: C_FormBaseInputCB
-argument: CHECKINPUT
-
---------------------
-class: FL_LABELFRAME
-type: ENGRAVED_FRAME
-box: 270 70 210 160
-boxtype: FL_NO_BOX
-colors: FL_BLACK FL_COL1
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: Display
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name:
-callback:
-argument:
-
---------------------
-class: FL_BEGIN_GROUP
-type: 0
-box: 0 10 10 0
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_MCOL
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
label:
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
-name: radio_button_group_width
-callback:
-argument:
-
---------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 20 140 80 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: % of Page
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name: radio_width_percent_page
+name: choice_width_units
callback: C_FormBaseInputCB
-argument: CHECKINPUT
-
---------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 20 80 80 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: Default
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name: radio_width_default
-callback: C_FormBaseInputCB
-argument: CHECKINPUT
- value: 1
+argument: 0
--------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 20 100 80 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
+class: FL_INPUT
+type: NORMAL_INPUT
+box: 90 120 85 30
+boxtype: FL_DOWN_BOX
+colors: FL_COL1 FL_MCOL
+alignment: FL_ALIGN_LEFT
style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
+size: FL_NORMAL_SIZE
lcol: FL_BLACK
-label: cm
+label: Height|#H
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
-name: radio_width_cm
+name: input_height
callback: C_FormBaseInputCB
-argument: CHECKINPUT
+argument: 0
--------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 20 120 80 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
+class: FL_CHOICE
+type: NORMAL_CHOICE
+box: 180 120 65 30
+boxtype: FL_BORDER_BOX
+colors: FL_COL1 FL_BLACK
+alignment: FL_ALIGN_LEFT
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label: Inch
+label:
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
-name: radio_width_inch
+name: choice_height_units
callback: C_FormBaseInputCB
-argument: CHECKINPUT
+argument: 0
--------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 20 160 96 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
+class: FL_INPUT
+type: NORMAL_INPUT
+box: 90 170 85 30
+boxtype: FL_DOWN_BOX
+colors: FL_COL1 FL_MCOL
+alignment: FL_ALIGN_LEFT
style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
+size: FL_NORMAL_SIZE
lcol: FL_BLACK
-label: % of Column
+label: Scale|#S
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
-name: radio_width_percent_column
+name: input_scale
callback: C_FormBaseInputCB
-argument: CHECKINPUT
+argument: 0
--------------------
-class: FL_END_GROUP
-type: 0
-box: 0 0 0 0
-boxtype: FL_NO_BOX
+class: FL_TEXT
+type: NORMAL_TEXT
+box: 180 170 60 30
+boxtype: FL_FLAT_BOX
colors: FL_COL1 FL_MCOL
-alignment: FL_ALIGN_CENTER
+alignment: FL_ALIGN_LEFT|FL_ALIGN_INSIDE
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label:
+label: %
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
argument:
--------------------
-class: FL_BEGIN_GROUP
-type: 0
-box: 0 10 10 0
+class: FL_LABELFRAME
+type: ENGRAVED_FRAME
+box: 270 70 200 70
boxtype: FL_NO_BOX
-colors: FL_COL1 FL_MCOL
-alignment: FL_ALIGN_CENTER
+colors: FL_BLACK FL_COL1
+alignment: FL_ALIGN_TOP_LEFT
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label:
+label: Rotation
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
-name: radio_button_group_height
+name:
callback:
argument:
--------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 140 140 96 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: % of Page
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name: radio_height_percent_page
-callback: C_FormBaseInputCB
-argument: CHECKINPUT
-
---------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 140 120 96 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: Inch
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name: radio_height_inch
-callback: C_FormBaseInputCB
-argument: CHECKINPUT
-
---------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 140 100 80 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: cm
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name: radio_height_cm
-callback: C_FormBaseInputCB
-argument: CHECKINPUT
-
---------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 140 80 96 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
+class: FL_INPUT
+type: INT_INPUT
+box: 340 90 70 30
+boxtype: FL_DOWN_BOX
+colors: FL_COL1 FL_MCOL
+alignment: FL_ALIGN_LEFT
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label: Default
+label: Angle|#A
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
-name: radio_height_default
+name: input_rotate_angle
callback: C_FormBaseInputCB
-argument: CHECKINPUT
- value: 1
+argument: 0
--------------------
-class: FL_END_GROUP
-type: 0
-box: 0 0 0 0
-boxtype: FL_NO_BOX
+class: FL_TEXT
+type: NORMAL_TEXT
+box: 410 90 50 30
+boxtype: FL_FLAT_BOX
colors: FL_COL1 FL_MCOL
-alignment: FL_ALIGN_CENTER
+alignment: FL_ALIGN_LEFT|FL_ALIGN_INSIDE
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label:
+label: degs
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
argument:
--------------------
-class: FL_BEGIN_GROUP
-type: 0
-box: 0 10 10 0
+class: FL_LABELFRAME
+type: ENGRAVED_FRAME
+box: 270 160 200 50
boxtype: FL_NO_BOX
-colors: FL_COL1 FL_MCOL
-alignment: FL_ALIGN_CENTER
+colors: FL_BLACK FL_COL1
+alignment: FL_ALIGN_TOP_LEFT
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label:
+label: Display Options
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
-name: radio_button_group_display
+name:
callback:
argument:
--------------------
class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 295 80 98 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: in Monochrome|#M
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name: radio_display_monochrome
-callback: C_FormBaseInputCB
-argument: CHECKINPUT
- value: 1
-
---------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 295 110 98 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: in Grayscale|#G
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name: radio_display_grayscale
-callback: C_FormBaseInputCB
-argument: CHECKINPUT
-
---------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 295 140 98 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: in Color|#C
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name: radio_display_color
-callback: C_FormBaseInputCB
-argument: CHECKINPUT
-
---------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 295 170 98 30
+type: PUSH_BUTTON
+box: 400 170 30 30
boxtype: FL_NO_BOX
colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
+alignment: FL_ALIGN_LEFT
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label: Don't display|#D
+label: Display in LyX|#D
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
-name: radio_no_display
+name: check_display
callback: C_FormBaseInputCB
-argument: CHECKINPUT
-
---------------------
-class: FL_END_GROUP
-type: 0
-box: 0 0 0 0
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_MCOL
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label:
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name:
-callback:
-argument:
+argument: 0
--------------------
class: FL_LABELFRAME
type: ENGRAVED_FRAME
-box: 20 250 240 50
+box: 20 230 450 90
boxtype: FL_NO_BOX
colors: FL_BLACK FL_COL1
alignment: FL_ALIGN_TOP_LEFT
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label: Rotate
+label: Subcaption
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
argument:
--------------------
-class: FL_INPUT
-type: INT_INPUT
-box: 91 260 94 30
-boxtype: FL_DOWN_BOX
-colors: FL_COL1 FL_MCOL
+class: FL_CHECKBUTTON
+type: PUSH_BUTTON
+box: 110 240 30 30
+boxtype: FL_NO_BOX
+colors: FL_COL1 FL_YELLOW
alignment: FL_ALIGN_LEFT
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label: Angle|#A
+label: Subcaption|#S
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
-name: input_rotate_angle
+name: check_subcaption
callback: C_FormBaseInputCB
argument: CHECKINPUT
--------------------
class: FL_INPUT
type: NORMAL_INPUT
-box: 158 310 322 30
+box: 110 280 350 30
boxtype: FL_DOWN_BOX
colors: FL_COL1 FL_MCOL
alignment: FL_ALIGN_LEFT
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label:
+label: Title|#T
shortcut:
resize: FL_RESIZE_ALL
gravity: FL_NoGravity FL_NoGravity
callback: C_FormBaseInputCB
argument: CHECKINPUT
---------------------
-class: FL_CHECKBUTTON
-type: PUSH_BUTTON
-box: 120 310 30 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_LEFT
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: Subcaption|#S
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name: check_subcaption
-callback: C_FormBaseInputCB
-argument: CHECKINPUT
-
--------------------
class: FL_BUTTON
type: NORMAL_BUTTON
style: FL_NORMAL_STYLE
size: FL_DEFAULT_SIZE
lcol: FL_BLACK
-label: Update|#U
+label: Restore|#R
shortcut:
resize: FL_RESIZE_NONE
gravity: FL_SouthWest FL_SouthWest
--------------------
class: FL_BUTTON
type: RETURN_BUTTON
-box: 190 350 90 30
+box: 180 350 90 30
boxtype: FL_UP_BOX
colors: FL_COL1 FL_COL1
alignment: FL_ALIGN_CENTER
--------------------
class: FL_BUTTON
type: NORMAL_BUTTON
-box: 290 350 90 30
+box: 280 350 90 30
boxtype: FL_UP_BOX
colors: FL_COL1 FL_COL1
alignment: FL_ALIGN_CENTER
--------------------
class: FL_BUTTON
type: NORMAL_BUTTON
-box: 390 350 90 30
+box: 380 350 90 30
boxtype: FL_UP_BOX
colors: FL_COL1 FL_COL1
alignment: FL_ALIGN_CENTER
callback: C_FormBaseCancelCB
argument: 0
---------------------
-class: FL_CHECKBUTTON
-type: RADIO_BUTTON
-box: 140 160 96 30
-boxtype: FL_NO_BOX
-colors: FL_COL1 FL_YELLOW
-alignment: FL_ALIGN_CENTER
-style: FL_NORMAL_STYLE
-size: FL_DEFAULT_SIZE
-lcol: FL_BLACK
-label: Scale
-shortcut:
-resize: FL_RESIZE_ALL
-gravity: FL_NoGravity FL_NoGravity
-name: radio_height_scale
-callback: C_FormBaseInputCB
-argument: CHECKINPUT
-
==============================
create_the_forms