| 4061 | } |
| 4062 | |
| 4063 | void Config::removeVirtualDisplayView(const char * view) noexcept |
| 4064 | { |
| 4065 | if (!view) return; |
| 4066 | |
| 4067 | ViewVec::const_iterator iter = FindView(getImpl()->m_virtualDisplay.m_views, view); |
| 4068 | if (iter != getImpl()->m_virtualDisplay.m_views.end()) |
| 4069 | { |
| 4070 | ViewVec & views = getImpl()->m_virtualDisplay.m_views; |
| 4071 | |
| 4072 | const auto it = std::find_if(views.begin(), views.end(), |
| 4073 | [view](const View & v) |
| 4074 | { |
| 4075 | return StringUtils::Compare(v.m_name.c_str(), view); |
| 4076 | }); |
| 4077 | if (it!=views.end()) |
| 4078 | { |
| 4079 | views.erase(it); |
| 4080 | |
| 4081 | AutoMutex lock(getImpl()->m_cacheidMutex); |
| 4082 | getImpl()->resetCacheIDs(); |
| 4083 | return; |
| 4084 | } |
| 4085 | } |
| 4086 | |
| 4087 | if (StringUtils::Remove(getImpl()->m_virtualDisplay.m_sharedViews, view)) |
| 4088 | { |
| 4089 | AutoMutex lock(getImpl()->m_cacheidMutex); |
| 4090 | getImpl()->resetCacheIDs(); |
| 4091 | return; |
| 4092 | } |
| 4093 | } |
| 4094 | |
| 4095 | void Config::clearVirtualDisplay() noexcept |
| 4096 | { |