Index: applications/editors/josm/plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/Preferences.form
===================================================================
--- applications/editors/josm/plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/Preferences.form	(revision 16861)
+++ applications/editors/josm/plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/Preferences.form	(revision 16862)
@@ -40,6 +40,7 @@
                           <EmptySpace max="-2" attributes="0"/>
                           <Component id="addNewTagValueField" min="-2" pref="125" max="-2" attributes="0"/>
-                          <EmptySpace pref="108" max="-2" attributes="0"/>
+                          <EmptySpace pref="121" max="-2" attributes="0"/>
                       </Group>
+                      <Component id="buildingCheckBox" alignment="0" pref="400" max="32767" attributes="0"/>
                   </Group>
                   <EmptySpace max="-2" attributes="0"/>
@@ -61,5 +62,7 @@
                       <Component id="addNewTagValueField" alignment="3" min="-2" max="-2" attributes="0"/>
                   </Group>
-                  <EmptySpace pref="183" max="32767" attributes="0"/>
+                  <EmptySpace type="unrelated" max="-2" attributes="0"/>
+                  <Component id="buildingCheckBox" min="-2" max="-2" attributes="0"/>
+                  <EmptySpace pref="155" max="32767" attributes="0"/>
               </Group>
           </Group>
@@ -69,5 +72,5 @@
         <Component class="javax.swing.JCheckBox" name="addNewTagCheckBox">
           <Properties>
-            <Property name="text" type="java.lang.String" value="P&#x159;id&#xe1;vat n&#xe1;sleduj&#xed;c&#xed; tag p&#x159;i vytv&#xe1;&#x159;en&#xed; adresn&#xed;ho bodu"/>
+            <Property name="text" type="java.lang.String" value="Nov&#xfd;m primitiv&#xe1;m p&#x159;id&#xe1;vat tag:"/>
           </Properties>
           <Events>
@@ -110,4 +113,13 @@
           </Properties>
         </Component>
+        <Component class="javax.swing.JCheckBox" name="buildingCheckBox">
+          <Properties>
+            <Property name="text" type="java.lang.String" value="Nov&#x11b; polygon&#x16f;m p&#x159;id&#xe1;vat tag &quot;building=yes&quot;"/>
+          </Properties>
+          <Events>
+            <EventHandler event="stateChanged" listener="javax.swing.event.ChangeListener" parameters="javax.swing.event.ChangeEvent" handler="buildingCheckBoxaddNewTagChanged"/>
+            <EventHandler event="actionPerformed" listener="java.awt.event.ActionListener" parameters="java.awt.event.ActionEvent" handler="buildingCheckBoxActionPerformed"/>
+          </Events>
+        </Component>
       </SubComponents>
     </Container>
Index: applications/editors/josm/plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/Preferences.java
===================================================================
--- applications/editors/josm/plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/Preferences.java	(revision 16861)
+++ applications/editors/josm/plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/Preferences.java	(revision 16862)
@@ -16,4 +16,8 @@
     private String KEY_OPTIMIZE = "czechaddress.opzimize";
 
+    public boolean addBuildingTag;
+
+    private String KEY_BUILDINGTAG = "czechaddress.buildingtag";
+
     public boolean addNewTag;
     public String addNewTagKey;
