<?xml version="1.0" encoding="UTF-8"?>
<ui version="4.0">
 <comment>*********************************************************************
**
** Copyright (C) 2011 Nokia Corporation and/or its subsidiary(-ies).
** All rights reserved.
** Contact: Nokia Corporation (qt-info@nokia.com)
**
** This file is part of the Qt Linguist of the Qt Toolkit.
**
** $QT_BEGIN_LICENSE:LGPL$
** GNU Lesser General Public License Usage
** This file may be used under the terms of the GNU Lesser General Public
** License version 2.1 as published by the Free Software Foundation and
** appearing in the file LICENSE.LGPL included in the packaging of this
** file. Please review the following information to ensure the GNU Lesser
** General Public License version 2.1 requirements will be met:
** http://www.gnu.org/licenses/old-licenses/lgpl-2.1.html.
**
** In addition, as a special exception, Nokia gives you certain additional
** rights. These rights are described in the Nokia Qt LGPL Exception
** version 1.1, included in the file LGPL_EXCEPTION.txt in this package.
**
** GNU General Public License Usage
** Alternatively, this file may be used under the terms of the GNU General
** Public License version 3.0 as published by the Free Software Foundation
** and appearing in the file LICENSE.GPL included in the packaging of this
** file. Please review the following information to ensure the GNU General
** Public License version 3.0 requirements will be met:
** http://www.gnu.org/copyleft/gpl.html.
**
** Other Usage
** Alternatively, this file may be used in accordance with the terms and
** conditions contained in a signed written agreement between you and Nokia.
**
**
**
**
**
** $QT_END_LICENSE$
**
*********************************************************************</comment>
 <class>FindDialog</class>
 <widget class="QDialog" name="FindDialog">
  <property name="geometry">
   <rect>
    <x>0</x>
    <y>0</y>
    <width>414</width>
    <height>175</height>
   </rect>
  </property>
  <property name="sizePolicy">
   <sizepolicy hsizetype="Preferred" vsizetype="Maximum">
    <horstretch>0</horstretch>
    <verstretch>0</verstretch>
   </sizepolicy>
  </property>
  <property name="windowTitle">
   <string>Find</string>
  </property>
  <property name="whatsThis">
   <string>This window allows you to search for some text in the translation source file.</string>
  </property>
  <layout class="QHBoxLayout">
   <property name="spacing">
    <number>6</number>
   </property>
   <property name="margin">
    <number>11</number>
   </property>
   <item>
    <layout class="QVBoxLayout">
     <property name="spacing">
      <number>6</number>
     </property>
     <property name="margin">
      <number>0</number>
     </property>
     <item>
      <layout class="QHBoxLayout">
       <property name="spacing">
        <number>6</number>
       </property>
       <property name="margin">
        <number>0</number>
       </property>
       <item>
        <widget class="QLabel" name="findWhat">
         <property name="text">
          <string>&amp;Find what:</string>
         </property>
         <property name="buddy">
          <cstring>led</cstring>
         </property>
        </widget>
       </item>
       <item>
        <widget class="QLineEdit" name="led">
         <property name="whatsThis">
          <string>Type in the text to search for.</string>
         </property>
        </widget>
       </item>
      </layout>
     </item>
     <item>
      <widget class="QGroupBox" name="groupBox">
       <property name="title">
        <string>Options</string>
       </property>
       <layout class="QGridLayout">
        <property name="margin">
         <number>9</number>
        </property>
        <property name="spacing">
         <number>6</number>
        </property>
        <item row="1" column="0">
         <widget class="QCheckBox" name="sourceText">
          <property name="whatsThis">
           <string>Source texts are searched when checked.</string>
          </property>
          <property name="text">
           <string>&amp;Source texts</string>
          </property>
          <property name="checked">
           <bool>true</bool>
          </property>
         </widget>
        </item>
        <item row="2" column="0">
         <widget class="QCheckBox" name="translations">
          <property name="whatsThis">
           <string>Translations are searched when checked.</string>
          </property>
          <property name="text">
           <string>&amp;Translations</string>
          </property>
          <property name="checked">
           <bool>true</bool>
          </property>
         </widget>
        </item>
        <item row="0" column="1">
         <widget class="QCheckBox" name="matchCase">
          <property name="whatsThis">
           <string>Texts such as 'TeX' and 'tex' are considered as different when checked.</string>
          </property>
          <property name="text">
           <string>&amp;Match case</string>
          </property>
         </widget>
        </item>
        <item row="0" column="0">
         <widget class="QCheckBox" name="comments">
          <property name="whatsThis">
           <string>Comments and contexts are searched when checked.</string>
          </property>
          <property name="text">
           <string>&amp;Comments</string>
          </property>
          <property name="checked">
           <bool>true</bool>
          </property>
         </widget>
        </item>
        <item row="1" column="1">
         <widget class="QCheckBox" name="ignoreAccelerators">
          <property name="text">
           <string>Ignore &amp;accelerators</string>
          </property>
          <property name="checked">
           <bool>true</bool>
          </property>
         </widget>
        </item>
       </layout>
      </widget>
     </item>
    </layout>
   </item>
   <item>
    <layout class="QVBoxLayout">
     <property name="spacing">
      <number>6</number>
     </property>
     <property name="margin">
      <number>0</number>
     </property>
     <item>
      <widget class="QPushButton" name="findNxt">
       <property name="whatsThis">
        <string>Click here to find the next occurrence of the text you typed in.</string>
       </property>
       <property name="text">
        <string>Find Next</string>
       </property>
       <property name="default">
        <bool>true</bool>
       </property>
       <property name="flat">
        <bool>false</bool>
       </property>
      </widget>
     </item>
     <item>
      <widget class="QPushButton" name="cancel">
       <property name="whatsThis">
        <string>Click here to close this window.</string>
       </property>
       <property name="text">
        <string>Cancel</string>
       </property>
      </widget>
     </item>
     <item>
      <spacer>
       <property name="orientation">
        <enum>Qt::Vertical</enum>
       </property>
       <property name="sizeType">
        <enum>QSizePolicy::Expanding</enum>
       </property>
       <property name="sizeHint" stdset="0">
        <size>
         <width>20</width>
         <height>51</height>
        </size>
       </property>
      </spacer>
     </item>
    </layout>
   </item>
  </layout>
 </widget>
 <layoutdefault spacing="6" margin="11"/>
 <tabstops>
  <tabstop>led</tabstop>
  <tabstop>findNxt</tabstop>
  <tabstop>cancel</tabstop>
  <tabstop>comments</tabstop>
  <tabstop>sourceText</tabstop>
  <tabstop>translations</tabstop>
  <tabstop>matchCase</tabstop>
 </tabstops>
 <resources/>
 <connections>
  <connection>
   <sender>cancel</sender>
   <signal>clicked()</signal>
   <receiver>FindDialog</receiver>
   <slot>reject()</slot>
   <hints>
    <hint type="sourcelabel">
     <x>372</x>
     <y>58</y>
    </hint>
    <hint type="destinationlabel">
     <x>373</x>
     <y>109</y>
    </hint>
   </hints>
  </connection>
 </connections>
</ui>
