| 2726 | } |
| 2727 | |
| 2728 | std::string IGFD::FileManager::GetResultingFilePathName(FileDialogInternal& vFileDialogInternal, IGFD_ResultMode vFlag) { |
| 2729 | if (!dLGDirectoryMode) { // if not directory mode |
| 2730 | auto result = GetResultingPath(); |
| 2731 | const auto& file_path_name = GetResultingFileName(vFileDialogInternal, vFlag); |
| 2732 | if (!file_path_name.empty()) { |
| 2733 | if (m_FileSystemPtr != nullptr && file_path_name.find(IGFD::Utils::GetPathSeparator()) != std::string::npos && // check if a path |
| 2734 | m_FileSystemPtr->IsFileExist(file_path_name)) { // do that only if filename is a path, not only a file name |
| 2735 | result = file_path_name; // #144, exist file, so absolute, so return it (maybe set by user in inputText) |
| 2736 | } else { // #144, else concate path with current filename |
| 2737 | #ifdef _IGFD_UNIX_ |
| 2738 | if (fsRoot != result) |
| 2739 | #endif // _IGFD_UNIX_ |
| 2740 | { |
| 2741 | result += IGFD::Utils::GetPathSeparator(); |
| 2742 | } |
| 2743 | result += file_path_name; |
| 2744 | } |
| 2745 | } |
| 2746 | |
| 2747 | return result; // file mode |
| 2748 | } |
| 2749 | return ""; // directory mode |
| 2750 | } |
| 2751 | |
| 2752 | std::map<std::string, std::string> IGFD::FileManager::GetResultingSelection(FileDialogInternal& vFileDialogInternal, IGFD_ResultMode vFlag) { |
| 2753 | std::map<std::string, std::string> res; |
no test coverage detected