@@ -34,11 +38,14 @@
     private Preferences() {
         initComponents();
-        addNewTag = Main.pref.getBoolean(KEY_ADDNEWTAG, addNewTagCheckBox.isSelected());
-        addNewTagKey = Main.pref.get(KEY_ADDNEWTAGKEY, addNewTagKeyField.getText());
-        addNewTagValue = Main.pref.get(KEY_ADDNEWTAGVALUE, addNewTagValueField.getText());
-        optimize = Main.pref.getInteger(KEY_OPTIMIZE, optimizeComboBox.getSelectedIndex());
+        addBuildingTag = Main.pref.getBoolean(KEY_BUILDINGTAG,    buildingCheckBox.isSelected());
+        addNewTag      = Main.pref.getBoolean(KEY_ADDNEWTAG,      addNewTagCheckBox.isSelected());
+        addNewTagKey   = Main.pref.get(       KEY_ADDNEWTAGKEY,   addNewTagKeyField.getText());
+        addNewTagValue = Main.pref.get(       KEY_ADDNEWTAGVALUE, addNewTagValueField.getText());
+        optimize       = Main.pref.getInteger(KEY_OPTIMIZE,       optimizeComboBox.getSelectedIndex());
     }
 
     public void reloadSettings() {
+        buildingCheckBox.setSelected(addBuildingTag);
+                
         addNewTagCheckBox.setSelected(addNewTag);
         addNewTagKeyField.setText(addNewTagKey);
@@ -64,8 +71,9 @@
         jLabel2 = new javax.swing.JLabel();
         optimizeComboBox = new javax.swing.JComboBox();
+        buildingCheckBox = new javax.swing.JCheckBox();
 
         setLayout(new java.awt.GridLayout(1, 0));
 
-        addNewTagCheckBox.setText("Přidávat následující tag při vytváření adresního bodu");
+        addNewTagCheckBox.setText("Novým primitivám přidávat tag:");
         addNewTagCheckBox.addChangeListener(new javax.swing.event.ChangeListener() {
             public void stateChanged(javax.swing.event.ChangeEvent evt) {
@@ -92,4 +100,16 @@
         optimizeComboBox.setSelectedIndex(1);
         optimizeComboBox.setEnabled(false);
+
+        buildingCheckBox.setText("Nově polygonům přidávat tag \"building=yes\"");
+        buildingCheckBox.addChangeListener(new javax.swing.event.ChangeListener() {
+            public void stateChanged(javax.swing.event.ChangeEvent evt) {
+                buildingCheckBoxaddNewTagChanged(evt);
+            }
+        });
+        buildingCheckBox.addActionListener(new java.awt.event.ActionListener() {
+            public void actionPerformed(java.awt.event.ActionEvent evt) {
+                buildingCheckBoxActionPerformed(evt);
+            }
+        });
 
         javax.swing.GroupLayout mainPanelLayout = new javax.swing.GroupLayout(mainPanel);
@@ -111,5 +131,6 @@
                         .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                         .addComponent(addNewTagValueField, javax.swing.GroupLayout.PREFERRED_SIZE, 125, javax.swing.GroupLayout.PREFERRED_SIZE)
-                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 108, javax.swing.GroupLayout.PREFERRED_SIZE)))
+                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 121, javax.swing.GroupLayout.PREFERRED_SIZE))
+                    .addComponent(buildingCheckBox, javax.swing.GroupLayout.DEFAULT_SIZE, 400, Short.MAX_VALUE))
                 .addContainerGap())
         );
@@ -127,5 +148,7 @@
                     .addComponent(jLabel1)
                     .addComponent(addNewTagValueField, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
-                .addContainerGap(183, Short.MAX_VALUE))
+                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
+                .addComponent(buildingCheckBox)
+                .addContainerGap(155, Short.MAX_VALUE))
         );
 
@@ -139,6 +162,14 @@
 
     private void addNewTagCheckBoxActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_addNewTagCheckBoxActionPerformed
-        // TODO add your handling code here:
+
     }//GEN-LAST:event_addNewTagCheckBoxActionPerformed
+
+    private void buildingCheckBoxaddNewTagChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_buildingCheckBoxaddNewTagChanged
+
+    }//GEN-LAST:event_buildingCheckBoxaddNewTagChanged
+
+    private void buildingCheckBoxActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_buildingCheckBoxActionPerformed
+
+    }//GEN-LAST:event_buildingCheckBoxActionPerformed
 
     public void addGui(PreferenceDialog gui) {
@@ -151,4 +182,7 @@
 
     public boolean ok() {
+        addBuildingTag = buildingCheckBox.isSelected();
+        Main.pref.put(KEY_BUILDINGTAG, addBuildingTag);
+
         addNewTag = addNewTagCheckBox.isSelected();
         Main.pref.put(KEY_ADDNEWTAG, addNewTag);
@@ -171,4 +205,5 @@
     private javax.swing.JTextField addNewTagKeyField;
     private javax.swing.JTextField addNewTagValueField;
+    private javax.swing.JCheckBox buildingCheckBox;
     private javax.swing.JLabel jLabel1;
     private javax.swing.JLabel jLabel2;
Index: applications/editors/josm/plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/gui/PointManipulatorDialog.java
===================================================================
--- applications/editors/josm/plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/gui/PointManipulatorDialog.java	(revision 16861)
+++ applications/editors/josm/plugins/czechaddress/src/org/openstreetmap/josm/plugins/czechaddress/gui/PointManipulatorDialog.java	(revision 16862)
@@ -13,4 +13,5 @@
 import org.openstreetmap.josm.data.osm.Node;
 import org.openstreetmap.josm.data.osm.OsmPrimitive;
+import org.openstreetmap.josm.data.osm.Way;
 import org.openstreetmap.josm.gui.ExtendedDialog;
 import org.openstreetmap.josm.plugins.czechaddress.CzechAddressPlugin;
@@ -316,4 +317,9 @@
                                                p.addNewTagKey, p.addNewTagValue));
 
+        if (p.addBuildingTag && proposalContainer.getTarget() instanceof Way
+                && proposalContainer.getTarget().get("building") == null)
+            proposalContainer.addProposal(new AddKeyValueProposal("building", "yes"));
+
+
     }//GEN-LAST:event_matchChanged
 
