]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/qt/GuiExternal.cpp
Make string-widget combination more l7n friendly
[lyx.git] / src / frontends / qt / GuiExternal.cpp
index 3a4ab2c91ebf574ec18697447e59c4ecc13a9963..70239f19e22c03fe9080be60a7f405ea95b44a71 100644 (file)
@@ -187,6 +187,8 @@ GuiExternal::GuiExternal(GuiView & lv)
        bc().addReadOnly(extraFormatCO);
        bc().addReadOnly(extraED);
 
+       // Add validated widgets to those that will be
+       // visually marked if invalid
        bc().addCheckedLineEdit(angleED, angleLA);
        bc().addCheckedLineEdit(displayscaleED, scaleLA);
        bc().addCheckedLineEdit(heightED, heightLA);
@@ -197,6 +199,18 @@ GuiExternal::GuiExternal(GuiView & lv)
        bc().addCheckedLineEdit(ytED, rtLA);
        bc().addCheckedLineEdit(fileED, fileLA);
 
+       // We also mark the tabs the widgets are in
+       int const tabindex = tab->indexOf(sizetab);
+       bc().addCheckedLineEdit(angleED, tab, tabindex);
+       bc().addCheckedLineEdit(heightED, tab, tabindex);
+       bc().addCheckedLineEdit(widthED, tab, tabindex);
+       bc().addCheckedLineEdit(xlED, tab, tabindex);
+       bc().addCheckedLineEdit(ybED, tab, tabindex);
+       bc().addCheckedLineEdit(xrED, tab, tabindex);
+       bc().addCheckedLineEdit(ytED, tab, tabindex);
+       bc().addCheckedLineEdit(displayscaleED, tab, tab->indexOf(lyxviewtab));
+       bc().addCheckedLineEdit(fileED, tab, tab->indexOf(filetab));
+
        external::TemplateManager::Templates::const_iterator i1, i2;
        i1 = external::TemplateManager::get().getTemplates().begin();
        i2 = external::TemplateManager::get().getTemplates().end();
@@ -444,7 +458,7 @@ static void getSize(external::ResizeData & data,
                data.scale = widgetToDoubleStr(&widthED);
                data.width = Length();
        } else {
-               data.width = Length(widgetsToLength(&widthED, &widthUnitCO));
+               data.width = widgetsToLength(&widthED, &widthUnitCO);
                data.scale = string();
        }
        data.height = Length(widgetsToLength(&heightED, &heightUnitCO));
@@ -644,6 +658,7 @@ void GuiExternal::dispatchParams()
 {
        string const lfun = InsetExternal::params2string(params_, buffer());
        dispatch(FuncRequest(getLfun(), lfun));
+       connectToNewInset();
 }
 
 
@@ -680,9 +695,6 @@ QString GuiExternal::browse(QString const & input,
 }
 
 
-Dialog * createGuiExternal(GuiView & lv) { return new GuiExternal(lv); }
-
-
 } // namespace frontend
 } // namespace lyx