After a good time away from it, I'm back on my Qt / SFML program and have progressed far faster than I'd imagined, but now I have a problem with sf::String::SetText().
class MyCanvas : public QSFMLCanvas
{
Q_OBJECT
public :
MyCanvas(QWidget* Parent, const QPoint& Position, const QSize& Size);
MyCanvas();
public slots:
void OpenFile(QString str);
private :
QFile pl;
QTextStream _pl;
sf::View CurrentView;
sf::View GlobalView;
Point MouseCoords;
std::vector<Line> faults;
std::vector<Line> horizons;
std::vector<Point> points;
void ChangeView_Key();
void ChangeView_Pan(QMouseEvent* e);
void DesignFault();
void DesignLine(Point pt1, Point pt2);
Line* NewLine();
void OnInit();
void OnUpdate();
void SaveFaultPoints(int elevation,int n);
void SaveFaultSegments();
protected:
void keyPressEvent(QKeyEvent* e);
void mouseMoveEvent(QMouseEvent* e);
void mousePressEvent(QMouseEvent* e);
void wheelEvent(QWheelEvent* e);
};
void MyCanvas::OnUpdate()
{
std::string coords("(");
sf::String Coords;
char coord[16];
//Clear();
sprintf_s(coord,16,"%.0f",MouseCoords.coord.x);
coords+= coord;
coords+= ",";
sprintf_s(coord,16,"%.0f",MouseCoords.coord.y);
coords+= coord;
coords+= ")";
Coords.SetFont(sf::Font::GetDefaultFont());
Coords.SetSize(30.f);
Coords.SetText(coords);
Clear();
for(std::vector<Line>::iterator it=faults.begin();it<faults.end();it++)
Draw(it->shape);
for(std::vector<Point>::iterator it=points.begin();it<points.end();it++)
Draw(it->shape);
for(std::vector<Line>::iterator it=horizons.begin();it<horizons.end();it++)
Draw(it->shape);
SetView(GetDefaultView());
SetView(CurrentView);
Display();
}
Should I try to compile it, however, I get the following error:
1>MyCanvas.obj : error LNK2019: unresolved external symbol "public: __thiscall sf::Unicode::Text::Text(class std::basic_string<char,struct std::char_traits<char>,class std::allocator<char> > const &)" (??0Text@Unicode@sf@@QAE@ABV?$basic_string@DU?$char_traits@D@std@@V?$allocator@D@2@@std@@@Z) referenced in function "private: virtual void __thiscall MyCanvas::OnUpdate(void)" (?OnUpdate@MyCanvas@@EAEXXZ)
1>debug\QT.exe : fatal error LNK1120: 1 unresolved externals
However, if I comment out the .SetText() command, it compiles correctly.