EmEditor (text editor) Forum Index
   Questions and Answers about Plug-ins
     Cannot understand how EP_GET_MASK works
Register To Post

Flat Previous Topic | Next Topic
Poster Thread
Flint
Posted on: 1/7/2010 12:45 am
Home away from home
Joined: 10/9/2006
From: Moscow
Posts: 155
Cannot understand how EP_GET_MASK works
In developing a plugin I met a problem with the toolbar icon. I followed the instructions in the help file and for 256-color icons I decided to make RGB(1, 1, 1) a transparent color. So, I designed an icon with 4 pixels in corners with this color (to make it look a bit rounded), and in the code I wrote:
case EP_GET_MASK:
	if  ((wParam & BITMAP_COLOR_MASK) == BITMAP_24BIT_COLOR)
		lResult = CLR_NONE;
	else if ((wParam & BITMAP_COLOR_MASK) == BITMAP_256_COLOR)
		lResult = RGB(1, 1, 1);
	break;

However, when I try the plugin in 256-color mode, its toolbar icon becomes garbled. Here is the screenshot of how the icon looks as itself and when shown by EmEditor:



EE 9.07; OS Vista Business SP2 x32 working in true-color mode.


<EDITED>
I performed some more experiments and found the following:
1. If I return CLR_NONE instead of RGB(...), the color with index 0 from the image's index table is used for transparency.
2. The problem seems to lie in fact that my transparent color has index 0. When I move it further in the index table, the problem seems to be gone.

The questions are: what are the "official" recommendations on creating transparent images, and why is all this not described in the help?
Flat Previous Topic | Next Topic


Subject Poster Date
 » Cannot understand how EP_GET_MASK works Flint 1/7/2010 12:45 am
     Re: Cannot understand how EP_GET_MASK works Yutaka 1/7/2010 9:17 am
       Re: Cannot understand how EP_GET_MASK works Flint 1/10/2010 2:25 pm

Register To Post
 
English čeština Deutsch español français italiano 日本語 한국어 Русский 简体中文 繁體中文