qt_dirs.hpp

Go to the documentation of this file.
00001 /*****************************************************************************
00002  * dirs.hpp : String Directory helpers
00003  ****************************************************************************
00004  * Copyright (C) 2006-2008 the VideoLAN team
00005  * $Id: 08cad1cae7c9d9900bf2f31599268db12cd0250e $
00006  *
00007  * Authors:       Jean-Baptiste Kempf <jb@videolan.org>
00008  *
00009  * This program is free software; you can redistribute it and/or modify
00010  * it under the terms of the GNU General Public License as published by
00011  * the Free Software Foundation; either version 2 of the License, or
00012  * (at your option) any later version.
00013  *
00014  * This program is distributed in the hope that it will be useful,
00015  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00016  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
00017  * GNU General Public License for more details.
00018  *
00019  * You should have received a copy of the GNU General Public License
00020  * along with this program; if not, write to the Free Software
00021  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston MA 02110-1301, USA.
00022  *****************************************************************************/
00023 
00024 #ifndef _QT_DIR_H_
00025 #define _QT_DIR_H_
00026 
00027 #include <QString>
00028 #include <QDir>
00029 
00030 #define toNativeSeparators( s ) QDir::toNativeSeparators ( s )
00031 
00032 static inline QString removeTrailingSlash( QString s )
00033 {
00034     if( ( s.length() > 1 ) && ( s[s.length()-1] == QLatin1Char( '/' ) ) )
00035         s.remove( s.length() - 1, 1 );
00036     return s;
00037 }
00038 
00039 #define savedirpathFromFile( a ) p_intf->p_sys->filepath = toNativeSeparators( QFileInfo( a ).path() )
00040 #define toNativeSepNoSlash( a ) toNativeSeparators( removeTrailingSlash( a ) )
00041 
00042 static inline QString colon_escape( QString s )
00043 {
00044     return s.replace( ":", "\\:" );
00045 }
00046 static inline QString colon_unescape( QString s )
00047 {
00048     return s.replace( "\\:", ":" ).trimmed();
00049 }
00050 #endif
00051 

Generated on Tue May 25 08:04:58 2010 for VLC by  doxygen 1.5.6