Skip to main content
Associate III
March 4, 2025
Question

TouchGFX Tutorial 3 , compile grief

  • March 4, 2025
  • 8 replies
  • 1609 views

if (!textClock.isMoveAnimationRunning()) .. fails 

after following the tutorial i receive ..

Compile
make -f simulator/gcc/Makefile -j8
Reading ./application.config
Reading ./target.config
Compiling gui/src/screen2_screen/Screen2View.cpp
Compiling generated/texts/src/TypedTextDatabase.cpp
gui/src/screen2_screen/Screen2View.cpp: In member function 'virtual void Screen2View::handleTickEvent()':
gui/src/screen2_screen/Screen2View.cpp:63:20: error: 'class touchgfx::TextArea' has no member named 'isMoveAnimationRunning'
if (!textClock.isMoveAnimationRunning())
^~~~~~~~~~~~~~~~~~~~~~
generated/simulator/gcc/Makefile:196: recipe for target 'build/MINGW32_NT-6.2/gui/src/screen2_screen/Screen2View.o' failed
make[2]: *** [build/MINGW32_NT-6.2/gui/src/screen2_screen/Screen2View.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [generate_assets] Error 2
generated/simulator/gcc/Makefile:155: recipe for target 'generate_assets' failed
simulator/gcc/Makefile:32: recipe for target 'all' failed
make: *** [all] Error 2
Failed
Failed

i've added #include <touchgfx/mixins/MoveAnimator.hpp> to screen2view.cpp as well .. 

I'm new to this so unsure what or where the problem is ? 

i've read the documentation and .. "isMoveAnimationRunning" can be found .. 

anyone shed any light please ... 

 

 

 

8 replies

ST Employee
March 4, 2025

Hello @JohnSkeldon,

Can you try to check "MoveAnimator" in your textClock element ?

BR,

Associate III
March 4, 2025

yes ... i did that as well 

Lead II
March 4, 2025

Please use formatting

No specific language (for instance terminal output):

unsigned_char_array_0-1741092281956.png

A programming specific language (such as C/C++):

unsigned_char_array_1-1741092366689.png

 

"Kudo posts if you have the same problem and kudo replies if the solution works.Click ""Accept as Solution"" if a reply solved your problem. If no solution was posted please answer with your own."
Associate III
March 4, 2025

Sorry 

ST Employee
March 4, 2025

Did you tried to delete the generated folder and also the middleware/st folder ?

BR,

Associate III
March 4, 2025

deleted both , re-made code . tried to compile ,,

same error .. TextArea has no member named 'isMoveAnimationRunning'.

is it worth me zipping the progect up and letting someone have a look at it ? 

ST Employee
March 4, 2025

Yes you can zip it, so I take a look

Associate III
March 4, 2025

i am new to this .. i'm use to embedded 'c' , its been ages since i looked at C++ so its something obvious. so my appologies if i've made some *** mistake . So sorry and thank you.  I'm happy for you to message me privately (saves filling the message board up ) 

 

John

ST Employee
March 4, 2025

No worries, we all start somewhere :)

LouisB_0-1741100166856.png

In Screen2View, you shouldnt have these lines. They are already created in Screen2ViewBase, and textClock shadows the one from Screen2ViewBase, that's why you have the error.

The Screen2ViewBase is the base class of your screen that has been generated by TouchGFX. When you create a widget to your screen and regenerate it's automatically added to that class. More information here : UI Development Introduction | TouchGFX Documentation.

If you are new to TouchGfx, I highly recommend you to check the documentation and also the tutorials.

I hope it helps,

BR,

Associate III
March 4, 2025

Thank you , it seams to work other than the minutes are going up as seconds .. i'm more bothered about it compiling 

:) . i have got it set up for my dev kit though maybe that's it .. 

Regards 

John

 

Lead II
March 5, 2025

I got it to build and simulate.

Just uncomment these two lines in Screen2View.hpp:

 

 //Unicode::UnicodeChar textClockBuffer1[TEXTCLOCKBUFFER1_SIZE];
 //Unicode::UnicodeChar textClockBuffer2[TEXTCLOCKBUFFER2_SIZE];

 //TextArea textClock; // Ensure this matches your UI component type

 

Screen2View inherits from Screen2ViewBase, which inherits from Screen2Presenter. The textClock is already in the base class:

 

 touchgfx::Draggable< touchgfx::ClickListener< touchgfx::FadeAnimator< touchgfx::MoveAnimator< touchgfx::TextAreaWithTwoWildcards > > > > textClock;

 

As you can see it is no longer simply a TextArea class.

"Kudo posts if you have the same problem and kudo replies if the solution works.Click ""Accept as Solution"" if a reply solved your problem. If no solution was posted please answer with your own."
ST Employee
March 17, 2025

Hello @JohnSkeldon ,
Glad you were able to solve your issue, please select a best answer so other users can easily find the solution for this.
BR,