| 
| const QString  | m_group | 
|   | The base path group for storing the recent items in settings e.g. "recent_image_paths" etc.  More...
  | 
|   | 
| const unsigned int  | m_maxItems | 
|   | The maximum number of items.  More...
  | 
|   | 
 | 
| static const QString  | ID_KEY {"id"} | 
|   | Key for the path or URL to the item.  More...
  | 
|   | 
| static const QString  | DISPLAY_NAME_KEY {"displayname"} | 
|   | Key for the display name of the item.  More...
  | 
|   | 
| static const QString  | TIME_STAMP_KEY {"timestamp"} | 
|   | Key for the timestamp of when the item was added or replaced.  More...
  | 
|   | 
◆ RecentItemsImpl() [1/2]
  
  
      
        
          | geometrize::RecentItems::RecentItemsImpl::RecentItemsImpl  | 
          ( | 
          const QString &  | 
          group,  | 
         
        
           | 
           | 
          unsigned int  | 
          maxItems  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
   18         assert(
m_group.length() > 0 && 
"Base group cannot be empty");
 
   19         assert(!
m_group.contains(
'/') && 
"Base group must not contain forward slashes");
 
   20         assert(!
m_group.contains(
'\\') && 
"Base group must not contain backslashes");
 
 
 
 
◆ ~RecentItemsImpl()
  
  
      
        
          | geometrize::RecentItems::RecentItemsImpl::~RecentItemsImpl  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
default   | 
  
 
 
◆ RecentItemsImpl() [2/2]
  
  
      
        
          | geometrize::RecentItems::RecentItemsImpl::RecentItemsImpl  | 
          ( | 
          const RecentItemsImpl &  | 
           | ) | 
           | 
         
       
   | 
  
delete   | 
  
 
 
◆ addItem()
  
  
      
        
          | RecentItem geometrize::RecentItems::RecentItemsImpl::addItem  | 
          ( | 
          const QString &  | 
          itemId,  | 
         
        
           | 
           | 
          const QString &  | 
          itemDisplayName  | 
         
        
           | 
          ) | 
           |  | 
         
       
   | 
  
inline   | 
  
 
   66         const RecentItem item(itemId, itemDisplayName, 
msSinceEpoch());
 
   71         settings.beginGroup(group);
 
   73         settings.setValue(
ID_KEY, QVariant(item.getKey()));
 
 
 
 
◆ clearItems()
  
  
      
        
          | void geometrize::RecentItems::RecentItemsImpl::clearItems  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
 
◆ contains()
  
  
      
        
          | bool geometrize::RecentItems::RecentItemsImpl::contains  | 
          ( | 
          const QString &  | 
          value | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
   51         const QStringList childGroups{settings.childGroups()};
 
   52         for(
const QString& group : childGroups) {
 
   53             settings.beginGroup(group);
 
   54             if(settings.value(
ID_KEY) == value) {
 
 
 
 
◆ getId()
  
  
      
        
          | static QString geometrize::RecentItems::RecentItemsImpl::getId  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inlinestaticprivate   | 
  
 
  148         static std::atomic<std::size_t> 
id{0U};
 
  149         return QString::number(
id++);
 
 
 
 
◆ getItemCount()
  
  
      
        
          | unsigned int geometrize::RecentItems::RecentItemsImpl::getItemCount  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
  110         const int count{
static_cast<int>(settings.childGroups().length())};
 
 
 
 
◆ getItemGroup()
  
  
      
        
          | static QString geometrize::RecentItems::RecentItemsImpl::getItemGroup  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inlinestaticprivate   | 
  
 
 
◆ getItems()
  
  
      
        
          | QList<RecentItem> geometrize::RecentItems::RecentItemsImpl::getItems  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
   31         const QStringList childGroups{settings.childGroups()};
 
   32         QList<RecentItem> recentItems;
 
   33         for(
const QString& group : childGroups) {
 
   34             settings.beginGroup(group);
 
   37             recentItems.push_back(item);
 
   41         std::sort(recentItems.begin(), recentItems.end(), [](
const RecentItem& a, 
const RecentItem& b) {
 
   42             return a.getTimeStamp() < b.getTimeStamp();
 
 
 
 
◆ getMaxItemCount()
  
  
      
        
          | unsigned int geometrize::RecentItems::RecentItemsImpl::getMaxItemCount  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
 
◆ getOldestItemKey()
  
  
      
        
          | QString geometrize::RecentItems::RecentItemsImpl::getOldestItemKey  | 
          ( | 
           | ) | 
           const | 
         
       
   | 
  
inline   | 
  
 
  123         QList<RecentItem> items{
getItems()};
 
  127         return items.front().getKey();
 
 
 
 
◆ msSinceEpoch()
  
  
      
        
          | static long long int geometrize::RecentItems::RecentItemsImpl::msSinceEpoch  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inlinestaticprivate   | 
  
 
  143         return QDateTime::currentMSecsSinceEpoch();
 
 
 
 
◆ msSinceEpochAsString()
  
  
      
        
          | static QString geometrize::RecentItems::RecentItemsImpl::msSinceEpochAsString  | 
          ( | 
           | ) | 
           | 
         
       
   | 
  
inlinestaticprivate   | 
  
 
 
◆ operator=()
◆ removeItem()
  
  
      
        
          | void geometrize::RecentItems::RecentItemsImpl::removeItem  | 
          ( | 
          const QString &  | 
          value | ) | 
           | 
         
       
   | 
  
inline   | 
  
 
   87         const QStringList childGroups{settings.childGroups()};
 
   88         for(
const QString& group : childGroups) {
 
   89             settings.beginGroup(group);
 
   90             if(settings.value(
ID_KEY) == value) {
 
 
 
 
◆ DISPLAY_NAME_KEY
  
  
      
        
          | const QString geometrize::RecentItems::RecentItemsImpl::DISPLAY_NAME_KEY {"displayname"} | 
         
       
   | 
  
staticprivate   | 
  
 
Key for the display name of the item. 
 
 
◆ ID_KEY
  
  
      
        
          | const QString geometrize::RecentItems::RecentItemsImpl::ID_KEY {"id"} | 
         
       
   | 
  
staticprivate   | 
  
 
Key for the path or URL to the item. 
 
 
◆ m_group
  
  
      
        
          | const QString geometrize::RecentItems::RecentItemsImpl::m_group | 
         
       
   | 
  
private   | 
  
 
The base path group for storing the recent items in settings e.g. "recent_image_paths" etc. 
 
 
◆ m_maxItems
  
  
      
        
          | const unsigned int geometrize::RecentItems::RecentItemsImpl::m_maxItems | 
         
       
   | 
  
private   | 
  
 
The maximum number of items. 
 
 
◆ TIME_STAMP_KEY
  
  
      
        
          | const QString geometrize::RecentItems::RecentItemsImpl::TIME_STAMP_KEY {"timestamp"} | 
         
       
   | 
  
staticprivate   | 
  
 
Key for the timestamp of when the item was added or replaced. 
 
 
The documentation for this class was generated from the following file:
- /home/appveyor/projects/geometrize-docs/geometrize/geometrize/recents/recentitems.cpp