Lines 14-19
Link Here
|
14 |
import org.eclipse.swt.internal.*; |
14 |
import org.eclipse.swt.internal.*; |
15 |
import org.eclipse.swt.internal.gdip.*; |
15 |
import org.eclipse.swt.internal.gdip.*; |
16 |
import org.eclipse.swt.internal.win32.*; |
16 |
import org.eclipse.swt.internal.win32.*; |
|
|
17 |
import org.eclipse.swt.widgets.Listener; |
17 |
import org.eclipse.swt.*; |
18 |
import org.eclipse.swt.*; |
18 |
|
19 |
|
19 |
/** |
20 |
/** |
Lines 30-35
Link Here
|
30 |
boolean tracking = DEBUG; |
31 |
boolean tracking = DEBUG; |
31 |
Error [] errors; |
32 |
Error [] errors; |
32 |
Object [] objects; |
33 |
Object [] objects; |
|
|
34 |
Listener listener; |
33 |
|
35 |
|
34 |
/** |
36 |
/** |
35 |
* Palette |
37 |
* Palette |
Lines 125-130
Link Here
|
125 |
if (data != null) { |
127 |
if (data != null) { |
126 |
debug = data.debug; |
128 |
debug = data.debug; |
127 |
tracking = data.tracking; |
129 |
tracking = data.tracking; |
|
|
130 |
listener = data.listener; |
128 |
} |
131 |
} |
129 |
create (data); |
132 |
create (data); |
130 |
init (); |
133 |
init (); |
Lines 270-275
Link Here
|
270 |
void dispose_Object (Object object) { |
273 |
void dispose_Object (Object object) { |
271 |
for (int i=0; i<objects.length; i++) { |
274 |
for (int i=0; i<objects.length; i++) { |
272 |
if (objects [i] == object) { |
275 |
if (objects [i] == object) { |
|
|
276 |
if(listener != null) { |
277 |
Event event = new ResourceEvent(object); |
278 |
event.time = OS.GetMessageTime(); |
279 |
event.data = errors[i]; |
280 |
event.type = SWT.Dispose; |
281 |
listener.handleEvent(event); |
282 |
} |
273 |
objects [i] = null; |
283 |
objects [i] = null; |
274 |
errors [i] = null; |
284 |
errors [i] = null; |
275 |
return; |
285 |
return; |
Lines 779-789
Link Here
|
779 |
return OS.AddFontResourceExW (buffer, OS.FR_PRIVATE, 0) != 0; |
789 |
return OS.AddFontResourceExW (buffer, OS.FR_PRIVATE, 0) != 0; |
780 |
} |
790 |
} |
781 |
|
791 |
|
|
|
792 |
/** |
793 |
* Loads the font specified by a file. The font will be |
794 |
* present in the list of fonts available to the application. |
795 |
* |
796 |
* @param path the font file path |
797 |
* @return whether the font was successfully loaded |
798 |
* |
799 |
* @exception SWTException <ul> |
800 |
* <li>ERROR_NULL_ARGUMENT - if path is null</li> |
801 |
* <li>ERROR_DEVICE_DISPOSED - if the receiver has been disposed</li> |
802 |
* </ul> |
803 |
* |
804 |
* @see Font |
805 |
* |
806 |
* @since 3.3 |
807 |
*/ |
808 |
public boolean loadFont (String path) { |
809 |
checkDevice(); |
810 |
if (path == null) SWT.error (SWT.ERROR_NULL_ARGUMENT); |
811 |
int length = path.length (); |
812 |
char[] buffer = new char [length + 1]; |
813 |
path.getChars (0, length, buffer, 0); |
814 |
return OS.AddFontResourceExW (buffer, OS.FR_PRIVATE, 0) != 0; |
815 |
} |
816 |
|
782 |
void new_Object (Object object) { |
817 |
void new_Object (Object object) { |
783 |
for (int i=0; i<objects.length; i++) { |
818 |
for (int i=0; i<objects.length; i++) { |
784 |
if (objects [i] == null) { |
819 |
if (objects [i] == null) { |
785 |
objects [i] = object; |
820 |
objects [i] = object; |
786 |
errors [i] = new Error (); |
821 |
errors [i] = new Error (); |
|
|
822 |
if(listener != null) { |
823 |
Event event = new ResourceEvent(object); |
824 |
event.time = OS.GetMessageTime(); |
825 |
event.type = SWT.Show; |
826 |
event.data = errors[i]; |
827 |
listener.handleEvent(event); |
828 |
} |
787 |
return; |
829 |
return; |
788 |
} |
830 |
} |
789 |
} |
831 |
} |