X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;f=src%2FXGUI%2FXGUI_Tools.cpp;h=42ddf7318fdcc02e4f6521763f192386bd5dc4b9;hb=6f77dfcd9833cdba0c583e6218350f1f7043eb8b;hp=5a6edb29d77ba150e2aee93dcfa16d4ea399317f;hpb=7682dee5122d928f4f59f8ee6a5ad4c110fb2ec2;p=modules%2Fshaper.git diff --git a/src/XGUI/XGUI_Tools.cpp b/src/XGUI/XGUI_Tools.cpp index 5a6edb29d..42ddf7318 100644 --- a/src/XGUI/XGUI_Tools.cpp +++ b/src/XGUI/XGUI_Tools.cpp @@ -1,83 +1,79 @@ +// Copyright (C) 2014-20xx CEA/DEN, EDF R&D --> #include "XGUI_Tools.h" -#include - - -//****************************************************************** -QString library( const QString& str ) -{ - QString path = dir( str, false ); - QString name = file( str, false ); - QString ext = extension( str ); - -#ifndef WIN32 - if ( !name.startsWith( "lib" ) ) - name = QString( "lib" ) + name; -#endif +#include +#include +#include +#include +#include +#include -#ifdef WIN32 - QString libExt( "dll" ); -#else - QString libExt( "so" ); -#endif - - if ( ext.toLower() != QString( "so" ) && ext.toLower() != QString( "dll" ) ) - { - if ( !name.isEmpty() && !ext.isEmpty() ) - name += QString( "." ); - name += ext; - } - - ext = libExt; - - QString fileName = addSlash( path ) + name + QString( "." ) + ext; +#include - return fileName; -} +#include +#include +namespace XGUI_Tools { //****************************************************************** -QString dir( const QString& path, bool isAbs ) +QString dir(const QString& path, bool isAbs) { - QDir aDir = QFileInfo( path ).dir(); + QDir aDir = QFileInfo(path).dir(); QString dirPath = isAbs ? aDir.absolutePath() : aDir.path(); - if ( dirPath == QString( "." ) ) + if (dirPath == QString(".")) dirPath = QString(); return dirPath; } - //****************************************************************** -QString file( const QString& path, bool withExt ) +QString file(const QString& path, bool withExt) { QString fPath = path; - while ( !fPath.isEmpty() && ( fPath[fPath.length() - 1] =='\\' || fPath[fPath.length() - 1] == '/' ) ) - fPath.remove( fPath.length() - 1, 1 ); + while (!fPath.isEmpty() && (fPath[fPath.length() - 1] == '\\' || fPath[fPath.length() - 1] == '/')) + fPath.remove(fPath.length() - 1, 1); - if ( withExt ) - return QFileInfo( fPath ).fileName(); + if (withExt) + return QFileInfo(fPath).fileName(); else - return QFileInfo( fPath ).completeBaseName(); + return QFileInfo(fPath).completeBaseName(); } //****************************************************************** -QString extension( const QString& path, bool full ) +QString addSlash(const QString& path) { - return full ? QFileInfo( path ).completeSuffix() : QFileInfo( path ).suffix(); + QString res = path; + if (!res.isEmpty() && res.at(res.length() - 1) != QChar('/') + && res.at(res.length() - 1) != QChar('\\')) + res += QDir::separator(); + return res; } //****************************************************************** -QString addSlash( const QString& path ) +bool isModelObject(FeaturePtr theFeature) { - QString res = path; - if ( !res.isEmpty() && res.at( res.length() - 1 ) != QChar( '/' ) && - res.at( res.length() - 1 ) != QChar( '\\' ) ) - res += QDir::separator(); - return res; + return theFeature && !theFeature->data(); } //****************************************************************** -QRect makeRect( const int x1, const int y1, const int x2, const int y2 ) -{ - return QRect( qMin( x1, x2 ), qMin( y1, y2 ), qAbs( x2 - x1 ), qAbs( y2 - y1 ) ); +std::string featureInfo(FeaturePtr theFeature) +{ + std::ostringstream aStream; + if (theFeature) + aStream << theFeature.get() << " " << theFeature->getKind(); + return QString(aStream.str().c_str()).toStdString(); +} + +//****************************************************************** +/*FeaturePtr realFeature(const FeaturePtr theFeature) + { + if (theFeature->data()) { + return theFeature; + } else { + ObjectPtr aObject = std::dynamic_pointer_cast(theFeature); + return aObject->featureRef(); + } + }*/ + + + }