13 #ifndef __TODO_MSTSC_H
14 #define __TODO_MSTSC_H
16 #define IS_PERSISTENT(id) (id < 8 && g_pstcache_fd[id] > 0)
20 #define NUM_SETTINGS 4
21 extern LPWSTR lpSettings
[];
23 typedef struct _SETTINGS
26 WCHAR Type
; // holds 'i' or 's'
31 } SETTINGS
, *PSETTINGS
;
33 typedef struct _RDPSETTINGS
37 } RDPSETTINGS
, *PRDPSETTINGS
;
39 /* As slider control can't contain user data, we have to keep an
40 * array of RESOLUTION_INFO to have our own associated data.
42 typedef struct _RESOLUTION_INFO
46 } RESOLUTION_INFO
, *PRESOLUTION_INFO
;
48 typedef struct _SETTINGS_ENTRY
50 struct _SETTINGS_ENTRY
*Blink
;
51 struct _SETTINGS_ENTRY
*Flink
;
55 } SETTINGS_ENTRY
, *PSETTINGS_ENTRY
;
57 typedef struct _DISPLAY_DEVICE_ENTRY
59 struct _DISPLAY_DEVICE_ENTRY
*Flink
;
60 LPWSTR DeviceDescription
;
64 DWORD DeviceStateFlags
;
65 PSETTINGS_ENTRY Settings
; /* sorted by increasing dmPelsHeight, BPP */
67 PRESOLUTION_INFO Resolutions
;
68 DWORD ResolutionsCount
;
69 PSETTINGS_ENTRY CurrentSettings
; /* Points into Settings list */
70 SETTINGS_ENTRY InitialSettings
;
71 } DISPLAY_DEVICE_ENTRY
, *PDISPLAY_DEVICE_ENTRY
;
75 PRDPSETTINGS pRdpSettings
;
76 PDISPLAY_DEVICE_ENTRY DisplayDeviceList
;
77 PDISPLAY_DEVICE_ENTRY CurrentDisplayDevice
;
94 BOOL
InitRdpSettings(PRDPSETTINGS pRdpSettings
);
95 BOOL
OpenRDPConnectDialog(HINSTANCE hInstance
, PRDPSETTINGS pRdpSettings
);
96 BOOL
LoadRdpSettingsFromFile(PRDPSETTINGS pRdpSettings
, LPWSTR lpFile
);
97 BOOL
SaveRdpSettingsToFile(LPWSTR lpFile
, PRDPSETTINGS pRdpSettings
);
98 INT
GetIntegerFromSettings(PRDPSETTINGS pSettings
, LPWSTR lpValue
);
99 LPWSTR
GetStringFromSettings(PRDPSETTINGS pSettings
, LPWSTR lpValue
);
100 BOOL
SetIntegerToSettings(PRDPSETTINGS pRdpSettings
, LPWSTR lpKey
, INT Value
);
101 BOOL
SetStringToSettings(PRDPSETTINGS pRdpSettings
, LPWSTR lpKey
, LPWSTR lpValue
);
102 VOID
SaveAllSettings(PINFO pInfo
);
105 #endif /* __TODO_MSTSC_H */