<?xml version="1.0" encoding="UTF-8"?>
<!--
 Copyright 2010-2015, Google Inc.
 All rights reserved.

 Redistribution and use in source and binary forms, with or without
 modification, are permitted provided that the following conditions are
 met:

     * Redistributions of source code must retain the above copyright
 notice, this list of conditions and the following disclaimer.
     * Redistributions in binary form must reproduce the above
 copyright notice, this list of conditions and the following disclaimer
 in the documentation and/or other materials provided with the
 distribution.
     * Neither the name of Google Inc. nor the names of its
 contributors may be used to endorse or promote products derived from
 this software without specific prior written permission.

 THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
 "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
 LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
 A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT
 OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
 SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
 LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
 DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
 THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
 (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE
 OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
-->
<ui version="4.0">
 <class>PostInstallDialog</class>
 <widget class="QDialog" name="PostInstallDialog">
  <property name="geometry">
   <rect>
    <x>0</x>
    <y>0</y>
    <width>470</width>
    <height>180</height>
   </rect>
  </property>
  <property name="sizePolicy">
   <sizepolicy hsizetype="Fixed" vsizetype="Fixed">
    <horstretch>0</horstretch>
    <verstretch>0</verstretch>
   </sizepolicy>
  </property>
  <property name="minimumSize">
   <size>
    <width>470</width>
    <height>180</height>
   </size>
  </property>
  <property name="maximumSize">
   <size>
    <width>470</width>
    <height>180</height>
   </size>
  </property>
  <property name="windowTitle">
   <string>Mozc</string>
  </property>
  <layout class="QGridLayout" name="gridLayout_2">
   <item row="0" column="0">
    <layout class="QGridLayout" name="gridLayout">
     <property name="horizontalSpacing">
      <number>6</number>
     </property>
     <item row="2" column="0" colspan="4">
      <widget class="QLabel" name="thanksLabel">
       <property name="text">
        <string>Thanks for installing Mozc.</string>
       </property>
       <property name="wordWrap">
        <bool>true</bool>
       </property>
      </widget>
     </item>
     <item row="6" column="0">
      <spacer name="horizontalSpacer">
       <property name="orientation">
        <enum>Qt::Horizontal</enum>
       </property>
       <property name="sizeHint" stdset="0">
        <size>
         <width>40</width>
         <height>20</height>
        </size>
       </property>
      </spacer>
     </item>
     <item row="6" column="3">
      <widget class="QPushButton" name="okButton">
       <property name="text">
        <string>&amp;OK</string>
       </property>
      </widget>
     </item>
     <item row="6" column="2">
      <widget class="QPushButton" name="logoffLaterButton">
       <property name="text">
        <string>Log off &amp;Later</string>
       </property>
      </widget>
     </item>
     <item row="5" column="0" colspan="4">
      <widget class="QCheckBox" name="migrateDefaultIMEUserDictionaryCheckBox">
       <property name="text">
        <string>Migrate MSIME's user dictionary to Mozc</string>
       </property>
       <property name="checked">
        <bool>true</bool>
       </property>
      </widget>
     </item>
     <item row="3" column="0" colspan="4">
      <widget class="QCheckBox" name="setAsDefaultCheckBox">
       <property name="text">
        <string>Set Mozc as the default IME</string>
       </property>
       <property name="checked">
        <bool>true</bool>
       </property>
      </widget>
     </item>
     <item row="6" column="1">
      <widget class="QPushButton" name="logoffNowButton">
       <property name="text">
        <string>Log off &amp;Now</string>
       </property>
      </widget>
     </item>
     <item row="4" column="0" colspan="4">
      <widget class="QCheckBox" name="IMEHotKeyDisabledCheckBox">
       <property name="text">
        <string>Disable Keyboard layout hotkey (Ctrl+Shift)</string>
       </property>
       <property name="checked">
        <bool>true</bool>
       </property>
      </widget>
     </item>
    </layout>
   </item>
  </layout>
 </widget>
 <tabstops>
  <tabstop>setAsDefaultCheckBox</tabstop>
  <tabstop>IMEHotKeyDisabledCheckBox</tabstop>
  <tabstop>migrateDefaultIMEUserDictionaryCheckBox</tabstop>
  <tabstop>logoffNowButton</tabstop>
  <tabstop>logoffLaterButton</tabstop>
  <tabstop>okButton</tabstop>
 </tabstops>
 <resources/>
 <connections/>
</ui>
