Pointer cleanup (#242)

- Made greater use of smart pointers, eliminating many instances of manual memory management
- Do not use pointers at all for many non-polymorphic classes
- Assorted other code cleanup
This commit is contained in:
Jaye Evins
2025-10-31 16:11:28 -04:00
committed by GitHub
parent fd10d88be5
commit 8c8e447336
159 changed files with 3364 additions and 4045 deletions
+16 -21
View File
@@ -18,6 +18,7 @@
* along with gLabels-qt. If not, see <http://www.gnu.org/licenses/>.
*/
#include "TestTextNode.h"
#include "model/TextNode.h"
@@ -41,30 +42,24 @@ void TestTextNode::textNode()
QCOMPARE( textNode.data(), QString( "" ) );
QVERIFY( textNode == TextNode() );
QVERIFY( !(textNode != TextNode()) );
QCOMPARE( textNode.text( nullptr, nullptr ), QString( "" ) );
QCOMPARE( textNode.text( &record, nullptr ), QString( "" ) );
QCOMPARE( textNode.text( nullptr, &vars ), QString( "" ) );
QCOMPARE( textNode.text( &record, &vars ), QString( "" ) );
QCOMPARE( textNode.text( NullRecord(), vars ), QString( "" ) );
QCOMPARE( textNode.text( record, vars ), QString( "" ) );
textNode.setField( true );
QVERIFY( textNode.isField() );
QCOMPARE( textNode.text( &record, nullptr ), QString( "" ) );
QCOMPARE( textNode.text( record, vars ), QString( "" ) );
textNode.setField( false );
QVERIFY( !textNode.isField() );
textNode.setData( QString( "data1" ) );
QCOMPARE( textNode.data(), QString( "data1" ) );
QCOMPARE( textNode.text( nullptr, nullptr ), QString( "data1" ) );
QCOMPARE( textNode.text( &record, nullptr ), QString( "data1" ) );
QCOMPARE( textNode.text( nullptr, &vars ), QString( "data1" ) );
QCOMPARE( textNode.text( &record, &vars ), QString( "data1" ) );
QCOMPARE( textNode.text( NullRecord(), vars ), QString( "data1" ) );
QCOMPARE( textNode.text( record, vars ), QString( "data1" ) );
textNode.setField( true );
QCOMPARE( textNode.text( nullptr, nullptr ), QString( "" ) );
QCOMPARE( textNode.text( &record, nullptr ), QString( "" ) );
QCOMPARE( textNode.text( nullptr, &vars ), QString( "" ) );
QCOMPARE( textNode.text( &record, &vars ), QString( "" ) );
QCOMPARE( textNode.text( NullRecord(), vars ), QString( "" ) );
QCOMPARE( textNode.text( record, vars ), QString( "" ) );
///
/// Constructors
@@ -86,13 +81,13 @@ void TestTextNode::textNode()
/// Record
///
record["key1"] = "";
QCOMPARE( textNode.text( &record, nullptr ), QString( "" ) );
QCOMPARE( textNode.text( record, vars ), QString( "" ) );
textNode.setData( QString( "key1" ) );
QCOMPARE( textNode.text( &record, nullptr ), QString( "" ) );
QCOMPARE( textNode.text( record, vars ), QString( "" ) );
record["key1"] = "val1";
QCOMPARE( textNode.text( &record, nullptr ), QString( "val1" ) );
QCOMPARE( textNode.text( record, vars ), QString( "val1" ) );
///
/// Variable
@@ -101,24 +96,24 @@ void TestTextNode::textNode()
Variable key1( Variable::Type::STRING, "key1", "", Variable::Increment::PER_ITEM );
vars.addVariable( key1 );
}
QCOMPARE( textNode.text( nullptr, &vars ), QString( "" ) );
QCOMPARE( textNode.text( NullRecord(), vars ), QString( "" ) );
{
Variable key1( Variable::Type::STRING, "key1", "val1", Variable::Increment::PER_ITEM );
vars.addVariable( key1 );
}
QCOMPARE( textNode.text( nullptr, &vars ), QString( "val1" ) );
QCOMPARE( textNode.text( NullRecord(), vars ), QString( "val1" ) );
{
Variable key1( Variable::Type::INTEGER, "key1", "1", Variable::Increment::PER_ITEM, "1" );
vars.addVariable( key1 );
}
QCOMPARE( textNode.text( nullptr, &vars ), QString( "1" ) );
QCOMPARE( textNode.text( NullRecord(), vars ), QString( "1" ) );
vars.incrementVariablesOnItem();
QCOMPARE( textNode.text( nullptr, &vars ), QString( "2" ) );
QCOMPARE( textNode.text( NullRecord(), vars ), QString( "2" ) );
///
/// Record beats variable
///
QCOMPARE( textNode.text( &record, &vars ), QString( "val1" ) );
QCOMPARE( textNode.text( record, vars ), QString( "val1" ) );
}