[commit] r2481 - trunk/GME/Search

GMESRC Repository Notifications gme-commit at list.isis.vanderbilt.edu
Thu May 1 16:50:37 CDT 2014


Author: ksmyth
Date: Thu May  1 16:50:36 2014
New Revision: 2481

Log:
Add '_abspath=' to attribute search

Modified:
   trunk/GME/Search/SearchAlg.cpp
   trunk/GME/Search/SearchDlg.cpp

Modified: trunk/GME/Search/SearchAlg.cpp
==============================================================================
--- trunk/GME/Search/SearchAlg.cpp	Thu May  1 16:50:26 2014	(r2480)
+++ trunk/GME/Search/SearchAlg.cpp	Thu May  1 16:50:36 2014	(r2481)
@@ -469,6 +469,25 @@
     //Get appropriate expression stack, either first or second 
     std::vector<Attribute> expressionStack = first ? filter.GetFirstAttributeStack() : filter.GetSecondAttributeStack();
 
+	CString& attributeString = first ? filter.GetFirstAttribute() : filter.GetSecondAttribute();
+	if (attributeString.Find(L"_abspath=") == 0)
+	{
+		BOOL eval;
+		_bstr_t id;
+		if (FAILED(cObj->get_AbsPath(id.GetAddress())))
+		{
+			eval = FALSE;
+		}
+		else
+			eval = wcscmp(static_cast<const wchar_t*>(id), static_cast<const wchar_t*>(attributeString) + wcslen(L"_abspath=")) == 0;
+		return eval;
+		for(std::vector<Attribute>::iterator it=expressionStack.begin();it!=expressionStack.end();++it)
+	    {
+			it->eval = eval;
+		}
+		return EvaluateResult(expressionStack);
+	}
+
     CComPtr<IMgaMetaFCO> cmeta;
     CComPtr<IMgaMetaAttributes> mattrs;
     COMTHROW(cObj->get_Meta(&cmeta));

Modified: trunk/GME/Search/SearchDlg.cpp
==============================================================================
--- trunk/GME/Search/SearchDlg.cpp	Thu May  1 16:50:26 2014	(r2480)
+++ trunk/GME/Search/SearchDlg.cpp	Thu May  1 16:50:36 2014	(r2481)
@@ -184,6 +184,7 @@
 
 	InsertTextToControl(CString(L"_id="), m_edtAttributeCtrlFirst);
 	InsertTextToControl(CString(L"_guid="), m_edtAttributeCtrlFirst);
+	InsertTextToControl(CString(L"_abspath="), m_edtAttributeCtrlFirst);
 
     //load search history from registry
     LoadSearchHistory();


More information about the gme-commit mailing list