Skip to content

Commit 4f271ca

Browse files
author
Eran Leshem
committed
Add power event constants, types, and functions
1 parent 02bf7cc commit 4f271ca

File tree

2 files changed

+44
-1
lines changed

2 files changed

+44
-1
lines changed

contrib/platform/src/com/sun/jna/platform/win32/WinNT.java

+2
Original file line numberDiff line numberDiff line change
@@ -4420,4 +4420,6 @@ public IO_COUNTERS(Pointer memory) {
44204420
class TOKEN_ELEVATION extends Structure {
44214421
public int TokenIsElevated;
44224422
}
4423+
4424+
Guid.GUID GUID_CONSOLE_DISPLAY_STATE = new Guid.GUID("6FE69556-704A-47A0-8F24-C28D936FDA47");
44234425
}

contrib/platform/src/com/sun/jna/platform/win32/WinUser.java

+42-1
Original file line numberDiff line numberDiff line change
@@ -30,7 +30,6 @@
3030
import com.sun.jna.Structure.FieldOrder;
3131
import com.sun.jna.Union;
3232
import com.sun.jna.platform.win32.BaseTSD.ULONG_PTR;
33-
import com.sun.jna.platform.win32.WinDef.HKL;
3433
import com.sun.jna.platform.win32.WinNT.HANDLE;
3534
import com.sun.jna.win32.StdCallLibrary.StdCallCallback;
3635
import com.sun.jna.win32.W32APITypeMapper;
@@ -2088,4 +2087,46 @@ public String toString() {
20882087
* Bitmask for the RESERVED2 key modifier.
20892088
*/
20902089
int MODIFIER_RESERVED2_MASK = 32;
2090+
2091+
class HPOWERNOTIFY extends PVOID {
2092+
public HPOWERNOTIFY() {
2093+
}
2094+
2095+
public HPOWERNOTIFY(Pointer pointer) {
2096+
super(pointer);
2097+
}
2098+
}
2099+
2100+
HPOWERNOTIFY RegisterPowerSettingNotification(
2101+
/*[in]*/ HANDLE hRecipient,
2102+
/*[in]*/ Guid.GUID PowerSettingGuid,
2103+
/*[in]*/ DWORD Flags);
2104+
2105+
BOOL UnregisterPowerSettingNotification(
2106+
/*[in]*/ HPOWERNOTIFY Handle
2107+
);
2108+
2109+
int WM_POWERBROADCAST = 0x0218;
2110+
int PBT_APMSUSPEND = 0x0004;
2111+
int PBT_APMRESUMEAUTOMATIC = 0x0012;
2112+
int PBT_POWERSETTINGCHANGE = 0x8013;
2113+
2114+
@FieldOrder({"PowerSetting", "DataLength", "Data"})
2115+
class POWERBROADCAST_SETTING extends Structure {
2116+
public Guid.GUID PowerSetting;
2117+
public DWORD DataLength;
2118+
public UCHAR Data[] = new UCHAR[1];
2119+
2120+
public POWERBROADCAST_SETTING(Pointer p) {
2121+
super(p);
2122+
read();
2123+
}
2124+
2125+
@Override
2126+
public final void read() {
2127+
int size = (int) getPointer().getLong(fieldOffset("DataLength"));
2128+
Data = new UCHAR[size];
2129+
super.read();
2130+
}
2131+
}
20912132
}

0 commit comments

Comments
 (0)