Salome HOME
Auto-formatting according to the defined code standard.
[modules/shaper.git] / src / XGUI / XGUI_Tools.h
1 #ifndef XGUI_Tools_H
2 #define XGUI_Tools_H
3
4 #include <QString>
5 #include <QRect>
6
7 /*!
8  \brief Convert the given parameter to the platform-specific library name.
9
10  The function appends platform-specific prefix (lib) and suffix (.dll/.so)
11  to the library file name.
12  For example, if \a str = "mylib", "libmylib.so" is returned for Linux and
13  mylib.dll for Windows.
14
15  \param str short library name
16  \return full library name
17  */
18 QString library(const QString& str);
19
20 /*!
21  \brief Return directory part of the file path.
22
23  If the file path does not include directory part (the file is in the
24  current directory), null string is returned.
25
26  \param path file path
27  \param abs if true (default) \a path parameter is treated as absolute file path
28  \return directory part of the file path
29  */
30 QString dir(const QString& path, bool isAbs = true);
31
32 /*!
33  \brief Return file name part of the file path.
34
35  \param path file path
36  \param withExt if true (default) complete file name (with all
37  extension except the last) is returned, otherwise only base name
38  is returned
39  \return file name part of the file path
40  */
41 QString file(const QString& path, bool withExt = true);
42
43 /*!
44  \brief Return extension part of the file path.
45
46  \param path file path
47  \param full if true complete extension (all extensions, dot separated)
48  is returned, otherwise (default) only last extension is returned
49  \return extension part of the file path 
50  */
51 QString extension(const QString& path, bool full = false);
52
53 /*!
54  \brief Add a slash (platform-specific) to the end of \a path
55  if it is not already there.
56  \param path directory path
57  \return modified path (with slash added to the end)
58  */
59 QString addSlash(const QString& path);
60
61 /*! 
62  Creates a rect with TopLeft = ( min(x1,x2), min(y1,y2) )
63  and BottomRight = ( TopLeft + (x2-x1)(y2-y1) )    
64  */
65 QRect makeRect(const int x1, const int y1, const int x2, const int y2);
66
67 #endif