diff --git a/src/Makefile.am b/src/Makefile.am
index 38e0145..d8c4494 100644
--- a/src/Makefile.am
+++ b/src/Makefile.am
@@ -45,7 +45,7 @@ pcem_SOURCES += wx-main.cc wx-config_sel.c wx-dialogbox.cc wx-utils.cc wx-app.cc
wx-sdl2-joystick.c wx-sdl2-mouse.c wx-sdl2-keyboard.c wx-sdl2-video.c wx-sdl2-midi.c \
wx-sdl2.c wx-config.c wx-deviceconfig.cc wx-status.cc wx-sdl2-status.c \
wx-resources.cpp wx-thread.c wx-common.c wx-sdl2-display.c wx-sdl2-video-renderer.c wx-sdl2-video-gl3.c \
- wx-glslp-parser.c wx-shader_man.c wx-shaderconfig.cc
+ wx-glslp-parser.c wx-shader_man.c wx-shaderconfig.cc wx-joystickconfig.cc
else
pcem_CFLAGS = $(allegro_CFLAGS) -DPCEM_ALLEGRO
pcem_CXXFLAGS =
diff --git a/src/Makefile.linux32-wx-sdl2 b/src/Makefile.linux32-wx-sdl2
index 347cc77..184f352 100644
--- a/src/Makefile.linux32-wx-sdl2
+++ b/src/Makefile.linux32-wx-sdl2
@@ -23,7 +23,7 @@ vid_tkd8001_ramdac.o vid_tvga.o vid_unk_ramdac.o vid_vga.o vid_voodoo.o vid_wy70
x86seg.o x87.o xtide.o sound_dbopl.o sound_resid.o \
wx-main.o wx-config_sel.o wx-dialogbox.o wx-utils.o wx-app.o wx-sdl2-joystick.o wx-sdl2-mouse.o wx-sdl2-keyboard.o wx-sdl2-video.o wx-sdl2-midi.o \
wx-sdl2.o wx-config.o wx-deviceconfig.o wx-status.o wx-sdl2-status.o wx-resources.o wx-thread.o wx-common.o wx-sdl2-display.o \
-wx-sdl2-video-renderer.o wx-sdl2-video-gl3.o wx-glslp-parser.o wx-shader_man.o wx-shaderconfig.o
+wx-sdl2-video-renderer.o wx-sdl2-video-gl3.o wx-glslp-parser.o wx-shader_man.o wx-shaderconfig.o wx-joystickconfig.o
DBOBJ = cdrom_image.o dbopl.o nukedopl.o vid_cga_comp.o
SIDOBJ = convolve.o convolve-sse.o envelope.o extfilt.o filter.o pot.o sid.o voice.o wave6581__ST.o wave6581_P_T.o wave6581_PS_.o wave6581_PST.o wave8580__ST.o wave8580_P_T.o wave8580_PS_.o wave8580_PST.o wave.o
diff --git a/src/Makefile.linux64-wx-sdl2 b/src/Makefile.linux64-wx-sdl2
index 525152b..c0c9101 100644
--- a/src/Makefile.linux64-wx-sdl2
+++ b/src/Makefile.linux64-wx-sdl2
@@ -23,7 +23,7 @@ vid_tkd8001_ramdac.o vid_tvga.o vid_unk_ramdac.o vid_vga.o vid_voodoo.o vid_wy70
x86seg.o x87.o xtide.o sound_dbopl.o sound_resid.o \
wx-main.o wx-config_sel.o wx-dialogbox.o wx-utils.o wx-app.o wx-sdl2-joystick.o wx-sdl2-mouse.o wx-sdl2-keyboard.o wx-sdl2-video.o wx-sdl2-midi.o \
wx-sdl2.o wx-config.o wx-deviceconfig.o wx-status.o wx-sdl2-status.o wx-resources.o wx-thread.o wx-common.o wx-sdl2-display.o \
-wx-sdl2-video-renderer.o wx-sdl2-video-gl3.o wx-glslp-parser.o wx-shader_man.o wx-shaderconfig.o
+wx-sdl2-video-renderer.o wx-sdl2-video-gl3.o wx-glslp-parser.o wx-shader_man.o wx-shaderconfig.o wx-joystickconfig.o
DBOBJ = cdrom_image.o dbopl.o nukedopl.o vid_cga_comp.o
SIDOBJ = convolve.o convolve-sse.o envelope.o extfilt.o filter.o pot.o sid.o voice.o wave6581__ST.o wave6581_P_T.o wave6581_PS_.o wave6581_PST.o wave8580__ST.o wave8580_P_T.o wave8580_PS_.o wave8580_PST.o wave.o
diff --git a/src/Makefile.mingw-wx-sdl2 b/src/Makefile.mingw-wx-sdl2
index d57f91d..8f89956 100644
--- a/src/Makefile.mingw-wx-sdl2
+++ b/src/Makefile.mingw-wx-sdl2
@@ -24,7 +24,7 @@ OBJ = 386.o 386_dynarec.o 386_dynarec_ops.o 808x.o acer386sx.o ali1429.o amstrad
vid_vga.o vid_voodoo.o vid_wy700.o video.o wd76c10.o x86seg.o x87.o xtide.o win-midi.o \
wx-main.o wx-config_sel.o wx-dialogbox.o wx-utils.o wx-app.o wx-sdl2-joystick.o wx-sdl2-mouse.o wx-sdl2-keyboard.o wx-sdl2-video.o \
wx-sdl2.o wx-config.o wx-deviceconfig.o wx-status.o wx-sdl2-status.o wx-resources.o wx-thread.o wx-common.o wx-sdl2-display-win.o \
- wx-sdl2-video-renderer.o wx-sdl2-video-gl3.o wx-glslp-parser.o wx-shader_man.o wx-shaderconfig.o wx.res
+ wx-sdl2-video-renderer.o wx-sdl2-video-gl3.o wx-glslp-parser.o wx-shader_man.o wx-shaderconfig.o wx-joystickconfig.o wx.res
DBOBJ = cdrom_image.o dbopl.o nukedopl.o vid_cga_comp.o
SIDOBJ = convolve.o convolve-sse.o envelope.o extfilt.o filter.o pot.o sid.o voice.o wave6581__ST.o wave6581_P_T.o wave6581_PS_.o wave6581_PST.o wave8580__ST.o wave8580_P_T.o wave8580_PS_.o wave8580_PST.o wave.o
diff --git a/src/Makefile.mingw-wx-sdl2-network b/src/Makefile.mingw-wx-sdl2-network
index 4e7f135..fa11f96 100644
--- a/src/Makefile.mingw-wx-sdl2-network
+++ b/src/Makefile.mingw-wx-sdl2-network
@@ -24,7 +24,7 @@ OBJ = 386.o 386_dynarec.o 386_dynarec_ops.o 808x.o acer386sx.o ali1429.o amstrad
vid_vga.o vid_voodoo.o vid_wy700.o video.o wd76c10.o x86seg.o x87.o xtide.o win-midi.o \
wx-main.o wx-config_sel.o wx-dialogbox.o wx-utils.o wx-app.o wx-sdl2-joystick.o wx-sdl2-mouse.o wx-sdl2-keyboard.o wx-sdl2-video.o \
wx-sdl2.o wx-config.o wx-deviceconfig.o wx-hostconfig.o wx-status.o wx-sdl2-status.o wx-resources.o wx-thread.o wx-common.o wx-sdl2-display-win.o \
- wx-sdl2-video-renderer.o wx-sdl2-video-gl3.o wx-glslp-parser.o wx-shader_man.o wx-shaderconfig.o wx.res
+ wx-sdl2-video-renderer.o wx-sdl2-video-gl3.o wx-glslp-parser.o wx-shader_man.o wx-shaderconfig.o wx-joystickconfig.o wx.res
DBOBJ = cdrom_image.o dbopl.o nukedopl.o vid_cga_comp.o
SIDOBJ = convolve.o convolve-sse.o envelope.o extfilt.o filter.o pot.o sid.o voice.o wave6581__ST.o wave6581_P_T.o wave6581_PS_.o wave6581_PST.o wave8580__ST.o wave8580_P_T.o wave8580_PS_.o wave8580_PST.o wave.o
NETOBJ = ne2000.o nethandler.o
diff --git a/src/Makefile.osx64-wx-sdl2 b/src/Makefile.osx64-wx-sdl2
index 7efe58b..ca0f59b 100644
--- a/src/Makefile.osx64-wx-sdl2
+++ b/src/Makefile.osx64-wx-sdl2
@@ -22,7 +22,7 @@ vid_tkd8001_ramdac.o vid_tvga.o vid_unk_ramdac.o vid_vga.o vid_voodoo.o vid_wy70
x86seg.o x87.o xtide.o sound_dbopl.o sound_resid.o \
wx-main.o wx-config_sel.o wx-dialogbox.o wx-utils.o wx-app.o wx-sdl2-joystick.o wx-sdl2-mouse.o wx-sdl2-keyboard.o wx-sdl2-video.o wx-sdl2-midi.o \
wx-sdl2.o wx-config.o wx-deviceconfig.o wx-status.o wx-sdl2-status.o wx-resources.o wx-thread.o wx-common.o wx-sdl2-display.o \
-wx-sdl2-video-renderer.o wx-sdl2-video-gl3.o wx-glslp-parser.o wx-shader_man.o wx-shaderconfig.o
+wx-sdl2-video-renderer.o wx-sdl2-video-gl3.o wx-glslp-parser.o wx-shader_man.o wx-shaderconfig.o wx-joystickconfig.o
DBOBJ = cdrom_image.o dbopl.o nukedopl.o vid_cga_comp.o
SIDOBJ = convolve.o convolve-sse.o envelope.o extfilt.o filter.o pot.o sid.o voice.o wave6581__ST.o wave6581_P_T.o wave6581_PS_.o wave6581_PST.o wave8580__ST.o wave8580_P_T.o wave8580_PS_.o wave8580_PST.o wave.o
diff --git a/src/ibm.h b/src/ibm.h
index a4ffc2d..8738bb3 100644
--- a/src/ibm.h
+++ b/src/ibm.h
@@ -581,3 +581,5 @@ void saveconfig(char *fn);
void saveconfig_global_only();
#define UNUSED(x) (void)x
+
+#define MIN(a, b) ((a) < (b) ? (a) : (b))
diff --git a/src/icons/16x16/joystick.png b/src/icons/16x16/joystick.png
new file mode 100644
index 0000000..ee165ef
Binary files /dev/null and b/src/icons/16x16/joystick.png differ
diff --git a/src/icons/32x32/joystick.png b/src/icons/32x32/joystick.png
new file mode 100644
index 0000000..c7fb11e
Binary files /dev/null and b/src/icons/32x32/joystick.png differ
diff --git a/src/pc.xrc b/src/pc.xrc
index 42cb4fb..dc988d6 100644
--- a/src/pc.xrc
+++ b/src/pc.xrc
@@ -1942,6 +1942,102 @@
+
0
diff --git a/src/scsi_aha1540.c b/src/scsi_aha1540.c
index bb39379..e103c35 100644
--- a/src/scsi_aha1540.c
+++ b/src/scsi_aha1540.c
@@ -19,8 +19,6 @@
#include "scsi_aha1540.h"
#include "timer.h"
-#define MIN(a, b) (((a) < (b)) ? (a) : (b))
-
int primed = 0;
typedef enum
{
diff --git a/src/wx-config.c b/src/wx-config.c
index e3ca304..368b9fd 100644
--- a/src/wx-config.c
+++ b/src/wx-config.c
@@ -1,5 +1,6 @@
#include "wx-utils.h"
#include "wx-sdl2.h"
+#include "wx-joystickconfig.h"
#include "ibm.h"
#include "ide.h"
@@ -269,6 +270,7 @@ int config_dlgsave(void* hdlg)
int temp_fda_type, temp_fdb_type;
int temp_mouse_type;
int temp_lpt1_device;
+ int temp_joystick_type;
#ifdef USE_NETWORKING
int temp_network_card;
#endif
@@ -327,8 +329,9 @@ int config_dlgsave(void* hdlg)
h = wx_getdlgitem(hdlg, WX_ID("IDC_COMBODRB"));
temp_fdb_type = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
- // h = wx_getdlgitem(hdlg, ID("IDC_COMBOJOY"));
- // temp_joystick_type = wx_sendmessage(h, CB_GETCURSEL, 0, 0);
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_COMBOJOY"));
+ temp_joystick_type = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
+
h = wx_getdlgitem(hdlg, WX_ID("IDC_COMBOMOUSE"));
temp_mouse_type = settings_list_to_mouse[wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0)];
@@ -468,8 +471,8 @@ int config_dlgsave(void* hdlg)
speedchanged();
-// joystick_type = temp_joystick_type;
-// gameport_update_joystick_type();
+ joystick_type = temp_joystick_type;
+ gameport_update_joystick_type();
return TRUE;
@@ -640,24 +643,24 @@ int config_dlgproc(void* hdlg, int message, INT_PARAM wParam, LONG_PARAM lParam)
else
wx_sendmessage(h, WX_WM_SETTEXT, 0, (LONG_PARAM) "KB");
- // h = wx_getdlgitem(hdlg, ID("IDC_COMBOJOY"));
- // c = 0;
- // while (joystick_get_name(c))
- // {
- // wx_sendmessage(h, CB_ADDSTRING, 0, joystick_get_name(c));
- // c++;
- // }
- // wx_enablewindow(h, TRUE);
- // wx_sendmessage(h, CB_SETCURSEL, joystick_type, 0);
- //
- // h = wx_getdlgitem(hdlg, ID("IDC_JOY1"));
- // wx_enablewindow(h, (joystick_get_max_joysticks(joystick_type) >= 1) ? TRUE : FALSE);
- // h = wx_getdlgitem(hdlg, ID("IDC_JOY2"));
- // wx_enablewindow(h, (joystick_get_max_joysticks(joystick_type) >= 2) ? TRUE : FALSE);
- // h = wx_getdlgitem(hdlg, ID("IDC_JOY3"));
- // wx_enablewindow(h, (joystick_get_max_joysticks(joystick_type) >= 3) ? TRUE : FALSE);
- // h = wx_getdlgitem(hdlg, ID("IDC_JOY4"));
- // wx_enablewindow(h, (joystick_get_max_joysticks(joystick_type) >= 4) ? TRUE : FALSE);
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_COMBOJOY"));
+ c = 0;
+ while (joystick_get_name(c))
+ {
+ wx_sendmessage(h, WX_CB_ADDSTRING, 0, (LONG_PARAM)joystick_get_name(c));
+ c++;
+ }
+ wx_enablewindow(h, TRUE);
+ wx_sendmessage(h, WX_CB_SETCURSEL, joystick_type, 0);
+
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_JOY1"));
+ wx_enablewindow(h, (joystick_get_max_joysticks(joystick_type) >= 1) ? TRUE : FALSE);
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_JOY2"));
+ wx_enablewindow(h, (joystick_get_max_joysticks(joystick_type) >= 2) ? TRUE : FALSE);
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_JOY3"));
+ wx_enablewindow(h, (joystick_get_max_joysticks(joystick_type) >= 3) ? TRUE : FALSE);
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_JOY4"));
+ wx_enablewindow(h, (joystick_get_max_joysticks(joystick_type) >= 4) ? TRUE : FALSE);
h = wx_getdlgitem(hdlg, WX_ID("IDC_COMBOWS"));
wx_sendmessage(h, WX_CB_ADDSTRING, 0, (LONG_PARAM) "System default");
@@ -1028,51 +1031,54 @@ int config_dlgproc(void* hdlg, int message, INT_PARAM wParam, LONG_PARAM lParam)
deviceconfig_open(hdlg, (void *)network_card_getdevice(temp_network_card));
}
#endif
- //
- // case IDC_COMBOJOY:
- // if (HIWORD(wParam) == CBN_SELCHANGE) {
- // h = wx_getdlgitem(hdlg, IDC_COMBOJOY);
- // temp_joystick_type = wx_sendmessage(h, CB_GETCURSEL, 0, 0);
- //
- // h = wx_getdlgitem(hdlg, IDC_JOY1);
- // wx_enablewindow(h,
- // (joystick_get_max_joysticks(temp_joystick_type) >= 1) ?
- // TRUE : FALSE);
- // h = wx_getdlgitem(hdlg, IDC_JOY2);
- // wx_enablewindow(h,
- // (joystick_get_max_joysticks(temp_joystick_type) >= 2) ?
- // TRUE : FALSE);
- // h = wx_getdlgitem(hdlg, IDC_JOY3);
- // wx_enablewindow(h,
- // (joystick_get_max_joysticks(temp_joystick_type) >= 3) ?
- // TRUE : FALSE);
- // h = wx_getdlgitem(hdlg, IDC_JOY4);
- // wx_enablewindow(h,
- // (joystick_get_max_joysticks(temp_joystick_type) >= 4) ?
- // TRUE : FALSE);
- // }
- // break;
- //
- // case IDC_JOY1:
- // h = wx_getdlgitem(hdlg, IDC_COMBOJOY);
- // temp_joystick_type = wx_sendmessage(h, CB_GETCURSEL, 0, 0);
- // joystickconfig_open(hdlg, 0, temp_joystick_type);
- // break;
- // case IDC_JOY2:
- // h = wx_getdlgitem(hdlg, IDC_COMBOJOY);
- // temp_joystick_type = wx_sendmessage(h, CB_GETCURSEL, 0, 0);
- // joystickconfig_open(hdlg, 1, temp_joystick_type);
- // break;
- // case IDC_JOY3:
- // h = wx_getdlgitem(hdlg, IDC_COMBOJOY);
- // temp_joystick_type = wx_sendmessage(h, CB_GETCURSEL, 0, 0);
- // joystickconfig_open(hdlg, 2, temp_joystick_type);
- // break;
- // case IDC_JOY4:
- // h = wx_getdlgitem(hdlg, IDC_COMBOJOY);
- // temp_joystick_type = wx_sendmessage(h, CB_GETCURSEL, 0, 0);
- // joystickconfig_open(hdlg, 3, temp_joystick_type);
- // break;
+ else if (wParam == WX_ID("IDC_COMBOJOY"))
+ {
+ int temp_joystick_type;
+
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_COMBOJOY"));
+ temp_joystick_type = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
+
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_JOY1"));
+ wx_enablewindow(h, (joystick_get_max_joysticks(temp_joystick_type) >= 1) ? TRUE : FALSE);
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_JOY2"));
+ wx_enablewindow(h, (joystick_get_max_joysticks(temp_joystick_type) >= 2) ? TRUE : FALSE);
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_JOY3"));
+ wx_enablewindow(h, (joystick_get_max_joysticks(temp_joystick_type) >= 3) ? TRUE : FALSE);
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_JOY4"));
+ wx_enablewindow(h, (joystick_get_max_joysticks(temp_joystick_type) >= 4) ? TRUE : FALSE);
+ }
+ else if (wParam == WX_ID("IDC_JOY1"))
+ {
+ int temp_joystick_type;
+
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_COMBOJOY"));
+ temp_joystick_type = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
+ joystickconfig_open(hdlg, 0, temp_joystick_type);
+ }
+ else if (wParam == WX_ID("IDC_JOY2"))
+ {
+ int temp_joystick_type;
+
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_COMBOJOY"));
+ temp_joystick_type = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
+ joystickconfig_open(hdlg, 1, temp_joystick_type);
+ }
+ else if (wParam == WX_ID("IDC_JOY3"))
+ {
+ int temp_joystick_type;
+
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_COMBOJOY"));
+ temp_joystick_type = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
+ joystickconfig_open(hdlg, 2, temp_joystick_type);
+ }
+ else if (wParam == WX_ID("IDC_JOY4"))
+ {
+ int temp_joystick_type;
+
+ h = wx_getdlgitem(hdlg, WX_ID("IDC_COMBOJOY"));
+ temp_joystick_type = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
+ joystickconfig_open(hdlg, 3, temp_joystick_type);
+ }
return 0;
}
}
diff --git a/src/wx-joystickconfig.cc b/src/wx-joystickconfig.cc
new file mode 100644
index 0000000..37150c0
--- /dev/null
+++ b/src/wx-joystickconfig.cc
@@ -0,0 +1,358 @@
+#include "wx-joystickconfig.h"
+
+#include "wx-utils.h"
+#include "wx/wxprec.h"
+
+#include "wx-dialogbox.h"
+
+#ifndef WX_PRECOMP
+#include "wx/wx.h"
+#endif
+
+#include "wx/xrc/xmlres.h"
+
+extern "C" {
+void pclog(const char *format, ...);
+#include "config.h"
+#include "device.h"
+#include "gameport.h"
+#include "plat-joystick.h"
+}
+
+#define IDC_CONFIG_BASE 1000
+
+static int joystick_nr;
+static int joystick_config_type;
+#define AXIS_STRINGS_MAX 3
+static char axis_strings[AXIS_STRINGS_MAX][10] = {"X Axis", "Y Axis", "Z Axis"};
+
+static void rebuild_axis_button_selections(void *hdlg)
+{
+ int id = IDC_CONFIG_BASE + 3;
+ void *h;
+ int joystick;
+ int c, d;
+
+ h = wx_getdlgitem(hdlg, IDC_CONFIG_BASE+1);
+ joystick = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
+
+ for (c = 0; c < joystick_get_axis_count(joystick_config_type); c++)
+ {
+ int sel = c;
+
+ h = wx_getdlgitem(hdlg, id);
+ wx_sendmessage(h, WX_CB_RESETCONTENT, 0, 0);
+
+ if (joystick)
+ {
+ for (d = 0; d < plat_joystick_state[joystick-1].nr_axes; d++)
+ {
+ wx_sendmessage(h, WX_CB_ADDSTRING, 0, (LPARAM)(LPCSTR)plat_joystick_state[joystick-1].axis[d].name);
+ if (c < AXIS_STRINGS_MAX)
+ {
+ if (!stricmp(axis_strings[c], plat_joystick_state[joystick-1].axis[d].name))
+ sel = d;
+ }
+ }
+ for (d = 0; d < plat_joystick_state[joystick-1].nr_povs; d++)
+ {
+ char s[80];
+
+ sprintf(s, "%s (X axis)", plat_joystick_state[joystick-1].pov[d].name);
+ wx_sendmessage(h, WX_CB_ADDSTRING, 0, (LPARAM)(LPCSTR)s);
+ sprintf(s, "%s (Y axis)", plat_joystick_state[joystick-1].pov[d].name);
+ wx_sendmessage(h, WX_CB_ADDSTRING, 0, (LPARAM)(LPCSTR)s);
+ }
+ wx_sendmessage(h, WX_CB_SETCURSEL, sel, 0);
+ wx_enablewindow(h, TRUE);
+ }
+ else
+ wx_enablewindow(h, FALSE);
+
+ id += 2;
+ }
+
+ for (c = 0; c < joystick_get_button_count(joystick_config_type); c++)
+ {
+ h = wx_getdlgitem(hdlg, id);
+ wx_sendmessage(h, WX_CB_RESETCONTENT, 0, 0);
+
+ if (joystick)
+ {
+ for (d = 0; d < plat_joystick_state[joystick-1].nr_buttons; d++)
+ wx_sendmessage(h, WX_CB_ADDSTRING, 0, (LPARAM)(LPCSTR)plat_joystick_state[joystick-1].button[d].name);
+ wx_sendmessage(h, WX_CB_SETCURSEL, c, 0);
+ wx_enablewindow(h, TRUE);
+ }
+ else
+ wx_enablewindow(h, FALSE);
+
+ id += 2;
+ }
+
+ for (c = 0; c < joystick_get_pov_count(joystick_config_type)*2; c++)
+ {
+ int sel = c;
+
+ h = wx_getdlgitem(hdlg, id);
+ wx_sendmessage(h, WX_CB_RESETCONTENT, 0, 0);
+
+ if (joystick)
+ {
+ for (d = 0; d < plat_joystick_state[joystick-1].nr_povs; d++)
+ {
+ char s[80];
+
+ sprintf(s, "%s (X axis)", plat_joystick_state[joystick-1].pov[d].name);
+ wx_sendmessage(h, WX_CB_ADDSTRING, 0, (LPARAM)(LPCSTR)s);
+ sprintf(s, "%s (Y axis)", plat_joystick_state[joystick-1].pov[d].name);
+ wx_sendmessage(h, WX_CB_ADDSTRING, 0, (LPARAM)(LPCSTR)s);
+ }
+ for (d = 0; d < plat_joystick_state[joystick-1].nr_axes; d++)
+ {
+ wx_sendmessage(h, WX_CB_ADDSTRING, 0, (LPARAM)(LPCSTR)plat_joystick_state[joystick-1].axis[d].name);
+ }
+ wx_sendmessage(h, WX_CB_SETCURSEL, sel, 0);
+ wx_enablewindow(h, TRUE);
+ }
+ else
+ wx_enablewindow(h, FALSE);
+
+ id += 2;
+ }
+
+}
+
+static int get_axis(void *hdlg, int id)
+{
+ void *h = wx_getdlgitem(hdlg, id);
+ int axis_sel = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
+ int nr_axes = plat_joystick_state[joystick_state[joystick_nr].plat_joystick_nr-1].nr_axes;
+
+ if (axis_sel < nr_axes)
+ return axis_sel;
+
+ axis_sel -= nr_axes;
+ if (axis_sel & 1)
+ return POV_Y | (axis_sel >> 1);
+ else
+ return POV_X | (axis_sel >> 1);
+}
+
+static int get_pov(void *hdlg, int id)
+{
+ void *h = wx_getdlgitem(hdlg, id);
+ int axis_sel = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
+ int nr_povs = plat_joystick_state[joystick_state[joystick_nr].plat_joystick_nr-1].nr_povs*2;
+
+ if (axis_sel < nr_povs)
+ {
+ if (axis_sel & 1)
+ return POV_Y | (axis_sel >> 1);
+ else
+ return POV_X | (axis_sel >> 1);
+ }
+
+ return axis_sel - nr_povs;
+}
+
+static int joystickconfig_dlgproc(void* hdlg, int message, INT_PARAM wParam, LONG_PARAM lParam)
+{
+ switch (message)
+ {
+ case WX_INITDIALOG:
+ {
+// rebuild_axis_button_selections(hdlg);
+
+ void *h = wx_getdlgitem(hdlg, IDC_CONFIG_BASE+1);
+ int c;
+ int id = IDC_CONFIG_BASE + 3;
+ int joystick = joystick_state[joystick_nr].plat_joystick_nr;
+
+ wx_sendmessage(h, WX_CB_SETCURSEL, joystick, 0);
+
+ rebuild_axis_button_selections(hdlg);
+
+ if (joystick_state[joystick_nr].plat_joystick_nr)
+ {
+ int nr_axes = plat_joystick_state[joystick-1].nr_axes;
+ int nr_povs = plat_joystick_state[joystick-1].nr_povs;
+ for (c = 0; c < joystick_get_axis_count(joystick_config_type); c++)
+ {
+ int mapping = joystick_state[joystick_nr].axis_mapping[c];
+
+ h = wx_getdlgitem(hdlg, id);
+ if (mapping & POV_X)
+ wx_sendmessage(h, WX_CB_SETCURSEL, nr_axes + (mapping & 3)*2, 0);
+ else if (mapping & POV_Y)
+ wx_sendmessage(h, WX_CB_SETCURSEL, nr_axes + (mapping & 3)*2 + 1, 0);
+ else
+ wx_sendmessage(h, WX_CB_SETCURSEL, mapping, 0);
+ id += 2;
+ }
+ for (c = 0; c < joystick_get_button_count(joystick_config_type); c++)
+ {
+ h = wx_getdlgitem(hdlg, id);
+ wx_sendmessage(h, WX_CB_SETCURSEL, joystick_state[joystick_nr].button_mapping[c], 0);
+ id += 2;
+ }
+ for (c = 0; c < joystick_get_pov_count(joystick_config_type); c++)
+ {
+ int mapping;
+
+ h = wx_getdlgitem(hdlg, id);
+ mapping = joystick_state[joystick_nr].pov_mapping[c][0];
+ if (mapping & POV_X)
+ wx_sendmessage(h, WX_CB_SETCURSEL, (mapping & 3)*2, 0);
+ else if (mapping & POV_Y)
+ wx_sendmessage(h, WX_CB_SETCURSEL, (mapping & 3)*2 + 1, 0);
+ else
+ wx_sendmessage(h, WX_CB_SETCURSEL, mapping + nr_povs*2, 0);
+ id += 2;
+ h = wx_getdlgitem(hdlg, id);
+ mapping = joystick_state[joystick_nr].pov_mapping[c][1];
+ if (mapping & POV_X)
+ wx_sendmessage(h, WX_CB_SETCURSEL, (mapping & 3)*2, 0);
+ else if (mapping & POV_Y)
+ wx_sendmessage(h, WX_CB_SETCURSEL, (mapping & 3)*2 + 1, 0);
+ else
+ wx_sendmessage(h, WX_CB_SETCURSEL, mapping + nr_povs*2, 0);
+ id += 2;
+ }
+ }
+ }
+ return TRUE;
+
+ case WX_COMMAND:
+ switch (LOWORD(wParam))
+ {
+ case IDC_CONFIG_BASE+1:
+// if (HIWORD(wParam) == CBN_SELCHANGE)
+ rebuild_axis_button_selections(hdlg);
+ break;
+
+ case wxID_OK:
+ {
+ void *h;
+ int c;
+ int id = IDC_CONFIG_BASE + 3;
+
+ h = wx_getdlgitem(hdlg, IDC_CONFIG_BASE+1);
+ joystick_state[joystick_nr].plat_joystick_nr = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
+
+ if (joystick_state[joystick_nr].plat_joystick_nr)
+ {
+ for (c = 0; c < joystick_get_axis_count(joystick_config_type); c++)
+ {
+ joystick_state[joystick_nr].axis_mapping[c] = get_axis(hdlg, id);
+ id += 2;
+ }
+ for (c = 0; c < joystick_get_button_count(joystick_config_type); c++)
+ {
+ h = wx_getdlgitem(hdlg, id);
+ joystick_state[joystick_nr].button_mapping[c] = wx_sendmessage(h, WX_CB_GETCURSEL, 0, 0);
+ id += 2;
+ }
+ for (c = 0; c < joystick_get_pov_count(joystick_config_type); c++)
+ {
+ h = wx_getdlgitem(hdlg, id);
+ joystick_state[joystick_nr].pov_mapping[c][0] = get_pov(hdlg, id);
+ id += 2;
+ h = wx_getdlgitem(hdlg, id);
+ joystick_state[joystick_nr].pov_mapping[c][1] = get_pov(hdlg, id);
+ id += 2;
+ }
+ }
+ }
+ case wxID_CANCEL:
+ wx_enddialog(hdlg, 0);
+ return TRUE;
+ }
+ break;
+ }
+ return FALSE;
+}
+
+void joystickconfig_open(void *hwnd, int joy_nr, int type)
+{
+ char s[257];
+ int c;
+
+ PCemDialogBox dialog((wxWindow*) hwnd, joystickconfig_dlgproc);
+// dialog.SetWindowStyle(wxDEFAULT_DIALOG_STYLE | wxRESIZE_BORDER);
+
+ joystick_nr = joy_nr;
+ joystick_config_type = type;
+
+ dialog.SetTitle("Joystick Configuration");
+
+ wxFlexGridSizer* root = new wxFlexGridSizer(0, 1, 0, 0);
+ root->SetFlexibleDirection(wxBOTH);
+ root->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_SPECIFIED);
+ dialog.SetSizer(root);
+
+ wxFlexGridSizer* sizer = new wxFlexGridSizer(0, 2, 0, 0);
+ sizer->SetFlexibleDirection(wxBOTH);
+ sizer->SetNonFlexibleGrowMode(wxFLEX_GROWMODE_SPECIFIED);
+ sizer->AddGrowableCol(1);
+ root->Add(sizer, 1, wxEXPAND, 5);
+
+ int id = IDC_CONFIG_BASE;
+
+
+ sizer->Add(new wxStaticText(&dialog, id++, "Device:"), 0, wxALL | wxALIGN_CENTER_VERTICAL, 5);
+ wxBoxSizer* comboSizer = new wxBoxSizer(wxHORIZONTAL);
+ sizer->Add(comboSizer, 1, wxEXPAND, 5);
+ wxComboBox* cb = new wxComboBox(&dialog, id++);
+ cb->SetEditable(false);
+ comboSizer->Add(cb, 1, wxALL, 5);
+
+ cb->Append("None");
+ for (c = 0; c < joysticks_present; c++)
+ cb->Append(plat_joystick_state[c].name);
+
+ for (c = 0; c < joystick_get_axis_count(type); c++)
+ {
+ sprintf(s, "Axis %i:", c);
+ sizer->Add(new wxStaticText(&dialog, id++, s), 0, wxALL | wxALIGN_CENTER_VERTICAL, 5);
+ wxBoxSizer* comboSizer = new wxBoxSizer(wxHORIZONTAL);
+ sizer->Add(comboSizer, 1, wxEXPAND, 5);
+ wxComboBox* cb = new wxComboBox(&dialog, id++);
+ cb->SetEditable(false);
+ comboSizer->Add(cb, 1, wxALL, 5);
+ }
+
+ for (c = 0; c < joystick_get_button_count(type); c++)
+ {
+ sprintf(s, "Button %i:", c);
+ sizer->Add(new wxStaticText(&dialog, id++, s), 0, wxALL | wxALIGN_CENTER_VERTICAL, 5);
+ wxBoxSizer* comboSizer = new wxBoxSizer(wxHORIZONTAL);
+ sizer->Add(comboSizer, 1, wxEXPAND, 5);
+ wxComboBox* cb = new wxComboBox(&dialog, id++);
+ cb->SetEditable(false);
+ comboSizer->Add(cb, 1, wxALL, 5);
+ }
+
+ for (c = 0; c < joystick_get_pov_count(type)*2; c++)
+ {
+ sprintf(s, "POV %i:", c);
+ sizer->Add(new wxStaticText(&dialog, id++, s), 0, wxALL | wxALIGN_CENTER_VERTICAL, 5);
+ wxBoxSizer* comboSizer = new wxBoxSizer(wxHORIZONTAL);
+ sizer->Add(comboSizer, 1, wxEXPAND, 5);
+ wxComboBox* cb = new wxComboBox(&dialog, id++);
+ cb->SetEditable(false);
+ comboSizer->Add(cb, 1, wxALL, 5);
+ }
+
+ wxBoxSizer* okCancelSizer = new wxBoxSizer(wxHORIZONTAL);
+ root->Add(okCancelSizer, 1, wxEXPAND, 5);
+
+ okCancelSizer->Add(0, 0, 1, wxEXPAND, 5);
+ okCancelSizer->Add(new wxButton(&dialog, wxID_OK), 0, wxALL, 5);
+ okCancelSizer->Add(new wxButton(&dialog, wxID_CANCEL), 0, wxALL, 5);
+
+ dialog.Fit();
+ dialog.OnInit();
+ dialog.ShowModal();
+ dialog.Destroy();
+}
diff --git a/src/wx-joystickconfig.h b/src/wx-joystickconfig.h
new file mode 100644
index 0000000..32c9aad
--- /dev/null
+++ b/src/wx-joystickconfig.h
@@ -0,0 +1,15 @@
+#ifndef SRC_WX_DEVICECONFIG_H_
+#define SRC_WX_DEVICECONFIG_H_
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+#include
+void joystickconfig_open(void *hwnd, int joy_nr, int type);
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* SRC_WX_DEVICECONFIG_H_ */
diff --git a/src/wx-resources.cpp b/src/wx-resources.cpp
index cc3f835..5ba3393 100644
--- a/src/wx-resources.cpp
+++ b/src/wx-resources.cpp
@@ -850,11 +850,73 @@ static unsigned char xml_res_file_15[] = {
117,197,150,115,135,151,229,88,93,14,192,233,243,63,1,6,0,218,58,168,206,
121,36,62,30,0,0,0,0,73,69,78,68,174,66,96,130};
-static size_t xml_res_size_16 = 2048;
+static size_t xml_res_size_16 = 1208;
static unsigned char xml_res_file_16[] = {
137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,32,0,0,0,32,8,6,0,0,
0,115,122,122,244,0,0,0,25,116,69,88,116,83,111,102,116,119,97,114,101,
0,65,100,111,98,101,32,73,109,97,103,101,82,101,97,100,121,113,201,101,
+60,0,0,4,90,73,68,65,84,120,218,236,87,221,79,91,101,24,255,189,231,156,
+74,217,44,140,169,43,180,27,236,131,133,176,121,163,55,38,91,102,116,134,
+152,32,6,73,92,87,194,159,48,37,153,100,119,198,37,222,44,220,44,126,45,
+49,222,120,101,128,118,174,96,182,185,155,9,8,154,232,197,62,162,110,67,
+41,107,41,165,173,48,144,22,232,105,207,151,207,123,122,90,97,155,91,219,
+128,222,236,109,159,246,61,231,188,239,121,126,207,215,121,126,135,25,134,
+129,255,115,72,252,135,49,86,210,158,225,173,248,46,205,112,68,23,114,39,
+4,178,225,105,134,177,151,147,56,74,135,106,201,0,138,93,219,221,115,202,
+175,216,42,222,106,184,210,11,81,82,160,91,184,69,18,67,183,31,105,63,216,
+165,72,242,234,224,215,190,190,99,197,2,97,60,4,69,120,64,58,217,115,106,
+200,225,112,180,206,37,83,232,18,5,188,184,227,57,232,96,230,71,164,237,
+63,207,70,241,81,98,30,162,166,64,205,102,47,7,46,156,111,47,6,68,177,30,
+168,148,36,169,181,165,229,53,248,47,12,226,203,180,140,47,238,134,161,
+104,26,52,18,93,37,61,244,111,35,72,146,100,131,166,40,173,124,15,73,234,
+113,55,22,138,117,255,84,48,120,154,4,111,190,209,138,189,59,93,216,66,
+86,87,104,42,236,186,134,74,154,215,108,221,130,237,53,53,60,24,72,36,226,
+167,139,53,174,216,16,112,107,118,119,159,236,185,94,231,116,86,184,92,
+181,168,174,222,134,84,42,133,229,212,10,82,203,73,196,227,9,204,205,205,
+65,150,229,140,223,215,255,2,173,15,145,164,55,42,4,25,146,123,225,187,
+83,189,132,248,131,240,244,52,185,89,133,102,232,208,117,18,30,10,235,63,
+30,139,245,242,181,214,30,108,84,8,116,30,207,161,193,64,31,85,92,230,240,
+161,67,168,117,187,32,8,2,68,81,52,133,207,185,210,177,177,209,62,43,246,
+250,70,2,200,123,97,33,56,21,60,19,10,133,176,111,79,3,10,225,179,36,26,
+141,158,225,107,138,181,190,84,0,166,23,46,125,51,52,112,253,218,13,84,
+85,85,153,86,115,183,43,217,44,150,22,230,241,253,232,240,64,41,214,151,
+10,32,239,133,164,32,242,109,235,19,215,74,228,100,41,214,151,3,128,91,
+166,62,88,53,44,15,71,45,197,250,114,0,108,248,120,2,224,9,128,178,1,220,
+95,8,198,127,239,1,182,6,5,169,47,147,218,253,91,55,148,188,157,93,231,
+233,124,251,186,162,166,181,230,147,79,209,224,114,215,241,206,7,85,81,
+232,88,65,106,105,17,142,234,26,232,180,198,176,92,196,44,11,73,199,80,
+127,223,87,111,63,140,160,60,12,128,232,57,222,233,103,130,208,81,187,171,
+30,142,237,207,64,167,102,195,168,243,9,217,12,116,122,236,118,30,247,96,
+102,102,134,250,126,174,5,243,86,60,59,59,139,253,77,77,208,232,94,170,
+40,129,145,8,116,239,229,133,123,136,71,166,137,178,233,1,223,128,73,213,
+180,71,1,16,61,30,175,159,78,116,236,218,187,15,142,29,117,104,30,56,7,
+231,79,183,144,36,179,174,157,253,24,44,189,202,41,23,188,4,34,153,92,194,
+242,202,42,210,43,50,110,254,114,147,204,21,144,37,197,31,14,95,197,213,
+111,47,99,254,165,3,184,227,61,129,212,159,49,68,166,130,220,21,1,159,175,
+127,29,136,181,0,72,121,167,169,188,177,113,63,182,57,157,120,101,248,44,
+118,255,62,9,226,90,24,191,1,76,156,251,28,130,156,134,97,81,177,124,15,
+96,2,131,192,132,28,0,73,194,251,23,47,33,22,187,2,137,226,23,106,106,196,
+200,171,239,225,47,242,214,228,228,31,22,136,127,60,145,7,32,29,243,120,
+3,52,109,59,112,240,121,56,107,157,80,105,179,70,214,104,162,45,167,192,
+208,32,42,25,48,174,152,199,217,200,231,62,203,127,97,16,24,221,12,129,
+13,6,223,71,151,69,93,37,162,170,66,34,124,9,10,213,173,223,126,229,233,
+113,145,88,83,7,207,137,60,35,170,164,214,218,214,253,238,59,184,51,49,
+177,190,180,152,90,72,122,60,37,113,14,252,200,172,54,172,182,100,48,45,
+55,163,155,48,91,78,77,67,189,27,175,183,28,197,39,159,126,214,150,39,173,
+121,0,118,158,187,161,112,24,35,35,163,57,183,150,246,178,242,216,97,152,
+94,51,96,183,219,97,213,137,125,45,0,198,99,24,137,68,224,118,239,220,212,
+39,31,215,97,230,139,69,40,10,164,84,16,68,186,24,69,83,115,51,47,153,77,
+81,78,165,141,137,219,183,77,93,247,179,98,67,150,211,63,44,46,226,240,
+143,227,227,216,172,23,86,30,86,78,227,184,174,66,138,89,85,224,160,121,
+61,201,179,37,190,47,150,51,120,86,207,147,76,243,28,40,148,161,149,149,
+246,7,200,222,198,15,110,185,108,189,180,168,127,11,48,0,131,178,248,28,
+75,223,85,170,0,0,0,0,73,69,78,68,174,66,96,130};
+
+static size_t xml_res_size_17 = 2048;
+static unsigned char xml_res_file_17[] = {
+137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,32,0,0,0,32,8,6,0,0,
+0,115,122,122,244,0,0,0,25,116,69,88,116,83,111,102,116,119,97,114,101,
+0,65,100,111,98,101,32,73,109,97,103,101,82,101,97,100,121,113,201,101,
60,0,0,3,34,105,84,88,116,88,77,76,58,99,111,109,46,97,100,111,98,101,46,
120,109,112,0,0,0,0,0,60,63,120,112,97,99,107,101,116,32,98,101,103,105,
110,61,34,239,187,191,34,32,105,100,61,34,87,53,77,48,77,112,67,101,104,
@@ -951,8 +1013,8 @@ static unsigned char xml_res_file_16[] = {
141,29,39,33,92,73,190,59,9,96,233,32,252,79,128,1,0,168,254,212,85,21,
212,140,221,0,0,0,0,73,69,78,68,174,66,96,130};
-static size_t xml_res_size_17 = 1971;
-static unsigned char xml_res_file_17[] = {
+static size_t xml_res_size_18 = 1971;
+static unsigned char xml_res_file_18[] = {
137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,32,0,0,0,32,8,6,0,0,
0,115,122,122,244,0,0,0,25,116,69,88,116,83,111,102,116,119,97,114,101,
0,65,100,111,98,101,32,73,109,97,103,101,82,101,97,100,121,113,201,101,
@@ -1052,8 +1114,8 @@ static unsigned char xml_res_file_17[] = {
60,140,219,229,21,77,101,241,228,231,127,2,12,0,35,187,154,106,194,98,206,
112,0,0,0,0,73,69,78,68,174,66,96,130};
-static size_t xml_res_size_18 = 2315;
-static unsigned char xml_res_file_18[] = {
+static size_t xml_res_size_19 = 2315;
+static unsigned char xml_res_file_19[] = {
137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,32,0,0,0,32,8,6,0,0,
0,115,122,122,244,0,0,0,25,116,69,88,116,83,111,102,116,119,97,114,101,
0,65,100,111,98,101,32,73,109,97,103,101,82,101,97,100,121,113,201,101,
@@ -1169,8 +1231,8 @@ static unsigned char xml_res_file_18[] = {
131,67,255,223,235,63,2,12,0,116,106,129,252,126,87,16,179,0,0,0,0,73,69,
78,68,174,66,96,130};
-static size_t xml_res_size_19 = 1468;
-static unsigned char xml_res_file_19[] = {
+static size_t xml_res_size_20 = 1468;
+static unsigned char xml_res_file_20[] = {
137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,32,0,0,0,32,8,6,0,0,
0,115,122,122,244,0,0,0,25,116,69,88,116,83,111,102,116,119,97,114,101,
0,65,100,111,98,101,32,73,109,97,103,101,82,101,97,100,121,113,201,101,
@@ -1244,8 +1306,8 @@ static unsigned char xml_res_file_19[] = {
16,218,51,250,191,28,188,211,127,207,255,22,96,0,113,192,97,41,118,79,50,
219,0,0,0,0,73,69,78,68,174,66,96,130};
-static size_t xml_res_size_20 = 2051;
-static unsigned char xml_res_file_20[] = {
+static size_t xml_res_size_21 = 2051;
+static unsigned char xml_res_file_21[] = {
137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,32,0,0,0,32,8,6,0,0,
0,115,122,122,244,0,0,0,25,116,69,88,116,83,111,102,116,119,97,114,101,
0,65,100,111,98,101,32,73,109,97,103,101,82,101,97,100,121,113,201,101,
@@ -1348,8 +1410,8 @@ static unsigned char xml_res_file_20[] = {
128,139,229,223,112,255,19,96,0,111,126,151,122,57,77,224,198,0,0,0,0,73,
69,78,68,174,66,96,130};
-static size_t xml_res_size_21 = 2007;
-static unsigned char xml_res_file_21[] = {
+static size_t xml_res_size_22 = 2007;
+static unsigned char xml_res_file_22[] = {
137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,32,0,0,0,32,8,6,0,0,
0,115,122,122,244,0,0,0,25,116,69,88,116,83,111,102,116,119,97,114,101,
0,65,100,111,98,101,32,73,109,97,103,101,82,101,97,100,121,113,201,101,
@@ -1450,8 +1512,8 @@ static unsigned char xml_res_file_21[] = {
188,16,216,199,255,233,248,143,0,3,0,149,57,130,56,76,237,54,38,0,0,0,0,
73,69,78,68,174,66,96,130};
-static size_t xml_res_size_22 = 1967;
-static unsigned char xml_res_file_22[] = {
+static size_t xml_res_size_23 = 1967;
+static unsigned char xml_res_file_23[] = {
137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,32,0,0,0,32,8,6,0,0,
0,115,122,122,244,0,0,0,25,116,69,88,116,83,111,102,116,119,97,114,101,
0,65,100,111,98,101,32,73,109,97,103,101,82,101,97,100,121,113,201,101,
@@ -1549,8 +1611,8 @@ static unsigned char xml_res_file_22[] = {
118,74,132,55,233,55,235,255,245,144,69,191,33,187,30,155,236,92,142,255,
9,48,0,241,195,153,86,37,156,12,221,0,0,0,0,73,69,78,68,174,66,96,130};
-static size_t xml_res_size_23 = 2051;
-static unsigned char xml_res_file_23[] = {
+static size_t xml_res_size_24 = 2051;
+static unsigned char xml_res_file_24[] = {
137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,32,0,0,0,32,8,6,0,0,
0,115,122,122,244,0,0,0,25,116,69,88,116,83,111,102,116,119,97,114,101,
0,65,100,111,98,101,32,73,109,97,103,101,82,101,97,100,121,113,201,101,
@@ -1652,8 +1714,8 @@ static unsigned char xml_res_file_23[] = {
250,58,190,198,55,48,18,49,104,115,122,47,134,29,3,118,202,219,228,255,
5,24,0,238,123,163,24,29,62,142,101,0,0,0,0,73,69,78,68,174,66,96,130};
-static size_t xml_res_size_24 = 1382;
-static unsigned char xml_res_file_24[] = {
+static size_t xml_res_size_25 = 1382;
+static unsigned char xml_res_file_25[] = {
137,80,78,71,13,10,26,10,0,0,0,13,73,72,68,82,0,0,0,32,0,0,0,32,8,6,0,0,
0,115,122,122,244,0,0,0,25,116,69,88,116,83,111,102,116,119,97,114,101,
0,65,100,111,98,101,32,73,109,97,103,101,82,101,97,100,121,113,201,101,
@@ -1722,8 +1784,8 @@ static unsigned char xml_res_file_24[] = {
87,93,129,205,251,40,255,176,89,15,134,167,154,149,127,4,24,0,227,17,114,
29,252,169,144,138,0,0,0,0,73,69,78,68,174,66,96,130};
-static size_t xml_res_size_25 = 128075;
-static unsigned char xml_res_file_25[] = {
+static size_t xml_res_size_26 = 132267;
+static unsigned char xml_res_file_26[] = {
60,63,120,109,108,32,118,101,114,115,105,111,110,61,34,49,46,48,34,32,101,
110,99,111,100,105,110,103,61,34,85,84,70,45,56,34,63,62,10,60,33,45,45,
32,104,116,116,112,58,47,47,100,111,99,115,46,119,120,119,105,100,103,101,
@@ -5748,84 +5810,249 @@ static unsigned char xml_res_file_25[] = {
98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,
106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,
101,99,116,32,99,108,97,115,115,61,34,110,111,116,101,98,111,111,107,112,
-97,103,101,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,
-98,101,108,47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,101,
+97,103,101,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,101,
108,101,99,116,101,100,62,48,60,47,115,101,108,101,99,116,101,100,62,10,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,105,116,109,97,112,62,119,
120,45,114,101,115,111,117,114,99,101,115,46,99,112,112,36,105,99,111,110,
-115,95,51,50,120,51,50,95,110,101,116,119,111,114,107,95,101,116,104,101,
-114,110,101,116,46,112,110,103,60,47,98,105,116,109,97,112,62,10,32,32,
+115,95,51,50,120,51,50,95,106,111,121,115,116,105,99,107,46,112,110,103,
+60,47,98,105,116,109,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,80,97,110,
+101,108,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,
+116,121,108,101,62,119,120,84,65,66,95,84,82,65,86,69,82,83,65,76,60,47,
+115,116,121,108,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,70,108,101,
+120,71,114,105,100,83,105,122,101,114,34,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,60,114,111,119,115,62,50,60,47,114,111,119,
+115,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,99,111,
+108,115,62,48,60,47,99,111,108,115,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,118,103,97,112,62,48,60,47,118,103,97,112,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,104,103,97,
+112,62,48,60,47,104,103,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,103,114,111,119,97,98,108,101,99,111,108,115,47,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,103,114,111,
+119,97,98,108,101,114,111,119,115,47,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,
+34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,
-97,115,115,61,34,119,120,80,97,110,101,108,34,32,110,97,109,101,61,34,109,
-95,112,97,110,101,108,110,101,116,34,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,60,115,116,121,108,101,62,119,120,84,65,66,95,84,82,65,
-86,69,82,83,65,76,60,47,115,116,121,108,101,62,10,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,
-61,34,119,120,70,108,101,120,71,114,105,100,83,105,122,101,114,34,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,114,111,119,115,
-62,48,60,47,114,111,119,115,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,60,99,111,108,115,62,50,60,47,99,111,108,115,62,10,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,118,103,97,112,62,48,
-60,47,118,103,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,104,103,97,112,62,48,60,47,104,103,97,112,62,10,32,32,32,32,
+97,115,115,61,34,119,120,70,108,101,120,71,114,105,100,83,105,122,101,114,
+34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,114,111,119,115,62,48,60,47,114,111,119,115,62,10,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,99,111,108,115,62,
+52,60,47,99,111,108,115,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,118,103,97,112,62,48,60,47,118,103,97,112,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
+104,103,97,112,62,48,60,47,104,103,97,112,62,10,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,103,114,111,119,97,98,108,
101,99,111,108,115,62,49,60,47,103,114,111,119,97,98,108,101,99,111,108,
-115,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,103,
-114,111,119,97,98,108,101,114,111,119,115,47,62,10,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,
-115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
-110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,76,
-60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,
-114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
-111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,83,116,97,116,
-105,99,84,101,120,116,34,32,110,97,109,101,61,34,109,95,115,116,97,116,
-105,99,84,101,120,116,55,48,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,60,115,105,122,101,62,56,48,44,45,49,60,47,
-115,105,122,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,60,108,97,98,101,108,62,78,101,116,119,111,114,107,32,99,
-97,114,100,32,58,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,119,114,97,112,62,45,49,60,
-47,119,114,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,
-108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,
-111,110,62,49,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,
+115,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,103,114,111,119,97,98,108,101,114,111,119,115,47,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,
+99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,110,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,102,108,97,103,62,119,120,65,76,76,32,124,32,119,120,65,76,73,71,
+78,95,67,69,78,84,69,82,95,86,69,82,84,73,67,65,76,60,47,102,108,97,103,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,83,116,97,116,
+105,99,84,101,120,116,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,60,115,105,122,101,62,56,48,44,45,49,
+60,47,115,105,122,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,62,74,111,121,115,
+116,105,99,107,58,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,119,114,97,112,
+62,45,49,60,47,119,114,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,
+98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,
+105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,
+49,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,69,
88,80,65,78,68,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,
-111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,
-120,66,111,120,83,105,122,101,114,34,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,60,111,114,105,101,110,116,62,119,120,
-72,79,82,73,90,79,78,84,65,76,60,47,111,114,105,101,110,116,62,10,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,
-101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,
-34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,110,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,
+53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,
+97,115,115,61,34,119,120,66,111,120,83,105,122,101,114,34,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
+111,114,105,101,110,116,62,119,120,72,79,82,73,90,79,78,84,65,76,60,47,
+111,114,105,101,110,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,
+97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,110,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,102,108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,
62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,60,102,108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,62,10,
+32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,
+101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,
+61,34,119,120,67,111,109,98,111,66,111,120,34,32,110,97,109,101,61,34,73,
+68,67,95,67,79,77,66,79,74,79,89,34,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,116,
+121,108,101,62,119,120,67,66,95,68,82,79,80,68,79,87,78,124,119,120,67,
+66,95,82,69,65,68,79,78,76,89,60,47,115,116,121,108,101,62,10,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,
-98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,67,111,109,98,111,
-66,111,120,34,32,110,97,109,101,61,34,73,68,67,95,67,79,77,66,79,95,78,
-69,84,67,65,82,68,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,60,115,116,121,108,101,62,119,120,67,66,
-95,68,82,79,80,68,79,87,78,124,119,120,67,66,95,82,69,65,68,79,78,76,89,
-60,47,115,116,121,108,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,105,122,101,62,51,53,48,44,
-45,49,60,47,115,105,122,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,60,118,97,108,117,101,47,62,10,32,
+32,32,32,60,115,105,122,101,62,51,53,48,44,45,49,60,47,115,105,122,101,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,118,97,108,117,101,47,62,10,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,60,99,111,110,116,101,110,116,47,62,10,32,32,32,32,32,32,32,32,32,32,
+60,99,111,110,116,101,110,116,47,62,10,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,
+99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,
+99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,
+101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,
+34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
+111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,71,114,105,100,
+83,105,122,101,114,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,60,114,111,119,115,62,48,60,47,114,111,119,115,62,
10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
-47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+99,111,108,115,62,52,60,47,99,111,108,115,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,
+108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,
+112,116,105,111,110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,
+97,103,62,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,
+101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,
+32,99,108,97,115,115,61,34,119,120,66,117,116,116,111,110,34,32,110,97,
+109,101,61,34,73,68,67,95,74,79,89,49,34,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,
+108,62,74,111,121,115,116,105,99,107,32,49,46,46,46,60,47,108,97,98,101,
+108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,60,100,101,102,97,117,108,116,62,49,60,47,100,101,102,97,
+117,108,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,
+105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,
+116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,76,60,47,102,108,
+97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,66,117,
+116,116,111,110,34,32,110,97,109,101,61,34,73,68,67,95,74,79,89,50,34,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,60,108,97,98,101,108,62,74,111,121,115,116,105,99,107,32,50,46,
+46,46,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,100,101,102,97,117,108,116,
+62,49,60,47,100,101,102,97,117,108,116,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,
+61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
+110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,
+65,76,76,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,
+47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,
+115,115,61,34,119,120,66,117,116,116,111,110,34,32,110,97,109,101,61,34,
+73,68,67,95,74,79,89,51,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,62,74,111,121,
+115,116,105,99,107,32,51,46,46,46,60,47,108,97,98,101,108,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
+100,101,102,97,117,108,116,62,49,60,47,100,101,102,97,117,108,116,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,
+99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,110,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,102,108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,62,10,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
+98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,
+106,101,99,116,32,99,108,97,115,115,61,34,119,120,66,117,116,116,111,110,
+34,32,110,97,109,101,61,34,73,68,67,95,74,79,89,52,34,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,
+97,98,101,108,62,74,111,121,115,116,105,99,107,32,52,46,46,46,60,47,108,
+97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,60,100,101,102,97,117,108,116,62,49,60,47,100,
+101,102,97,117,108,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,
+101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,
+61,34,110,111,116,101,98,111,111,107,112,97,103,101,34,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,47,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,60,115,101,108,101,99,116,101,100,62,48,60,
+47,115,101,108,101,99,116,101,100,62,10,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,60,98,105,116,109,97,112,62,119,120,45,114,101,115,111,117,114,
+99,101,115,46,99,112,112,36,105,99,111,110,115,95,51,50,120,51,50,95,110,
+101,116,119,111,114,107,95,101,116,104,101,114,110,101,116,46,112,110,103,
+60,47,98,105,116,109,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,80,97,110,
+101,108,34,32,110,97,109,101,61,34,109,95,112,97,110,101,108,110,101,116,
+34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,116,121,
+108,101,62,119,120,84,65,66,95,84,82,65,86,69,82,83,65,76,60,47,115,116,
+121,108,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,
+98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,70,108,101,120,71,
+114,105,100,83,105,122,101,114,34,62,10,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,60,114,111,119,115,62,48,60,47,114,111,119,115,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,99,111,108,
+115,62,50,60,47,99,111,108,115,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,118,103,97,112,62,48,60,47,118,103,97,112,62,10,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,104,103,97,112,62,
+48,60,47,104,103,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,103,114,111,119,97,98,108,101,99,111,108,115,62,49,60,47,
+103,114,111,119,97,98,108,101,99,111,108,115,62,10,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,103,114,111,119,97,98,108,101,114,111,
+119,115,47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,
+105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,
+110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
+102,108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,
+114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,
+115,115,61,34,119,120,83,116,97,116,105,99,84,101,120,116,34,32,110,97,
+109,101,61,34,109,95,115,116,97,116,105,99,84,101,120,116,55,48,34,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,
+105,122,101,62,56,48,44,45,49,60,47,115,105,122,101,62,10,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,
+62,78,101,116,119,111,114,107,32,99,97,114,100,32,58,60,47,108,97,98,101,
+108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,119,114,97,112,62,45,49,60,47,119,114,97,112,62,10,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,
+106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,
+114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,111,112,116,105,111,110,62,49,60,47,111,112,116,105,
+111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,102,108,97,103,62,119,120,69,88,80,65,78,68,60,47,102,108,97,103,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,
+111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,
+32,99,108,97,115,115,61,34,119,120,66,111,120,83,105,122,101,114,34,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
+111,114,105,101,110,116,62,119,120,72,79,82,73,90,79,78,84,65,76,60,47,
+111,114,105,101,110,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,
34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
@@ -5835,140 +6062,81 @@ static unsigned char xml_res_file_25[] = {
32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,
47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,
-115,115,61,34,119,120,66,105,116,109,97,112,66,117,116,116,111,110,34,32,
-110,97,109,101,61,34,73,68,67,95,67,79,78,70,73,71,85,82,69,95,78,69,84,
-67,65,82,68,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,60,115,116,121,108,101,62,119,120,66,85,95,65,
-85,84,79,68,82,65,87,60,47,115,116,121,108,101,62,10,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,105,116,
-109,97,112,62,119,120,45,114,101,115,111,117,114,99,101,115,46,99,112,112,
-36,105,99,111,110,115,95,49,54,120,49,54,95,115,101,116,116,105,110,103,
-95,116,111,111,108,115,46,112,110,103,60,47,98,105,116,109,97,112,62,10,
+115,115,61,34,119,120,67,111,109,98,111,66,111,120,34,32,110,97,109,101,
+61,34,73,68,67,95,67,79,77,66,79,95,78,69,84,67,65,82,68,34,62,10,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,60,100,101,102,97,117,108,116,62,48,60,47,100,101,102,97,117,108,
-116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,
-101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,
+60,115,116,121,108,101,62,119,120,67,66,95,68,82,79,80,68,79,87,78,124,
+119,120,67,66,95,82,69,65,68,79,78,76,89,60,47,115,116,121,108,101,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,60,115,105,122,101,62,51,53,48,44,45,49,60,47,115,105,122,101,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,60,118,97,108,117,101,47,62,10,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,99,111,110,116,101,110,
+116,47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,
-32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,
-60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,60,47,111,98,
-106,101,99,116,62,10,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,
-99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,
-32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,49,60,47,111,112,
-116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,
-119,120,69,88,80,65,78,68,60,47,102,108,97,103,62,10,32,32,32,32,32,32,
-32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,
-62,10,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,
-97,115,115,61,34,119,120,66,111,120,83,105,122,101,114,34,62,10,32,32,32,
-32,32,32,32,32,32,32,32,32,60,111,114,105,101,110,116,62,119,120,72,79,
-82,73,90,79,78,84,65,76,60,47,111,114,105,101,110,116,62,10,32,32,32,32,
-32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,
-34,115,112,97,99,101,114,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,60,111,112,116,105,111,110,62,49,60,47,111,112,116,105,111,110,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,
-69,88,80,65,78,68,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,
-114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,105,122,101,
-62,48,44,48,60,47,115,105,122,101,62,10,32,32,32,32,32,32,32,32,32,32,32,
-32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,
-105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,
-112,116,105,111,110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,76,
-60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
-98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,
-115,115,61,34,119,120,66,117,116,116,111,110,34,32,110,97,109,101,61,34,
-119,120,73,68,95,79,75,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,108,97,98,101,108,62,79,75,60,47,108,97,98,101,108,62,10,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,100,101,102,97,117,108,
-116,62,49,60,47,100,101,102,97,117,108,116,62,10,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,
-32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,
-32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,
-122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,110,62,
-10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,
-65,76,76,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,
+98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,
+101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,
+111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,
-108,97,115,115,61,34,119,120,66,117,116,116,111,110,34,32,110,97,109,101,
-61,34,119,120,73,68,95,67,65,78,67,69,76,34,62,10,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,62,67,97,110,99,101,108,
-60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,60,100,101,102,97,117,108,116,62,48,60,47,100,101,102,97,117,108,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,66,105,116,
+109,97,112,66,117,116,116,111,110,34,32,110,97,109,101,61,34,73,68,67,95,
+67,79,78,70,73,71,85,82,69,95,78,69,84,67,65,82,68,34,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,
+116,121,108,101,62,119,120,66,85,95,65,85,84,79,68,82,65,87,60,47,115,116,
+121,108,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,98,105,116,109,97,112,62,119,120,45,114,101,
+115,111,117,114,99,101,115,46,99,112,112,36,105,99,111,110,115,95,49,54,
+120,49,54,95,115,101,116,116,105,110,103,95,116,111,111,108,115,46,112,
+110,103,60,47,98,105,116,109,97,112,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,100,101,102,97,117,108,
+116,62,48,60,47,100,101,102,97,117,108,116,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,
+116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,
116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,
99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,
116,62,10,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,
10,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,
-32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,60,47,111,98,106,101,
-99,116,62,10,32,32,60,47,111,98,106,101,99,116,62,10,32,32,60,111,98,106,
-101,99,116,32,99,108,97,115,115,61,34,119,120,68,105,97,108,111,103,34,
-32,110,97,109,101,61,34,72,100,78,101,119,68,108,103,34,62,10,32,32,32,
-32,60,116,105,116,108,101,62,78,101,119,32,72,97,114,100,32,68,105,115,
-99,60,47,116,105,116,108,101,62,10,32,32,32,32,60,99,101,110,116,101,114,
-101,100,62,49,60,47,99,101,110,116,101,114,101,100,62,10,32,32,32,32,60,
-111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,80,97,110,101,
-108,34,32,110,97,109,101,61,34,82,79,79,84,95,80,65,78,69,76,34,62,10,32,
-32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,
-120,70,108,101,120,71,114,105,100,83,105,122,101,114,34,62,10,32,32,32,
-32,32,32,32,32,60,114,111,119,115,62,48,60,47,114,111,119,115,62,10,32,
-32,32,32,32,32,32,32,60,99,111,108,115,62,49,60,47,99,111,108,115,62,10,
-32,32,32,32,32,32,32,32,60,118,103,97,112,62,48,60,47,118,103,97,112,62,
-10,32,32,32,32,32,32,32,32,60,104,103,97,112,62,48,60,47,104,103,97,112,
-62,10,32,32,32,32,32,32,32,32,60,103,114,111,119,97,98,108,101,99,111,108,
-115,47,62,10,32,32,32,32,32,32,32,32,60,103,114,111,119,97,98,108,101,114,
-111,119,115,47,62,10,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,
-99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,
-32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,49,60,47,111,112,
-116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,
-119,120,69,88,80,65,78,68,60,47,102,108,97,103,62,10,32,32,32,32,32,32,
-32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,
-62,10,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,
-97,115,115,61,34,119,120,70,108,101,120,71,114,105,100,83,105,122,101,114,
-34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,114,111,119,115,62,48,60,
-47,114,111,119,115,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,99,111,
-108,115,62,51,60,47,99,111,108,115,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,60,118,103,97,112,62,48,60,47,118,103,97,112,62,10,32,32,32,32,32,
-32,32,32,32,32,32,32,60,104,103,97,112,62,48,60,47,104,103,97,112,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,60,103,114,111,119,97,98,108,101,99,
-111,108,115,62,49,60,47,103,114,111,119,97,98,108,101,99,111,108,115,62,
-10,32,32,32,32,32,32,32,32,32,32,32,32,60,103,114,111,119,97,98,108,101,
-114,111,119,115,47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,
-106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,
-109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,
-111,110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,73,71,78,95,67,
-69,78,84,69,82,95,86,69,82,84,73,67,65,76,124,119,120,65,76,76,60,47,102,
-108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,
-100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,
-34,119,120,83,116,97,116,105,99,84,101,120,116,34,62,10,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,60,115,105,122,101,62,56,48,44,45,49,60,
-47,115,105,122,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-60,108,97,98,101,108,62,70,105,108,101,58,60,47,108,97,98,101,108,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,119,114,97,112,62,45,
-49,60,47,119,114,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,
-47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,
-98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,
-101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,
-105,111,110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,76,60,47,102,
-108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,
-100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,
-34,119,120,84,101,120,116,67,116,114,108,34,32,110,97,109,101,61,34,73,
-68,67,95,69,68,73,84,67,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,115,116,121,108,101,62,119,120,84,69,95,82,69,65,68,79,78,76,
-89,60,47,115,116,121,108,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,60,115,105,122,101,62,51,53,48,44,45,49,60,47,115,105,122,101,
-62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,118,97,108,117,
-101,47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,
+32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,
+122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,60,111,
+112,116,105,111,110,62,49,60,47,111,112,116,105,111,110,62,10,32,32,32,
+32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,69,88,80,65,78,68,60,
+47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,
+101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,
+32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,66,111,
+120,83,105,122,101,114,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,
+111,114,105,101,110,116,62,119,120,72,79,82,73,90,79,78,84,65,76,60,47,
+111,114,105,101,110,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,
+98,106,101,99,116,32,99,108,97,115,115,61,34,115,112,97,99,101,114,34,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,
+62,49,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,102,108,97,103,62,119,120,69,88,80,65,78,68,60,47,102,108,
+97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,
+101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,115,105,122,101,62,48,44,48,60,47,115,105,122,101,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,
+97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,
+111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,102,108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,
+47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,66,117,116,
+116,111,110,34,32,110,97,109,101,61,34,119,120,73,68,95,79,75,34,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,62,
+79,75,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,100,101,102,97,117,108,116,62,49,60,47,100,101,102,97,117,
+108,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,
101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,
99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,
32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,
@@ -5978,69 +6146,180 @@ static unsigned char xml_res_file_25[] = {
10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,
62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,
-66,105,116,109,97,112,66,117,116,116,111,110,34,32,110,97,109,101,61,34,
-73,68,67,95,67,70,73,76,69,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,60,115,116,121,108,101,62,119,120,66,85,95,65,85,84,79,68,82,
-65,87,60,47,115,116,121,108,101,62,10,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,60,98,105,116,109,97,112,62,119,120,45,114,101,115,111,117,
-114,99,101,115,46,99,112,112,36,105,99,111,110,115,95,49,54,120,49,54,95,
-102,111,108,100,101,114,46,112,110,103,60,47,98,105,116,109,97,112,62,10,
+66,117,116,116,111,110,34,32,110,97,109,101,61,34,119,120,73,68,95,67,65,
+78,67,69,76,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
+108,97,98,101,108,62,67,97,110,99,101,108,60,47,108,97,98,101,108,62,10,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,100,101,102,97,117,108,
116,62,48,60,47,100,101,102,97,117,108,116,62,10,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,
32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,
-32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,112,
-97,99,101,114,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,
-112,116,105,111,110,62,49,60,47,111,112,116,105,111,110,62,10,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,69,88,80,
-65,78,68,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,105,122,101,62,48,44,48,
-60,47,115,105,122,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,
-98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,
-101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,
-34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
-110,62,49,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,60,102,108,97,103,62,119,120,69,88,80,65,78,68,60,47,102,
-108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,
-100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,
-34,119,120,70,108,101,120,71,114,105,100,83,105,122,101,114,34,62,10,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,114,111,119,115,62,48,60,
-47,114,111,119,115,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-60,99,111,108,115,62,52,60,47,99,111,108,115,62,10,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,60,118,103,97,112,62,48,60,47,118,103,97,112,
-62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,104,103,97,112,
-62,48,60,47,104,103,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,103,114,111,119,97,98,108,101,99,111,108,115,47,62,10,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,103,114,111,119,97,98,108,
-101,114,111,119,115,47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,
-114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,
-110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,
-108,97,103,62,119,120,65,76,73,71,78,95,67,69,78,84,69,82,95,86,69,82,84,
-73,67,65,76,124,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,
-53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,
-119,120,83,116,97,116,105,99,84,101,120,116,34,62,10,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,62,83,101,
-99,116,111,114,115,58,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,60,119,114,97,112,62,45,49,60,47,
-119,114,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,
+32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,60,47,111,
+98,106,101,99,116,62,10,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,
+10,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,60,47,111,98,106,
+101,99,116,62,10,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,
+34,119,120,68,105,97,108,111,103,34,32,110,97,109,101,61,34,72,100,78,101,
+119,68,108,103,34,62,10,32,32,32,32,60,116,105,116,108,101,62,78,101,119,
+32,72,97,114,100,32,68,105,115,99,60,47,116,105,116,108,101,62,10,32,32,
+32,32,60,99,101,110,116,101,114,101,100,62,49,60,47,99,101,110,116,101,
+114,101,100,62,10,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,
+115,61,34,119,120,80,97,110,101,108,34,32,110,97,109,101,61,34,82,79,79,
+84,95,80,65,78,69,76,34,62,10,32,32,32,32,32,32,60,111,98,106,101,99,116,
+32,99,108,97,115,115,61,34,119,120,70,108,101,120,71,114,105,100,83,105,
+122,101,114,34,62,10,32,32,32,32,32,32,32,32,60,114,111,119,115,62,48,60,
+47,114,111,119,115,62,10,32,32,32,32,32,32,32,32,60,99,111,108,115,62,49,
+60,47,99,111,108,115,62,10,32,32,32,32,32,32,32,32,60,118,103,97,112,62,
+48,60,47,118,103,97,112,62,10,32,32,32,32,32,32,32,32,60,104,103,97,112,
+62,48,60,47,104,103,97,112,62,10,32,32,32,32,32,32,32,32,60,103,114,111,
+119,97,98,108,101,99,111,108,115,47,62,10,32,32,32,32,32,32,32,32,60,103,
+114,111,119,97,98,108,101,114,111,119,115,47,62,10,32,32,32,32,32,32,32,
+32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,
+114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,60,111,112,116,
+105,111,110,62,49,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,
+32,32,32,32,60,102,108,97,103,62,119,120,69,88,80,65,78,68,60,47,102,108,
+97,103,62,10,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,
+53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,60,
+111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,70,108,101,120,
+71,114,105,100,83,105,122,101,114,34,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,60,114,111,119,115,62,48,60,47,114,111,119,115,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,60,99,111,108,115,62,51,60,47,99,111,108,115,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,60,118,103,97,112,62,48,60,47,118,
+103,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,104,103,97,112,
+62,48,60,47,104,103,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,
+103,114,111,119,97,98,108,101,99,111,108,115,62,49,60,47,103,114,111,119,
+97,98,108,101,99,111,108,115,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+60,103,114,111,119,97,98,108,101,114,111,119,115,47,62,10,32,32,32,32,32,
32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,
115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,
+32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,
+110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,
+119,120,65,76,73,71,78,95,67,69,78,84,69,82,95,86,69,82,84,73,67,65,76,
+124,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,
+101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,
+99,116,32,99,108,97,115,115,61,34,119,120,83,116,97,116,105,99,84,101,120,
+116,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,105,
+122,101,62,56,48,44,45,49,60,47,115,105,122,101,62,10,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,62,70,105,108,101,58,
+60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,60,119,114,97,112,62,45,49,60,47,119,114,97,112,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,
+34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,
+111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,
+62,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,
+101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,
+99,116,32,99,108,97,115,115,61,34,119,120,84,101,120,116,67,116,114,108,
+34,32,110,97,109,101,61,34,73,68,67,95,69,68,73,84,67,34,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,116,121,108,101,62,119,120,
+84,69,95,82,69,65,68,79,78,76,89,60,47,115,116,121,108,101,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,105,122,101,62,51,53,48,
+44,45,49,60,47,115,105,122,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,118,97,108,117,101,47,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,
+114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,110,62,10,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,65,
+76,76,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,
+97,115,115,61,34,119,120,66,105,116,109,97,112,66,117,116,116,111,110,34,
+32,110,97,109,101,61,34,73,68,67,95,67,70,73,76,69,34,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,60,115,116,121,108,101,62,119,120,66,
+85,95,65,85,84,79,68,82,65,87,60,47,115,116,121,108,101,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,105,116,109,97,112,62,119,
+120,45,114,101,115,111,117,114,99,101,115,46,99,112,112,36,105,99,111,110,
+115,95,49,54,120,49,54,95,102,111,108,100,101,114,46,112,110,103,60,47,
+98,105,116,109,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,100,101,102,97,117,108,116,62,48,60,47,100,101,102,97,117,108,116,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,
+116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,
+108,97,115,115,61,34,115,112,97,99,101,114,34,62,10,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,49,60,47,111,112,116,
+105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,
+97,103,62,119,120,69,88,80,65,78,68,60,47,102,108,97,103,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,
+98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,115,105,122,101,62,48,44,48,60,47,115,105,122,101,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,
+32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,
+115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,60,111,112,116,105,111,110,62,49,60,47,111,112,116,105,111,
+110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,
+119,120,69,88,80,65,78,68,60,47,102,108,97,103,62,10,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,
+100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,
+101,99,116,32,99,108,97,115,115,61,34,119,120,70,108,101,120,71,114,105,
+100,83,105,122,101,114,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,60,114,111,119,115,62,48,60,47,114,111,119,115,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,60,99,111,108,115,62,52,60,47,99,
+111,108,115,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,118,
+103,97,112,62,48,60,47,118,103,97,112,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,60,104,103,97,112,62,48,60,47,104,103,97,112,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,103,114,111,119,97,98,
+108,101,99,111,108,115,47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,60,103,114,111,119,97,98,108,101,114,111,119,115,47,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,
+108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
+110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,73,71,78,
+95,67,69,78,84,69,82,95,86,69,82,84,73,67,65,76,124,119,120,65,76,76,60,
+47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,
+99,116,32,99,108,97,115,115,61,34,119,120,83,116,97,116,105,99,84,101,120,
+116,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,108,97,98,101,108,62,83,101,99,116,111,114,115,58,60,47,108,97,98,101,
+108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
+119,114,97,112,62,45,49,60,47,119,114,97,112,62,10,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,
+116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,
+10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,
+105,111,110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,
+76,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,
+101,99,116,32,99,108,97,115,115,61,34,119,120,84,101,120,116,67,116,114,
+108,34,32,110,97,109,101,61,34,73,68,67,95,69,68,73,84,49,34,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,118,97,108,117,
+101,47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,
+111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,
+122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,
+111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
+102,108,97,103,62,119,120,65,76,73,71,78,95,67,69,78,84,69,82,95,86,69,
+82,84,73,67,65,76,124,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,
+62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,
+34,119,120,83,116,97,116,105,99,84,101,120,116,34,62,10,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,62,72,
+101,97,100,115,58,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,60,119,114,97,112,62,45,49,60,47,119,
+114,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,
+105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,
116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,60,102,108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,62,10,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,
114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,
61,34,119,120,84,101,120,116,67,116,114,108,34,32,110,97,109,101,61,34,
-73,68,67,95,69,68,73,84,49,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+73,68,67,95,69,68,73,84,50,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,60,118,97,108,117,101,47,62,10,32,32,32,32,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,
@@ -6055,52 +6334,9 @@ static unsigned char xml_res_file_25[] = {
101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,83,116,97,116,
105,99,84,101,120,116,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,60,108,97,98,101,108,62,72,101,97,100,115,58,60,47,108,
-97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,119,114,97,112,62,45,49,60,47,119,114,97,112,62,10,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,
-62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,
-101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,
-98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,
-101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,110,62,10,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,
-119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,
-114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,84,101,120,
-116,67,116,114,108,34,32,110,97,109,101,61,34,73,68,67,95,69,68,73,84,50,
-34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
-118,97,108,117,101,47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,
-61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,
-111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,60,102,108,97,103,62,119,120,65,76,73,71,78,95,67,69,78,84,
-69,82,95,86,69,82,84,73,67,65,76,124,119,120,65,76,76,60,47,102,108,97,
-103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,
-114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,
-97,115,115,61,34,119,120,83,116,97,116,105,99,84,101,120,116,34,62,10,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,
-108,62,67,121,108,105,110,100,101,114,115,58,60,47,108,97,98,101,108,62,
-10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,119,114,
-97,112,62,45,49,60,47,119,114,97,112,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,
-108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
-110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,76,60,47,
-102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,
-116,32,99,108,97,115,115,61,34,119,120,84,101,120,116,67,116,114,108,34,
-32,110,97,109,101,61,34,73,68,67,95,69,68,73,84,51,34,62,10,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,118,97,108,117,101,47,
+32,32,32,32,32,32,60,108,97,98,101,108,62,67,121,108,105,110,100,101,114,
+115,58,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,119,114,97,112,62,45,49,60,47,119,114,97,112,
62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,
106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
@@ -6108,126 +6344,139 @@ static unsigned char xml_res_file_25[] = {
114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,
110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,
-108,97,103,62,119,120,65,76,73,71,78,95,67,69,78,84,69,82,95,86,69,82,84,
-73,67,65,76,124,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,
-53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,
-119,120,83,116,97,116,105,99,84,101,120,116,34,62,10,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,62,83,105,
-122,101,58,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,60,119,114,97,112,62,45,49,60,47,119,114,
-97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,
-111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,
-122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,
-111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
-102,108,97,103,62,119,120,65,76,73,71,78,95,67,69,78,84,69,82,95,86,69,
-82,84,73,67,65,76,124,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,
-62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,
-34,119,120,83,116,97,116,105,99,84,101,120,116,34,32,110,97,109,101,61,
-34,73,68,67,95,84,69,88,84,49,34,62,10,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,62,48,109,98,60,47,108,
-97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,119,114,97,112,62,45,49,60,47,119,114,97,112,62,10,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,
-62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,
-101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,
-106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,
-101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,
-99,116,32,99,108,97,115,115,61,34,115,112,97,99,101,114,34,62,10,32,32,
-32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,49,60,
-47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,60,102,108,97,103,62,119,120,69,88,80,65,78,68,60,47,102,108,97,103,
-62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,
-62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,60,115,105,122,101,62,48,44,48,60,47,115,105,122,101,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,
-32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,
-115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,
-112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
-102,108,97,103,62,119,120,65,76,76,32,124,32,119,120,65,76,73,71,78,95,
-67,69,78,84,69,82,95,86,69,82,84,73,67,65,76,60,47,102,108,97,103,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,
-53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,83,
-116,97,116,105,99,84,101,120,116,34,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,60,108,97,98,101,108,62,84,121,112,101,58,60,47,108,97,
-98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,119,
-114,97,112,62,45,49,60,47,119,114,97,112,62,10,32,32,32,32,32,32,32,32,
-32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,
-32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,
-32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,
-122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,105,111,110,62,
-10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,
-65,76,76,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,
+108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,
+60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,
+120,84,101,120,116,67,116,114,108,34,32,110,97,109,101,61,34,73,68,67,95,
+69,68,73,84,51,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,118,97,108,117,101,47,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,
32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,
-108,97,115,115,61,34,119,120,67,111,109,98,111,66,111,120,34,32,110,97,
-109,101,61,34,73,68,67,95,72,68,84,89,80,69,34,62,10,32,32,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,60,115,116,121,108,101,62,119,120,67,66,95,
-68,82,79,80,68,79,87,78,124,119,120,67,66,95,82,69,65,68,79,78,76,89,60,
-47,115,116,121,108,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,60,115,105,122,101,62,51,53,48,44,45,49,60,47,115,105,122,101,62,
-10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,118,97,108,117,101,
-47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,99,111,110,
-116,101,110,116,47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,
-111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,
-98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,
-101,99,116,32,99,108,97,115,115,61,34,115,112,97,99,101,114,34,62,10,32,
-32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,49,
-60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,60,102,108,97,103,62,119,120,69,88,80,65,78,68,60,47,102,108,97,103,
+108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
+110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,73,71,78,
+95,67,69,78,84,69,82,95,86,69,82,84,73,67,65,76,124,119,120,65,76,76,60,
+47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,
+99,116,32,99,108,97,115,115,61,34,119,120,83,116,97,116,105,99,84,101,120,
+116,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,108,97,98,101,108,62,83,105,122,101,58,60,47,108,97,98,101,108,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,119,114,
+97,112,62,45,49,60,47,119,114,97,112,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,
+108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
+110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,73,71,78,
+95,67,69,78,84,69,82,95,86,69,82,84,73,67,65,76,124,119,120,65,76,76,60,
+47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,
+99,116,32,99,108,97,115,115,61,34,119,120,83,116,97,116,105,99,84,101,120,
+116,34,32,110,97,109,101,61,34,73,68,67,95,84,69,88,84,49,34,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,
+108,62,48,109,98,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,32,60,119,114,97,112,62,45,49,60,47,119,
+114,97,112,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,112,97,99,
+101,114,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,
+105,111,110,62,49,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,69,88,80,65,78,68,
+60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
+98,111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,115,105,122,101,62,48,44,48,60,47,115,
+105,122,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,
+101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,
+99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
+110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,76,32,124,32,119,120,
+65,76,73,71,78,95,67,69,78,84,69,82,95,86,69,82,84,73,67,65,76,60,47,102,
+108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,
+100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,
+34,119,120,83,116,97,116,105,99,84,101,120,116,34,62,10,32,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,62,84,121,112,101,
+58,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,60,119,114,97,112,62,45,49,60,47,119,114,97,112,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,
+32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,
+32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,
+61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,112,116,
+105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,102,108,
+97,103,62,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,98,111,114,
+100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,
+101,99,116,32,99,108,97,115,115,61,34,119,120,67,111,109,98,111,66,111,
+120,34,32,110,97,109,101,61,34,73,68,67,95,72,68,84,89,80,69,34,62,10,32,
+32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,115,116,121,108,101,62,
+119,120,67,66,95,68,82,79,80,68,79,87,78,124,119,120,67,66,95,82,69,65,
+68,79,78,76,89,60,47,115,116,121,108,101,62,10,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,32,60,115,105,122,101,62,51,53,48,44,45,49,60,47,115,
+105,122,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,118,
+97,108,117,101,47,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
+60,99,111,110,116,101,110,116,47,62,10,32,32,32,32,32,32,32,32,32,32,32,
+32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,
+32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,112,97,99,101,
+114,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,
+111,110,62,49,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,69,88,80,65,78,68,60,
+47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,
+111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,60,115,105,122,101,62,48,44,48,60,47,115,
+105,122,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,
+101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,
+116,62,10,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,
+32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,
+115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,
+32,60,111,112,116,105,111,110,62,49,60,47,111,112,116,105,111,110,62,10,
+32,32,32,32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,69,88,80,65,
+78,68,60,47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,60,98,111,
+114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,
+32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,
+120,66,111,120,83,105,122,101,114,34,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,60,111,114,105,101,110,116,62,119,120,72,79,82,73,90,79,78,84,65,
+76,60,47,111,114,105,101,110,116,62,10,32,32,32,32,32,32,32,32,32,32,32,
+32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,112,97,99,101,
+114,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,
+111,110,62,49,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,
+32,32,32,32,32,32,32,60,102,108,97,103,62,119,120,69,88,80,65,78,68,60,
+47,102,108,97,103,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,
+111,114,100,101,114,62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,
+32,32,32,32,32,32,32,32,32,32,60,115,105,122,101,62,48,44,48,60,47,115,
+105,122,101,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,
+101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,
+99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
+110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,
62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,
62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,60,115,105,122,101,62,48,44,48,60,47,115,105,122,101,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,
-32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,
-32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,60,
-111,98,106,101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,
-116,101,109,34,62,10,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
-110,62,49,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,
-32,60,102,108,97,103,62,119,120,69,88,80,65,78,68,60,47,102,108,97,103,
-62,10,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,
-47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,60,111,98,
-106,101,99,116,32,99,108,97,115,115,61,34,119,120,66,111,120,83,105,122,
-101,114,34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,114,105,101,
-110,116,62,119,120,72,79,82,73,90,79,78,84,65,76,60,47,111,114,105,101,
-110,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,
-116,32,99,108,97,115,115,61,34,115,112,97,99,101,114,34,62,10,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,49,60,47,
-111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-60,102,108,97,103,62,119,120,69,88,80,65,78,68,60,47,102,108,97,103,62,
-10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,
-62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,60,115,105,122,101,62,48,44,48,60,47,115,105,122,101,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,99,116,62,10,32,
-32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,
-115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,32,32,32,32,
-32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,48,60,47,111,
-112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,
-102,108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,62,10,32,32,32,
-32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,62,53,60,47,
-98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,
-60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,66,117,116,
-116,111,110,34,32,110,97,109,101,61,34,119,120,73,68,95,79,75,34,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,108,62,
-79,75,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,32,60,100,101,102,97,117,108,116,62,49,60,47,100,101,102,97,117,
-108,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,
-101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,106,101,
-99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,101,99,116,
-32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,34,62,10,
-32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,110,62,
-48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,32,32,
-32,32,32,60,102,108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,62,
-10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,
+32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,
+66,117,116,116,111,110,34,32,110,97,109,101,61,34,119,120,73,68,95,79,75,
+34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,108,97,98,101,
+108,62,79,75,60,47,108,97,98,101,108,62,10,32,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,32,60,100,101,102,97,117,108,116,62,49,60,47,100,101,102,
+97,117,108,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,
+98,106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,47,111,98,
+106,101,99,116,62,10,32,32,32,32,32,32,32,32,32,32,32,32,60,111,98,106,
+101,99,116,32,99,108,97,115,115,61,34,115,105,122,101,114,105,116,101,109,
+34,62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,111,112,116,105,111,
+110,62,48,60,47,111,112,116,105,111,110,62,10,32,32,32,32,32,32,32,32,32,
+32,32,32,32,32,60,102,108,97,103,62,119,120,65,76,76,60,47,102,108,97,103,
+62,10,32,32,32,32,32,32,32,32,32,32,32,32,32,32,60,98,111,114,100,101,114,
62,53,60,47,98,111,114,100,101,114,62,10,32,32,32,32,32,32,32,32,32,32,
32,32,32,32,60,111,98,106,101,99,116,32,99,108,97,115,115,61,34,119,120,
66,117,116,116,111,110,34,32,110,97,109,101,61,34,119,120,73,68,95,67,65,
@@ -7518,15 +7767,16 @@ void InitXmlResource()
XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_16x16_folder.png"), xml_res_file_13, xml_res_size_13, wxT("image/png"));
XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_16x16_control_eject.png"), xml_res_file_14, xml_res_size_14, wxT("image/png"));
XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_mouse_pc.png"), xml_res_file_15, xml_res_size_15, wxT("image/png"));
- XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_network_ethernet.png"), xml_res_file_16, xml_res_size_16, wxT("image/png"));
- XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_control_play_blue.png"), xml_res_file_17, xml_res_size_17, wxT("image/png"));
- XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_setting_tools.png"), xml_res_file_18, xml_res_size_18, wxT("image/png"));
- XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_widescreen.png"), xml_res_file_19, xml_res_size_19, wxT("image/png"));
- XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_computer_add.png"), xml_res_file_20, xml_res_size_20, wxT("image/png"));
- XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_computer_edit.png"), xml_res_file_21, xml_res_size_21, wxT("image/png"));
- XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_computer_go.png"), xml_res_file_22, xml_res_size_22, wxT("image/png"));
- XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_computer_delete.png"), xml_res_file_23, xml_res_size_23, wxT("image/png"));
- XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_door_in.png"), xml_res_file_24, xml_res_size_24, wxT("image/png"));
- XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$._pc.xrc"), xml_res_file_25, xml_res_size_25, wxT("text/xml"));
+ XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_joystick.png"), xml_res_file_16, xml_res_size_16, wxT("image/png"));
+ XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_network_ethernet.png"), xml_res_file_17, xml_res_size_17, wxT("image/png"));
+ XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_control_play_blue.png"), xml_res_file_18, xml_res_size_18, wxT("image/png"));
+ XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_setting_tools.png"), xml_res_file_19, xml_res_size_19, wxT("image/png"));
+ XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_widescreen.png"), xml_res_file_20, xml_res_size_20, wxT("image/png"));
+ XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_computer_add.png"), xml_res_file_21, xml_res_size_21, wxT("image/png"));
+ XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_computer_edit.png"), xml_res_file_22, xml_res_size_22, wxT("image/png"));
+ XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_computer_go.png"), xml_res_file_23, xml_res_size_23, wxT("image/png"));
+ XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_computer_delete.png"), xml_res_file_24, xml_res_size_24, wxT("image/png"));
+ XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$icons_32x32_door_in.png"), xml_res_file_25, xml_res_size_25, wxT("image/png"));
+ XRC_ADD_FILE(wxT("XRC_resource/wx-resources.cpp$._pc.xrc"), xml_res_file_26, xml_res_size_26, wxT("text/xml"));
wxXmlResource::Get()->Load(wxT("memory:XRC_resource/wx-resources.cpp$._pc.xrc"));
}
diff --git a/src/wx-sdl2-joystick.c b/src/wx-sdl2-joystick.c
index 9aed5d7..8aa487b 100644
--- a/src/wx-sdl2-joystick.c
+++ b/src/wx-sdl2-joystick.c
@@ -1,15 +1,165 @@
+#include
+#include
+#include
+#include "ibm.h"
+#include "device.h"
+#include "gameport.h"
#include "plat-joystick.h"
int joysticks_present;
joystick_t joystick_state[MAX_JOYSTICKS];
+plat_joystick_t plat_joystick_state[MAX_PLAT_JOYSTICKS];
+static SDL_Joystick *sdl_joy[MAX_PLAT_JOYSTICKS];
+
void joystick_init()
{
- joysticks_present = 0;
+ int c;
+
+ SDL_InitSubSystem(SDL_INIT_JOYSTICK);
+ joysticks_present = SDL_NumJoysticks();
+
+ memset(sdl_joy, 0, sizeof(sdl_joy));
+ for (c = 0; c < joysticks_present; c++)
+ {
+ sdl_joy[c] = SDL_JoystickOpen(c);
+
+ if (sdl_joy[c])
+ {
+ int d;
+
+ pclog("Opened Joystick %i\n", c);
+ pclog(" Name: %s\n", SDL_JoystickName(sdl_joy[c]));
+ pclog(" Number of Axes: %d\n", SDL_JoystickNumAxes(sdl_joy[c]));
+ pclog(" Number of Buttons: %d\n", SDL_JoystickNumButtons(sdl_joy[c]));
+ pclog(" Number of Hats: %d\n", SDL_JoystickNumHats(sdl_joy[c]));
+
+ strncpy(plat_joystick_state[c].name, SDL_JoystickNameForIndex(c), 64);
+ plat_joystick_state[c].nr_axes = SDL_JoystickNumAxes(sdl_joy[c]);
+ plat_joystick_state[c].nr_buttons = SDL_JoystickNumButtons(sdl_joy[c]);
+ plat_joystick_state[c].nr_povs = SDL_JoystickNumHats(sdl_joy[c]);
+
+ for (d = 0; d < MIN(plat_joystick_state[c].nr_axes, 8); d++)
+ {
+ sprintf(plat_joystick_state[c].axis[d].name, "Axis %i", d);
+ plat_joystick_state[c].axis[d].id = d;
+ }
+ for (d = 0; d < MIN(plat_joystick_state[c].nr_buttons, 8); d++)
+ {
+ sprintf(plat_joystick_state[c].button[d].name, "Button %i", d);
+ plat_joystick_state[c].button[d].id = d;
+ }
+ for (d = 0; d < MIN(plat_joystick_state[c].nr_povs, 4); d++)
+ {
+ sprintf(plat_joystick_state[c].pov[d].name, "POV %i", d);
+ plat_joystick_state[c].pov[d].id = d;
+ }
+ }
+ }
}
void joystick_close()
{
+ int c;
+
+ for (c = 0; c < joysticks_present; c++)
+ {
+ if (sdl_joy[c])
+ SDL_JoystickClose(sdl_joy[c]);
+ }
+}
+
+static int joystick_get_axis(int joystick_nr, int mapping)
+{
+ if (mapping & POV_X)
+ {
+ switch (plat_joystick_state[joystick_nr].p[mapping & 3])
+ {
+ case SDL_HAT_LEFTUP: case SDL_HAT_LEFT: case SDL_HAT_LEFTDOWN:
+ return -32767;
+
+ case SDL_HAT_RIGHTUP: case SDL_HAT_RIGHT: case SDL_HAT_RIGHTDOWN:
+ return 32767;
+
+ default:
+ return 0;
+ }
+ }
+ else if (mapping & POV_Y)
+ {
+ switch (plat_joystick_state[joystick_nr].p[mapping & 3])
+ {
+ case SDL_HAT_LEFTUP: case SDL_HAT_UP: case SDL_HAT_RIGHTUP:
+ return -32767;
+
+ case SDL_HAT_LEFTDOWN: case SDL_HAT_DOWN: case SDL_HAT_RIGHTDOWN:
+ return 32767;
+
+ default:
+ return 0;
+ }
+ }
+ else
+ return plat_joystick_state[joystick_nr].a[plat_joystick_state[joystick_nr].axis[mapping].id];
}
void joystick_poll()
{
+ int c, d;
+
+ SDL_JoystickUpdate();
+ for (c = 0; c < joysticks_present; c++)
+ {
+ int b;
+
+ plat_joystick_state[c].a[0] = SDL_JoystickGetAxis(sdl_joy[c], 0);
+ plat_joystick_state[c].a[1] = SDL_JoystickGetAxis(sdl_joy[c], 1);
+ plat_joystick_state[c].a[2] = SDL_JoystickGetAxis(sdl_joy[c], 2);
+ plat_joystick_state[c].a[3] = SDL_JoystickGetAxis(sdl_joy[c], 3);
+ plat_joystick_state[c].a[4] = SDL_JoystickGetAxis(sdl_joy[c], 4);
+ plat_joystick_state[c].a[5] = SDL_JoystickGetAxis(sdl_joy[c], 5);
+
+ for (b = 0; b < 16; b++)
+ plat_joystick_state[c].b[b] = SDL_JoystickGetButton(sdl_joy[c], b);
+
+ for (b = 0; b < 4; b++)
+ plat_joystick_state[c].p[b] = SDL_JoystickGetHat(sdl_joy[c], b);
+// pclog("joystick %i - x=%i y=%i b[0]=%i b[1]=%i %i\n", c, joystick_state[c].x, joystick_state[c].y, joystick_state[c].b[0], joystick_state[c].b[1], joysticks_present);
+ }
+
+ for (c = 0; c < joystick_get_max_joysticks(joystick_type); c++)
+ {
+ if (joystick_state[c].plat_joystick_nr)
+ {
+ int joystick_nr = joystick_state[c].plat_joystick_nr - 1;
+
+ for (d = 0; d < joystick_get_axis_count(joystick_type); d++)
+ joystick_state[c].axis[d] = joystick_get_axis(joystick_nr, joystick_state[c].axis_mapping[d]);
+ for (d = 0; d < joystick_get_button_count(joystick_type); d++)
+ joystick_state[c].button[d] = plat_joystick_state[joystick_nr].b[joystick_state[c].button_mapping[d]];
+ for (d = 0; d < joystick_get_pov_count(joystick_type); d++)
+ {
+ int x, y;
+ double angle, magnitude;
+
+ x = joystick_get_axis(joystick_nr, joystick_state[c].pov_mapping[d][0]);
+ y = joystick_get_axis(joystick_nr, joystick_state[c].pov_mapping[d][1]);
+
+ angle = (atan2((double)y, (double)x) * 360.0) / (2*M_PI);
+ magnitude = sqrt((double)x*(double)x + (double)y*(double)y);
+
+ if (magnitude < 16384)
+ joystick_state[c].pov[d] = -1;
+ else
+ joystick_state[c].pov[d] = ((int)angle + 90 + 360) % 360;
+ }
+ }
+ else
+ {
+ for (d = 0; d < joystick_get_axis_count(joystick_type); d++)
+ joystick_state[c].axis[d] = 0;
+ for (d = 0; d < joystick_get_button_count(joystick_type); d++)
+ joystick_state[c].button[d] = 0;
+ for (d = 0; d < joystick_get_pov_count(joystick_type); d++)
+ joystick_state[c].pov[d] = -1;
+ }
+ }
}
diff --git a/src/wx-sdl2.c b/src/wx-sdl2.c
index 49f3d76..39a5607 100644
--- a/src/wx-sdl2.c
+++ b/src/wx-sdl2.c
@@ -27,6 +27,7 @@
#include "model.h"
#include "mouse.h"
#include "nvr.h"
+#include "plat-joystick.h"
#include "sound.h"
#include "thread.h"
#include "disc.h"
@@ -512,6 +513,7 @@ int pc_main(int argc, char** argv)
display_init();
#endif
sdl_video_init();
+ joystick_init();
return TRUE;
}