summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xbin/ui-rules-enforcer.py40
-rw-r--r--vcl/qa/cppunit/builder/demo.ui16
2 files changed, 56 insertions, 0 deletions
diff --git a/bin/ui-rules-enforcer.py b/bin/ui-rules-enforcer.py
index ef73541958c8..1a7c814eb52a 100755
--- a/bin/ui-rules-enforcer.py
+++ b/bin/ui-rules-enforcer.py
@@ -388,6 +388,44 @@ def enforce_active_in_group_consistency(current):
active.text = "True"
current.insert(insertpos, active)
+def enforce_entry_text_column_id_column_for_gtkcombobox(current):
+ entrytextcolumn = None
+ idcolumn = None
+ isgtkcombobox = current.get('class') == "GtkComboBox"
+ insertpos = 0
+ for child in current:
+ enforce_entry_text_column_id_column_for_gtkcombobox(child)
+ if not isgtkcombobox:
+ continue
+ if child.tag == "property":
+ insertpos = insertpos + 1;
+ attributes = child.attrib
+ if attributes.get("name") == "entry_text_column":
+ entrytextcolumn = child
+ if attributes.get("name") == "id_column":
+ idcolumn = child
+
+ if isgtkcombobox:
+ if entrytextcolumn != None and entrytextcolumn.text != "0":
+ raise Exception(sys.argv[1] + ': non-standard entry_text_column value', entrytextcolumn.text)
+ if idcolumn != None and idcolumn.text != "1":
+ raise Exception(sys.argv[1] + ': non-standard id_column value', idcolumn.text)
+ if entrytextcolumn == None:
+ # if there is no entry_text_column, create one
+ entrytextcolumn = etree.Element("property")
+ attributes = entrytextcolumn.attrib
+ attributes["name"] = "entry_text_column"
+ entrytextcolumn.text = "0"
+ current.insert(insertpos, entrytextcolumn)
+ insertpos = insertpos + 1;
+ if idcolumn == None:
+ # if there is no id_column, create one
+ idcolumn = etree.Element("property")
+ attributes = idcolumn.attrib
+ attributes["name"] = "id_column"
+ idcolumn.text = "1"
+ current.insert(insertpos, idcolumn)
+
with open(sys.argv[1], encoding="utf-8") as f:
header = f.readline()
f.seek(0)
@@ -417,9 +455,11 @@ remove_expander_label_fill(root)
remove_expander_spacing(root)
enforce_menubutton_indicator_consistency(root)
enforce_active_in_group_consistency(root)
+enforce_entry_text_column_id_column_for_gtkcombobox(root)
remove_double_buffered(root)
remove_skip_pager_hint(root)
+
with open(sys.argv[1], 'wb') as o:
# without encoding='unicode' (and the matching encode("utf8")) we get &#XXXX replacements for non-ascii characters
# which we don't want to see changed in the output
diff --git a/vcl/qa/cppunit/builder/demo.ui b/vcl/qa/cppunit/builder/demo.ui
index 5638a7dc4294..28d6fddb9e5a 100644
--- a/vcl/qa/cppunit/builder/demo.ui
+++ b/vcl/qa/cppunit/builder/demo.ui
@@ -199,6 +199,8 @@
<object class="GtkComboBox" id="combobox1">
<property name="visible">True</property>
<property name="can-focus">False</property>
+ <property name="entry_text_column">0</property>
+ <property name="id_column">1</property>
</object>
<packing>
<property name="expand">True</property>
@@ -733,6 +735,8 @@
<object class="GtkComboBox" id="LB_PAGE_PROPERTIES">
<property name="visible">True</property>
<property name="can-focus">False</property>
+ <property name="entry_text_column">0</property>
+ <property name="id_column">1</property>
</object>
<packing>
<property name="expand">True</property>
@@ -864,6 +868,8 @@
<property name="visible">True</property>
<property name="can-focus">False</property>
<property name="model">liststore1</property>
+ <property name="entry_text_column">0</property>
+ <property name="id_column">1</property>
</object>
<packing>
<property name="expand">False</property>
@@ -1299,6 +1305,8 @@
<object class="GtkComboBox" id="combobox2">
<property name="visible">True</property>
<property name="can-focus">False</property>
+ <property name="entry_text_column">0</property>
+ <property name="id_column">1</property>
</object>
<packing>
<property name="left-attach">0</property>
@@ -1362,6 +1370,8 @@
<object class="GtkComboBox" id="combobox3">
<property name="visible">True</property>
<property name="can-focus">False</property>
+ <property name="entry_text_column">0</property>
+ <property name="id_column">1</property>
</object>
<packing>
<property name="left-attach">1</property>
@@ -1372,6 +1382,8 @@
<object class="GtkComboBox" id="combobox4">
<property name="visible">True</property>
<property name="can-focus">False</property>
+ <property name="entry_text_column">0</property>
+ <property name="id_column">1</property>
</object>
<packing>
<property name="left-attach">1</property>
@@ -1628,6 +1640,8 @@
<object class="GtkComboBox" id="combobox5">
<property name="visible">True</property>
<property name="can-focus">False</property>
+ <property name="entry_text_column">0</property>
+ <property name="id_column">1</property>
</object>
<packing>
<property name="left-attach">1</property>
@@ -1684,6 +1698,8 @@
<object class="GtkComboBox" id="combobox6">
<property name="visible">True</property>
<property name="can-focus">False</property>
+ <property name="entry_text_column">0</property>
+ <property name="id_column">1</property>
</object>
<packing>
<property name="left-attach">1</property>