diff options
Diffstat (limited to 'Swift/QtUI/ChatSnippet.cpp')
| -rw-r--r-- | Swift/QtUI/ChatSnippet.cpp | 45 | 
1 files changed, 44 insertions, 1 deletions
diff --git a/Swift/QtUI/ChatSnippet.cpp b/Swift/QtUI/ChatSnippet.cpp index 4a0560b..666dd00 100644 --- a/Swift/QtUI/ChatSnippet.cpp +++ b/Swift/QtUI/ChatSnippet.cpp @@ -1,5 +1,5 @@  /* - * Copyright (c) 2010 Kevin Smith + * Copyright (c) 2010-2013 Kevin Smith   * Licensed under the GNU General Public License v3.   * See Documentation/Licenses/GPLv3.txt for more information.   */ @@ -7,6 +7,7 @@  #include <QFile>  #include "ChatSnippet.h" +#include <Swift/QtUI/QtSwiftUtil.h>  namespace Swift { @@ -39,4 +40,46 @@ QString ChatSnippet::wrapResizable(const QString& text) {  	return "<span class='swift_resizable'>" + text + "</span>";  } +QString ChatSnippet::directionToCSS(Direction direction) { +	return direction == RTL ? QString("rtl") : QString("ltr"); +} + +ChatSnippet::Direction ChatSnippet::getDirection(const std::string& message) { +	return getDirection(P2QSTRING(message)); +} + +ChatSnippet::Direction ChatSnippet::getDirection(const QString& message) { +	/* +	for (int i = 0; i < message.size(); ++i) { +		switch (message.at(i).direction()) { +			case QChar::DirL: +			case QChar::DirLRE: +			case QChar::DirLRO: +				return ChatSnippet::LTR; +			case QChar::DirR: +			case QChar::DirAL: +			case QChar::DirRLE: +			case QChar::DirRLO: +				return ChatSnippet::RTL; +			case QChar::DirEN: +			case QChar::DirES: +			case QChar::DirET: +			case QChar::DirAN: +			case QChar::DirCS: +			case QChar::DirB: +			case QChar::DirWS: +			case QChar::DirON: +			case QChar::DirS: +			case QChar::DirPDF: +			case QChar::DirNSM: +			case QChar::DirBN: +				break; +		} +	} +	return ChatSnippet::LTR; +	*/ +	return message.isRightToLeft() ? ChatSnippet::RTL : ChatSnippet::LTR; +} + +  }  | 
 Swift