|
|
Home » Developing U++ » U++ Developers corner » Optimizing DrawImage across platforms
Optimizing DrawImage across platforms [message #53611] |
Wed, 15 April 2020 09:52 |
Tom1
Messages: 1277 Registered: March 2007
|
Senior Contributor |
|
|
Hi,
There is an issue with ViewDraw when using the GTK3 backend on Linux. The following testcase works correctly on Windows (GUI) and Linux (GUI X11) but not on Linux (GUI) using GTK3. The cross should follow the cursor on the white background, but on GTK3 the entire window goes black and only the area updated with ViewDraw is valid afterwards.
#include <CtrlLib/CtrlLib.h>
using namespace Upp;
class Testcase5 : public TopWindow {
public:
typedef Testcase5 CLASSNAME;
Rect loc;
Testcase5(){
loc.SetNull();
}
void Paint(Draw &w){
w.DrawRect(Rect(GetSize()),White());
loc.SetNull();
}
void MouseMove(Point p, dword keyflags){
ImageBuffer sb(32,32);
BufferPainter sbp(sb);
sbp.Clear(RGBAZero());
sbp.Move(0,0).Line(31,31);
sbp.Move(0,31).Line(31,0);
sbp.Stroke(5,Gray());
ViewDraw draw(this);
if(!loc.IsNullInstance()) draw.DrawRect(loc,White());
loc.Set(p.x-16,p.y-16,p.x+16,p.y+16);
draw.DrawImage(loc.left,loc.top,Image(sb));
}
};
GUI_APP_MAIN
{
Testcase5().Run();
}
Best regards,
Tom
|
|
|
|
|
Optimizing DrawImage across platforms
By: Tom1 on Wed, 15 April 2020 09:52
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Wed, 15 April 2020 14:35
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Wed, 15 April 2020 15:15
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Wed, 15 April 2020 22:21
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Thu, 16 April 2020 21:08
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Thu, 16 April 2020 22:06
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Fri, 17 April 2020 00:41
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Fri, 17 April 2020 13:20
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Fri, 17 April 2020 13:38
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Fri, 17 April 2020 14:36
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Fri, 17 April 2020 17:00
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Sat, 18 April 2020 14:05
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Sat, 18 April 2020 15:06
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Sat, 18 April 2020 16:43
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Sat, 18 April 2020 17:12
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Sat, 18 April 2020 17:27
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Sat, 18 April 2020 18:21
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Sat, 18 April 2020 16:57
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Sat, 18 April 2020 16:48
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Sat, 18 April 2020 17:05
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Sat, 18 April 2020 19:21
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Sun, 19 April 2020 14:28
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Sun, 19 April 2020 22:37
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Mon, 20 April 2020 10:31
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Mon, 20 April 2020 11:13
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Mon, 20 April 2020 12:57
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Mon, 20 April 2020 13:13
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Mon, 20 April 2020 14:11
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Mon, 20 April 2020 15:11
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Mon, 20 April 2020 15:25
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Mon, 20 April 2020 15:34
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Mon, 20 April 2020 17:55
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Mon, 20 April 2020 20:37
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Mon, 20 April 2020 20:59
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Tue, 21 April 2020 16:20
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Tue, 21 April 2020 18:03
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Tue, 21 April 2020 18:28
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Tue, 21 April 2020 19:25
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Didier on Tue, 21 April 2020 22:19
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Wed, 22 April 2020 17:57
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Wed, 22 April 2020 14:08
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Fri, 24 April 2020 17:19
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Fri, 24 April 2020 22:43
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Sat, 25 April 2020 15:58
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Sun, 26 April 2020 11:49
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Tue, 28 April 2020 09:30
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: mirek on Tue, 12 May 2020 15:35
|
|
|
Re: MILESTONE: gtk3 replaces gtk2 as default linux backend
By: Tom1 on Wed, 13 May 2020 09:44
|
Goto Forum:
Current Time: Mon Dec 02 23:15:32 CET 2024
Total time taken to generate the page: 0.02477 seconds
|
|
|