aboutsummaryrefslogtreecommitdiff
path: root/src/FbTk/ImageControl.hh
diff options
context:
space:
mode:
authorfluxgen <fluxgen>2004-01-02 22:19:39 (GMT)
committerfluxgen <fluxgen>2004-01-02 22:19:39 (GMT)
commita5be2ef67d91f2cba7551e3a52a6b989c87e8611 (patch)
treef51caab62bb1b3994f649dafbd79848bd23d7f9c /src/FbTk/ImageControl.hh
parentb9049cefad82bd62a663e4ae4048d7574563bdfc (diff)
downloadfluxbox_pavel-a5be2ef67d91f2cba7551e3a52a6b989c87e8611.zip
fluxbox_pavel-a5be2ef67d91f2cba7551e3a52a6b989c87e8611.tar.bz2
textured pixmap cache fix
Diffstat (limited to 'src/FbTk/ImageControl.hh')
-rw-r--r--src/FbTk/ImageControl.hh18
1 files changed, 7 insertions, 11 deletions
diff --git a/src/FbTk/ImageControl.hh b/src/FbTk/ImageControl.hh
index 0ccb928..087cd69 100644
--- a/src/FbTk/ImageControl.hh
+++ b/src/FbTk/ImageControl.hh
@@ -22,7 +22,7 @@
22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER 22// FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER
23// DEALINGS IN THE SOFTWARE. 23// DEALINGS IN THE SOFTWARE.
24 24
25// $Id: ImageControl.hh,v 1.7 2004/01/02 13:27:29 fluxgen Exp $ 25// $Id: ImageControl.hh,v 1.8 2004/01/02 22:19:39 fluxgen Exp $
26 26
27#ifndef FBTK_IMAGECONTROL_HH 27#ifndef FBTK_IMAGECONTROL_HH
28#define FBTK_IMAGECONTROL_HH 28#define FBTK_IMAGECONTROL_HH
@@ -79,8 +79,7 @@ private:
79 Search cache for a specific pixmap 79 Search cache for a specific pixmap
80 @return None if no cache was found 80 @return None if no cache was found
81 */ 81 */
82 Pixmap searchCache(unsigned int width, unsigned int height, unsigned long texture_type, 82 Pixmap searchCache(unsigned int width, unsigned int height, const Texture &text) const;
83 const FbTk::Color &color, const FbTk::Color &color_to) const;
84 83
85 void createColorTable(); 84 void createColorTable();
86 bool m_dither; 85 bool m_dither;
@@ -109,24 +108,21 @@ private:
109 108
110 typedef struct Cache { 109 typedef struct Cache {
111 Pixmap pixmap; 110 Pixmap pixmap;
112 111 Pixmap texture_pixmap;
113 unsigned int count, width, height; 112 unsigned int count, width, height;
114 unsigned long pixel1, pixel2, texture; 113 unsigned long pixel1, pixel2, texture;
115 } Cache; 114 } Cache;
116 115
117 struct ltCacheEntry 116 struct ltCacheEntry {
118 { 117 bool operator()(const Cache* s1, const Cache* s2) const {
119 bool operator()(const Cache* s1, const Cache* s2) const 118 return (s1->width < s2->width || s1->width == s2->width &&
120 {
121 return
122 (s1->width < s2->width || s1->width == s2->width &&
123 (s1->height < s2->height || s1->height == s2->height && 119 (s1->height < s2->height || s1->height == s2->height &&
124 (s1->texture < s2->texture || s1->texture == s2->texture && 120 (s1->texture < s2->texture || s1->texture == s2->texture &&
125 s1->pixel1 < s2->pixel1 || s1->pixel1 == s2->pixel1 && 121 s1->pixel1 < s2->pixel1 || s1->pixel1 == s2->pixel1 &&
126 (s1->texture & FbTk::Texture::GRADIENT) && 122 (s1->texture & FbTk::Texture::GRADIENT) &&
127 s1->pixel2 < s2->pixel2) 123 s1->pixel2 < s2->pixel2)
128 )); 124 ));
129 } 125 }
130 }; 126 };
131 127
132 128