Hello,
I need some help.
I have written a multithreaded draw application with a special draw method
(1.3RC3/ Linux)
That's my derived class for the drawing enviroment:
class DrawArea : public Fl_Widget
{
private:
short SENR_;
long CallAdr_;
public:
void callDrSub(short SENR, long CallAdr);
void draw() { callDrSub(SENR_, CallAdr_);}
void SetSENR(short senr){ SENR_ = senr;}
void SetCallAdr( long calladr) {CallAdr_ = calladr;}
DrawArea(int X,int Y,int W,int H, long sernr, long calladr) :
Fl_Widget(X,Y,W,H)
{
SENR_ = sernr;
CallAdr_=calladr;
}
};
void DrawArea::callDrSub(short SENR, long CallAdr)
{
callDvsub(SENR, CallAdr); // sends a message to a second thread .. no direct
draw actions.
}
A second thread does all drawings after receiving a message ... followed by a
redraw and awake call.
But this call sequence starts the draw() method again and again.
When I remove the awake call ... partial demagings of the draw area are not
recognized.
The actions of the main and second thread are protected by fl_lock and
fl_unlock calls.
What's wrong ?
--Armin
___________________________________________________________
WEB.DE DSL Doppel-Flat ab 19,99 €/mtl.! Jetzt mit
gratis Handy-Flat! http://produkte.web.de/go/DSL_Doppel_Flatrate/2
_______________________________________________
fltk-dev mailing list
[email protected]
http://lists.easysw.com/mailman/listinfo/fltk-dev