17 #ifndef QGSNEWNAMEDIALOG_H 
   18 #define QGSNEWNAMEDIALOG_H 
   25 #include <QRegularExpression> 
   50     QgsNewNameDialog( 
const QString &source = QString(), 
const QString &initial = QString(),
 
   51                       const QStringList &extensions = QStringList(), 
const QStringList &existing = QStringList(),
 
   52                       Qt::CaseSensitivity cs = Qt::CaseSensitive,
 
   53                       QWidget *parent 
SIP_TRANSFERTHIS = 
nullptr, Qt::WindowFlags flags = QgsGuiUtils::ModalDialogFlags );
 
   62     void setHintString( 
const QString &hintString );
 
   70     QString hintString() 
const;
 
   79     void setOverwriteEnabled( 
bool enabled );
 
   94     void setAllowEmptyName( 
bool allowed );
 
  109     void setConflictingNameWarning( 
const QString &
string );
 
  123     void setRegularExpression( 
const QString &expression );
 
  130     QString name() 
const;
 
  140     static bool exists( 
const QString &name, 
const QStringList &extensions,
 
  141                         const QStringList &existing, Qt::CaseSensitivity cs = Qt::CaseSensitive );
 
  159     Qt::CaseSensitivity mCaseSensitivity = Qt::CaseSensitive;
 
  160     QLabel *mHintLabel = 
nullptr;
 
  161     QLineEdit *mLineEdit = 
nullptr;
 
  163     QLabel *mNamesLabel = 
nullptr;
 
  164     QLabel *mErrorLabel = 
nullptr;
 
  167     bool mOverwriteEnabled = 
true;
 
  168     bool mAllowEmptyName = 
false;
 
  171     QString highlightText( 
const QString &text );
 
  172     static QStringList fullNames( 
const QString &name, 
const QStringList &extensions );
 
  174     static QStringList matching( 
const QStringList &newNames, 
const QStringList &existingNames,
 
  175                                  Qt::CaseSensitivity cs = Qt::CaseSensitive );
 
A generic dialog with layout and button box.