From 722d9a0a7042c67afc5ed793ddc5e8f08daa4d50 Mon Sep 17 00:00:00 2001 From: tachometer Date: Wed, 12 Jun 2013 19:13:43 +0200 Subject: [PATCH 1/2] * Ported to Qt5. --- QodeEdit.pro | 2 +- example.pro | 4 +++- example/UIMain.cpp | 6 ++++-- example/UIMain.h | 7 ++++--- example/main.cpp | 2 +- src/Manager.cpp | 2 +- src/Threading.cpp | 2 +- src/Tools.cpp | 2 +- src/Tools.h | 2 ++ 9 files changed, 18 insertions(+), 11 deletions(-) diff --git a/QodeEdit.pro b/QodeEdit.pro index 2ab2a04..2d6ae6b 100644 --- a/QodeEdit.pro +++ b/QodeEdit.pro @@ -17,7 +17,7 @@ include( config.pri ) initializeProject( lib, $${BUILD_TARGET}, $${BUILD_MODE}, $${BUILD_PATH}/$${TARGET_NAME}, $${BUILD_TARGET_PATH}, $${BUILD_TYPE}, $${BUILD_VERSION} ) autoGenerateFile( "QodeEditConfig.h.in", "src/QodeEditConfig.h" ) -QT *= xml +QT *= core gui widgets xml INCLUDEPATH *= src DEPENDPATH *= $$getFolders( . ) diff --git a/example.pro b/example.pro index 31aecd9..dc90951 100644 --- a/example.pro +++ b/example.pro @@ -13,6 +13,8 @@ ## WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ## ########################################################################################### +QT *= core gui widgets xml + win32|macx { OXYGEN_THEME_PATH = $$PWD/../oxygen-icons-png.git @@ -36,5 +38,5 @@ FORMS *= \ HEADERS *= \ example/UIMain.h -SOURCES *= main.cpp \ +SOURCES *= example/main.cpp \ example/UIMain.cpp diff --git a/example/UIMain.cpp b/example/UIMain.cpp index 4ec4541..a14b9ab 100644 --- a/example/UIMain.cpp +++ b/example/UIMain.cpp @@ -13,6 +13,8 @@ ** WARRANTY OF DESIGN, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. ** ****************************************************************************/ +#include +#include #include "UIMain.h" #include "ui_UIMain.h" #include "editor/CodeEditor.h" @@ -103,7 +105,7 @@ UIMain::UIMain( QWidget* parent ) ui->toolBar->addWidget( new SpacerWidget( this ) ); ui->toolBar->addWidget( ui->cbSyntax ); - qInstallMsgHandler( UIMain::messageHandler ); + qInstallMessageHandler( UIMain::messageHandler ); connect( mManager, SIGNAL( updated() ), this, SLOT( manager_updated() ) ); mManager->initialize(); @@ -126,7 +128,7 @@ UIMain::~UIMain() delete ui; } -void UIMain::messageHandler( QtMsgType type, const char* msg ) +void UIMain::messageHandler( QtMsgType type,const QMessageLogContext &context,const QString &msg ) { QMutexLocker locker( &qMutex ); QString string; diff --git a/example/UIMain.h b/example/UIMain.h index a2c84f5..bf78e00 100644 --- a/example/UIMain.h +++ b/example/UIMain.h @@ -17,8 +17,9 @@ #define UIMAIN_H #include - -#include "CodeEditor.h" +#include +#include +#include "editor/CodeEditor.h" class Ui_UIMain; @@ -50,7 +51,7 @@ class UIMain : public QMainWindow UIMain( QWidget* parent = 0 ); virtual ~UIMain(); - static void messageHandler( QtMsgType type, const char* msg ); + static void messageHandler(QtMsgType type, const QMessageLogContext &context, const QString &msg ); public slots: void appendDebugMessage( const QString& message ); diff --git a/example/main.cpp b/example/main.cpp index c515e45..467ba7d 100644 --- a/example/main.cpp +++ b/example/main.cpp @@ -14,7 +14,7 @@ ** ****************************************************************************/ #include - +#include #include "QodeEditExampleConfig.h" #include "UIMain.h" diff --git a/src/Manager.cpp b/src/Manager.cpp index 919a605..335dc72 100644 --- a/src/Manager.cpp +++ b/src/Manager.cpp @@ -99,7 +99,7 @@ QString QodeEdit::Manager::userSharedDataFilePath( const QString& extended ) con { return d->userSharedDataFilePath.isEmpty() ? QDir::cleanPath( QString( "%1/%2/%3" ) - .arg( QDesktopServices::storageLocation( QDesktopServices::DataLocation ) ) + .arg( QStandardPaths::StandardLocation( QStandardPaths::DataLocation) ) .arg( QString::fromUtf8( PACKAGE_NAME ) ) .arg( extended ) ) : d->userSharedDataFilePath diff --git a/src/Threading.cpp b/src/Threading.cpp index 35e2710..9b0e441 100644 --- a/src/Threading.cpp +++ b/src/Threading.cpp @@ -2,7 +2,7 @@ #include "Tools.h" #include "syntax/Document.h" -#include +#include QFuture QodeEdit::Threading::listFilesInPaths( const QStringList& paths, const QStringList& filters, bool recursive, bool sort ) { diff --git a/src/Tools.cpp b/src/Tools.cpp index 176493f..d540bc9 100644 --- a/src/Tools.cpp +++ b/src/Tools.cpp @@ -35,7 +35,7 @@ namespace Tools { class CaseInsensitiveEnumerator { public: CaseInsensitiveEnumerator( const QMetaEnum& enumerator = QMetaEnum() ) { - name = QString::fromAscii( enumerator.name() ).toLower(); + name = QString( enumerator.name() ).toLower(); for ( int i = 0; i < enumerator.keyCount(); i++ ) { const int value( enumerator.value( i ) ); diff --git a/src/Tools.h b/src/Tools.h index 42f66d9..9176a0f 100644 --- a/src/Tools.h +++ b/src/Tools.h @@ -20,6 +20,8 @@ #include #include +#include +#include #include namespace Syntax { From a66301b3a8974f7cfd294789ae5b7e9da6df6bec Mon Sep 17 00:00:00 2001 From: tachometer Date: Thu, 13 Jun 2013 03:29:25 +0200 Subject: [PATCH 2/2] * Renamed back the DefaultStyle enum to Style since it breaks CaseInsensitiveEnumerator. If the rename is to be made, the Q_ENUMS must be fixed as well! * Small fix in Syntax::Rule::create --- src/QodeEdit.h | 2 +- src/Tools.cpp | 8 ++++---- src/Tools.h | 4 ++-- src/syntax/Rule.cpp | 2 +- src/theme/Theme.cpp | 8 ++++---- src/theme/Theme.h | 4 ++-- 6 files changed, 14 insertions(+), 14 deletions(-) diff --git a/src/QodeEdit.h b/src/QodeEdit.h index b10b32b..e7fa951 100644 --- a/src/QodeEdit.h +++ b/src/QodeEdit.h @@ -72,7 +72,7 @@ QodeEdit { IncludeRulesRule }; - enum DefaultStyle { + enum Style { InvalidStyle = -1, NormalStyle, KeywordStyle, diff --git a/src/Tools.cpp b/src/Tools.cpp index d540bc9..94c1e73 100644 --- a/src/Tools.cpp +++ b/src/Tools.cpp @@ -73,7 +73,7 @@ namespace Tools { static CaseInsensitiveEnumerator ruler( mo().enumerator( mo().indexOfEnumerator( "Ruler" ) ) ); static CaseInsensitiveEnumerator margin( mo().enumerator( mo().indexOfEnumerator( "Margin" ) ) ); static CaseInsensitiveEnumerator rule( mo().enumerator( mo().indexOfEnumerator( "Rule" ) ) ); - static CaseInsensitiveEnumerator defaultStyle( mo().enumerator( mo().indexOfEnumerator( "DefaultStyle" ) ) ); + static CaseInsensitiveEnumerator defaultStyle( mo().enumerator( mo().indexOfEnumerator( "Style" ) ) ); static QHash > sets; }; // Tools @@ -109,14 +109,14 @@ QodeEdit::Rule QodeEdit::Tools::stringToRule( const QString& string ) return QodeEdit::Rule( QodeEdit::Tools::rule.keyToValue( string ) ); } -QString QodeEdit::Tools::defaultStyleToString( QodeEdit::DefaultStyle style ) +QString QodeEdit::Tools::defaultStyleToString( QodeEdit::Style style ) { return QodeEdit::Tools::defaultStyle.valueToKey( style ); } -QodeEdit::DefaultStyle QodeEdit::Tools::stringToDefaultStyle( const QString& string ) +QodeEdit::Style QodeEdit::Tools::stringToDefaultStyle( const QString& string ) { - return QodeEdit::DefaultStyle( QodeEdit::Tools::defaultStyle.keyToValue( string ) ); + return QodeEdit::Style( QodeEdit::Tools::defaultStyle.keyToValue( string ) ); } bool QodeEdit::Tools::stringEquals( const QString& left, const QString& right, Qt::CaseSensitivity sensitivity ) diff --git a/src/Tools.h b/src/Tools.h index 9176a0f..c0c4287 100644 --- a/src/Tools.h +++ b/src/Tools.h @@ -40,8 +40,8 @@ namespace Tools { QString ruleToString( QodeEdit::Rule rule ); QodeEdit::Rule stringToRule( const QString& string ); - QString defaultStyleToString( QodeEdit::DefaultStyle style ); - QodeEdit::DefaultStyle stringToDefaultStyle( const QString& string ); + QString defaultStyleToString( QodeEdit::Style style ); + QodeEdit::Style stringToDefaultStyle( const QString& string ); bool stringEquals( const QString& left, const QString& right, Qt::CaseSensitivity sensitivity = Qt::CaseInsensitive ); bool stringLessThan( const QString& left, const QString& right, Qt::CaseSensitivity sensitivity = Qt::CaseInsensitive ); diff --git a/src/syntax/Rule.cpp b/src/syntax/Rule.cpp index 02f9631..604d5d6 100644 --- a/src/syntax/Rule.cpp +++ b/src/syntax/Rule.cpp @@ -496,7 +496,7 @@ Syntax::Rule Syntax::Rule::create( QodeEdit::Rule type, const QHash > requiredAttributes; - if ( requiredAttributes.isEmpty() ) { + if ( requiredAttributes[type].isEmpty() ) { switch ( type ) { case QodeEdit::KeywordRule: requiredAttributes[ type ] << "string"; diff --git a/src/theme/Theme.cpp b/src/theme/Theme.cpp index 8aea916..17cb3cb 100644 --- a/src/theme/Theme.cpp +++ b/src/theme/Theme.cpp @@ -45,11 +45,11 @@ class Theme::SchemaData : public QSharedData return QString( "%1:%2" ).arg( syntaxName.trimmed() ).arg( styleName.trimmed() ).toLower(); } - QString defaultStyleKey( QodeEdit::DefaultStyle defaultStyle ) const { + QString defaultStyleKey( QodeEdit::Style defaultStyle ) const { return QString( "ds%1" ).arg( QodeEdit::Tools::defaultStyleToString( defaultStyle ) ).toLower().trimmed(); } - Theme::Style* defaultStyle( QodeEdit::DefaultStyle defaultStyle ) { + Theme::Style* defaultStyle( QodeEdit::Style defaultStyle ) { return &styles[ defaultStyleKey( defaultStyle ) ]; } @@ -115,12 +115,12 @@ void Theme::Schema::setSyntaxStyle( const QString& syntaxName, const QString& st d->styles[ d->syntaxStyleKey( syntaxName, styleName ) ] = style; } -Theme::Style Theme::Schema::defaultStyle( QodeEdit::DefaultStyle defaultStyle ) const +Theme::Style Theme::Schema::defaultStyle( QodeEdit::Style defaultStyle ) const { return d->styles.value( d->defaultStyleKey( defaultStyle ) ); } -void Theme::Schema::setDefaultStyle( QodeEdit::DefaultStyle defaultStyle, const Theme::Style& style ) +void Theme::Schema::setDefaultStyle( QodeEdit::Style defaultStyle, const Theme::Style& style ) { d->styles[ d->defaultStyleKey( defaultStyle ) ] = style; } diff --git a/src/theme/Theme.h b/src/theme/Theme.h index 163316f..900337e 100644 --- a/src/theme/Theme.h +++ b/src/theme/Theme.h @@ -45,8 +45,8 @@ class Schema Theme::Style syntaxStyle( const QString& syntaxName, const QString& styleName ) const; void setSyntaxStyle( const QString& syntaxName, const QString& styleName, const Theme::Style& style ); - Theme::Style defaultStyle( QodeEdit::DefaultStyle defaultStyle ) const; - void setDefaultStyle( QodeEdit::DefaultStyle defaultStyle, const Theme::Style& style ); + Theme::Style defaultStyle( QodeEdit::Style defaultStyle ) const; + void setDefaultStyle( QodeEdit::Style defaultStyle, const Theme::Style& style ); }; }; // Theme