]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/xforms/xforms_helpers.C
Bugfixes: checkboxes to radiobuttons (from J�rgen S) and remove a little
[lyx.git] / src / frontends / xforms / xforms_helpers.C
index 42d927ce0c7e4c30d92073742806f62516b8dede..4525e091482db11009691a2be37e657b19b949f5 100644 (file)
@@ -20,6 +20,7 @@
 #include "gettext.h"
 #include "support/LAssert.h"
 #include "lyxlength.h"
+#include "lyxgluelength.h"
 
 using std::ofstream;
 using std::pair;
@@ -90,6 +91,17 @@ vector<string> const getVectorFromChoice(FL_OBJECT * ob)
 }
 
 
+/// Given an fl_input, return its contents.
+string const getStringFromInput(FL_OBJECT * ob)
+{
+       if (!ob || ob->objclass != FL_INPUT)
+               return string();
+
+       char const * tmp = fl_get_input(ob);
+       return (tmp) ? tmp : string();
+}
+
+
 // Given an fl_browser, return the contents of line
 string const getStringFromBrowser(FL_OBJECT * ob, int line)
 {
@@ -147,6 +159,10 @@ string getLengthFromWidgets(FL_OBJECT * input, FL_OBJECT * choice)
        if (length.empty())
                return string();
 
+       //don't return unit-from-choice if the input(field) contains a unit
+       if (isValidGlueLength(length))
+               return length;
+
        string unit = strip(frontStrip(fl_get_choice_text(choice)));
        unit = subst(unit, "%%", "%");