Loading eeschema/dialogs/dialog_schematic_find.h +10 −9 Original line number Diff line number Diff line Loading @@ -81,10 +81,10 @@ enum SchematicFindReplaceFlags /** * Definition FR_MASK_NON_SEARCH_FLAGS * Definition FR_MASK_NON_COMPARE_FLAGS * is used to mask find/replace flag bits that do not effect the search results. */ #define FR_MASK_NON_SEARCH_FLAGS ~( wxFR_DOWN | FR_SEARCH_WRAP | FR_NO_WARP_CURSOR | \ #define FR_MASK_NON_COMPARE_FLAGS ~( wxFR_DOWN | FR_SEARCH_WRAP | FR_NO_WARP_CURSOR | \ FR_REPLACE_ITEM_FOUND ) Loading Loading @@ -122,29 +122,30 @@ public: /** * Function ChangesSearch * tests \a aFindReplaceData to see if it would result in a change in the search * results. * Function ChangesCompare * tests \a aFindReplaceData to see if it would result in a change in the search string * comparison results. * * @param aFindReplaceData A reference to a #SCH_FIND_REPLACE_DATA object to compare * against. * @return True if \a aFindReplaceData would result in a search and/or replace change, * otherwise false. */ bool ChangesSearch( SCH_FIND_REPLACE_DATA& aFindReplaceData ) bool ChangesCompare( SCH_FIND_REPLACE_DATA& aFindReplaceData ) { return ( (GetFindString() != aFindReplaceData.GetFindString()) || (GetSearchFlags() != aFindReplaceData.GetSearchFlags()) ); || (GetCompareFlags() != aFindReplaceData.GetCompareFlags()) ); } bool IsReplacing() const { return (GetFlags() & FR_SEARCH_REPLACE) != 0; } bool IsWrapping() const { return (GetFlags() & FR_SEARCH_WRAP) != 0; } private: /** * Function GetSearchFlags * @return The flags that only effect the search result. */ wxUint32 GetSearchFlags() const { return GetFlags() & FR_MASK_NON_SEARCH_FLAGS; } wxUint32 GetCompareFlags() const { return GetFlags() & FR_MASK_NON_COMPARE_FLAGS; } }; Loading eeschema/sch_collectors.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -516,7 +516,7 @@ SEARCH_RESULT SCH_FIND_COLLECTOR::Inspect( EDA_ITEM* aItem, const void* aTestDat void SCH_FIND_COLLECTOR::Collect( SCH_FIND_REPLACE_DATA& aFindReplaceData, SCH_SHEET_PATH* aSheetPath ) { if( !m_findReplaceData.ChangesSearch( aFindReplaceData ) && !m_List.empty() && !m_forceSearch ) if( !IsSearchRequired( aFindReplaceData ) && !m_List.empty() && !m_forceSearch ) return; m_findReplaceData = aFindReplaceData; Loading eeschema/sch_collectors.h +2 −1 Original line number Diff line number Diff line Loading @@ -296,7 +296,8 @@ public: */ bool IsSearchRequired( SCH_FIND_REPLACE_DATA& aFindReplaceData ) { return m_findReplaceData.ChangesSearch( aFindReplaceData ) || m_forceSearch; return m_findReplaceData.ChangesCompare( aFindReplaceData ) || m_forceSearch || (m_findReplaceData.IsWrapping() != aFindReplaceData.IsWrapping()); } /** Loading eeschema/sch_field.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -390,7 +390,8 @@ bool SCH_FIELD::Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint bool match; wxString text = GetFullyQualifiedText(); if( ((m_id > VALUE) && !(aSearchData.GetFlags() & FR_SEARCH_ALL_FIELDS)) // User defined fields have an ID of -1. if( ((m_id > VALUE || m_id < REFERENCE) && !(aSearchData.GetFlags() & FR_SEARCH_ALL_FIELDS)) || ((m_id == REFERENCE) && !(aSearchData.GetFlags() & FR_REPLACE_REFERENCES)) ) return false; Loading Loading
eeschema/dialogs/dialog_schematic_find.h +10 −9 Original line number Diff line number Diff line Loading @@ -81,10 +81,10 @@ enum SchematicFindReplaceFlags /** * Definition FR_MASK_NON_SEARCH_FLAGS * Definition FR_MASK_NON_COMPARE_FLAGS * is used to mask find/replace flag bits that do not effect the search results. */ #define FR_MASK_NON_SEARCH_FLAGS ~( wxFR_DOWN | FR_SEARCH_WRAP | FR_NO_WARP_CURSOR | \ #define FR_MASK_NON_COMPARE_FLAGS ~( wxFR_DOWN | FR_SEARCH_WRAP | FR_NO_WARP_CURSOR | \ FR_REPLACE_ITEM_FOUND ) Loading Loading @@ -122,29 +122,30 @@ public: /** * Function ChangesSearch * tests \a aFindReplaceData to see if it would result in a change in the search * results. * Function ChangesCompare * tests \a aFindReplaceData to see if it would result in a change in the search string * comparison results. * * @param aFindReplaceData A reference to a #SCH_FIND_REPLACE_DATA object to compare * against. * @return True if \a aFindReplaceData would result in a search and/or replace change, * otherwise false. */ bool ChangesSearch( SCH_FIND_REPLACE_DATA& aFindReplaceData ) bool ChangesCompare( SCH_FIND_REPLACE_DATA& aFindReplaceData ) { return ( (GetFindString() != aFindReplaceData.GetFindString()) || (GetSearchFlags() != aFindReplaceData.GetSearchFlags()) ); || (GetCompareFlags() != aFindReplaceData.GetCompareFlags()) ); } bool IsReplacing() const { return (GetFlags() & FR_SEARCH_REPLACE) != 0; } bool IsWrapping() const { return (GetFlags() & FR_SEARCH_WRAP) != 0; } private: /** * Function GetSearchFlags * @return The flags that only effect the search result. */ wxUint32 GetSearchFlags() const { return GetFlags() & FR_MASK_NON_SEARCH_FLAGS; } wxUint32 GetCompareFlags() const { return GetFlags() & FR_MASK_NON_COMPARE_FLAGS; } }; Loading
eeschema/sch_collectors.cpp +1 −1 Original line number Diff line number Diff line Loading @@ -516,7 +516,7 @@ SEARCH_RESULT SCH_FIND_COLLECTOR::Inspect( EDA_ITEM* aItem, const void* aTestDat void SCH_FIND_COLLECTOR::Collect( SCH_FIND_REPLACE_DATA& aFindReplaceData, SCH_SHEET_PATH* aSheetPath ) { if( !m_findReplaceData.ChangesSearch( aFindReplaceData ) && !m_List.empty() && !m_forceSearch ) if( !IsSearchRequired( aFindReplaceData ) && !m_List.empty() && !m_forceSearch ) return; m_findReplaceData = aFindReplaceData; Loading
eeschema/sch_collectors.h +2 −1 Original line number Diff line number Diff line Loading @@ -296,7 +296,8 @@ public: */ bool IsSearchRequired( SCH_FIND_REPLACE_DATA& aFindReplaceData ) { return m_findReplaceData.ChangesSearch( aFindReplaceData ) || m_forceSearch; return m_findReplaceData.ChangesCompare( aFindReplaceData ) || m_forceSearch || (m_findReplaceData.IsWrapping() != aFindReplaceData.IsWrapping()); } /** Loading
eeschema/sch_field.cpp +2 −1 Original line number Diff line number Diff line Loading @@ -390,7 +390,8 @@ bool SCH_FIELD::Matches( wxFindReplaceData& aSearchData, void* aAuxData, wxPoint bool match; wxString text = GetFullyQualifiedText(); if( ((m_id > VALUE) && !(aSearchData.GetFlags() & FR_SEARCH_ALL_FIELDS)) // User defined fields have an ID of -1. if( ((m_id > VALUE || m_id < REFERENCE) && !(aSearchData.GetFlags() & FR_SEARCH_ALL_FIELDS)) || ((m_id == REFERENCE) && !(aSearchData.GetFlags() & FR_REPLACE_REFERENCES)) ) return false; Loading