Enabled HW acceleration for CopyRegion(). Tested on Haiku and it works. I also implemented FillRegion and InvertRegion. But using different acceleration hooks after one another freezes Haiku, app_server, the accelerant or whatever. I have no clue about accelerants, so if a knowledgable someone would have a look at AccelerantHWInterface.cpp, that'd be great. The software cursor stuff has a cosmetical bug with regards to CopyRegion() too, I don't understand it yet. I also tried to improve StringWidth() and DrawString() preformance. I confirmed that the glyph cache is actually used, but AGGTextRenderer::RenderString() is a dog.

git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@12573 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Stephan Aßmus
2005-05-04 23:48:19 +00:00
parent da95c7c14b
commit fbf48e6437
14 changed files with 373 additions and 77 deletions
+3
View File
@@ -52,6 +52,9 @@ class Painter {
void DetachFromBuffer();
void ConstrainClipping(const BRegion& region);
const BRegion* ClippingRegion() const
{ return fClippingRegion; }
void SetDrawData(const DrawData* data);
// object settings
+14 -10
View File
@@ -47,14 +47,14 @@ public:
RGBColor(uint16 col);
RGBColor(uint8 col);
RGBColor(const RGBColor &col);
RGBColor(void);
RGBColor();
void PrintToStream(void) const;
void PrintToStream() const;
uint8 GetColor8(void);
uint16 GetColor15(void);
uint16 GetColor16(void);
rgb_color GetColor32(void) const;
uint8 GetColor8() const;
uint16 GetColor15() const;
uint16 GetColor16() const;
rgb_color GetColor32() const;
void SetColor(uint8 r, uint8 g, uint8 b, uint8 a=255);
void SetColor(int r, int g, int b, int a=255);
@@ -71,10 +71,14 @@ public:
bool operator==(const RGBColor &col);
protected:
rgb_color color32;
uint16 color16;
uint16 color15;
uint8 color8;
bool update8,update15,update16;
// caching
mutable uint16 color16;
mutable uint16 color15;
mutable uint8 color8;
mutable bool update8;
mutable bool update15;
mutable bool update16;
};
#endif
+1 -1
View File
@@ -64,7 +64,7 @@
# define DEFAULT_BOLD_FONT_FAMILY "Bitstream Vera Sans"
# define FALLBACK_BOLD_FONT_FAMILY "Swis721 BT"
# define DEFAULT_BOLD_FONT_STYLE "Bold"
# define DEFAULT_BOLD_FONT_SIZE 12
# define DEFAULT_BOLD_FONT_SIZE 11
# define DEFAULT_FIXED_FONT_FAMILY "Bitstream Vera Sans Mono"
# define FALLBACK_FIXED_FONT_FAMILY "Courier10 BT"
# define DEFAULT_FIXED_FONT_STYLE "Roman"