We truncated the diff of some files because they were too big.
If you want to see the full diff for every file, click here.
Changes of Revision 3
sview.changes
Changed
x
1
2
-------------------------------------------------------------------
3
+Sun Nov 29 12:31:27 UTC 2015 - avvissu@yandex.ru
4
+
5
+- Update to 15.11:
6
+ * introduces extended remote control from command line
7
+ * adds support of sTER chunk in PNG files identifying
8
+ side-by-side format
9
+ * adds support of list of files within Drag & Drop. Two files are
10
+ handled as stereo pair
11
+ * updates experimental DXVA2 decoder - more codecs are now
12
+ supported
13
+ * fixes cursor hiding within NVIDIA 3D Vision output (Direct3D)
14
+
15
+-------------------------------------------------------------------
16
Wed Oct 21 17:46:52 UTC 2015 - avvissu@yandex.ru
17
18
- Update to 15.10:
19
sview.spec
Changed
23
1
2
#
3
4
5
-%define src_ver 15_10
6
+%define src_ver 15_11
7
%define src_name sView
8
Name: sview
9
-Version: 15.10
10
+Version: 15.11
11
Release: 0
12
Summary: Stereoscopic media player
13
License: GPL-3.0+ and LGPL-3.0+
14
15
16
%files
17
%defattr(-,root,root)
18
-%doc LICENSE license-gpl* license-lgpl*
19
+%doc LICENSE*
20
%{_bindir}/%{src_name}
21
%{_libdir}/%{src_name}/
22
%{_datadir}/applications/%{src_name}IV.desktop
23
sview-15_10.tar.gz/3rdparty/FFmpeg/patches/patch_dxva.patch
Deleted
201
1
2
-From dad9d95e75f601c9b8864724bf68cf4a7f63ccaa Mon Sep 17 00:00:00 2001
3
-From: Kirill Gavrilov <kirill@sview.ru>
4
-Date: Wed, 7 Jan 2015 11:33:03 +0400
5
-Subject: [PATCH] lavc/dxva2: add ffmpeg calling dxva2 APIs
6
-
7
-Signed-off-by: weixuan wang <batmanwwx@gmail.com>
8
----
9
- configure | 4 +
10
- libavcodec/Makefile | 4 +
11
- libavcodec/allcodecs.c | 4 +
12
- libavcodec/dxva2_dec.c | 356 +++++++++++++++++++++
13
- libavcodec/dxva2_wrapper.c | 777 +++++++++++++++++++++++++++++++++++++++++++++
14
- libavcodec/dxva2_wrapper.h | 389 +++++++++++++++++++++++
15
- libavcodec/mpeg12.h | 23 ++
16
- libavcodec/mpeg12dec.c | 20 --
17
- 8 files changed, 1557 insertions(+), 20 deletions(-)
18
- create mode 100644 libavcodec/dxva2_dec.c
19
- create mode 100644 libavcodec/dxva2_wrapper.c
20
- create mode 100644 libavcodec/dxva2_wrapper.h
21
-
22
-diff --git a/configure b/configure
23
-index c046e34..088a3d4 100755
24
---- a/configure
25
-+++ b/configure
26
-@@ -2273,6 +2273,7 @@ h263_vaapi_hwaccel_select="h263_decoder"
27
- h263_vdpau_hwaccel_deps="vdpau"
28
- h263_vdpau_hwaccel_select="h263_decoder"
29
- h264_crystalhd_decoder_select="crystalhd h264_mp4toannexb_bsf h264_parser"
30
-+h264_dxva2_decoder_select="dxva2 h264_parser h264_decoder h264_dxva2_hwaccel"
31
- h264_dxva2_hwaccel_deps="dxva2"
32
- h264_dxva2_hwaccel_select="h264_decoder"
33
- h264_vaapi_hwaccel_deps="vaapi"
34
-@@ -2304,6 +2305,7 @@ mpeg2_vaapi_hwaccel_deps="vaapi"
35
- mpeg2_vaapi_hwaccel_select="mpeg2video_decoder"
36
- mpeg2_vdpau_hwaccel_deps="vdpau"
37
- mpeg2_vdpau_hwaccel_select="mpeg2video_decoder"
38
-+mpeg2video_dxva2_decoder_select="dxva2 mpeg2video_decoder mpeg2_dxva2_hwaccel"
39
- mpeg2_xvmc_hwaccel_deps="xvmc"
40
- mpeg2_xvmc_hwaccel_select="mpeg2video_decoder"
41
- mpeg4_crystalhd_decoder_select="crystalhd"
42
-@@ -2315,6 +2317,7 @@ mpeg4_vdpau_hwaccel_deps="vdpau"
43
- mpeg4_vdpau_hwaccel_select="mpeg4_decoder"
44
- msmpeg4_crystalhd_decoder_select="crystalhd"
45
- vc1_crystalhd_decoder_select="crystalhd"
46
-+vc1_dxva2_decoder_select="dxva2 vc1_decoder vc1_dxva2_hwaccel"
47
- vc1_dxva2_hwaccel_deps="dxva2"
48
- vc1_dxva2_hwaccel_select="vc1_decoder"
49
- vc1_vaapi_hwaccel_deps="vaapi"
50
-@@ -2324,6 +2327,7 @@ vc1_vdpau_decoder_select="vc1_decoder"
51
- vc1_vdpau_hwaccel_deps="vdpau"
52
- vc1_vdpau_hwaccel_select="vc1_decoder"
53
- wmv3_crystalhd_decoder_select="crystalhd"
54
-+wmv3_dxva2_decoder_select="dxva2 wmv3_decoder wmv3_dxva2_hwaccel"
55
- wmv3_dxva2_hwaccel_select="vc1_dxva2_hwaccel"
56
- wmv3_vaapi_hwaccel_select="vc1_vaapi_hwaccel"
57
- wmv3_vdpau_decoder_select="vc1_vdpau_decoder"
58
-diff --git a/libavcodec/Makefile b/libavcodec/Makefile
59
-index fa0f53d..ffbb77c 100644
60
---- a/libavcodec/Makefile
61
-+++ b/libavcodec/Makefile
62
-@@ -259,6 +259,7 @@ OBJS-$(CONFIG_H264_DECODER) += h264.o h264_cabac.o h264_cavlc.o \
63
- h264_direct.o h264_loopfilter.o \
64
- h264_mb.o h264_picture.o h264_ps.o \
65
- h264_refs.o h264_sei.o h264_slice.o
66
-+OBJS-$(CONFIG_H264_DXVA2_DECODER) += dxva2_wrapper.o dxva2_dec.o
67
- OBJS-$(CONFIG_H264_VDA_DECODER) += vda_h264_dec.o
68
- OBJS-$(CONFIG_HEVC_DECODER) += hevc.o hevc_mvs.o hevc_ps.o hevc_sei.o \
69
- hevc_cabac.o hevc_refs.o hevcpred.o \
70
-@@ -325,6 +326,7 @@ OBJS-$(CONFIG_MPEGVIDEO_DECODER) += mpeg12dec.o mpeg12.o mpeg12data.o
71
- OBJS-$(CONFIG_MPEG1VIDEO_DECODER) += mpeg12dec.o mpeg12.o mpeg12data.o
72
- OBJS-$(CONFIG_MPEG1VIDEO_ENCODER) += mpeg12enc.o mpeg12.o
73
- OBJS-$(CONFIG_MPEG2VIDEO_DECODER) += mpeg12dec.o mpeg12.o mpeg12data.o
74
-+OBJS-$(CONFIG_MPEG2VIDEO_DXVA2_DECODER)+= dxva2_wrapper.o dxva2_dec.o
75
- OBJS-$(CONFIG_MPEG2VIDEO_ENCODER) += mpeg12enc.o mpeg12.o
76
- OBJS-$(CONFIG_MPEG4_DECODER) += xvididct.o
77
- OBJS-$(CONFIG_MPL2_DECODER) += mpl2dec.o ass.o
78
-@@ -482,6 +484,7 @@ OBJS-$(CONFIG_VC1_DECODER) += vc1dec.o vc1_block.o vc1_loopfilter.o
79
- vc1dsp.o \
80
- msmpeg4dec.o msmpeg4.o msmpeg4data.o \
81
- wmv2dsp.o
82
-+OBJS-$(CONFIG_VC1_DXVA2_DECODER) += dxva2_wrapper.o dxva2_dec.o
83
- OBJS-$(CONFIG_VCR1_DECODER) += vcr1.o
84
- OBJS-$(CONFIG_VMDAUDIO_DECODER) += vmdaudio.o
85
- OBJS-$(CONFIG_VMDVIDEO_DECODER) += vmdvideo.o
86
-@@ -521,6 +524,7 @@ OBJS-$(CONFIG_WMV2_DECODER) += wmv2dec.o wmv2.o wmv2dsp.o \
87
- msmpeg4dec.o msmpeg4.o msmpeg4data.o
88
- OBJS-$(CONFIG_WMV2_ENCODER) += wmv2enc.o wmv2.o wmv2dsp.o \
89
- msmpeg4.o msmpeg4enc.o msmpeg4data.o
90
-+OBJS-$(CONFIG_WMV3_DXVA2_DECODER) += dxva2_wrapper.o dxva2_dec.o
91
- OBJS-$(CONFIG_WNV1_DECODER) += wnv1.o
92
- OBJS-$(CONFIG_WS_SND1_DECODER) += ws-snd1.o
93
- OBJS-$(CONFIG_XAN_DPCM_DECODER) += dpcm.o
94
-diff --git a/libavcodec/allcodecs.c b/libavcodec/allcodecs.c
95
-index 0d39d33..548f0ef 100644
96
---- a/libavcodec/allcodecs.c
97
-+++ b/libavcodec/allcodecs.c
98
-@@ -169,6 +169,7 @@ void avcodec_register_all(void)
99
- REGISTER_ENCDEC (H263P, h263p);
100
- REGISTER_DECODER(H264, h264);
101
- REGISTER_DECODER(H264_CRYSTALHD, h264_crystalhd);
102
-+ REGISTER_DECODER (H264_DXVA2, h264_dxva2);
103
- REGISTER_DECODER(H264_VDA, h264_vda);
104
- REGISTER_DECODER(H264_VDPAU, h264_vdpau);
105
- REGISTER_DECODER(HEVC, hevc);
106
-@@ -201,6 +202,7 @@ void avcodec_register_all(void)
107
- #endif /* FF_API_XVMC */
108
- REGISTER_ENCDEC (MPEG1VIDEO, mpeg1video);
109
- REGISTER_ENCDEC (MPEG2VIDEO, mpeg2video);
110
-+ REGISTER_DECODER (MPEG2VIDEO_DXVA2, mpeg2video_dxva2);
111
- REGISTER_ENCDEC (MPEG4, mpeg4);
112
- REGISTER_DECODER(MPEG4_CRYSTALHD, mpeg4_crystalhd);
113
- REGISTER_DECODER(MPEG4_VDPAU, mpeg4_vdpau);
114
-@@ -285,6 +287,7 @@ void avcodec_register_all(void)
115
- REGISTER_DECODER(VBLE, vble);
116
- REGISTER_DECODER(VC1, vc1);
117
- REGISTER_DECODER(VC1_CRYSTALHD, vc1_crystalhd);
118
-+ REGISTER_DECODER (VC1_DXVA2, vc1_dxva2);
119
- REGISTER_DECODER(VC1_VDPAU, vc1_vdpau);
120
- REGISTER_DECODER(VC1IMAGE, vc1image);
121
- REGISTER_DECODER(VCR1, vcr1);
122
-@@ -304,6 +307,7 @@ void avcodec_register_all(void)
123
- REGISTER_ENCDEC (WMV2, wmv2);
124
- REGISTER_DECODER(WMV3, wmv3);
125
- REGISTER_DECODER(WMV3_CRYSTALHD, wmv3_crystalhd);
126
-+ REGISTER_DECODER (WMV3_DXVA2, wmv3_dxva2);
127
- REGISTER_DECODER(WMV3_VDPAU, wmv3_vdpau);
128
- REGISTER_DECODER(WMV3IMAGE, wmv3image);
129
- REGISTER_DECODER(WNV1, wnv1);
130
-diff --git a/libavcodec/dxva2_dec.c b/libavcodec/dxva2_dec.c
131
-new file mode 100644
132
-index 0000000..e6b31cf
133
---- /dev/null
134
-+++ b/libavcodec/dxva2_dec.c
135
-@@ -0,0 +1,356 @@
136
-+/*
137
-+ * Call hardware decode acceleration through dxva2 API
138
-+ *
139
-+ * Copyright (c) 2012 Wei Gao <weigao@multicorewareinc.com>
140
-+ *
141
-+ * This file is part of FFmpeg.
142
-+ *
143
-+ * FFmpeg is free software; you can redistribute it and/or
144
-+ * modify it under the terms of the GNU Lesser General Public
145
-+ * License as published by the Free Software Foundation; either
146
-+ * version 2.1 of the License, or (at your option) any later version.
147
-+ *
148
-+ * FFmpeg is distributed in the hope that it will be useful,
149
-+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
150
-+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
151
-+ * Lesser General Public License for more details.
152
-+ *
153
-+ * You should have received a copy of the GNU Lesser General Public
154
-+ * License along with FFmpeg; if not, write to the Free Software
155
-+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
156
-+ */
157
-+
158
-+#include <string.h>
159
-+#include "dxva2_wrapper.h"
160
-+#include "h264.h"
161
-+#include "vc1.h"
162
-+#include "mpeg12.h"
163
-+#include "avcodec.h"
164
-+#include "internal.h"
165
-+
166
-+#if CONFIG_H264_DXVA2_DECODER
167
-+extern AVCodec ff_h264_decoder,ff_h264_dxva2_decoder;
168
-+#endif
169
-+
170
-+#if CONFIG_MPEG2VIDEO_DXVA2_DECODER
171
-+extern AVCodec ff_mpeg2video_decoder,ff_mpeg2video_dxva2_decoder;
172
-+#endif
173
-+
174
-+#if CONFIG_VC1_DXVA2_DECODER
175
-+extern AVCodec ff_vc1_decoder,ff_vc1_dxva2_decoder;
176
-+#endif
177
-+
178
-+#if CONFIG_WMV3_DXVA2_DECODER
179
-+extern AVCodec ff_wmv3_decoder, ff_wmv3_dxva2_decoder;
180
-+#endif
181
-+
182
-+typedef union {
183
-+#if CONFIG_H264_DXVA2_DECODER
184
-+ H264Context h264ctx;
185
-+#endif
186
-+#if CONFIG_VC1_DXVA2_DECODER || CONFIG_WMV3_DXVA2_DECODER
187
-+ VC1Context vc1ctx;
188
-+#endif
189
-+#if CONFIG_MPEG2VIDEO_DXVA2_DECODER
190
-+ Mpeg1Context mpeg2videoctx;
191
-+#endif
192
-+}DecoderContext;
193
-+
194
-+typedef struct {
195
-+ DecoderContext decoderctx;
196
-+ enum AVPixelFormat pix_fmt;
197
-+ int (*get_buffer2)(struct AVCodecContext *s, AVFrame *frame, int flags);
198
-+ AVCodec *hwcodec;
199
-+ AVCodec *codec;
200
-+ dxva2_context dxva2_ctx;
201
sview-15_10.tar.gz/LICENSE
Deleted
63
1
2
-StShared,
3
-StGLWidget:
4
------------
5
-
6
-sources of these libraries are under Boost license. Read the file "license-boost.txt" for details.
7
-Notice that some sources are wrappers over other 3rd-parties
8
-and their licenses should be taken into account when used.
9
-
10
-StCore,
11
-StOutAnaglyph,
12
-StOutDual,
13
-StOutInterlace,
14
-StOutIZ3D,
15
-StOutPageFlip:
16
---------------
17
-
18
-these libraries are under the GNU Lesser General Public License version 3.0 or later.
19
-Read the file "license-lgpl-3.0.txt" for details.
20
-
21
-StImageViewer,
22
-StMoviePlayer,
23
-StDiagnostics,
24
-StMonitorsDump,
25
-StBrowserPlugin,
26
-StTests:
27
---------
28
-
29
-these libraries and programs are under the GNU General Public License version 3.0 or later.
30
-Read the file "license-gpl-3.0.txt" for details.
31
-
32
-sView:
33
-------
34
-
35
-sView executable project is a dummy entry point to real applications like StImageViewer.
36
-Formally it was licensed under Boost license terms.
37
-
38
-StCADViewer:
39
-------------
40
-
41
-this program is under the GNU General Public License version 3.0 or later.
42
-
43
-External libraries:
44
--------------------
45
-
46
-FFmpeg libraries are distributed under GNU Lesser General Public License version 2.1 or later.
47
-http://ffmpeg.org/
48
-
49
-libconfig++ library distributed under GNU Lesser General Public License version 2.1 or later.
50
-http://www.hyperrealm.com/libconfig/
51
-
52
-OpenAL library distributed under GNU Lesser General Public License version 2.1 or later.
53
-http://kcat.strangesoft.net/openal.html
54
-
55
-FreeType library distributed under FreeType License (BSD-style license with a credit clause).
56
-http://www.freetype.org/
57
-
58
-Open CASCADE Technology libraries distributed under GNU Lesser General Public License version 2.1.
59
-http://dev.opencascade.org/
60
-
61
-Some 3rd-parties may depend on other libraries and provide more license options.
62
-Please read license information for original projects.
63
sview-15_10.tar.gz/README
Deleted
26
1
2
-sView - stereoscopic media player
3
-=================================
4
-
5
-0) Updates
6
-----------
7
-
8
-* To get up-to-date sources please clone official git repository:
9
- git clone https://github.com/gkv311/sview.git
10
-
11
-1) Documentation
12
-----------------
13
-
14
-* Read the documentation in the doc/ directory in git.
15
- Online help is available on official site http://www.sview.ru/en/sview2009/usertips
16
-
17
-2) Licensing
18
-------------
19
-
20
-* See the LICENSE file.
21
-
22
-3) Build and Install
23
---------------------
24
-
25
-* See the docs/INSTALL file.
26
sview-15_10.tar.gz/docs/INSTALL
Deleted
115
1
2
-I. Installing 3rd-parties
3
-=========================
4
-
5
-sView requires several 3rd-party components for building:
6
-- C/C++ compiler (g++, MSVC 2010+)
7
-- Code::Blocks (http://www.codeblocks.org)
8
-- FFmpeg (http://www.ffmpeg.org)
9
-- OpenAL soft (http://kcat.strangesoft.net/openal.html)
10
-- libwebp, optional (https://developers.google.com/speed/webp/download)
11
-- GTK2+, Linux only (http://www.gtk.org)
12
-- libconfig++, Linux and Android (http://www.hyperrealm.com/libconfig)
13
-- libxpm, Linux only
14
-
15
-On Debian/Ubuntu you might use the following command to install all dependencies at once:
16
-
17
-sudo apt-get install \
18
- g++ \
19
- libgtk2.0-dev \
20
- libopenal-dev \
21
- libgl1-mesa-dev \
22
- libavcodec-dev libavdevice-dev libavformat-dev libavutil-dev libswscale-dev \
23
- libwebp-dev \
24
- libconfig++-dev libconfig-dev \
25
- libxpm-dev \
26
- codeblocks
27
-
28
-The similar command for RPM-based distributives:
29
-
30
-yum install gcc gcc-c++ \
31
- gtk+-devel gtk2-devel \
32
- mesa-libGLU-devel glew-devel \
33
- openal-devel \
34
- libconfig-devel
35
-
36
-rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
37
-yum install ffmpeg-devel
38
-
39
-On Windows and Mac OS X please refer to official documentation for each project.
40
-Notice that DevIL and FreeImage libraries are optional and need not for building sView
41
-(libraries are loaded dynamically if available).
42
-
43
-II. Makefile on Linux
44
-=====================
45
-
46
-Current Makefile has been written only for DEB/RPM source packages
47
-and lacks configuration flexibility (means ther NO any ./configure and so on).
48
-
49
-All you need is to install dependencies and to execute traditional commands:
50
-
51
- make && make install
52
-
53
-III. Code::Blocks
54
-=================
55
-
56
-Code::Blocks is an official way for building and development of sView.
57
-There are several building targets depending on platform
58
-(Mac OS X, Linux, Windows) and debugging possibilities:
59
-- WIN_vc_x86, 32-bit target using Visual Studio compiler
60
-- WIN_vc_x86_DEBUG, 32-bit target with debugging options
61
-- WIN_vc_AMD64, 64-bit target using Visual Studio compiler
62
-- LINUX_gcc, Linux target, g++ compiler
63
-- LINUX_gcc_DEBUG, Linux target with debugging options
64
-- MAC_gcc, Mac OS X target, g++ compatible compiler
65
-- MAC_gcc_DEBUG, Mac OS X target with debugging options
66
-
67
-Notice that the following compilers should be configured within Code::Blocks:
68
-- gcc, configured to g++ or compatible compiler (on systems other than Windows)
69
-- msvc10, configured to Visual Studio 2010+ compiler, PSDK and DXSDK
70
-- windows_sdk_x86_64 (copy of msvc10) configured to 64-bit libraries and compiler toolchain
71
-
72
-3rd-parties should be either configured as Code::Blocks global compiler options
73
-or placed into "3rdparty" folder.
74
-
75
-IV. Building options
76
-====================
77
-
78
-Several preprocessor directives control building options.
79
-Notice that by default "include/stconfig.conf" file is used to override these options
80
-(this file will be used only when ST_HAVE_STCONFIG is defined).
81
-
82
-- ST_HAVE_WEBP - should be defined to activate libwebp usage
83
- (notice that since next releases of FFmpeg might have built-in support for webp/webpll image files)
84
-- ST_HAVE_MONGOOSE - should be defined to activate built-in web UI for remote Movie Player control
85
-- ST_HAVE_OCCT - should be defined to activate CAD files import in tiny CAD viewer
86
-- ST_DEBUG - should be defined to activate debugging log output
87
-- ST_DEBUG_LOG_TO_FILE - specifies file name or full path to duplicate debug log output
88
-
89
-V. Distribution scripts
90
-=======================
91
-
92
-Several script were written to automate distribution routines.
93
-All them were placed in "distribution" folder.
94
-
95
-- build.bat, batch script for Windows. Performs re-building of WIN_vc_x86 and WIN_vc_AMD64 targets
96
- using Code::Blocks and pack result binaries using InnoSetup script.
97
- Notice that all dependencies should be available (including InnoSetup),
98
- and DLLs should be placed into bin/WIN_vc_x86 and bin/WIN_vc_AMD64 folders.
99
-- buildDebSrc.sh, bash script for Linux to pack sources into Debian source package.
100
-- buildMac.sh, bash script to pack binaries from bin/MAC_gcc folder into DMG image.
101
- 3rd-party libraries should be already located in "bin/MAC_gcc_DEBUG/sView.app/Contents/Frameworks/"
102
- folder with correct search path (refer to bind_frameworks.sh auxiliary script).
103
-
104
-===
105
-
106
-su
107
-yum install rpm-build
108
-
109
-mkdir -p ${HOME}/workspace/redhat/{RPMS,SRPMS,SPECS,SOURCES,BUILD}
110
-echo "%_topdir ${HOME}/workspace/redhat" > ${HOME}/.rpmmacros
111
-
112
-wget https://launchpad.net/~sview/+archive/stable/+files/sview_12.05-1%7Eprecise.tar.gz
113
-mv sview_12.05-1~precise.tar.gz $HOME/workspace/redhat/SOURCES/sview_12.05-1.tar.gz
114
-rpmbuild -ba distribution/sView.rpm.spec
115
sview-15_10.tar.gz/textures/fullScreen128.png
Deleted
sview-15_10.tar.gz/textures/fullScreen144.png
Deleted
sview-15_10.tar.gz/textures/fullScreen16.png
Deleted
sview-15_10.tar.gz/textures/fullScreen192.png
Deleted
sview-15_10.tar.gz/textures/fullScreen24.png
Deleted
sview-15_10.tar.gz/textures/fullScreen256.png
Deleted
sview-15_10.tar.gz/textures/fullScreen32.png
Deleted
sview-15_10.tar.gz/textures/fullScreen48.png
Deleted
sview-15_10.tar.gz/textures/fullScreen64.png
Deleted
sview-15_10.tar.gz/textures/fullScreen72.png
Deleted
sview-15_10.tar.gz/textures/fullScreen96.png
Deleted
sview-15_10.tar.gz/texturesSrc/fullscr.svg
Deleted
93
1
2
-<?xml version="1.0" encoding="UTF-8" standalone="no"?>
3
-<!-- Created with Inkscape (http://www.inkscape.org/) -->
4
-
5
-<svg
6
- xmlns:dc="http://purl.org/dc/elements/1.1/"
7
- xmlns:cc="http://creativecommons.org/ns#"
8
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
9
- xmlns:svg="http://www.w3.org/2000/svg"
10
- xmlns="http://www.w3.org/2000/svg"
11
- xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
12
- xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
13
- width="32"
14
- height="32"
15
- id="svg2"
16
- version="1.1"
17
- inkscape:version="0.48.2 r9819"
18
- sodipodi:docname="fullscr.svg"
19
- inkscape:export-filename="fullScreen32.png"
20
- inkscape:export-xdpi="107.66355"
21
- inkscape:export-ydpi="107.66355">
22
- <defs
23
- id="defs4" />
24
- <sodipodi:namedview
25
- id="base"
26
- pagecolor="#ffffff"
27
- bordercolor="#666666"
28
- borderopacity="1.0"
29
- inkscape:pageopacity="0.0"
30
- inkscape:pageshadow="2"
31
- inkscape:zoom="16.8125"
32
- inkscape:cx="14.929368"
33
- inkscape:cy="16"
34
- inkscape:document-units="px"
35
- inkscape:current-layer="layer1"
36
- showgrid="false"
37
- inkscape:window-width="1213"
38
- inkscape:window-height="756"
39
- inkscape:window-x="67"
40
- inkscape:window-y="0"
41
- inkscape:window-maximized="0" />
42
- <metadata
43
- id="metadata7">
44
- <rdf:RDF>
45
- <cc:Work
46
- rdf:about="">
47
- <dc:format>image/svg+xml</dc:format>
48
- <dc:type
49
- rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
50
- <dc:title></dc:title>
51
- </cc:Work>
52
- </rdf:RDF>
53
- </metadata>
54
- <g
55
- inkscape:label="Layer 1"
56
- inkscape:groupmode="layer"
57
- id="layer1"
58
- transform="translate(0,-1020.3622)">
59
- <path
60
- sodipodi:type="arc"
61
- style="fill:#808080;fill-opacity:0.45814981;fill-rule:evenodd;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
62
- id="path2985"
63
- sodipodi:cx="11.271376"
64
- sodipodi:cy="13.769517"
65
- sodipodi:rx="12.877323"
66
- sodipodi:ry="12.877323"
67
- d="m 24.148699,13.769517 a 12.877323,12.877323 0 1 1 -25.7546465,0 12.877323,12.877323 0 1 1 25.7546465,0 z"
68
- transform="translate(4.6988847,1022.6818)" />
69
- <path
70
- style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1"
71
- d="m 8.386617,1035.2321 0.05948,-6.4238 6.245353,-0.06 z"
72
- id="path3755"
73
- inkscape:connector-curvature="0"
74
- sodipodi:nodetypes="cccc" />
75
- <path
76
- sodipodi:type="arc"
77
- style="fill:#000000;fill-opacity:1"
78
- id="path3792"
79
- sodipodi:cx="16.08922"
80
- sodipodi:cy="16.684015"
81
- sodipodi:rx="1.457249"
82
- sodipodi:ry="1.457249"
83
- d="m 17.546469,16.684015 a 1.457249,1.457249 0 1 1 -2.914498,0 1.457249,1.457249 0 1 1 2.914498,0 z"
84
- transform="translate(-0.11895969,1019.7673)" />
85
- <path
86
- sodipodi:nodetypes="cccc"
87
- inkscape:connector-curvature="0"
88
- id="path3813"
89
- d="m 23.434944,1037.4918 -0.05948,6.4238 -6.245353,0.06 z"
90
- style="fill:#000000;fill-opacity:1;stroke:#000000;stroke-width:1px;stroke-linecap:butt;stroke-linejoin:miter;stroke-opacity:1" />
91
- </g>
92
-</svg>
93
sview-15_11.tar.gz/3rdparty/FFmpeg/patches/patch_png_ster.patch
Added
96
1
2
+From 104e5d8f212c46b9eedb932a6b6c717372ccdceb Mon Sep 17 00:00:00 2001
3
+From: Kirill Gavrilov <kirill@sview.ru>
4
+Date: Thu, 22 Oct 2015 23:36:52 +0300
5
+Subject: [PATCH 1/1] avcodec/png: read and write stereo3d frame side data
6
+ information
7
+
8
+Use optional sTER chunk defining side-by-side stereo pair
9
+within "Extensions to the PNG 1.2 Specification", version 1.3.0.
10
+---
11
+ libavcodec/pngdec.c | 16 ++++++++++++++++
12
+ libavcodec/pngenc.c | 19 +++++++++++++++++++
13
+ 2 files changed, 35 insertions(+)
14
+
15
+diff --git a/libavcodec/pngdec.c b/libavcodec/pngdec.c
16
+index 4cfdc58..99111d4 100644
17
+--- a/libavcodec/pngdec.c
18
++++ b/libavcodec/pngdec.c
19
+@@ -24,6 +24,7 @@
20
+ #include "libavutil/avassert.h"
21
+ #include "libavutil/bprint.h"
22
+ #include "libavutil/imgutils.h"
23
++#include "libavutil/stereo3d.h"
24
+ #include "avcodec.h"
25
+ #include "bytestream.h"
26
+ #include "internal.h"
27
+@@ -1164,6 +1165,21 @@ static int decode_frame_common(AVCodecContext *avctx, PNGDecContext *s,
28
+ av_log(avctx, AV_LOG_WARNING, "Broken zTXt chunk\n");
29
+ bytestream2_skip(&s->gb, length + 4);
30
+ break;
31
++ case MKTAG('s', 'T', 'E', 'R'): {
32
++ AVStereo3D *stereo3d = av_stereo3d_create_side_data(p);
33
++ if (!stereo3d) {
34
++ goto fail;
35
++ } else if (*s->gb.buffer == 0) {
36
++ stereo3d->type = AV_STEREO3D_SIDEBYSIDE;
37
++ stereo3d->flags = AV_STEREO3D_FLAG_INVERT;
38
++ } else if (*s->gb.buffer == 1) {
39
++ stereo3d->type = AV_STEREO3D_SIDEBYSIDE;
40
++ } else {
41
++ av_log(avctx, AV_LOG_WARNING, "Broken sTER chunk - unknown value\n");
42
++ }
43
++ bytestream2_skip(&s->gb, length + 4);
44
++ break;
45
++ }
46
+ case MKTAG('I', 'E', 'N', 'D'):
47
+ if (!(s->state & PNG_ALLIMAGE))
48
+ av_log(avctx, AV_LOG_ERROR, "IEND without all image\n");
49
+diff --git a/libavcodec/pngenc.c b/libavcodec/pngenc.c
50
+index 4204df2..bc61f8f 100644
51
+--- a/libavcodec/pngenc.c
52
++++ b/libavcodec/pngenc.c
53
+@@ -31,6 +31,7 @@
54
+ #include "libavutil/libm.h"
55
+ #include "libavutil/opt.h"
56
+ #include "libavutil/color_utils.h"
57
++#include "libavutil/stereo3d.h"
58
+
59
+ #include <zlib.h>
60
+
61
+@@ -340,6 +341,7 @@ static int png_get_gama(enum AVColorTransferCharacteristic trc, uint8_t *buf)
62
+
63
+ static int encode_headers(AVCodecContext *avctx, const AVFrame *pict)
64
+ {
65
++ AVFrameSideData *side_data;
66
+ PNGEncContext *s = avctx->priv_data;
67
+
68
+ /* write png header */
69
+@@ -364,6 +366,23 @@ static int encode_headers(AVCodecContext *avctx, const AVFrame *pict)
70
+ }
71
+ png_write_chunk(&s->bytestream, MKTAG('p', 'H', 'Y', 's'), s->buf, 9);
72
+
73
++ /* write stereoscopic information */
74
++ side_data = av_frame_get_side_data(pict, AV_FRAME_DATA_STEREO3D);
75
++ if (side_data) {
76
++ AVStereo3D *stereo3d = (AVStereo3D *)side_data->data;
77
++ switch (stereo3d->type) {
78
++ case AV_STEREO3D_SIDEBYSIDE:
79
++ s->buf[0] = ((stereo3d->flags & AV_STEREO3D_FLAG_INVERT) == 0) ? 1 : 0;
80
++ png_write_chunk(&s->bytestream, MKTAG('s', 'T', 'E', 'R'), s->buf, 1);
81
++ break;
82
++ case AV_STEREO3D_2D:
83
++ break;
84
++ default:
85
++ av_log(avctx, AV_LOG_WARNING, "Only side-by-side stereo3d flag can be defined within sTER chunk\n");
86
++ break;
87
++ }
88
++ }
89
++
90
+ /* write colorspace information */
91
+ if (pict->color_primaries == AVCOL_PRI_BT709 &&
92
+ pict->color_trc == AVCOL_TRC_IEC61966_2_1) {
93
+--
94
+2.0.1
95
+
96
sview-15_10.tar.gz/3rdparty/FFmpeg/rebuild.sh -> sview-15_11.tar.gz/3rdparty/FFmpeg/rebuild.sh
Changed
194
1
2
rebuildAndroid="false"
3
compilerPrefix=""
4
androidNdkRoot="~/develop/android-ndk-r10"
5
+aSystem=`uname -s`
6
+aPwdBack=$PWD
7
8
for i in $*
9
do
10
11
OUTPUT_NAME="$OUTPUT_NAME-debug"
12
fi
13
OUTPUT_FOLDER="../$OUTPUT_NAME"
14
+OUTPUT_FOLDER_INC="$OUTPUT_FOLDER/include"
15
+OUTPUT_FOLDER_BIN="$OUTPUT_FOLDER/bin"
16
+OUTPUT_FOLDER_LIB="$OUTPUT_FOLDER/lib"
17
+if [ "$aSystem" == "Darwin" ]; then
18
+ OUTPUT_FOLDER_BIN="$OUTPUT_FOLDER/MacOS"
19
+ OUTPUT_FOLDER_LIB="$OUTPUT_FOLDER/Frameworks"
20
+fi
21
rm -f -r $OUTPUT_FOLDER
22
mkdir -p $OUTPUT_FOLDER
23
-mkdir -p $OUTPUT_FOLDER/bin
24
-mkdir -p $OUTPUT_FOLDER/lib
25
+mkdir -p $OUTPUT_FOLDER_BIN
26
+mkdir -p $OUTPUT_FOLDER_LIB
27
+mkdir -p $OUTPUT_FOLDER_INC
28
+mkdir -p $OUTPUT_FOLDER_INC/libavcodec
29
+mkdir -p $OUTPUT_FOLDER_INC/libavdevice
30
+mkdir -p $OUTPUT_FOLDER_INC/libavfilter
31
+mkdir -p $OUTPUT_FOLDER_INC/libavformat
32
+mkdir -p $OUTPUT_FOLDER_INC/libavutil
33
+mkdir -p $OUTPUT_FOLDER_INC/libswscale
34
+mkdir -p $OUTPUT_FOLDER_INC/libswresample
35
36
echo " make distclean"
37
make distclean &>/dev/null
38
39
fi
40
fi
41
42
+#--enable-memalign-hack
43
configArguments="\
44
--extra-version=sView.ru \
45
--enable-swscale \
46
--enable-shared \
47
--disable-static \
48
- --enable-memalign-hack \
49
--enable-avfilter \
50
--enable-hardcoded-tables \
51
--enable-pthreads \
52
--disable-libopenjpeg \
53
+ --disable-doc \
54
--enable-runtime-cpudetect"
55
56
-aSystem=`uname -s`
57
if [ "$aSystem" == "Darwin" ]; then
58
- configArguments="$configArguments --enable-vda"
59
+ configArguments="$configArguments --enable-vda --libdir=@executable_path/../Frameworks"
60
fi
61
62
#if [ "$gccMachine" != "$GCC_MACHINE_LINUX_64" ]; then
63
64
echo " ./configure $configArguments"
65
echo
66
if [ "$rebuildAndroid" == "true" ]; then
67
- ./configure $configArguments --disable-symver --extra-cflags='-fno-builtin-sin -fno-builtin-sinf' >$OUTPUT_FOLDER/config.log 2>&1
68
+ ./configure $configArguments --disable-symver --extra-cflags='-march=armv7-a -mfloat-abi=softfp -fno-builtin-sin -fno-builtin-sinf' >$OUTPUT_FOLDER/config.log 2>&1
69
else
70
./configure $configArguments >$OUTPUT_FOLDER/config.log 2>&1
71
fi
72
73
cp -f libavcodec/*.dll $OUTPUT_FOLDER
74
cp -f libavcodec/*.lib $OUTPUT_FOLDER &>/dev/null
75
elif [ -f libavcodec/libavcodec.dylib ]; then
76
- cp -f -p libavcodec/*.dylib* $OUTPUT_FOLDER/lib
77
+ cp -f -p -R libavcodec/*.dylib* $OUTPUT_FOLDER_LIB
78
else
79
- cp -f -d libavcodec/*.so* $OUTPUT_FOLDER/lib
80
+ cp -f -d libavcodec/*.so* $OUTPUT_FOLDER_LIB
81
fi
82
83
if [ -f libavdevice/avdevice.dll ]; then
84
cp -f libavdevice/*.dll $OUTPUT_FOLDER
85
cp -f libavdevice/*.lib $OUTPUT_FOLDER &>/dev/null
86
elif [ -f libavdevice/libavdevice.dylib ]; then
87
- cp -f -p libavdevice/*.dylib* $OUTPUT_FOLDER/lib
88
+ cp -f -p -R libavdevice/*.dylib* $OUTPUT_FOLDER_LIB
89
else
90
- cp -f -d libavdevice/*.so* $OUTPUT_FOLDER/lib
91
+ cp -f -d libavdevice/*.so* $OUTPUT_FOLDER_LIB
92
fi
93
94
if [ -f libavfilter/avfilter.dll ]; then
95
cp -f libavfilter/*.dll $OUTPUT_FOLDER
96
cp -f libavfilter/*.lib $OUTPUT_FOLDER &>/dev/null
97
elif [ -f libavfilter/libavfilter.dylib ]; then
98
- cp -f -p libavfilter/*.dylib* $OUTPUT_FOLDER/lib
99
+ cp -f -p -R libavfilter/*.dylib* $OUTPUT_FOLDER_LIB
100
else
101
- cp -f -d libavfilter/*.so* $OUTPUT_FOLDER/lib
102
+ cp -f -d libavfilter/*.so* $OUTPUT_FOLDER_LIB
103
fi
104
105
if [ -f libavformat/avformat.dll ]; then
106
cp -f libavformat/*.dll $OUTPUT_FOLDER
107
cp -f libavformat/*.lib $OUTPUT_FOLDER &>/dev/null
108
elif [ -f libavformat/libavformat.dylib ]; then
109
- cp -f -p libavformat/*.dylib* $OUTPUT_FOLDER/lib
110
+ cp -f -p -R libavformat/*.dylib* $OUTPUT_FOLDER_LIB
111
else
112
- cp -f -d libavformat/*.so* $OUTPUT_FOLDER/lib
113
+ cp -f -d libavformat/*.so* $OUTPUT_FOLDER_LIB
114
fi
115
116
if [ -f libavutil/avutil.dll ]; then
117
cp -f libavutil/*.dll $OUTPUT_FOLDER
118
cp -f libavutil/*.lib $OUTPUT_FOLDER &>/dev/null
119
elif [ -f libavutil/libavutil.dylib ]; then
120
- cp -f -p libavutil/*.dylib* $OUTPUT_FOLDER/lib
121
+ cp -f -p -R libavutil/*.dylib* $OUTPUT_FOLDER_LIB
122
else
123
- cp -f -d libavutil/*.so* $OUTPUT_FOLDER/lib
124
+ cp -f -d libavutil/*.so* $OUTPUT_FOLDER_LIB
125
fi
126
127
if [ -f libswscale/swscale.dll ]; then
128
cp -f libswscale/*.dll $OUTPUT_FOLDER
129
cp -f libswscale/*.lib $OUTPUT_FOLDER &>/dev/null
130
elif [ -f libswscale/libswscale.dylib ]; then
131
- cp -f -p libswscale/*.dylib* $OUTPUT_FOLDER/lib
132
+ cp -f -p -R libswscale/*.dylib* $OUTPUT_FOLDER_LIB
133
else
134
- cp -f -d libswscale/*.so* $OUTPUT_FOLDER/lib
135
+ cp -f -d libswscale/*.so* $OUTPUT_FOLDER_LIB
136
fi
137
138
if [ -f libswresample/swresample.dll ]; then
139
cp -f libswresample/*.dll $OUTPUT_FOLDER
140
cp -f libswresample/*.lib $OUTPUT_FOLDER &>/dev/null
141
elif [ -f libswresample/libswresample.dylib ]; then
142
- cp -f -p libswresample/*.dylib* $OUTPUT_FOLDER/lib
143
+ cp -f -p -R libswresample/*.dylib* $OUTPUT_FOLDER_LIB
144
else
145
- cp -f -d libswresample/*.so* $OUTPUT_FOLDER/lib
146
+ cp -f -d libswresample/*.so* $OUTPUT_FOLDER_LIB
147
fi
148
149
cp -f *.exe $OUTPUT_FOLDER &>/dev/null
150
-cp -f ffmpeg $OUTPUT_FOLDER/bin &>/dev/null
151
-cp -f ffmpeg_g $OUTPUT_FOLDER/bin &>/dev/null
152
-cp -f ffprobe $OUTPUT_FOLDER/bin &>/dev/null
153
-cp -f ffprobe_g $OUTPUT_FOLDER/bin &>/dev/null
154
-cp -f ffserver $OUTPUT_FOLDER/bin &>/dev/null
155
-cp -f ffserver_g $OUTPUT_FOLDER/bin &>/dev/null
156
-cp -f ffplay $OUTPUT_FOLDER/bin &>/dev/null
157
+cp -f ffmpeg $OUTPUT_FOLDER_BIN &>/dev/null
158
+cp -f ffmpeg_g $OUTPUT_FOLDER_BIN &>/dev/null
159
+cp -f ffprobe $OUTPUT_FOLDER_BIN &>/dev/null
160
+cp -f ffprobe_g $OUTPUT_FOLDER_BIN &>/dev/null
161
+cp -f ffserver $OUTPUT_FOLDER_BIN &>/dev/null
162
+cp -f ffserver_g $OUTPUT_FOLDER_BIN &>/dev/null
163
+cp -f ffplay $OUTPUT_FOLDER_BIN &>/dev/null
164
+
165
+cp -f libavcodec/*.h $OUTPUT_FOLDER_INC/libavcodec &>/dev/null
166
+cp -f libavdevice/*.h $OUTPUT_FOLDER_INC/libavdevice &>/dev/null
167
+cp -f libavfilter/*.h $OUTPUT_FOLDER_INC/libavfilter &>/dev/null
168
+cp -f libavformat/*.h $OUTPUT_FOLDER_INC/libavformat &>/dev/null
169
+cp -f libavutil/*.h $OUTPUT_FOLDER_INC/libavutil &>/dev/null
170
+cp -f libswscale/*.h $OUTPUT_FOLDER_INC/libswscale &>/dev/null
171
+cp -f libswresample/*.h $OUTPUT_FOLDER_INC/libswresample &>/dev/null
172
173
# remove duplicates (only Windows)
174
rm $OUTPUT_FOLDER/avcodec.dll $OUTPUT_FOLDER/swresample.dll $OUTPUT_FOLDER/avdevice.dll $OUTPUT_FOLDER/avfilter.dll $OUTPUT_FOLDER/avformat.dll $OUTPUT_FOLDER/avutil.dll $OUTPUT_FOLDER/swscale.dll &>/dev/null
175
176
# create binaries archive
177
-if command -v 7za &>/dev/null
178
+if [ "$aSystem" == "Darwin" ]; then
179
+ rm $OUTPUT_FOLDER/../$OUTPUT_NAME.tar.gz &>/dev/null
180
+ cd $OUTPUT_FOLDER
181
+ tar -cvzf $OUTPUT_FOLDER/../$OUTPUT_NAME.tar.gz *
182
+elif command -v 7za &>/dev/null
183
then
184
- # binaries
185
rm $OUTPUT_FOLDER/../$OUTPUT_NAME.7z &>/dev/null
186
7za a -t7z -m0=lzma -mx=9 -mfb=64 -md=32m -ms=on $OUTPUT_FOLDER/../$OUTPUT_NAME.7z $OUTPUT_FOLDER
187
- rm -f -r $OUTPUT_FOLDER
188
fi
189
190
# come back
191
-cd ..
192
+cd $aPwdBack
193
+#rm -f -r $OUTPUT_FOLDER
194
sview-15_10.tar.gz/3rdparty/FFmpeg/rebuildBatch.sh -> sview-15_11.tar.gz/3rdparty/FFmpeg/rebuildBatch.sh
Changed
40
1
2
3
# This is helpful script to perform building of FFmpeg
4
5
-# MinGW tools for Ubuntu; http://ffmpeg.arrozcru.org/wiki/index.php?title=Aptrepository
6
-# Add gpg key to your system
7
-#$ gpg --keyserver keyserver.ubuntu.com --recv-key 0x25E635F9
8
-#$ gpg --export --armor 0x25E635F9 | sudo apt-key add -
9
-#deb http://apt.arrozcru.org ./
10
-#deb-src http://apt.arrozcru.org ./
11
+# mingw for cross-compiling
12
+#sudo apt-get install binutils-mingw-w64-i686 binutils-mingw-w64-x86-64 g++-mingw-w64-i686 g++-mingw-w64-x86-64 gcc-mingw-w64 gcc-mingw-w64-base gcc-mingw-w64-i686 gcc-mingw-w64-x86-64
13
+#sudo apt-get install mingw-w64 mingw-w64-common mingw-w64-tools yasm p7zip-full git git-gui gitk
14
15
-#sudo apt-get install mingw32-w32api mingw32-runtime mingw32-gcc-4.4 mingw32-binutils mingw32-zlib mingw32-bzip2 mingw32-pthreads
16
-#sudo apt-get install mingw-w64-w32api mingw-w64-runtime mingw-w64-gcc-4.4 mingw-w64-crt mingw-w64-binutils mingw-w64-headers mingw-w64-zlib mingw-w64-bzip2 mingw-w64-pthreads
17
+# avoid linkage with dynamic version of libwinpthread.dll
18
+#sudo mv /usr/x86_64-w64-mingw32/lib/libpthread.dll.a /usr/x86_64-w64-mingw32/lib/__libpthread.dll.a
19
+#sudo mv /usr/x86_64-w64-mingw32/lib/libwinpthread.dll.a /usr/x86_64-w64-mingw32/lib/__libwinpthread.dll.a
20
+#sudo mv /usr/i686-w64-mingw32/lib/libpthread.dll.a /usr/i686-w64-mingw32/lib/__libpthread.dll.a
21
+#sudo mv /usr/i686-w64-mingw32/lib/libwinpthread.dll.a /usr/i686-w64-mingw32/lib/__libwinpthread.dll.a
22
23
rebuildTarget="FFmpeg"
24
if [ "$1" != "" ]; then
25
26
fi
27
28
# build for Win32 x86
29
-#./rebuild.sh "$rebuildTarget" GPL DEBUG "i686-mingw32-"
30
-./rebuild.sh "$rebuildTarget" LGPL DEBUG "i686-mingw32-"
31
-./rebuild.sh "$rebuildTarget" GPL RELEASE "i686-mingw32-"
32
-./rebuild.sh "$rebuildTarget" LGPL RELEASE "i686-mingw32-"
33
+#./rebuild.sh "$rebuildTarget" GPL DEBUG "i686-w64-mingw32-"
34
+./rebuild.sh "$rebuildTarget" LGPL DEBUG "i686-w64-mingw32-"
35
+./rebuild.sh "$rebuildTarget" GPL RELEASE "i686-w64-mingw32-"
36
+./rebuild.sh "$rebuildTarget" LGPL RELEASE "i686-w64-mingw32-"
37
38
# build for Win32 AMD64
39
#./rebuild.sh "$rebuildTarget" GPL DEBUG "x86_64-w64-mingw32-"
40
sview-15_11.tar.gz/LICENSE.md
Added
62
1
2
+## Libraries
3
+
4
+* StShared
5
+* StGLWidget
6
+* StCore
7
+* StOutAnaglyph
8
+* StOutDual
9
+* StOutInterlace
10
+* StOutIZ3D
11
+* StOutPageFlip
12
+
13
+Sources of these libraries are under Boost license.
14
+Read the file [license-boost.txt](license-boost.txt) for details.
15
+
16
+Notice that some sources are wrappers over other 3rd-parties
17
+and their licenses should be taken into account when used.
18
+
19
+## sView
20
+
21
+* StImageViewer
22
+* StMoviePlayer
23
+* StDiagnostics
24
+* StMonitorsDump
25
+* StBrowserPlugin
26
+* StTests
27
+
28
+These libraries and programs are under the GNU General Public License version 3.0 or later.<br/>
29
+Read the file [license-gpl-3.0.txt](license-gpl-3.0.txt) for details.
30
+
31
+Note that sView executable project is a dummy entry point to real applications like StImageViewer.<br/>
32
+Formally it was licensed under Boost license terms.
33
+
34
+## StCADViewer
35
+
36
+This program is under the GNU General Public License version 3.0 or later.
37
+
38
+## External libraries
39
+
40
+* FFmpeg libraries are distributed under GNU Lesser General Public License version 2.1 or later.<br/>
41
+ http://ffmpeg.org/
42
+* libconfig++ library distributed under GNU Lesser General Public License version 2.1 or later.<br/>
43
+ http://www.hyperrealm.com/libconfig/
44
+* OpenAL library distributed under GNU Lesser General Public License version 2.1 or later.<br/>
45
+ http://kcat.strangesoft.net/openal.html
46
+* FreeType library distributed under FreeType License (BSD-style license with a credit clause).<br/>
47
+ http://www.freetype.org/
48
+* Open CASCADE Technology libraries distributed under GNU Lesser General Public License version 2.1.<br/>
49
+ http://dev.opencascade.org/
50
+
51
+Some 3rd-parties may depend on other libraries and provide more license options.
52
+Please read license information for original projects.
53
+
54
+## Icons
55
+
56
+Images in folders [texturesSrc](texturesSrc) and [textures](textures)
57
+are available under the [license CC-BY 4.0](license-CC-BY-4.0.txt) (Creative Common Attribution 4.0 International License).
58
+Feel free to remix and re-share these icons in your products.
59
+
60
+Some of the images have been derived from Material Design icons shared by Google:<br/>
61
+https://github.com/google/material-design-icons
62
sview-15_11.tar.gz/README.md
Added
41
1
2
+sView - stereoscopic media player
3
+=================================
4
+
5
+sView is an easy to use cross-platform solution to view 3D stereoscopic videos and images.
6
+Please visit official site for more information:<br/>
7
+http://www.sview.ru
8
+
9
+## Libraries
10
+
11
+* `libStShared` threads, mutexes, template-based signals and slots, OpenGL tools, settings management, and other tools.
12
+* `libStGLWidgets` compact C++ toolkit for writing GUI using OpenGL 2.1+ or OpenGL ES 2.0+.
13
+* `libStCore` window system independent C++ toolkit for writing OpenGL applications.
14
+* `libStOutAnaglyph` stereoscopic output in anaglyph format using GLSL programs.
15
+* `libStOutDistorted` stereoscopic output in anamorph side-by-side format.
16
+* `libStOutDual` stereoscopic output through two dedicated interfaces.
17
+* `libStOutInterlace` stereoscopic output for row interlaced displays using GLSL programs.
18
+* `libStOutIZ3D` stereoscopic output for iZ3D monitors using GLSL programs.
19
+* `libStOutPageFlip` stereoscopic output for shutter glasses devices.
20
+
21
+## Updates
22
+
23
+To get up-to-date sources please clone official git repository:
24
+~~~~~
25
+ git clone https://github.com/gkv311/sview.git
26
+~~~~~
27
+
28
+## Documentation
29
+
30
+Read the documentation in the **doc/** directory in git.
31
+Online help is available on official site:<br/>
32
+http://www.sview.ru/en/sview/usertips/
33
+
34
+## Licensing
35
+
36
+See the [LICENSE](LICENSE.md) file.
37
+
38
+## Build and Install
39
+
40
+See the [docs/INSTALL](docs/INSTALL.md) file.
41
sview-15_10.tar.gz/StBrowserPlugin/StBrowserPlugin.cbp -> sview-15_11.tar.gz/StBrowserPlugin/StBrowserPlugin.cbp
Changed
103
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/npStBrowserPlugin" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Compiler>
11
- <Add option="-O3" />
12
- <Add option="-std=c++0x" />
13
- <Add option="-Wall" />
14
- <Add option="-g" />
15
- <Add option="-shared" />
16
- <Add option="-mmmx" />
17
- <Add option="-msse" />
18
- <Add option="-DUNICODE" />
19
- <Add option="-DST_DEBUG" />
20
- <Add option="-D__MSVCRT_VERSION__=0x0601" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add option="--input-def StBrowserPluginNPAPI.def" />
25
- <Add library="user32" />
26
- <Add library="advapi32" />
27
- <Add library="shell32" />
28
- <Add library="Version" />
29
- </Linker>
30
- </Target>
31
<Target title="WIN_vc_x86">
32
<Option output="../bin/$(TARGET_NAME)/npStBrowserPlugin" prefix_auto="1" extension_auto="1" />
33
<Option object_output="obj/$(TARGET_NAME)/" />
34
35
<Add before='midl /nologo /win32 /W1 $res_includes /client none /tlb "$(TARGET_OBJECT_DIR)\StActiveX.idl.tlb" StActiveX.idl' />
36
</ExtraCommands>
37
</Target>
38
- <Target title="WIN_vc_x86_DEBUG">
39
+ <Target title="WIN_vc_AMD64_DEBUG">
40
<Option output="../bin/$(TARGET_NAME)/npStBrowserPlugin" prefix_auto="1" extension_auto="1" />
41
<Option object_output="obj/$(TARGET_NAME)/" />
42
<Option type="3" />
43
- <Option compiler="msvc10" />
44
+ <Option compiler="windows_sdk_x86_64" />
45
<Compiler>
46
<Add option="/MDd" />
47
<Add option="/Od" />
48
49
<Add library="advapi32" />
50
<Add library="shell32" />
51
<Add library="Version" />
52
- <Add directory="../3rdparty/atlmfc/lib" />
53
+ <Add directory="../3rdparty/atlmfc/lib/amd64" />
54
</Linker>
55
<ExtraCommands>
56
<Add before='cmd /c IF NOT EXIST "$(TARGET_OBJECT_DIR)" MKDIR "$(TARGET_OBJECT_DIR)"' />
57
58
<Unit filename="NSPluginBase.h" />
59
<Unit filename="StActiveX.idl">
60
<Option target="WIN_vc_x86" />
61
- <Option target="WIN_vc_x86_DEBUG" />
62
+ <Option target="WIN_vc_AMD64_DEBUG" />
63
<Option target="WIN_vc_AMD64" />
64
</Unit>
65
<Unit filename="StActiveXCtrl.cpp">
66
<Option weight="40" />
67
<Option target="WIN_vc_x86" />
68
- <Option target="WIN_vc_x86_DEBUG" />
69
+ <Option target="WIN_vc_AMD64_DEBUG" />
70
<Option target="WIN_vc_AMD64" />
71
</Unit>
72
<Unit filename="StActiveXCtrl.h" />
73
<Unit filename="StActiveXModule.cpp">
74
<Option target="WIN_vc_x86" />
75
- <Option target="WIN_vc_x86_DEBUG" />
76
+ <Option target="WIN_vc_AMD64_DEBUG" />
77
<Option target="WIN_vc_AMD64" />
78
</Unit>
79
<Unit filename="StActiveXModule.h" />
80
<Unit filename="StBrPluginInfo.h" />
81
<Unit filename="StBrowserPlugin.cpp" />
82
- <Unit filename="StBrowserPlugin.def">
83
- <Option target="WIN_gcc_x86" />
84
- </Unit>
85
<Unit filename="StBrowserPlugin.h" />
86
<Unit filename="StBrowserPlugin.rc">
87
<Option compilerVar="WINDRES" />
88
<Option compiler="windows_sdk_x86_64" use="1" buildCommand='$rescomp -DST_OCX_TLB_PATH="$(TARGET_OBJECT_DIR)/StActiveX.idl.tlb" $res_includes -fo $resource_output $file' />
89
- <Option compiler="windows_sdk_x86" use="1" buildCommand='$rescomp -DST_OCX_TLB_PATH="$(TARGET_OBJECT_DIR)/StActiveX.idl.tlb" $res_includes -fo $resource_output $file' />
90
- <Option target="WIN_gcc_x86" />
91
+ <Option compiler="msvc10" use="1" buildCommand='$rescomp -DST_OCX_TLB_PATH="$(TARGET_OBJECT_DIR)/StActiveX.idl.tlb" $res_includes -fo $resource_output $file' />
92
<Option target="WIN_vc_x86" />
93
- <Option target="WIN_vc_x86_DEBUG" />
94
+ <Option target="WIN_vc_AMD64_DEBUG" />
95
<Option target="WIN_vc_AMD64" />
96
</Unit>
97
- <Unit filename="StBrowserPluginNPAPI.def">
98
- <Option target="WIN_gcc_x86" />
99
- </Unit>
100
<Unit filename="npEntry.cpp" />
101
<Unit filename="npapi.h" />
102
<Unit filename="npfunctions.h" />
103
sview-15_10.tar.gz/StCADViewer/StCADViewer.cbp -> sview-15_11.tar.gz/StCADViewer/StCADViewer.cbp
Changed
77
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/libStCADViewer" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Option parameters="--in=StCADViewer" />
11
- <Option host_application="../bin/$(TARGET_NAME)/sView" />
12
- <Option run_host_application_in_terminal="0" />
13
- <Option createStaticLib="1" />
14
- <Compiler>
15
- <Add option="-O3" />
16
- <Add option="-std=c++0x" />
17
- <Add option="-Wall" />
18
- <Add option="-g" />
19
- <Add option="-shared" />
20
- <Add option="-mmmx" />
21
- <Add option="-msse" />
22
- <Add option="-DUNICODE" />
23
- <Add option="-DST_DEBUG" />
24
- <Add option="-DWNT" />
25
- <Add option="-DST_HAVE_STCONFIG" />
26
- </Compiler>
27
- <Linker>
28
- <Add library="opengl32" />
29
- <Add library="gdi32" />
30
- <Add library="Comdlg32" />
31
- <Add library="shell32" />
32
- <Add library="Wsock32" />
33
- <Add library="Version" />
34
- <Add directory="../3rdparty/OCCT/lib/WIN_vc_x86" />
35
- </Linker>
36
- <ExtraCommands>
37
- <Add before='cmd /c call ..\copy_res.bat $(TARGET_OUTPUT_DIR) $(TARGET_OUTPUT_BASENAME)' />
38
- </ExtraCommands>
39
- </Target>
40
<Target title="WIN_vc_x86">
41
<Option output="../bin/$(TARGET_NAME)/StCADViewer" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
42
<Option object_output="obj/$(TARGET_NAME)/" />
43
44
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";2' />
45
</ExtraCommands>
46
</Target>
47
- <Target title="WIN_vc_x86_DEBUG">
48
+ <Target title="WIN_vc_AMD64_DEBUG">
49
<Option output="../bin/$(TARGET_NAME)/StCADViewer" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
50
<Option object_output="obj/$(TARGET_NAME)/" />
51
<Option type="3" />
52
- <Option compiler="msvc10" />
53
+ <Option compiler="windows_sdk_x86_64" />
54
<Option parameters="--in=StCADViewer" />
55
<Option host_application="../bin/$(TARGET_NAME)/sView" />
56
<Option run_host_application_in_terminal="0" />
57
58
<Add library="shell32" />
59
<Add library="Wsock32" />
60
<Add library="Version" />
61
- <Add directory="../3rdparty/OCCT/lib/WIN_vc_x86" />
62
+ <Add directory="../3rdparty/OCCT/lib/WIN_vc_AMD64" />
63
</Linker>
64
<ExtraCommands>
65
<Add before='cmd /c call ..\copy_res.bat $(TARGET_OUTPUT_DIR) $(TARGET_OUTPUT_BASENAME)' />
66
67
<Unit filename="StCADViewer.h" />
68
<Unit filename="StCADViewer.rc">
69
<Option compilerVar="WINDRES" />
70
- <Option target="WIN_gcc_x86" />
71
<Option target="WIN_vc_x86" />
72
- <Option target="WIN_vc_x86_DEBUG" />
73
+ <Option target="WIN_vc_AMD64_DEBUG" />
74
<Option target="WIN_vc_AMD64" />
75
</Unit>
76
<Unit filename="StCADViewerGUI.cpp" />
77
sview-15_10.tar.gz/StCADViewer/StCADViewer.cpp -> sview-15_11.tar.gz/StCADViewer/StCADViewer.cpp
Changed
14
1
2
}
3
4
void StCADViewer::doFileDrop(const StDNDropEvent& theEvent) {
5
- const StString aFilePath = theEvent.File;
6
+ if(theEvent.NbFiles == 0) {
7
+ return;
8
+ }
9
+
10
+ const StString aFilePath = theEvent.Files[0];
11
if(myCADLoader->getPlayList().checkExtension(aFilePath)) {
12
myCADLoader->getPlayList().open(aFilePath);
13
doUpdateStateLoading();
14
sview-15_10.tar.gz/StCADViewer/lang/chinese/StCADViewer.lng -> sview-15_11.tar.gz/StCADViewer/lang/chinese/StCADViewer.lng
Changed
49
1
2
@author Kirill Gavrilov
3
4
--------
5
-1200="View"
6
-1201="Projection type"
7
-1202="Fullscreen"
8
-1203="Show normals"
9
-1204="Show trihedron"
10
-1205="Two sides lighting"
11
-1206="Projection"
12
-1207="Fill Mode"
13
-1208="Fit ALL"
14
-1240="Orthogonal"
15
-1241="Perspective"
16
-1242="Stereo"
17
-1250="Mesh"
18
-1251="Shaded"
19
-1252="Shaded + Mesh"
20
-1500="Help"
21
-1501="About..."
22
-1503="License text"
23
-1504="Language"
24
-3000="sView - Tiny CAD Viewer"
25
-3001="version"
26
-3002="CAD viewer allows you to view CAD files in formats IGES, STEP, BREP using OpenCASCADE Technology.\n © 2011-2014 Kirill Gavrilov (kirill@sview.ru).\nOfficial site: www.sview.ru"
27
+?1200=View
28
+?1201=Projection type
29
+?1202=Fullscreen
30
+?1203=Show normals
31
+?1204=Show trihedron
32
+?1205=Two sides lighting
33
+?1206=Projection
34
+?1207=Fill Mode
35
+?1208=Fit ALL
36
+?1240=Orthogonal
37
+?1241=Perspective
38
+?1242=Stereo
39
+?1250=Mesh
40
+?1251=Shaded
41
+?1252=Shaded + Mesh
42
+?1500=Help
43
+?1501=About...
44
+?1503=License text
45
+?1504=Language
46
+?3000=sView - Tiny CAD Viewer
47
+?3001=version
48
+?3002=CAD viewer allows you to view CAD files in formats IGES, STEP, BREP using OpenCASCADE Technology.\n © 2011-2014 Kirill Gavrilov (kirill@sview.ru).\nOfficial site: www.sview.ru
49
sview-15_10.tar.gz/StCADViewer/lang/english/StCADViewer.lng -> sview-15_11.tar.gz/StCADViewer/lang/english/StCADViewer.lng
Changed
49
1
2
# English translation file for StCADViewer
3
# @author Kirill Gavrilov
4
--------
5
-1200="View"
6
-1201="Projection type"
7
-1202="Fullscreen"
8
-1203="Show normals"
9
-1204="Show trihedron"
10
-1205="Two sides lighting"
11
-1206="Projection"
12
-1207="Fill Mode"
13
-1208="Fit ALL"
14
-1240="Orthogonal"
15
-1241="Perspective"
16
-1242="Stereo"
17
-1250="Mesh"
18
-1251="Shaded"
19
-1252="Shaded + Mesh"
20
-1500="Help"
21
-1501="About..."
22
-1503="License text"
23
-1504="Language"
24
-3000="sView - Tiny CAD Viewer"
25
-3001="version"
26
-3002="CAD viewer allows you to view CAD files in formats IGES, STEP, BREP using OpenCASCADE Technology.\n © 2011-2014 Kirill Gavrilov (kirill@sview.ru).\nOfficial site: www.sview.ru"
27
+1200=View
28
+1201=Projection type
29
+1202=Fullscreen
30
+1203=Show normals
31
+1204=Show trihedron
32
+1205=Two sides lighting
33
+1206=Projection
34
+1207=Fill Mode
35
+1208=Fit ALL
36
+1240=Orthogonal
37
+1241=Perspective
38
+1242=Stereo
39
+1250=Mesh
40
+1251=Shaded
41
+1252=Shaded + Mesh
42
+1500=Help
43
+1501=About...
44
+1503=License text
45
+1504=Language
46
+3000=sView - Tiny CAD Viewer
47
+3001=version
48
+3002=CAD viewer allows you to view CAD files in formats IGES, STEP, BREP using OpenCASCADE Technology.\n © 2011-2014 Kirill Gavrilov (kirill@sview.ru).\nOfficial site: www.sview.ru
49
sview-15_10.tar.gz/StCADViewer/lang/french/StCADViewer.lng -> sview-15_11.tar.gz/StCADViewer/lang/french/StCADViewer.lng
Changed
49
1
2
# French translation file for StCADViewer
3
# @author Kirill Gavrilov
4
--------
5
-1200="Voir"
6
-1201="Type de projection"
7
-1202="Plein Ecran"
8
-1203="Show normals"
9
-1204="Show trihedron"
10
-1205="Two sides lighting"
11
-1206="Projection"
12
-1207="Fill Mode"
13
-1208="Fit ALL"
14
-1240="Orthogonal"
15
-1241="Perspective"
16
-1242="Stereo"
17
-1250="Mesh"
18
-1251="Shaded"
19
-1252="Shaded + Mesh"
20
-1500="Aide"
21
-1501="A Propos..."
22
-1503="Texte de la Licence"
23
-1504="Language"
24
-3000="sView - Tiny CAD Viewer"
25
-3001="version"
26
-3002="CAD viewer allows you to view CAD files in formats IGES, STEP, BREP using OpenCASCADE Technology.\n © 2011-2014 Kirill Gavrilov (kirill@sview.ru).\nOfficial site: www.sview.ru"
27
+1200=Voir
28
+1201=Type de projection
29
+1202=Plein Ecran
30
+?1203=Show normals
31
+?1204=Show trihedron
32
+?1205=Two sides lighting
33
+?1206=Projection
34
+?1207=Fill Mode
35
+?1208=Fit ALL
36
+?1240=Orthogonal
37
+?1241=Perspective
38
+?1242=Stereo
39
+?1250=Mesh
40
+?1251=Shaded
41
+?1252=Shaded + Mesh
42
+1500=Aide
43
+1501=A Propos...
44
+1503=Texte de la Licence
45
+1504=Language
46
+3000=sView - Tiny CAD Viewer
47
+3001=version
48
+?3002=CAD viewer allows you to view CAD files in formats IGES, STEP, BREP using OpenCASCADE Technology.\n © 2011-2014 Kirill Gavrilov (kirill@sview.ru).\nOfficial site: www.sview.ru
49
sview-15_10.tar.gz/StCADViewer/lang/german/StCADViewer.lng -> sview-15_11.tar.gz/StCADViewer/lang/german/StCADViewer.lng
Changed
49
1
2
# German translation file for StCADViewer
3
# @author Kirill Gavrilov
4
--------
5
-1200="Ansicht"
6
-1201="Projection type"
7
-1202="Vollbild"
8
-1203="Normalen anzeigen"
9
-1204="Dreibein anzeigen"
10
-1205="Zwei einseitige Beleuchtung"
11
-1206="Projektion"
12
-1207="Füllmodus"
13
-1208="Fit ALL"
14
-1240="Orthogonal"
15
-1241="Perspektive"
16
-1242="Stereo"
17
-1250="Mesh"
18
-1251="Beschattet"
19
-1252="Beschattet + Mesh"
20
-1500="Hilfe"
21
-1501="Über..."
22
-1503="Lizenztext"
23
-1504="Language"
24
-3000="sView - winzig CAD Viewer"
25
-3001="Version"
26
-3002="CAD viewer allows you to view CAD files in formats IGES, STEP, BREP using OpenCASCADE Technology.\n © 2011-2014 Kirill Gavrilov (kirill@sview.ru).\nOfficial site: www.sview.ru"
27
+1200=Ansicht
28
+1201=Projection type
29
+1202=Vollbild
30
+1203=Normalen anzeigen
31
+1204=Dreibein anzeigen
32
+1205=Zwei einseitige Beleuchtung
33
+1206=Projektion
34
+1207=Füllmodus
35
+?1208=Fit ALL
36
+1240=Orthogonal
37
+1241=Perspektive
38
+1242=Stereo
39
+1250=Mesh
40
+1251=Beschattet
41
+1252=Beschattet + Mesh
42
+1500=Hilfe
43
+1501=Über...
44
+1503=Lizenztext
45
+1504=Language
46
+3000=sView - winzig CAD Viewer
47
+3001=Version
48
+3002=CAD viewer allows you to view CAD files in formats IGES, STEP, BREP using OpenCASCADE Technology.\n © 2011-2014 Kirill Gavrilov (kirill@sview.ru).\nOfficial site: www.sview.ru
49
sview-15_10.tar.gz/StCADViewer/lang/korean/StCADViewer.lng -> sview-15_11.tar.gz/StCADViewer/lang/korean/StCADViewer.lng
Changed
49
1
2
@author Kirill Gavrilov
3
4
--------
5
-1200="View"
6
-1201="Projection type"
7
-1202="Fullscreen"
8
-1203="Show normals"
9
-1204="Show trihedron"
10
-1205="Two sides lighting"
11
-1206="Projection"
12
-1207="Fill Mode"
13
-1208="Fit ALL"
14
-1240="Orthogonal"
15
-1241="Perspective"
16
-1242="Stereo"
17
-1250="Mesh"
18
-1251="Shaded"
19
-1252="Shaded + Mesh"
20
-1500="Help"
21
-1501="About..."
22
-1503="License text"
23
-1504="Language"
24
-3000="sView - Tiny CAD Viewer"
25
-3001="version"
26
-3002="CAD viewer allows you to view CAD files in formats IGES, STEP, BREP using OpenCASCADE Technology.\n © 2011-2014 Kirill Gavrilov (kirill@sview.ru).\nOfficial site: www.sview.ru"
27
+?1200=View
28
+?1201=Projection type
29
+?1202=Fullscreen
30
+?1203=Show normals
31
+?1204=Show trihedron
32
+?1205=Two sides lighting
33
+?1206=Projection
34
+?1207=Fill Mode
35
+?1208=Fit ALL
36
+?1240=Orthogonal
37
+?1241=Perspective
38
+?1242=Stereo
39
+?1250=Mesh
40
+?1251=Shaded
41
+?1252=Shaded + Mesh
42
+?1500=Help
43
+?1501=About...
44
+?1503=License text
45
+?1504=Language
46
+?3000=sView - Tiny CAD Viewer
47
+?3001=version
48
+?3002=CAD viewer allows you to view CAD files in formats IGES, STEP, BREP using OpenCASCADE Technology.\n © 2011-2014 Kirill Gavrilov (kirill@sview.ru).\nOfficial site: www.sview.ru
49
sview-15_10.tar.gz/StCADViewer/lang/russian/StCADViewer.lng -> sview-15_11.tar.gz/StCADViewer/lang/russian/StCADViewer.lng
Changed
49
1
2
# Russian translation file for StCADViewer
3
# @author Kirill Gavrilov
4
--------
5
-1200="Вид"
6
-1201="Тип проекции"
7
-1202="Полный экран"
8
-1203="Отображать нормали"
9
-1204="Show trihedron"
10
-1205="Two sides lighting"
11
-1206="Проекция"
12
-1207="Fill Mode"
13
-1208="Вписать модель"
14
-1240="Ортогональная"
15
-1241="Перспективная"
16
-1242="Стерео"
17
-1250="Mesh"
18
-1251="Shaded"
19
-1252="Shaded + Mesh"
20
-1500="Помощь"
21
-1501="О программе..."
22
-1503="Открыть лицензию"
23
-1504="Language"
24
-3000="sView - приложение для просмотра CAD моделей"
25
-3001="версия"
26
-3002="Программа открывает CAD модели в форматах IGES, STEP, BREP с помощью OpenCASCADE Technology.\n © 2011-2014 Гаврилов Кирилл (kirill@sview.ru).\nОфициальный сайт: www.sview.ru"
27
+1200=Вид
28
+1201=Тип проекции
29
+1202=Полный экран
30
+1203=Отображать нормали
31
+1204=Show trihedron
32
+1205=Two sides lighting
33
+1206=Проекция
34
+1207=Fill Mode
35
+1208=Вписать модель
36
+1240=Ортогональная
37
+1241=Перспективная
38
+1242=Стерео
39
+1250=Mesh
40
+1251=Shaded
41
+1252=Shaded + Mesh
42
+1500=Помощь
43
+1501=О программе...
44
+1503=Открыть лицензию
45
+1504=Language
46
+3000=sView - приложение для просмотра CAD моделей
47
+3001=версия
48
+3002=Программа открывает CAD модели в форматах IGES, STEP, BREP с помощью OpenCASCADE Technology.\n © 2011-2014 Гаврилов Кирилл (kirill@sview.ru).\nОфициальный сайт: www.sview.ru
49
sview-15_10.tar.gz/StCore/StADLsdk.cpp -> sview-15_11.tar.gz/StCore/StADLsdk.cpp
Changed
34
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2009-2011 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __APPLE__
25
26
#elif(defined(__linux__) || defined(__linux))
27
static const char LIB_NAME[] = "libatiadlxx";
28
#endif
29
-};
30
+}
31
32
bool StADLsdk::countAdapters() {
33
if(myFunctions.ADL_Adapter_AdapterInfo_Get == NULL
34
sview-15_10.tar.gz/StCore/StADLsdk.h -> sview-15_11.tar.gz/StCore/StADLsdk.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2009-2011 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __APPLE__
25
sview-15_10.tar.gz/StCore/StAndroidGlue.cpp -> sview-15_11.tar.gz/StCore/StAndroidGlue.cpp
Changed
111
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2014-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if defined(__ANDROID__)
25
26
return stCString("UNKNOWN");
27
}
28
29
+/**
30
+ * Read string from jstring.
31
+ */
32
+inline StString stStringFromJava(JNIEnv* theJEnv,
33
+ jstring theJString) {
34
+ if(theJString == NULL) {
35
+ return StString();
36
+ }
37
+
38
+ const char* aJStringStr = theJEnv->GetStringUTFChars(theJString, 0);
39
+ const StString aString = aJStringStr;
40
+ theJEnv->ReleaseStringUTFChars(theJString, aJStringStr);
41
+ return aString;
42
+}
43
+
44
+StString StAndroidGlue::getStoragePath(JNIEnv* theJEnv,
45
+ const char* theType) {
46
+ jclass aJClass_Env = theJEnv->FindClass("android/os/Environment");
47
+ jclass aJClass_File = theJEnv->FindClass("java/io/File");
48
+ if(aJClass_Env == NULL
49
+ || aJClass_File == NULL) {
50
+ return StString();
51
+ }
52
+
53
+ jmethodID aJMet_getStorage = theJEnv->GetStaticMethodID(aJClass_Env, "getExternalStoragePublicDirectory", "(Ljava/lang/String;)Ljava/io/File;");
54
+ jmethodID aJMet_getSdCard = theJEnv->GetStaticMethodID(aJClass_Env, "getExternalStorageDirectory", "()Ljava/io/File;");
55
+ jmethodID aJMet_getPath = theJEnv->GetMethodID (aJClass_File, "getAbsolutePath", "()Ljava/lang/String;");
56
+ if(aJMet_getStorage == NULL
57
+ || aJMet_getSdCard == NULL
58
+ || aJMet_getPath == NULL) {
59
+ return StString();
60
+ }
61
+
62
+ StString aType = theType;
63
+ jobject aJFile = NULL;
64
+ if(aType == "sdcard") {
65
+ aJFile = theJEnv->CallStaticObjectMethod(aJClass_Env, aJMet_getSdCard);
66
+ } else {
67
+ jstring aJStr_Type = theJEnv->NewStringUTF(theType);
68
+ aJFile = theJEnv->CallStaticObjectMethod(aJClass_Env, aJMet_getStorage, aJStr_Type);
69
+ theJEnv->DeleteLocalRef(aJStr_Type);
70
+ }
71
+ if(aJFile == NULL) {
72
+ return StString();
73
+ }
74
+ return stStringFromJava(theJEnv, (jstring )theJEnv->CallObjectMethod(aJFile, aJMet_getPath));
75
+}
76
+
77
StAndroidGlue::StAndroidGlue(ANativeActivity* theActivity,
78
void* theSavedState,
79
size_t theSavedStateSize)
80
81
myMemoryClassMiB = aJniEnv->CallIntMethod(aJActivityMgr, aJMet_getMemoryClass);
82
}
83
84
+ jmethodID aJMet_getStAppClass = aJniEnv->GetMethodID(aJClass_Activity, "getStAppClass", "()Ljava/lang/String;");
85
+ myStAppClass = stStringFromJava(aJniEnv, (jstring )aJniEnv->CallObjectMethod(myActivity->clazz, aJMet_getStAppClass));
86
+
87
readOpenPath();
88
89
myCmdPollSource.id = LooperId_MAIN;
90
91
jmethodID aJMet_getFlags = aJniEnv->GetMethodID(aJClassIntent, "getFlags", "()I");
92
93
// retrieve data path
94
- jstring aJString = (jstring )aJniEnv->CallObjectMethod(aJIntent, aJMet_getDataString);
95
- const char* aJStringStr = aJniEnv->GetStringUTFChars(aJString, 0);
96
- StString aDataPath = aJStringStr;
97
- aJniEnv->ReleaseStringUTFChars(aJString, aJStringStr);
98
-
99
+ StString aDataPath = stStringFromJava(aJniEnv, (jstring )aJniEnv->CallObjectMethod(aJIntent, aJMet_getDataString));
100
// retrieve data type
101
- int aFlags = aJniEnv->CallIntMethod(aJIntent, aJMet_getFlags);
102
- aJString = (jstring )aJniEnv->CallObjectMethod(aJIntent, aJMet_getType);
103
- aJStringStr = aJniEnv->GetStringUTFChars(aJString, 0);
104
- const StString aDataType = aJStringStr;
105
- aJniEnv->ReleaseStringUTFChars(aJString, aJStringStr);
106
+ int aFlags = aJniEnv->CallIntMethod(aJIntent, aJMet_getFlags);
107
+ const StString aDataType = stStringFromJava(aJniEnv, (jstring )aJniEnv->CallObjectMethod(aJIntent, aJMet_getType));
108
109
// reset intent in Activity
110
aJniEnv->CallVoidMethod(myActivity->clazz, aJMet_setIntent, NULL);
111
sview-15_10.tar.gz/StCore/StApplication.cpp -> sview-15_11.tar.gz/StCore/StApplication.cpp
Changed
51
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include <StCore/StApplication.h>
25
26
//return myActions.at(theActionId);
27
}
28
29
+int StApplication::getActionIdFromName(const StString& theActionName) const {
30
+ StString aNameLower = theActionName;
31
+ aNameLower.toLowerCase();
32
+ const std::string aName(aNameLower.toCString());
33
+ std::map< std::string, int >::const_iterator anAction = myActionLookup.find(aName);
34
+ return anAction != myActionLookup.end()
35
+ ? anAction->second
36
+ : -1;
37
+}
38
+
39
void StApplication::addAction(const int theActionId,
40
const StHandle<StAction>& theAction) {
41
myActions[theActionId] = theAction;
42
+ if(!theAction.isNull()) {
43
+ StString aNameLower = theAction->getName();
44
+ aNameLower.toLowerCase();
45
+ const std::string aName(aNameLower.toCString());
46
+ myActionLookup[aName] = theActionId;
47
+ }
48
}
49
50
void StApplication::addAction(const int theActionId,
51
sview-15_10.tar.gz/StCore/StCocoaView.h -> sview-15_11.tar.gz/StCore/StCocoaView.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if (defined(__APPLE__))
25
sview-15_10.tar.gz/StCore/StCocoaView.mm -> sview-15_11.tar.gz/StCore/StCocoaView.mm
Changed
63
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if (defined(__APPLE__))
25
26
27
#include <StCocoa/StCocoaString.h>
28
29
+#include <vector>
30
+
31
#if !defined(MAC_OS_X_VERSION_10_7) || (MAC_OS_X_VERSION_MAX_ALLOWED < MAC_OS_X_VERSION_10_7)
32
@interface NSOpenGLView (LionAPI)
33
- (void )setWantsBestResolutionOpenGLSurface: (BOOL )theFlag;
34
35
return NO;
36
}
37
38
+ std::vector<StString> aPaths;
39
for(NSUInteger aFileId = 0; aFileId < [aFiles count]; ++aFileId) {
40
NSString* aFilePathNs = (NSString* )[aFiles objectAtIndex: aFileId];
41
if(aFilePathNs == NULL
42
43
44
// automatically convert filenames from decomposed form used by Mac OS X file systems
45
const StString aFile = [[aFilePathNs precomposedStringWithCanonicalMapping] UTF8String];
46
+ aPaths.push_back(aFile);
47
+ }
48
+
49
+ std::vector<const char*> aDndList;
50
+ for(std::vector<StString>::const_iterator aFileIter = aPaths.begin(); aFileIter != aPaths.end(); ++aFileIter) {
51
+ aDndList.push_back(aFileIter->toCString());
52
+ }
53
+ if(!aDndList.empty()) {
54
myStEvent.Type = stEvent_FileDrop;
55
- myStEvent.DNDrop.Time = myStWin->getEventTime();
56
- myStEvent.DNDrop.File = aFile.toCString();
57
+ myStEvent.DNDrop.Time = myStWin->getEventTime();
58
+ myStEvent.DNDrop.NbFiles = aDndList.size();
59
+ myStEvent.DNDrop.Files = &aDndList[0];
60
if(myStWin->myEventsThreaded) {
61
myStWin->myEventsBuffer.append(myStEvent);
62
} else {
63
sview-15_10.tar.gz/StCore/StCocoaWin.h -> sview-15_11.tar.gz/StCore/StCocoaWin.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2011-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if (defined(__APPLE__))
25
sview-15_10.tar.gz/StCore/StCocoaWin.mm -> sview-15_11.tar.gz/StCore/StCocoaWin.mm
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2011-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if (defined(__APPLE__))
25
sview-15_10.tar.gz/StCore/StCore.cbp -> sview-15_11.tar.gz/StCore/StCore.cbp
Changed
111
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/StCore" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Option createStaticLib="1" />
11
- <Compiler>
12
- <Add option="-O3" />
13
- <Add option="-std=c++0x" />
14
- <Add option="-Wall" />
15
- <Add option="-g" />
16
- <Add option="-shared" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-D_WIN32_WINNT=0x0502" />
21
- <Add option="-DST_DEBUG" />
22
- <Add option="-DST_HAVE_STCONFIG" />
23
- </Compiler>
24
- <Linker>
25
- <Add library="opengl32" />
26
- <Add library="gdi32" />
27
- <Add library="Comdlg32" />
28
- <Add library="Winmm" />
29
- <Add library="Version" />
30
- <Add library="nvapi" />
31
- </Linker>
32
- </Target>
33
<Target title="WIN_vc_x86">
34
<Option output="../bin/$(TARGET_NAME)/StCore" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
35
<Option object_output="obj/$(TARGET_NAME)/" />
36
37
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";2' />
38
</ExtraCommands>
39
</Target>
40
- <Target title="WIN_vc_x86_DEBUG">
41
+ <Target title="WIN_vc_AMD64_DEBUG">
42
<Option output="../bin/$(TARGET_NAME)/StCore" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
43
<Option object_output="obj/$(TARGET_NAME)/" />
44
<Option type="3" />
45
- <Option compiler="msvc10" />
46
+ <Option compiler="windows_sdk_x86_64" />
47
<Option createStaticLib="1" />
48
<Compiler>
49
<Add option="/MDd" />
50
51
<Add directory="../bin/$(TARGET_NAME)" />
52
</Linker>
53
<Unit filename="StADLsdk.cpp">
54
- <Option target="WIN_gcc_x86" />
55
<Option target="WIN_vc_x86" />
56
- <Option target="WIN_vc_x86_DEBUG" />
57
+ <Option target="WIN_vc_AMD64_DEBUG" />
58
<Option target="WIN_vc_AMD64" />
59
<Option target="LINUX_gcc" />
60
<Option target="LINUX_gcc_DEBUG" />
61
62
<Option compilerVar="WINDRES" />
63
<Option target="WIN_vc_x86" />
64
<Option target="WIN_vc_AMD64" />
65
- <Option target="WIN_gcc_x86" />
66
- <Option target="WIN_vc_x86_DEBUG" />
67
+ <Option target="WIN_vc_AMD64_DEBUG" />
68
</Unit>
69
<Unit filename="StEventsBuffer.h" />
70
<Unit filename="StKeysState.cpp" />
71
72
<Option target="MAC_gcc_DEBUG" />
73
</Unit>
74
<Unit filename="StWinHandles.cpp">
75
- <Option target="WIN_gcc_x86" />
76
<Option target="WIN_vc_x86" />
77
- <Option target="WIN_vc_x86_DEBUG" />
78
+ <Option target="WIN_vc_AMD64_DEBUG" />
79
<Option target="WIN_vc_AMD64" />
80
<Option target="LINUX_gcc" />
81
<Option target="LINUX_gcc_DEBUG" />
82
83
<Option target="MAC_gcc_DEBUG" />
84
</Unit>
85
<Unit filename="StWindowImplWin.cpp">
86
- <Option target="WIN_gcc_x86" />
87
<Option target="WIN_vc_x86" />
88
- <Option target="WIN_vc_x86_DEBUG" />
89
+ <Option target="WIN_vc_AMD64_DEBUG" />
90
<Option target="WIN_vc_AMD64" />
91
</Unit>
92
<Unit filename="StXDisplay.cpp">
93
94
<Option target="LINUX_gcc_DEBUG" />
95
</Unit>
96
<Unit filename="StXDisplay.h" />
97
+ <Unit filename="stvkeysandroid.h" />
98
<Unit filename="stvkeyscarbon.h">
99
<Option target="MAC_gcc" />
100
<Option target="MAC_gcc_DEBUG" />
101
102
<Unit filename="stvkeysxarray.h" />
103
<Unit filename="zerosarray256.h" />
104
<Unit filename="zerosarray4096.h" />
105
+ <Unit filename="../include/StCore/StAndroidGlue.h">
106
+ <Option target="<{~None~}>" />
107
+ </Unit>
108
<Unit filename="../include/StCore/StApplication.h">
109
<Option target="<{~None~}>" />
110
</Unit>
111
sview-15_10.tar.gz/StCore/StEventsBuffer.h -> sview-15_11.tar.gz/StCore/StEventsBuffer.h
Changed
79
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StEventsBuffer_h_
25
26
StEvent& anEvent = myEventsWrite[mySizeWrite++];
27
anEvent = theEvent;
28
if(theEvent.Type == stEvent_FileDrop) {
29
- // copy buffer
30
- const size_t aSize = std::strlen(theEvent.DNDrop.File);
31
- char* aBuffer = new char[aSize + 1];
32
- stMemCpy(aBuffer, theEvent.DNDrop.File, aSize);
33
- aBuffer[aSize] = '\0';
34
- anEvent.DNDrop.File = aBuffer;
35
+ if(theEvent.DNDrop.NbFiles == 0) {
36
+ anEvent.DNDrop.Files = NULL;
37
+ return;
38
+ }
39
+
40
+ // make a copy in C-style
41
+ anEvent.DNDrop.Files = stMemAlloc<const char**>(sizeof(const char* ) * theEvent.DNDrop.NbFiles);
42
+ if(anEvent.DNDrop.Files == NULL) {
43
+ anEvent.DNDrop.NbFiles = 0;
44
+ return;
45
+ }
46
+
47
+ stMemZero(anEvent.DNDrop.Files, sizeof(const char* ) * theEvent.DNDrop.NbFiles);
48
+ for(uint32_t aFileIter = 0; aFileIter < theEvent.DNDrop.NbFiles; ++aFileIter) {
49
+ const char* aBufferSrc = theEvent.DNDrop.Files[aFileIter];
50
+ const size_t aSize = std::strlen(aBufferSrc);
51
+ char* aBufferDst = stMemAlloc<char*>(sizeof(char) * aSize + 1);
52
+ if(aBufferDst == NULL) {
53
+ anEvent.DNDrop.NbFiles = aFileIter;
54
+ return;
55
+ }
56
+
57
+ stMemCpy(aBufferDst, aBufferSrc, aSize);
58
+ aBufferDst[aSize] = '\0';
59
+ anEvent.DNDrop.Files[aFileIter] = aBufferDst;
60
+ }
61
}
62
}
63
64
65
for(size_t anIter = 0; anIter < mySizeRead; ++anIter) {
66
StEvent& anEvent = myEventsRead[anIter];
67
if(anEvent.Type == stEvent_FileDrop) {
68
- delete[] anEvent.DNDrop.File;
69
- anEvent.DNDrop.File = NULL;
70
+ for(uint32_t aFileIter = 0; aFileIter < anEvent.DNDrop.NbFiles; ++aFileIter) {
71
+ stMemFree((void* )anEvent.DNDrop.Files[aFileIter]);
72
+ }
73
+ stMemFree(anEvent.DNDrop.Files);
74
+ anEvent.DNDrop.Files = NULL;
75
+ anEvent.DNDrop.NbFiles = 0;
76
}
77
}
78
79
sview-15_10.tar.gz/StCore/StKeysState.cpp -> sview-15_11.tar.gz/StCore/StKeysState.cpp
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include <StCore/StKeysState.h>
25
sview-15_10.tar.gz/StCore/StSearchMonitors.ObjC.mm -> sview-15_11.tar.gz/StCore/StSearchMonitors.ObjC.mm
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2009-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include <StCore/StSearchMonitors.h>
25
sview-15_10.tar.gz/StCore/StSearchMonitors.cpp -> sview-15_11.tar.gz/StCore/StSearchMonitors.cpp
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include <StCore/StSearchMonitors.h>
25
sview-15_10.tar.gz/StCore/StWinHandles.ObjC.mm -> sview-15_11.tar.gz/StCore/StWinHandles.ObjC.mm
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2011-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StWinHandles.h"
25
sview-15_10.tar.gz/StCore/StWinHandles.cpp -> sview-15_11.tar.gz/StCore/StWinHandles.cpp
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __APPLE__
25
sview-15_10.tar.gz/StCore/StWinHandles.h -> sview-15_11.tar.gz/StCore/StWinHandles.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StWinHandles_h_
25
sview-15_10.tar.gz/StCore/StWindow.cpp -> sview-15_11.tar.gz/StCore/StWindow.cpp
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include <StGLCore/StGLCore11Fwd.h>
25
sview-15_10.tar.gz/StCore/StWindowImpl.cpp -> sview-15_11.tar.gz/StCore/StWindowImpl.cpp
Changed
123
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StWindowImpl.h"
25
26
case StWinAttr_SplitCfg:
27
if(attribs.Split != (StWinSplit )anIter[1]
28
&& attribs.IsFullScreen) {
29
- if(attribs.Split == StWinSlave_splitHorizontal) {
30
- myRectFull.right() += myRectFull.width();
31
- } else if(attribs.Split == StWinSlave_splitVertical) {
32
- myRectFull.bottom() += myRectFull.height();
33
+ switch(attribs.Split) {
34
+ case StWinSlave_splitHorizontal: myRectFull.right() += myRectFull.width(); break;
35
+ case StWinSlave_splitVertical: myRectFull.bottom() += myRectFull.height(); break;
36
+ case StWinSlave_splitVertHdmi720: myRectFull.bottom() += 720 + 30; break;
37
+ case StWinSlave_splitVertHdmi1080: myRectFull.bottom() += 1080 + 45; break;
38
+ default: break;
39
}
40
- if((StWinSplit )anIter[1] == StWinSlave_splitHorizontal) {
41
- myTiledCfg = TiledCfg_MasterSlaveX;
42
- myRectFull.right() -= myRectFull.width() / 2;
43
- } else if((StWinSplit )anIter[1] == StWinSlave_splitVertical) {
44
- myTiledCfg = TiledCfg_MasterSlaveY;
45
- myRectFull.bottom() -= myRectFull.height() / 2;
46
- } else {
47
- myTiledCfg = TiledCfg_Separate;
48
+
49
+ switch((StWinSplit )anIter[1]) {
50
+ case StWinSlave_splitHorizontal: {
51
+ myTiledCfg = TiledCfg_MasterSlaveX;
52
+ myRectFull.right() -= myRectFull.width() / 2;
53
+ break;
54
+ }
55
+ case StWinSlave_splitVertical: {
56
+ myTiledCfg = TiledCfg_MasterSlaveY;
57
+ myRectFull.bottom() -= myRectFull.height() / 2;
58
+ break;
59
+ }
60
+ case StWinSlave_splitVertHdmi720: {
61
+ myTiledCfg = TiledCfg_VertHdmi720;
62
+ myRectFull.bottom() -= (720 + 30);
63
+ break;
64
+ }
65
+ case StWinSlave_splitVertHdmi1080: {
66
+ myTiledCfg = TiledCfg_VertHdmi1080;
67
+ myRectFull.bottom() -= (1080 + 45);
68
+ break;
69
+ }
70
+ default: {
71
+ myTiledCfg = TiledCfg_Separate;
72
+ break;
73
+ }
74
}
75
myStEventAux.Type = stEvent_Size;
76
myStEventAux.Size.Time = getEventTime();
77
78
theRect.top() -= theRect.height();
79
return;
80
}
81
+ case TiledCfg_VertHdmi720:
82
+ case TiledCfg_VertHdmi1080: {
83
+ // should not be used in this context
84
+ return;
85
+ }
86
case TiledCfg_Separate:
87
default: {
88
return;
89
90
}
91
case TiledCfg_MasterSlaveX:
92
case TiledCfg_MasterSlaveY:
93
+ case TiledCfg_VertHdmi720:
94
+ case TiledCfg_VertHdmi1080:
95
case TiledCfg_Separate:
96
default: {
97
return;
98
99
convertRectToBacking(aRect, ST_WIN_MASTER);
100
return aRect;
101
}
102
+ case TiledCfg_VertHdmi720: {
103
+ if(theWinId == ST_WIN_MASTER) {
104
+ aRect.y() += 720 + 30;
105
+ } else if(theWinId == ST_WIN_ALL) {
106
+ aRect.height() += 720 + 30;
107
+ }
108
+ convertRectToBacking(aRect, ST_WIN_MASTER);
109
+ return aRect;
110
+ }
111
+ case TiledCfg_VertHdmi1080: {
112
+ if(theWinId == ST_WIN_MASTER) {
113
+ aRect.y() += 1080 + 45;
114
+ } else if(theWinId == ST_WIN_ALL) {
115
+ aRect.height() += 1080 + 45;
116
+ }
117
+ convertRectToBacking(aRect, ST_WIN_MASTER);
118
+ return aRect;
119
+ }
120
case TiledCfg_SlaveMasterY: {
121
if(theWinId == ST_WIN_SLAVE) {
122
aRect.y() += aHeight;
123
sview-15_10.tar.gz/StCore/StWindowImpl.h -> sview-15_11.tar.gz/StCore/StWindowImpl.h
Changed
34
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StWindowImpl_h_
25
26
TiledCfg_SlaveMasterX, //!< Master at right / Slave at left
27
TiledCfg_MasterSlaveY, //!< Master at top / Slave at bottom
28
TiledCfg_SlaveMasterY, //!< Master at bottom / Slave at top
29
+ TiledCfg_VertHdmi720,
30
+ TiledCfg_VertHdmi1080,
31
};
32
33
ST_LOCAL void getTiledWinRect(StRectI_t& theRect) const;
34
sview-15_10.tar.gz/StCore/StWindowImplAnd.cpp -> sview-15_11.tar.gz/StCore/StWindowImplAnd.cpp
Changed
87
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2014-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if defined(__ANDROID__)
25
26
#include "StWindowImpl.h"
27
+#include "stvkeysandroid.h" // Android NDK keys to VKEYs lookup array
28
29
#include <StCore/StAndroidGlue.h>
30
#include <StStrings/StLogger.h>
31
#include <StGL/StGLContext.h>
32
33
#include <cmath>
34
+#include <vector>
35
36
void StWindowImpl::convertRectToBacking(StGLBoxPx& ,
37
const int ) const {
38
39
const int anEventType = AInputEvent_getType(theEvent);
40
switch(anEventType) {
41
case AINPUT_EVENT_TYPE_KEY: {
42
+ StVirtKey aVKeySt = ST_VK_NULL;
43
+ int32_t aKeySym = AKeyEvent_getKeyCode(theEvent);
44
+ if(aKeySym < ST_ANDROID2ST_VK_SIZE) {
45
+ aVKeySt = (StVirtKey )ST_ANDROID2ST_VK[aKeySym];
46
+ }
47
+ if(aVKeySt == ST_VK_NULL) {
48
+ return;
49
+ }
50
+
51
+ myStEvent.Key.Time = getEventTime(); //AKeyEvent_getEventTime(theEvent);
52
+ myStEvent.Key.VKey = aVKeySt;
53
+ myStEvent.Key.Char = 0;
54
+
55
+ const int32_t aKeyAction = AKeyEvent_getAction(theEvent);
56
+ if(aKeyAction == AKEY_EVENT_ACTION_DOWN) {
57
+ postKeyDown(myStEvent);
58
+ } else if(aKeyAction == AKEY_EVENT_ACTION_UP) {
59
+ postKeyUp(myStEvent);
60
+ }// else if(aKeyAction == AKEY_EVENT_ACTION_MULTIPLE) {}
61
return;
62
}
63
case AINPUT_EVENT_TYPE_MOTION: {
64
65
return;
66
}
67
case StAndroidGlue::CommandId_FocusLost: {
68
- //
69
+ myKeysState.reset();
70
return;
71
}
72
case StAndroidGlue::CommandId_ConfigChanged: {
73
74
myParentWin->setTrackOrientation(myToTrackOrient);
75
myParentWin->fetchState(aDndFile, myQuaternion);
76
if(!aDndFile.isEmpty()) {
77
+ std::vector<const char*> aDndList;
78
+ aDndList.push_back(aDndFile.toCString());
79
myStEvent.Type = stEvent_FileDrop;
80
myStEvent.DNDrop.Time = getEventTime();
81
- myStEvent.DNDrop.File = aDndFile.toCString();
82
+ myStEvent.DNDrop.NbFiles = aDndList.size();
83
+ myStEvent.DNDrop.Files = &aDndList[0];
84
myEventsBuffer.append(myStEvent);
85
}
86
87
sview-15_10.tar.gz/StCore/StWindowImplLin.cpp -> sview-15_11.tar.gz/StCore/StWindowImplLin.cpp
Changed
131
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if defined(__linux__) && !defined(__ANDROID__)
25
26
#include <X11/xpm.h>
27
28
#include <cmath>
29
+#include <vector>
30
31
#include "../share/sView/icons/menu.xpm"
32
33
34
Property aProperty = aDisplay->readProperty(aSrcWin, aDisplay->xDNDTypeList);
35
Atom* anAtomList = (Atom* )aProperty.data;
36
for(int anIter = 0; anIter < aProperty.nitems; ++anIter) {
37
- if(anAtomList[anIter] == aDisplay->xDNDPlainText) {
38
+ if(anAtomList[anIter] == aDisplay->xDNDUriList) {
39
+ myMaster.xDNDRequestType = aDisplay->xDNDUriList;
40
+ break;
41
+ } else if(anAtomList[anIter] == aDisplay->xDNDPlainText) {
42
myMaster.xDNDRequestType = aDisplay->xDNDPlainText;
43
break;
44
}
45
46
const StXDisplayH& aDisplay = myMaster.stXDisplay;
47
// myMaster.hWindow or myMaster.hWindowGl
48
Window aWinReciever = ((XClientMessageEvent* )&myXEvent)->window;
49
- /*ST_DEBUG_LOG(
50
- "A selection notify has arrived!\n"
51
- + "Requestor = 0x" + (int )myXEvent.xselectionrequest.requestor + "\n"
52
- + "Selection atom = " + myMaster.getAtomName(myXEvent.xselection.selection) + "\n"
53
- + "Target atom = " + myMaster.getAtomName(aTarget) + "\n"
54
- + "Property atom = " + myMaster.getAtomName(myXEvent.xselection.property) + "\n"
55
- );*/
56
if(myXEvent.xselection.property == None) {
57
return;
58
} else {
59
60
if(aTarget == aDisplay->XA_TARGETS) {
61
XConvertSelection(aDisplay->hDisplay, aSelection, XA_STRING, aSelection, aWinReciever, CurrentTime);
62
} else if(aTarget == myMaster.xDNDRequestType) {
63
- StString aData = StString((char* )aProperty.data);
64
+ std::vector<StString> aPaths;
65
+ const char* aCharFrom = (const char* )aProperty.data;
66
+ size_t aCharFromIndex = 0;
67
+ for(StUtf8Iter aCharIter(aCharFrom);; ++aCharIter) {
68
+ // cut filenames separated with CR/LF
69
+ if(*aCharIter == 0
70
+ || *aCharIter == stUtf32_t('\n')
71
+ || *aCharIter == stUtf32_t(13)) {
72
+ size_t aLen = aCharIter.getIndex() - aCharFromIndex;
73
+ if(stAreEqual(aCharFrom, "file://", 7)) {
74
+ aCharFrom += 7;
75
+ aLen -= 7;
76
+ }
77
78
- size_t anEndChar = aData.getLength();
79
- for(StUtf8Iter anIter = aData.iterator(); *anIter != 0; ++anIter) {
80
- // cut only first filename, separated with CR/LF
81
- if(*anIter == stUtf32_t('\n') || *anIter == stUtf32_t(13)) {
82
- anEndChar = anIter.getIndex();
83
- break;
84
+ StString aData(aCharFrom, aLen);
85
+ StString aFile;
86
+ if(myMaster.xDNDRequestType != XA_STRING) {
87
+ aFile.fromUrl(aData);
88
+ } else {
89
+ aFile = aData;
90
+ }
91
+ if(!aFile.isEmpty()) {
92
+ aPaths.push_back(aFile);
93
+ }
94
+
95
+ aCharFromIndex = aCharIter.getIndex() + 1;
96
+ aCharFrom = aCharIter.getBufferHere() + 1;
97
+ if(*aCharIter == 0) {
98
+ break;
99
+ }
100
}
101
}
102
103
- const StString ST_FILE_PROTOCOL("file://");
104
- size_t aCutFrom = aData.isStartsWith(ST_FILE_PROTOCOL) ? ST_FILE_PROTOCOL.getLength() : 0;
105
- aData = aData.subString(aCutFrom, anEndChar);
106
- StString aFile;
107
- if(myMaster.xDNDRequestType != XA_STRING) {
108
- aFile.fromUrl(aData);
109
- } else {
110
- aFile = aData;
111
+ std::vector<const char*> aDndList;
112
+ for(std::vector<StString>::const_iterator aFileIter = aPaths.begin(); aFileIter != aPaths.end(); ++aFileIter) {
113
+ aDndList.push_back(aFileIter->toCString());
114
+ }
115
+ if(!aDndList.empty()) {
116
+ myStEvent.Type = stEvent_FileDrop;
117
+ myStEvent.DNDrop.Time = getEventTime(myXEvent.xselection.time);
118
+ myStEvent.DNDrop.NbFiles = aDndList.size();
119
+ myStEvent.DNDrop.Files = &aDndList[0];
120
+ signals.onFileDrop->emit(myStEvent.DNDrop);
121
}
122
- myStEvent.Type = stEvent_FileDrop;
123
- myStEvent.DNDrop.Time = getEventTime(myXEvent.xselection.time);
124
- myStEvent.DNDrop.File = aFile.toCString();
125
- signals.onFileDrop->emit(myStEvent.DNDrop);
126
-
127
- //ST_DEBUG_LOG(data);
128
129
// Reply OK
130
XClientMessageEvent aMsg;
131
sview-15_10.tar.gz/StCore/StWindowImplMac.mm -> sview-15_11.tar.gz/StCore/StWindowImplMac.mm
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2011-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if (defined(__APPLE__))
25
sview-15_10.tar.gz/StCore/StWindowImplWin.cpp -> sview-15_11.tar.gz/StCore/StWindowImplWin.cpp
Changed
66
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifdef _WIN32
25
26
#include <StGL/StGLContext.h>
27
28
#include <cmath>
29
+#include <vector>
30
31
static SV_THREAD_FUNCTION threadCreateWindows(void* inStWin);
32
33
34
break;
35
}
36
37
+ // convert to UTF-8
38
+ std::vector<StString> aPaths;
39
for(UINT aFileId = 0; aFileId < aFilesCount; ++aFileId) {
40
if(DragQueryFileW(aDrops, aFileId, aFileBuff, MAX_PATH) > 0) {
41
- const StString aFile(aFileBuff);
42
- myStEvent.Type = stEvent_FileDrop;
43
- myStEvent.DNDrop.Time = getEventTime(myEvent.time);
44
- myStEvent.DNDrop.File = aFile.toCString();
45
- myEventsBuffer.append(myStEvent);
46
+ aPaths.push_back(StString(aFileBuff));
47
}
48
}
49
- DragFinish(aDrops); // do not forget
50
+ DragFinish(aDrops);
51
+
52
+ std::vector<const char*> aDndList;
53
+ for(std::vector<StString>::const_iterator aFileIter = aPaths.begin(); aFileIter != aPaths.end(); ++aFileIter) {
54
+ aDndList.push_back(aFileIter->toCString());
55
+ }
56
+ if(!aDndList.empty()) {
57
+ myStEvent.Type = stEvent_FileDrop;
58
+ myStEvent.DNDrop.Time = getEventTime(myEvent.time);
59
+ myStEvent.DNDrop.NbFiles = (uint32_t )aDndList.size();
60
+ myStEvent.DNDrop.Files = &aDndList[0];
61
+ myEventsBuffer.append(myStEvent);
62
+ }
63
break;
64
}
65
case WM_MOVE: {
66
sview-15_10.tar.gz/StCore/StXDisplay.cpp -> sview-15_11.tar.gz/StCore/StXDisplay.cpp
Changed
42
1
2
/**
3
- * Copyright © 2007-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
5
+ * Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
6
*
7
- * StCore library is free software: you can redistribute it and/or modify
8
- * it under the terms of the GNU Lesser General Public License as published by
9
- * the Free Software Foundation, either version 3 of the License, or
10
- * (at your option) any later version.
11
- *
12
- * StCore library is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15
- * See the GNU General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU Lesser General Public
18
- * License along with this library.
19
- * If not, see <http://www.gnu.org/licenses/>.
20
+ * Distributed under the Boost Software License, Version 1.0.
21
+ * See accompanying file license-boost.txt or copy at
22
+ * http://www.boost.org/LICENSE_1_0.txt
23
*/
24
25
#if defined(__linux__) && !defined(__ANDROID__)
26
27
xDNDSelection(None),
28
xDNDProxy(None),
29
xDNDAware(None),
30
+ xDNDUriList(None),
31
xDNDPlainText(None),
32
xDNDPrimary(None),
33
XA_TARGETS(None),
34
35
xDNDSelection = XInternAtom(hDisplay, "XdndSelection", False);
36
xDNDProxy = XInternAtom(hDisplay, "XdndProxy", False);
37
xDNDAware = XInternAtom(hDisplay, "XdndAware", False);
38
+ xDNDUriList = XInternAtom(hDisplay, "text/uri-list", False);
39
xDNDPlainText = XInternAtom(hDisplay, "text/plain", False);
40
xDNDPrimary = XInternAtom(hDisplay, "PRIMARY", False);
41
// This is a meta-format for data to be "pasted" in to.
42
sview-15_10.tar.gz/StCore/StXDisplay.h -> sview-15_11.tar.gz/StCore/StXDisplay.h
Changed
34
1
2
/**
3
- * Copyright © 2007-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
5
+ * Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
6
*
7
- * StCore library is free software: you can redistribute it and/or modify
8
- * it under the terms of the GNU Lesser General Public License as published by
9
- * the Free Software Foundation, either version 3 of the License, or
10
- * (at your option) any later version.
11
- *
12
- * StCore library is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15
- * See the GNU General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU Lesser General Public
18
- * License along with this library.
19
- * If not, see <http://www.gnu.org/licenses/>.
20
+ * Distributed under the Boost Software License, Version 1.0.
21
+ * See accompanying file license-boost.txt or copy at
22
+ * http://www.boost.org/LICENSE_1_0.txt
23
*/
24
25
#ifndef __StXDisplay_h_
26
27
Atom xDNDSelection;
28
Atom xDNDProxy;
29
Atom xDNDAware;
30
+ Atom xDNDUriList;
31
Atom xDNDPlainText;
32
Atom xDNDPrimary;
33
34
sview-15_11.tar.gz/StCore/stvkeysandroid.h
Added
201
1
2
+/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
+ * Copyright © 2015 Kirill Gavrilov <kirill@sview.ru>
5
+ *
6
+ * Distributed under the Boost Software License, Version 1.0.
7
+ * See accompanying file license-boost.txt or copy at
8
+ * http://www.boost.org/LICENSE_1_0.txt
9
+ */
10
+
11
+#if (defined(__ANDROID__))
12
+
13
+#ifndef __stVKEYS_ANDROID_H_
14
+#define __stVKEYS_ANDROID_H_
15
+
16
+#include <StCore/StVirtualKeys.h>
17
+
18
+/**
19
+ * This is lookup array to convert Android NDK key codes to ST_VKEY codes.
20
+ * Notice, this array useless for text input!
21
+ */
22
+#define ST_ANDROID2ST_VK_SIZE 256
23
+static const unsigned int ST_ANDROID2ST_VK[ST_ANDROID2ST_VK_SIZE] = {
24
+ 0, // AKEYCODE_UNKNOWN = 0,
25
+ 0, // AKEYCODE_SOFT_LEFT = 1,
26
+ 0, // AKEYCODE_SOFT_RIGHT = 2,
27
+ 0, // AKEYCODE_HOME = 3,
28
+ 0, // AKEYCODE_BACK = 4,
29
+ 0, // AKEYCODE_CALL = 5,
30
+ 0, // AKEYCODE_ENDCALL = 6,
31
+ ST_VK_0, // AKEYCODE_0 = 7,
32
+ ST_VK_1, // AKEYCODE_1 = 8,
33
+ ST_VK_2, // AKEYCODE_2 = 9,
34
+ ST_VK_3, // AKEYCODE_3 = 10,
35
+ ST_VK_4, // AKEYCODE_4 = 11,
36
+ ST_VK_5, // AKEYCODE_5 = 12,
37
+ ST_VK_6, // AKEYCODE_6 = 13,
38
+ ST_VK_7, // AKEYCODE_7 = 14,
39
+ ST_VK_8, // AKEYCODE_8 = 15,
40
+ ST_VK_9, // AKEYCODE_9 = 16,
41
+ 0, // AKEYCODE_STAR = 17,
42
+ 0, // AKEYCODE_POUND = 18,
43
+ ST_VK_UP, // AKEYCODE_DPAD_UP = 19,
44
+ ST_VK_DOWN, // AKEYCODE_DPAD_DOWN = 20,
45
+ ST_VK_LEFT, // AKEYCODE_DPAD_LEFT = 21,
46
+ ST_VK_RIGHT, // AKEYCODE_DPAD_RIGHT = 22,
47
+ 0, // AKEYCODE_DPAD_CENTER = 23,
48
+ ST_VK_VOLUME_UP, // AKEYCODE_VOLUME_UP = 24,
49
+ ST_VK_VOLUME_DOWN, // AKEYCODE_VOLUME_DOWN = 25,
50
+ 0, // AKEYCODE_POWER = 26,
51
+ 0, // AKEYCODE_CAMERA = 27,
52
+ 0, // AKEYCODE_CLEAR = 28,
53
+ ST_VK_A, // AKEYCODE_A = 29,
54
+ ST_VK_B, // AKEYCODE_B = 30,
55
+ ST_VK_C, // AKEYCODE_C = 31,
56
+ ST_VK_D, // AKEYCODE_D = 32,
57
+ ST_VK_E, // AKEYCODE_E = 33,
58
+ ST_VK_F, // AKEYCODE_F = 34,
59
+ ST_VK_G, // AKEYCODE_G = 35,
60
+ ST_VK_H, // AKEYCODE_H = 36,
61
+ ST_VK_I, // AKEYCODE_I = 37,
62
+ ST_VK_J, // AKEYCODE_J = 38,
63
+ ST_VK_K, // AKEYCODE_K = 39,
64
+ ST_VK_L, // AKEYCODE_L = 40,
65
+ ST_VK_M, // AKEYCODE_M = 41,
66
+ ST_VK_N, // AKEYCODE_N = 42,
67
+ ST_VK_O, // AKEYCODE_O = 43,
68
+ ST_VK_P, // AKEYCODE_P = 44,
69
+ ST_VK_Q, // AKEYCODE_Q = 45,
70
+ ST_VK_R, // AKEYCODE_R = 46,
71
+ ST_VK_S, // AKEYCODE_S = 47,
72
+ ST_VK_T, // AKEYCODE_T = 48,
73
+ ST_VK_U, // AKEYCODE_U = 49,
74
+ ST_VK_V, // AKEYCODE_V = 50,
75
+ ST_VK_W, // AKEYCODE_W = 51,
76
+ ST_VK_X, // AKEYCODE_X = 52,
77
+ ST_VK_Y, // AKEYCODE_Y = 53,
78
+ ST_VK_Z, // AKEYCODE_Z = 54,
79
+ ST_VK_COMMA, // AKEYCODE_COMMA = 55,
80
+ ST_VK_PERIOD, // AKEYCODE_PERIOD = 56,
81
+ ST_VK_MENU, // AKEYCODE_ALT_LEFT = 57,
82
+ ST_VK_MENU, // AKEYCODE_ALT_RIGHT = 58,
83
+ ST_VK_SHIFT, // AKEYCODE_SHIFT_LEFT = 59,
84
+ ST_VK_SHIFT, // AKEYCODE_SHIFT_RIGHT = 60,
85
+ ST_VK_TAB, // AKEYCODE_TAB = 61,
86
+ ST_VK_SPACE, // AKEYCODE_SPACE = 62,
87
+ 0, // AKEYCODE_SYM = 63,
88
+ 0, // AKEYCODE_EXPLORER = 64,
89
+ 0, // AKEYCODE_ENVELOPE = 65,
90
+ ST_VK_RETURN, // AKEYCODE_ENTER = 66,
91
+ ST_VK_BACK, // AKEYCODE_DEL = 67,
92
+ 0, // AKEYCODE_GRAVE = 68,
93
+ ST_VK_OEM_MINUS, // AKEYCODE_MINUS = 69,
94
+ ST_VK_OEM_PLUS, // AKEYCODE_EQUALS = 70,
95
+ ST_VK_BRACKETLEFT, // AKEYCODE_LEFT_BRACKET = 71,
96
+ ST_VK_BRACKETRIGHT, // AKEYCODE_RIGHT_BRACKET = 72,
97
+ ST_VK_BACKSLASH, // AKEYCODE_BACKSLASH = 73,
98
+ ST_VK_SEMICOLON, // AKEYCODE_SEMICOLON = 74,
99
+ ST_VK_APOSTROPHE, // AKEYCODE_APOSTROPHE = 75,
100
+ ST_VK_SLASH, // AKEYCODE_SLASH = 76,
101
+ 0, // AKEYCODE_AT = 77,
102
+ 0, // AKEYCODE_NUM = 78,
103
+ 0, // AKEYCODE_HEADSETHOOK = 79,
104
+ 0, // AKEYCODE_FOCUS = 80, // *Camera* focus
105
+ 0, // AKEYCODE_PLUS = 81,
106
+ 0, // AKEYCODE_MENU = 82,
107
+ 0, // AKEYCODE_NOTIFICATION = 83,
108
+ 0, // AKEYCODE_SEARCH = 84,
109
+ ST_VK_MEDIA_PLAY_PAUSE, // AKEYCODE_MEDIA_PLAY_PAUSE= 85,
110
+ ST_VK_MEDIA_STOP, // AKEYCODE_MEDIA_STOP = 86,
111
+ ST_VK_MEDIA_NEXT_TRACK, // AKEYCODE_MEDIA_NEXT = 87,
112
+ ST_VK_MEDIA_PREV_TRACK, // AKEYCODE_MEDIA_PREVIOUS = 88,
113
+ 0, // AKEYCODE_MEDIA_REWIND = 89,
114
+ 0, // AKEYCODE_MEDIA_FAST_FORWARD = 90,
115
+ ST_VK_VOLUME_MUTE, // AKEYCODE_MUTE = 91,
116
+ ST_VK_PAGE_UP, // AKEYCODE_PAGE_UP = 92,
117
+ ST_VK_PAGE_DOWN, // AKEYCODE_PAGE_DOWN = 93,
118
+ 0, // AKEYCODE_PICTSYMBOLS = 94,
119
+ 0, // AKEYCODE_SWITCH_CHARSET = 95,
120
+ 0, // AKEYCODE_BUTTON_A = 96,
121
+ 0, // AKEYCODE_BUTTON_B = 97,
122
+ 0, // AKEYCODE_BUTTON_C = 98,
123
+ 0, // AKEYCODE_BUTTON_X = 99,
124
+ 0, // AKEYCODE_BUTTON_Y = 100,
125
+ 0, // AKEYCODE_BUTTON_Z = 101,
126
+ 0, // AKEYCODE_BUTTON_L1 = 102,
127
+ 0, // AKEYCODE_BUTTON_R1 = 103,
128
+ 0, // AKEYCODE_BUTTON_L2 = 104,
129
+ 0, // AKEYCODE_BUTTON_R2 = 105,
130
+ 0, // AKEYCODE_BUTTON_THUMBL = 106,
131
+ 0, // AKEYCODE_BUTTON_THUMBR = 107,
132
+ 0, // AKEYCODE_BUTTON_START = 108,
133
+ 0, // AKEYCODE_BUTTON_SELECT = 109,
134
+ 0, // AKEYCODE_BUTTON_MODE = 110,
135
+ ST_VK_ESCAPE, // AKEYCODE_ESCAPE = 111,
136
+ ST_VK_DELETE, // AKEYCODE_FORWARD_DEL = 112,
137
+ ST_VK_CONTROL, // AKEYCODE_CTRL_LEFT = 113,
138
+ ST_VK_CONTROL, // AKEYCODE_CTRL_RIGHT = 114,
139
+ ST_VK_CAPITAL, // AKEYCODE_CAPS_LOCK = 115,
140
+ ST_VK_SCROLL, // AKEYCODE_SCROLL_LOCK = 116,
141
+ 0, // AKEYCODE_META_LEFT = 117,
142
+ 0, // AKEYCODE_META_RIGHT = 118,
143
+ 0, // AKEYCODE_FUNCTION = 119,
144
+ 0, // AKEYCODE_SYSRQ = 120,
145
+ 0, // AKEYCODE_BREAK = 121,
146
+ ST_VK_HOME, // AKEYCODE_MOVE_HOME = 122,
147
+ ST_VK_END, // AKEYCODE_MOVE_END = 123,
148
+ ST_VK_INSERT, // AKEYCODE_INSERT = 124,
149
+ 0, // AKEYCODE_FORWARD = 125,
150
+ ST_VK_MEDIA_PLAY_PAUSE, // AKEYCODE_MEDIA_PLAY = 126,
151
+ ST_VK_MEDIA_PLAY_PAUSE, // AKEYCODE_MEDIA_PAUSE = 127,
152
+ 0, // AKEYCODE_MEDIA_CLOSE = 128,
153
+ 0, // AKEYCODE_MEDIA_EJECT = 129,
154
+ 0, // AKEYCODE_MEDIA_RECORD = 130,
155
+ ST_VK_F1, // AKEYCODE_F1 = 131,
156
+ ST_VK_F2, // AKEYCODE_F2 = 132,
157
+ ST_VK_F3, // AKEYCODE_F3 = 133,
158
+ ST_VK_F4, // AKEYCODE_F4 = 134,
159
+ ST_VK_F5, // AKEYCODE_F5 = 135,
160
+ ST_VK_F6, // AKEYCODE_F6 = 136,
161
+ ST_VK_F7, // AKEYCODE_F7 = 137,
162
+ ST_VK_F8, // AKEYCODE_F8 = 138,
163
+ ST_VK_F9, // AKEYCODE_F9 = 139,
164
+ ST_VK_F10, // AKEYCODE_F10 = 140,
165
+ ST_VK_F11, // AKEYCODE_F11 = 141,
166
+ ST_VK_F12, // AKEYCODE_F12 = 142,
167
+ 0, // AKEYCODE_NUM_LOCK = 143,
168
+ ST_VK_NUMPAD0, // AKEYCODE_NUMPAD_0 = 144,
169
+ ST_VK_NUMPAD1, // AKEYCODE_NUMPAD_1 = 145,
170
+ ST_VK_NUMPAD2, // AKEYCODE_NUMPAD_2 = 146,
171
+ ST_VK_NUMPAD3, // AKEYCODE_NUMPAD_3 = 147,
172
+ ST_VK_NUMPAD4, // AKEYCODE_NUMPAD_4 = 148,
173
+ ST_VK_NUMPAD5, // AKEYCODE_NUMPAD_5 = 149,
174
+ ST_VK_NUMPAD6, // AKEYCODE_NUMPAD_6 = 150,
175
+ ST_VK_NUMPAD7, // AKEYCODE_NUMPAD_7 = 151,
176
+ ST_VK_NUMPAD8, // AKEYCODE_NUMPAD_8 = 152,
177
+ ST_VK_NUMPAD9, // AKEYCODE_NUMPAD_9 = 153,
178
+ ST_VK_DIVIDE, // AKEYCODE_NUMPAD_DIVIDE = 154,
179
+ ST_VK_MULTIPLY, // AKEYCODE_NUMPAD_MULTIPLY = 155,
180
+ ST_VK_SUBTRACT, // AKEYCODE_NUMPAD_SUBTRACT = 156,
181
+ ST_VK_ADD, // AKEYCODE_NUMPAD_ADD = 157,
182
+ ST_VK_DECIMAL, // AKEYCODE_NUMPAD_DOT = 158,
183
+ ST_VK_SEPARATOR, // AKEYCODE_NUMPAD_COMMA = 159,
184
+ ST_VK_RETURN, // AKEYCODE_NUMPAD_ENTER = 160,
185
+ 0, // AKEYCODE_NUMPAD_EQUALS = 161,
186
+ 0, // AKEYCODE_NUMPAD_LEFT_PAREN = 162,
187
+ 0, // AKEYCODE_NUMPAD_RIGHT_PAREN = 163,
188
+ ST_VK_VOLUME_MUTE, // AKEYCODE_VOLUME_MUTE = 164,
189
+ 0, // AKEYCODE_INFO = 165,
190
+ 0, // AKEYCODE_CHANNEL_UP = 166,
191
+ 0, // AKEYCODE_CHANNEL_DOWN = 167,
192
+ 0, // AKEYCODE_ZOOM_IN = 168,
193
+ 0, // AKEYCODE_ZOOM_OUT = 169,
194
+ 0, // AKEYCODE_TV = 170,
195
+ 0, // AKEYCODE_WINDOW = 171,
196
+ 0, // AKEYCODE_GUIDE = 172,
197
+ 0, // AKEYCODE_DVR = 173,
198
+ 0, // AKEYCODE_BOOKMARK = 174,
199
+ 0, // AKEYCODE_CAPTIONS = 175,
200
+ 0, // AKEYCODE_SETTINGS = 176,
201
sview-15_10.tar.gz/StCore/stvkeyscarbon.h -> sview-15_11.tar.gz/StCore/stvkeyscarbon.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2011-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if (defined(__APPLE__))
25
sview-15_10.tar.gz/StCore/stvkeysxarray.h -> sview-15_11.tar.gz/StCore/stvkeysxarray.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __stVKEYS_XARRAY_H_
25
sview-15_10.tar.gz/StDiagnostics/StDiagnostics.cbp -> sview-15_11.tar.gz/StDiagnostics/StDiagnostics.cbp
Changed
63
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/libStDiagnostics" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Option createStaticLib="1" />
11
- <Compiler>
12
- <Add option="-O3" />
13
- <Add option="-std=c++0x" />
14
- <Add option="-Wall" />
15
- <Add option="-g" />
16
- <Add option="-shared" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add library="opengl32" />
25
- <Add library="gdi32" />
26
- <Add library="Comdlg32" />
27
- <Add library="shell32" />
28
- <Add library="Wsock32" />
29
- <Add library="Version" />
30
- </Linker>
31
- <ExtraCommands>
32
- <Add before='cmd /c call ..\copy_res.bat $(TARGET_OUTPUT_DIR) $(TARGET_OUTPUT_BASENAME)' />
33
- </ExtraCommands>
34
- </Target>
35
<Target title="WIN_vc_x86">
36
<Option output="../bin/$(TARGET_NAME)/StDiagnostics" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
37
<Option object_output="obj/$(TARGET_NAME)/" />
38
39
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";2' />
40
</ExtraCommands>
41
</Target>
42
- <Target title="WIN_vc_x86_DEBUG">
43
+ <Target title="WIN_vc_AMD64_DEBUG">
44
<Option output="../bin/$(TARGET_NAME)/StDiagnostics" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
45
<Option object_output="obj/$(TARGET_NAME)/" />
46
<Option type="3" />
47
- <Option compiler="msvc10" />
48
+ <Option compiler="windows_sdk_x86_64" />
49
<Option createStaticLib="1" />
50
<Compiler>
51
<Add option="/MDd" />
52
53
<Unit filename="StDiagnostics.h" />
54
<Unit filename="StDiagnostics.rc">
55
<Option compilerVar="WINDRES" />
56
- <Option target="WIN_gcc_x86" />
57
<Option target="WIN_vc_x86" />
58
- <Option target="WIN_vc_x86_DEBUG" />
59
+ <Option target="WIN_vc_AMD64_DEBUG" />
60
<Option target="WIN_vc_AMD64" />
61
</Unit>
62
<Unit filename="StDiagnosticsGUI.cpp" />
63
sview-15_10.tar.gz/StGLWidgets/StGLAssignHotKey.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLAssignHotKey.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2015 Kirill Gavrilov <kirill@sview.ru
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLButton.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLButton.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLCheckbox.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLCheckbox.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLCheckboxTextured.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLCheckboxTextured.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLCombobox.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLCombobox.cpp
Changed
15
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2015 Kirill Gavrilov <kirill@sview.ru
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
aSubRectNew.moveRightTo(myMenu->getRectPxAbsolute().left() + aRoot->scale(10));
9
}
10
}
11
+ aRoot->setFocus(myMenu); // take input focus
12
}
13
}
14
15
sview-15_10.tar.gz/StGLWidgets/StGLDescription.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLDescription.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLFpsLabel.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLFpsLabel.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLImageProgram.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLImageProgram.cpp
Changed
19
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2010-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
" bool evenX = int(mod(floor(gl_FragCoord.x + 1.5), 16.0)) >= 8;\n" // just simple 8 pixels check-board
9
" bool evenY = int(mod(floor(gl_FragCoord.y + 1.5), 16.0)) >= 8;\n"
10
" if((evenX && evenY) || (!evenX && !evenY)) {\n"
11
- " backColor = vec4(0.2, 0.2, 0.2, 1.0);\n"
12
+ " backColor = vec4(0.4, 0.4, 0.4, 1.0);\n"
13
" } else {\n"
14
- " backColor = vec4(1.0, 1.0, 1.0, 1.0);\n"
15
+ " backColor = vec4(0.6, 0.6, 0.6, 1.0);\n"
16
" }\n"
17
" color = mix(backColor, color, color.a);\n"
18
"}\n\n");
19
sview-15_10.tar.gz/StGLWidgets/StGLImageRegion.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLImageRegion.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2010-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLMenu.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLMenu.cpp
Changed
45
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
#include <StGL/StGLContext.h>
9
#include <StGLCore/StGLCore20.h>
10
11
+#include <StCore/StEvent.h>
12
#include <StSlots/StAction.h>
13
14
void StGLMenu::DeleteWithSubMenus(StGLMenu* theMenu) {
15
16
}
17
}
18
19
+void StGLMenu::setContextual(const bool theValue) {
20
+ myIsContextual = theValue;
21
+ myIsTopWidget = theValue;
22
+}
23
+
24
void StGLMenu::stglResize() {
25
// Since all children should be StGLMenuItem implementing delayed resize,
26
// just postpone resize until items will be actually rendered.
27
28
StGLWidget::stglDraw(theView);
29
}
30
31
+bool StGLMenu::doKeyDown(const StKeyEvent& theEvent) {
32
+ switch(theEvent.VKey) {
33
+ case ST_VK_ESCAPE: {
34
+ destroyWithDelay(this);
35
+ return true;
36
+ }
37
+ default:
38
+ return false;
39
+ }
40
+}
41
+
42
bool StGLMenu::tryUnClick(const StPointD_t& theCursorZo,
43
const int& theMouseBtn,
44
bool& theIsItemUnclicked) {
45
sview-15_10.tar.gz/StGLWidgets/StGLMenuCheckbox.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLMenuCheckbox.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLMenuItem.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLMenuItem.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLMenuProgram.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLMenuProgram.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLMenuRadioButton.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLMenuRadioButton.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLMessageBox.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLMessageBox.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLMsgStack.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLMsgStack.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLOpenFile.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLOpenFile.cpp
Changed
29
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
aName = theTarget;
9
}
10
if(aName.isEmpty()
11
- || theTarget.isEmpty()) {
12
+ || theTarget.isEmpty()
13
+ || !StFileNode::isFileExists(theTarget)) {
14
return;
15
}
16
myHotPaths.add(theTarget);
17
18
19
myFolder = new StFolder(theFolder);
20
myFolder->init(myExtensions, 1, true);
21
- myCurrentPath->setText(StString("<b>Location:*</b>") + myFolder->getPath() + ST_FILE_SPLITTER);
22
+ StString aPath = myFolder->getPath();
23
+ myCurrentPath->setText(StString("<b>Location:*</b>") + aPath + (!aPath.isEmpty() ? ST_FILE_SPLITTER : ""));
24
25
- StString aPath = myFolder->getPath() + "";
26
StString aPathUp = StFileNode::getFolderUp(aPath);
27
if(!aPathUp.isEmpty()) {
28
StGLMenuItem* anUpItem = new StGLPassiveMenuItem(myList);
29
sview-15_10.tar.gz/StGLWidgets/StGLPlayList.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLPlayList.cpp
Changed
18
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
#include <StGL/StGLContext.h>
9
#include <StGLCore/StGLCore20.h>
10
11
-namespace {
12
- static const size_t SHARE_PROGRAM_ID = StGLRootWidget::generateShareId();
13
-}
14
-
15
StGLPlayList::StGLPlayList(StGLWidget* theParent,
16
const StHandle<StPlayList>& theList)
17
: StGLWidget(theParent, -theParent->getRoot()->scale(32), 0),
18
sview-15_10.tar.gz/StGLWidgets/StGLRadioButton.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLRadioButton.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLRadioButtonFloat32.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLRadioButtonFloat32.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLRadioButtonTextured.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLRadioButtonTextured.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLRangeFieldFloat32.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLRangeFieldFloat32.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLRootWidget.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLRootWidget.cpp
Changed
67
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
#include <StGLWidgets/StGLRootWidget.h>
9
10
#include <StGLWidgets/StGLMenuProgram.h>
11
+#include <StGLWidgets/StGLTextProgram.h>
12
+#include <StGLWidgets/StGLTextBorderProgram.h>
13
14
#include <StGL/StGLContext.h>
15
#include <StGLCore/StGLCore20.h>
16
17
myLensDist(0.0f),
18
myScrDispXPx(0),
19
myMenuProgram(new StGLMenuProgram()),
20
+ myTextProgram(new StGLTextProgram()),
21
+ myTextBorderProgram(new StGLTextBorderProgram()),
22
myIsMobile(false),
23
myScaleGlX(1.0),
24
myScaleGlY(1.0),
25
26
if(!myGlCtx.isNull()) {
27
myMenuProgram->release(*myGlCtx);
28
myMenuProgram.nullify();
29
+ myTextProgram->release(*myGlCtx);
30
+ myTextProgram.nullify();
31
+ myTextBorderProgram->release(*myGlCtx);
32
+ myTextBorderProgram.nullify();
33
if(!myCheckboxIcon.isNull()) {
34
for(size_t aTexIter = 0; aTexIter < myCheckboxIcon->size(); ++aTexIter) {
35
myCheckboxIcon->changeValue(aTexIter).release(*myGlCtx);
36
37
if(!myMenuProgram->isValid()
38
&& !myMenuProgram->init(*myGlCtx)) {
39
return false;
40
+ } else if(!myTextProgram->isValid()
41
+ && !myTextProgram->init(*myGlCtx)) {
42
+ return false;
43
+ } else if(!myTextBorderProgram->isValid()
44
+ && !myTextBorderProgram->init(*myGlCtx)) {
45
+ return false;
46
}
47
48
return StGLWidget::stglInit();
49
50
break;
51
}
52
53
+ if(myTextProgram->isValid()) {
54
+ myTextProgram->use(*myGlCtx);
55
+ myTextProgram->setProjMat(*myGlCtx, myProjCamera.getProjMatrix());
56
+ myTextProgram->unuse(*myGlCtx);
57
+ }
58
+ if(myTextBorderProgram->isValid()) {
59
+ myTextBorderProgram->use(*myGlCtx);
60
+ myTextBorderProgram->setProjMat(*myGlCtx, myProjCamera.getProjMatrix());
61
+ myTextBorderProgram->unuse(*myGlCtx);
62
+ }
63
+
64
StGLWidget::stglDraw(theView);
65
}
66
67
sview-15_10.tar.gz/StGLWidgets/StGLScrollArea.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLScrollArea.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLSubtitles.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLSubtitles.cpp
Changed
25
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2010-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
// update active image
9
const StImagePlane& anImage = getFirst()->Image;
10
if(!anImage.isNull()) {
11
- Image.initCopy(anImage);
12
+ Image.initCopy(anImage, false);
13
} else {
14
Image.nullify();
15
}
16
17
18
const StImagePlane& anImage = theItem->Image;
19
if(!anImage.isNull()) {
20
- Image.initCopy(anImage);
21
+ Image.initCopy(anImage, false);
22
}
23
24
StArrayList<StHandle <StSubItem> >::add(theItem);
25
sview-15_10.tar.gz/StGLWidgets/StGLSwitchTextured.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLSwitchTextured.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLTable.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLTable.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2014-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLTextArea.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLTextArea.cpp
Changed
201
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
*/
9
10
#include <StGLWidgets/StGLTextArea.h>
11
+
12
#include <StGLWidgets/StGLRootWidget.h>
13
+#include <StGLWidgets/StGLTextProgram.h>
14
+#include <StGLWidgets/StGLTextBorderProgram.h>
15
16
#include <StGL/StGLContext.h>
17
#include <StGL/StGLProgram.h>
18
19
#include <StFile/StFileNode.h>
20
#include <StThreads/StProcess.h>
21
22
-class StGLTextArea::StTextProgram : public StGLProgram {
23
-
24
- public:
25
-
26
- StTextProgram()
27
- : StGLProgram("StGLTextArea, Text Program") {
28
- //
29
- }
30
-
31
- StGLVarLocation getVVertexLoc() const {
32
- return atrVVertexLoc;
33
- }
34
-
35
- StGLVarLocation getVTexCoordLoc() const {
36
- return atrVTexCoordLoc;
37
- }
38
-
39
- void setProjMat(StGLContext& theCtx,
40
- const StGLMatrix& theProjMat) {
41
- theCtx.core20fwd->glUniformMatrix4fv(uniProjMatLoc, 1, GL_FALSE, theProjMat);
42
- }
43
-
44
- void setModelMat(StGLContext& theCtx,
45
- const StGLMatrix& theModelMat) {
46
- theCtx.core20fwd->glUniformMatrix4fv(uniModelMatLoc, 1, GL_FALSE, theModelMat);
47
- }
48
-
49
- void setTextColor(StGLContext& theCtx,
50
- const StGLVec4& theTextColorVec) {
51
- theCtx.core20fwd->glUniform4fv(uniTextColorLoc, 1, theTextColorVec);
52
- }
53
-
54
- virtual bool init(StGLContext& theCtx) {
55
- const char VERTEX_SHADER[] =
56
- "uniform mat4 uProjMat; \
57
- uniform mat4 uModelMat; \
58
- attribute vec4 vVertex; \
59
- attribute vec2 vTexCoord; \
60
- varying vec2 fTexCoord; \
61
- void main(void) { \
62
- fTexCoord = vTexCoord; \
63
- gl_Position = uProjMat * uModelMat * vVertex; \
64
- }";
65
-
66
- const char FRAGMENT_GET_RED[] =
67
- "float getAlpha(void) { return texture2D(uTexture, fTexCoord).r; }";
68
-
69
- const char FRAGMENT_GET_ALPHA[] =
70
- "float getAlpha(void) { return texture2D(uTexture, fTexCoord).a; }";
71
-
72
- const char FRAGMENT_SHADER[] =
73
- "uniform sampler2D uTexture;"
74
- "uniform vec4 uTextColor;"
75
- "varying vec2 fTexCoord;"
76
- "float getAlpha(void);"
77
- "void main(void) {"
78
- " vec4 color = uTextColor;"
79
- " color.a *= getAlpha();"
80
- " gl_FragColor = color;"
81
- "}";
82
-
83
- StGLVertexShader aVertexShader(StGLProgram::getTitle());
84
- aVertexShader.init(theCtx, VERTEX_SHADER);
85
- StGLAutoRelease aTmp1(theCtx, aVertexShader);
86
-
87
- StGLFragmentShader aFragmentShader(StGLProgram::getTitle());
88
- aFragmentShader.init(theCtx, FRAGMENT_SHADER,
89
- theCtx.arbTexRG ? FRAGMENT_GET_RED : FRAGMENT_GET_ALPHA);
90
- StGLAutoRelease aTmp2(theCtx, aFragmentShader);
91
- if(!StGLProgram::create(theCtx)
92
- .attachShader(theCtx, aVertexShader)
93
- .attachShader(theCtx, aFragmentShader)
94
- .link(theCtx)) {
95
- return false;
96
- }
97
-
98
- uniProjMatLoc = StGLProgram::getUniformLocation(theCtx, "uProjMat");
99
- uniModelMatLoc = StGLProgram::getUniformLocation(theCtx, "uModelMat");
100
- uniTextColorLoc = StGLProgram::getUniformLocation(theCtx, "uTextColor");
101
- atrVVertexLoc = StGLProgram::getAttribLocation(theCtx, "vVertex");
102
- atrVTexCoordLoc = StGLProgram::getAttribLocation(theCtx, "vTexCoord");
103
-
104
- StGLVarLocation uniTextureLoc = StGLProgram::getUniformLocation(theCtx, "uTexture");
105
- if(uniTextureLoc.isValid()) {
106
- StGLProgram::use(theCtx);
107
- theCtx.core20fwd->glUniform1i(uniTextureLoc, StGLProgram::TEXTURE_SAMPLE_0);
108
- StGLProgram::unuse(theCtx);
109
- }
110
-
111
- return uniProjMatLoc.isValid()
112
- && uniModelMatLoc.isValid()
113
- && uniTextColorLoc.isValid()
114
- && atrVVertexLoc.isValid()
115
- && atrVTexCoordLoc.isValid()
116
- && uniTextureLoc.isValid();
117
- }
118
-
119
- private:
120
-
121
- StGLVarLocation uniProjMatLoc;
122
- StGLVarLocation uniModelMatLoc;
123
- StGLVarLocation uniTextColorLoc;
124
-
125
- StGLVarLocation atrVVertexLoc;
126
- StGLVarLocation atrVTexCoordLoc;
127
-
128
-};
129
-
130
-class StGLTextArea::StBorderProgram : public StGLProgram {
131
-
132
- public:
133
-
134
- StBorderProgram()
135
- : StGLProgram("StGLTextArea, Border Program"),
136
- uniProjMatLoc(),
137
- uniModelMatLoc(),
138
- uniColorLoc(),
139
- atrVVertexLoc() {
140
- //
141
- }
142
-
143
- StGLVarLocation getVVertexLoc() const {
144
- return atrVVertexLoc;
145
- }
146
-
147
- void setProjMat(StGLContext& theCtx,
148
- const StGLMatrix& theProjMat) {
149
- theCtx.core20fwd->glUniformMatrix4fv(uniProjMatLoc, 1, GL_FALSE, theProjMat);
150
- }
151
-
152
- void setModelMat(StGLContext& theCtx,
153
- const StGLMatrix& theModelMat) {
154
- theCtx.core20fwd->glUniformMatrix4fv(uniModelMatLoc, 1, GL_FALSE, theModelMat);
155
- }
156
-
157
- void setColor(StGLContext& theCtx,
158
- const StGLVec4& theColorVec) {
159
- theCtx.core20fwd->glUniform4fv(uniColorLoc, 1, theColorVec);
160
- }
161
-
162
- virtual bool init(StGLContext& theCtx) {
163
- const char VERTEX_SHADER[] =
164
- "uniform mat4 uProjMat; \
165
- uniform mat4 uModelMat; \
166
- attribute vec4 vVertex; \
167
- void main(void) { \
168
- gl_Position = uProjMat * uModelMat * vVertex; \
169
- }";
170
-
171
- const char FRAGMENT_SHADER[] =
172
- "uniform vec4 uColor; \
173
- void main(void) { \
174
- gl_FragColor = uColor; \
175
- }";
176
-
177
- StGLVertexShader aVertexShader(StGLProgram::getTitle());
178
- aVertexShader.init(theCtx, VERTEX_SHADER);
179
- StGLAutoRelease aTmp1(theCtx, aVertexShader);
180
-
181
- StGLFragmentShader aFragmentShader(StGLProgram::getTitle());
182
- aFragmentShader.init(theCtx, FRAGMENT_SHADER);
183
- StGLAutoRelease aTmp2(theCtx, aFragmentShader);
184
- if(!StGLProgram::create(theCtx)
185
- .attachShader(theCtx, aVertexShader)
186
- .attachShader(theCtx, aFragmentShader)
187
- .link(theCtx)) {
188
- return false;
189
- }
190
-
191
- uniProjMatLoc = StGLProgram::getUniformLocation(theCtx, "uProjMat");
192
- uniModelMatLoc = StGLProgram::getUniformLocation(theCtx, "uModelMat");
193
- uniColorLoc = StGLProgram::getUniformLocation(theCtx, "uColor");
194
- atrVVertexLoc = StGLProgram::getAttribLocation(theCtx, "vVertex");
195
- return uniProjMatLoc.isValid() && uniModelMatLoc.isValid() && uniColorLoc.isValid() && atrVVertexLoc.isValid();
196
- }
197
-
198
- private:
199
-
200
- StGLVarLocation uniProjMatLoc;
201
sview-15_11.tar.gz/StGLWidgets/StGLTextBorderProgram.cpp
Added
78
1
2
+/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
+ *
6
+ * Distributed under the Boost Software License, Version 1.0.
7
+ * See accompanying file license-boost.txt or copy at
8
+ * http://www.boost.org/LICENSE_1_0.txt
9
+ */
10
+
11
+#include <StGLWidgets/StGLTextBorderProgram.h>
12
+
13
+#include <StGL/StGLContext.h>
14
+#include <StGL/StGLMatrix.h>
15
+#include <StGLCore/StGLCore20.h>
16
+
17
+StGLTextBorderProgram::StGLTextBorderProgram()
18
+: StGLProgram("StGLTextBorderProgram") {
19
+ //
20
+}
21
+
22
+StGLTextBorderProgram::~StGLTextBorderProgram() {
23
+ //
24
+}
25
+
26
+void StGLTextBorderProgram::setProjMat(StGLContext& theCtx,
27
+ const StGLMatrix& theProjMat) {
28
+ theCtx.core20fwd->glUniformMatrix4fv(myUniformProjMat, 1, GL_FALSE, theProjMat);
29
+}
30
+
31
+void StGLTextBorderProgram::setModelMat(StGLContext& theCtx,
32
+ const StGLMatrix& theModelMat) {
33
+ theCtx.core20fwd->glUniformMatrix4fv(myUniformModelMat, 1, GL_FALSE, theModelMat);
34
+}
35
+
36
+void StGLTextBorderProgram::setColor(StGLContext& theCtx,
37
+ const StGLVec4& theColor) {
38
+ theCtx.core20fwd->glUniform4fv(myUniformColor, 1, theColor);
39
+}
40
+
41
+bool StGLTextBorderProgram::init(StGLContext& theCtx) {
42
+ const char VERTEX_SHADER[] =
43
+ "uniform mat4 uProjMat; \
44
+ uniform mat4 uModelMat; \
45
+ attribute vec4 vVertex; \
46
+ void main(void) { \
47
+ gl_Position = uProjMat * uModelMat * vVertex; \
48
+ }";
49
+
50
+ const char FRAGMENT_SHADER[] =
51
+ "uniform vec4 uColor; \
52
+ void main(void) { \
53
+ gl_FragColor = uColor; \
54
+ }";
55
+
56
+ StGLVertexShader aVertexShader(StGLProgram::getTitle());
57
+ aVertexShader.init(theCtx, VERTEX_SHADER);
58
+ StGLAutoRelease aTmp1(theCtx, aVertexShader);
59
+
60
+ StGLFragmentShader aFragmentShader(StGLProgram::getTitle());
61
+ aFragmentShader.init(theCtx, FRAGMENT_SHADER);
62
+ StGLAutoRelease aTmp2(theCtx, aFragmentShader);
63
+ if(!StGLProgram::create(theCtx)
64
+ .attachShader(theCtx, aVertexShader)
65
+ .attachShader(theCtx, aFragmentShader)
66
+ .bindAttribLocation(theCtx, "vVertex", getVVertexLoc())
67
+ .link(theCtx)) {
68
+ return false;
69
+ }
70
+
71
+ myUniformProjMat = StGLProgram::getUniformLocation(theCtx, "uProjMat");
72
+ myUniformModelMat = StGLProgram::getUniformLocation(theCtx, "uModelMat");
73
+ myUniformColor = StGLProgram::getUniformLocation(theCtx, "uColor");
74
+ return myUniformProjMat.isValid()
75
+ && myUniformModelMat.isValid()
76
+ && myUniformColor.isValid();
77
+}
78
sview-15_11.tar.gz/StGLWidgets/StGLTextProgram.cpp
Added
103
1
2
+/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
+ *
6
+ * Distributed under the Boost Software License, Version 1.0.
7
+ * See accompanying file license-boost.txt or copy at
8
+ * http://www.boost.org/LICENSE_1_0.txt
9
+ */
10
+
11
+#include <StGLWidgets/StGLTextProgram.h>
12
+
13
+#include <StGL/StGLContext.h>
14
+#include <StGL/StGLMatrix.h>
15
+#include <StGLCore/StGLCore20.h>
16
+
17
+StGLTextProgram::StGLTextProgram()
18
+: StGLProgram("StGLTextProgram") {
19
+ //
20
+}
21
+
22
+StGLTextProgram::~StGLTextProgram() {
23
+ //
24
+}
25
+
26
+void StGLTextProgram::setProjMat(StGLContext& theCtx,
27
+ const StGLMatrix& theProjMat) {
28
+ theCtx.core20fwd->glUniformMatrix4fv(myUniformProjMat, 1, GL_FALSE, theProjMat);
29
+}
30
+
31
+void StGLTextProgram::setModelMat(StGLContext& theCtx,
32
+ const StGLMatrix& theModelMat) {
33
+ theCtx.core20fwd->glUniformMatrix4fv(myUniformModelMat, 1, GL_FALSE, theModelMat);
34
+}
35
+
36
+void StGLTextProgram::setColor(StGLContext& theCtx,
37
+ const StGLVec4& theColor) {
38
+ theCtx.core20fwd->glUniform4fv(myUniformColor, 1, theColor);
39
+}
40
+
41
+bool StGLTextProgram::init(StGLContext& theCtx) {
42
+ const char VERTEX_SHADER[] =
43
+ "uniform mat4 uProjMat; \
44
+ uniform mat4 uModelMat; \
45
+ attribute vec4 vVertex; \
46
+ attribute vec2 vTexCoord; \
47
+ varying vec2 fTexCoord; \
48
+ void main(void) { \
49
+ fTexCoord = vTexCoord; \
50
+ gl_Position = uProjMat * uModelMat * vVertex; \
51
+ }";
52
+
53
+ const char FRAGMENT_GET_RED[] =
54
+ "float getAlpha(void) { return texture2D(uTexture, fTexCoord).r; }";
55
+
56
+ const char FRAGMENT_GET_ALPHA[] =
57
+ "float getAlpha(void) { return texture2D(uTexture, fTexCoord).a; }";
58
+
59
+ const char FRAGMENT_SHADER[] =
60
+ "uniform sampler2D uTexture;"
61
+ "uniform vec4 uTextColor;"
62
+ "varying vec2 fTexCoord;"
63
+ "float getAlpha(void);"
64
+ "void main(void) {"
65
+ " vec4 color = uTextColor;"
66
+ " color.a *= getAlpha();"
67
+ " gl_FragColor = color;"
68
+ "}";
69
+
70
+ StGLVertexShader aVertexShader(StGLProgram::getTitle());
71
+ aVertexShader.init(theCtx, VERTEX_SHADER);
72
+ StGLAutoRelease aTmp1(theCtx, aVertexShader);
73
+
74
+ StGLFragmentShader aFragmentShader(StGLProgram::getTitle());
75
+ aFragmentShader.init(theCtx, FRAGMENT_SHADER,
76
+ theCtx.arbTexRG ? FRAGMENT_GET_RED : FRAGMENT_GET_ALPHA);
77
+ StGLAutoRelease aTmp2(theCtx, aFragmentShader);
78
+ if(!StGLProgram::create(theCtx)
79
+ .attachShader(theCtx, aVertexShader)
80
+ .attachShader(theCtx, aFragmentShader)
81
+ .bindAttribLocation(theCtx, "vVertex", getVVertexLoc())
82
+ .bindAttribLocation(theCtx, "vTexCoord", getVTexCoordLoc())
83
+ .link(theCtx)) {
84
+ return false;
85
+ }
86
+
87
+ myUniformProjMat = StGLProgram::getUniformLocation(theCtx, "uProjMat");
88
+ myUniformModelMat = StGLProgram::getUniformLocation(theCtx, "uModelMat");
89
+ myUniformColor = StGLProgram::getUniformLocation(theCtx, "uTextColor");
90
+
91
+ StGLVarLocation aUniformTexture = StGLProgram::getUniformLocation(theCtx, "uTexture");
92
+ if(aUniformTexture.isValid()) {
93
+ StGLProgram::use(theCtx);
94
+ theCtx.core20fwd->glUniform1i(aUniformTexture, StGLProgram::TEXTURE_SAMPLE_0);
95
+ StGLProgram::unuse(theCtx);
96
+ }
97
+
98
+ return myUniformProjMat.isValid()
99
+ && myUniformModelMat.isValid()
100
+ && myUniformColor.isValid()
101
+ && aUniformTexture.isValid();
102
+}
103
sview-15_10.tar.gz/StGLWidgets/StGLTextureButton.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLTextureButton.cpp
Changed
16
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
" if(uClicked > 10) {\n"
9
" v.z = v.z - 0.25;\n"
10
" } else {\n"
11
- " v.z = v.z + sin(uTime * v.x + uTime) * cos(v.y + uTime) * 0.25;\n"
12
+ " v.z = v.z + sin(uTime * v.x + uTime) * cos(v.y + uTime) * 0.1;\n"
13
" }\n"
14
" gl_Position = uProjMat * v;\n"
15
"}\n";
16
sview-15_10.tar.gz/StGLWidgets/StGLWidget.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLWidget.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLWidgetList.cpp -> sview-15_11.tar.gz/StGLWidgets/StGLWidgetList.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StGLWidgets/StGLWidgets.cbp -> sview-15_11.tar.gz/StGLWidgets/StGLWidgets.cbp
Changed
73
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/StGLWidgets" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option working_dir="../bin/$(TARGET_NAME)" />
8
- <Option object_output="obj/$(TARGET_NAME)/" />
9
- <Option type="3" />
10
- <Option compiler="gcc" />
11
- <Option createStaticLib="1" />
12
- <Compiler>
13
- <Add option="-O3" />
14
- <Add option="-std=c++0x" />
15
- <Add option="-Wall" />
16
- <Add option="-g" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add library="opengl32" />
25
- <Add library="user32" />
26
- </Linker>
27
- </Target>
28
<Target title="WIN_vc_x86">
29
<Option output="../bin/$(TARGET_NAME)/StGLWidgets" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME).a" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME).def" prefix_auto="1" extension_auto="1" />
30
<Option working_dir="../bin/$(TARGET_NAME)" />
31
32
<Add library="user32" />
33
</Linker>
34
</Target>
35
- <Target title="WIN_vc_x86_DEBUG">
36
+ <Target title="WIN_vc_AMD64_DEBUG">
37
<Option output="../bin/$(TARGET_NAME)/StGLWidgets" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME).a" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME).def" prefix_auto="1" extension_auto="1" />
38
<Option working_dir="../bin/$(TARGET_NAME)" />
39
<Option object_output="obj/$(TARGET_NAME)/" />
40
<Option type="3" />
41
- <Option compiler="msvc10" />
42
+ <Option compiler="windows_sdk_x86_64" />
43
<Option createStaticLib="1" />
44
<Compiler>
45
<Add option="/MDd" />
46
47
<Unit filename="StGLSwitchTextured.cpp" />
48
<Unit filename="StGLTable.cpp" />
49
<Unit filename="StGLTextArea.cpp" />
50
+ <Unit filename="StGLTextBorderProgram.cpp" />
51
+ <Unit filename="StGLTextProgram.cpp" />
52
<Unit filename="StGLTextureButton.cpp" />
53
<Unit filename="StGLWidget.cpp" />
54
<Unit filename="StGLWidgetList.cpp" />
55
<Unit filename="StGLWidgets.rc">
56
<Option compilerVar="WINDRES" />
57
- <Option target="WIN_gcc_x86" />
58
<Option target="WIN_vc_x86" />
59
- <Option target="WIN_vc_x86_DEBUG" />
60
+ <Option target="WIN_vc_AMD64_DEBUG" />
61
<Option target="WIN_vc_AMD64" />
62
</Unit>
63
<Unit filename="StSubQueue.cpp" />
64
65
<Unit filename="../include/StGLWidgets/StGLSwitchTextured.h" />
66
<Unit filename="../include/StGLWidgets/StGLTable.h" />
67
<Unit filename="../include/StGLWidgets/StGLTextArea.h" />
68
+ <Unit filename="../include/StGLWidgets/StGLTextBorderProgram.h" />
69
+ <Unit filename="../include/StGLWidgets/StGLTextProgram.h" />
70
<Unit filename="../include/StGLWidgets/StGLTextureButton.h" />
71
<Unit filename="../include/StGLWidgets/StGLWidget.h" />
72
<Unit filename="../include/StGLWidgets/StGLWidgetList.h" />
73
sview-15_10.tar.gz/StGLWidgets/StGLWidgets.vcxproj -> sview-15_11.tar.gz/StGLWidgets/StGLWidgets.vcxproj
Changed
10
1
2
<ClCompile Include="StGLSwitchTextured.cpp" />
3
<ClCompile Include="StGLTable.cpp" />
4
<ClCompile Include="StGLTextArea.cpp" />
5
+ <ClCompile Include="StGLTextBorderProgram.cpp" />
6
+ <ClCompile Include="StGLTextProgram.cpp" />
7
<ClCompile Include="StGLTextureButton.cpp" />
8
<ClCompile Include="StGLWidget.cpp" />
9
<ClCompile Include="StGLWidgetList.cpp" />
10
sview-15_10.tar.gz/StGLWidgets/StGLWidgets.vcxproj.filters -> sview-15_11.tar.gz/StGLWidgets/StGLWidgets.vcxproj.filters
Changed
14
1
2
<ClCompile Include="StGLTextArea.cpp">
3
<Filter>Source files</Filter>
4
</ClCompile>
5
+ <ClCompile Include="StGLTextBorderProgram.cpp">
6
+ <Filter>Source files</Filter>
7
+ </ClCompile>
8
+ <ClCompile Include="StGLTextProgram.cpp">
9
+ <Filter>Source files</Filter>
10
+ </ClCompile>
11
<ClCompile Include="StGLTextureButton.cpp">
12
<Filter>Source files</Filter>
13
</ClCompile>
14
sview-15_10.tar.gz/StGLWidgets/StSubQueue.cpp -> sview-15_11.tar.gz/StGLWidgets/StSubQueue.cpp
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2010-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/StImageViewer/StImageLoader.cpp -> sview-15_11.tar.gz/StImageViewer/StImageLoader.cpp
Changed
95
1
2
StImageLoader::StImageLoader(const StImageFile::ImageClass theImageLib,
3
const StHandle<StMsgQueue>& theMsgQueue,
4
const StHandle<StLangMap>& theLangMap,
5
+ const StHandle<StPlayList>& thePlayList,
6
const StHandle<StGLTextureQueue>& theTextureQueue,
7
const GLint theMaxTexDim)
8
: myMimeList(ST_IMAGES_MIME_STRING),
9
myLangMap(theLangMap),
10
- myPlayList(1),
11
+ myPlayList(thePlayList),
12
myLoadNextEvent(false),
13
myStFormatByUser(StFormat_AUTO),
14
myMaxTexDim(theMaxTexDim),
15
16
myMsgQueue(theMsgQueue),
17
myImageLib(theImageLib),
18
myAction(Action_NONE) {
19
- myPlayList.setExtensions(myMimeList.getExtensionsList());
20
+ myPlayList->setExtensions(myMimeList.getExtensionsList());
21
myThread = new StThread(threadFunction, (void* )this, "StImageLoader");
22
}
23
24
25
return false;
26
}
27
28
+ // clear active
29
+ myTextureQueue->clear();
30
+
31
StHandle<StImageInfo> anImgInfo = new StImageInfo();
32
anImgInfo->Id = theParams;
33
anImgInfo->Path = aFilePath;
34
35
}
36
const double aLoadTimeMSec = aLoadTimer.getElapsedTimeInMilliSec();
37
38
+ // copy metadata
39
+ for(size_t aTagIter = 0; aTagIter < anImageFileL->getMetadata().size(); ++aTagIter) {
40
+ const StDictEntry& aTag = anImageFileL->getMetadata().getFromIndex(aTagIter);
41
+ anImgInfo->Info.add(aTag);
42
+ }
43
+
44
// detect information from file name
45
bool isAnamorphByName = false;
46
anImgInfo->StInfoFileName = st::formatFromName(aTitleString, isAnamorphByName);
47
48
#endif
49
50
// finally push image data in Texture Queue
51
- while(myTextureQueue->isFull()) {
52
- StThread::sleep(10);
53
- }
54
-
55
myTextureQueue->setConnectedStream(true);
56
+
57
if(!anImageR->isNull()) {
58
- myTextureQueue->push(*anImageL, *anImageR, theParams, StFormat_SeparateFrames, aSrcCubemap, 0.0);
59
- } else {
60
- myTextureQueue->push(*anImageL, *anImageR, theParams, aSrcFormatCurr, aSrcCubemap, 0.0);
61
+ aSrcFormatCurr = StFormat_SeparateFrames;
62
+ }
63
+
64
+ {
65
+ StImage anImageRefL, anImageRefR;
66
+ StHandle<StBufferCounter> aRefL = new StImageFileCounter(anImageL);
67
+ anImageRefL.initReference(*anImageL, aRefL);
68
+ if(!anImageR->isNull()) {
69
+ StHandle<StBufferCounter> aRefR = new StImageFileCounter(anImageR);
70
+ anImageRefR.initReference(*anImageR, aRefR);
71
+ }
72
+
73
+ myTextureQueue->push(anImageRefL, anImageRefR, theParams, aSrcFormatCurr, aSrcCubemap, 0.0);
74
}
75
76
if(!stAreEqual(anImageFileL->getPixelRatio(), 1.0f, 0.001f)) {
77
78
myAction = Action_NONE;
79
myLoadNextEvent.reset();
80
// save current image (set as current in playlist)
81
- if(myPlayList.getCurrentFile(aFileToLoad, aFileParams)) {
82
+ if(myPlayList->getCurrentFile(aFileToLoad, aFileParams)) {
83
saveImage(aFileToLoad, aFileParams, anImgType);
84
}
85
break;
86
87
default: {
88
// load next image (set as current in playlist)
89
myLoadNextEvent.reset();
90
- if(myPlayList.getCurrentFile(aFileToLoad, aFileParams)) {
91
+ if(myPlayList->getCurrentFile(aFileToLoad, aFileParams)) {
92
loadImage(aFileToLoad, aFileParams);
93
}
94
break;
95
sview-15_10.tar.gz/StImageViewer/StImageLoader.h -> sview-15_11.tar.gz/StImageViewer/StImageLoader.h
Changed
27
1
2
ST_LOCAL StImageLoader(const StImageFile::ImageClass theImageLib,
3
const StHandle<StMsgQueue>& theMsgQueue,
4
const StHandle<StLangMap>& theLangMap,
5
+ const StHandle<StPlayList>& thePlayList,
6
const StHandle<StGLTextureQueue>& theTextureQueue,
7
const GLint theMaxTexDim);
8
ST_LOCAL ~StImageLoader();
9
10
}
11
12
ST_LOCAL StPlayList& getPlayList() {
13
- return myPlayList;
14
+ return *myPlayList;
15
}
16
17
ST_LOCAL void setStereoFormat(const StFormat theSrcFormat) {
18
19
const StMIMEList myMimeList;
20
StHandle<StThread> myThread; //!< main loop thread
21
StHandle<StLangMap> myLangMap; //!< translations dictionary
22
- StPlayList myPlayList; //!< play list
23
+ StHandle<StPlayList> myPlayList; //!< play list
24
mutable StMutex myLock; //!< lock to access not thread-safe properties
25
StCondition myLoadNextEvent;
26
StFormat myStFormatByUser;//!< target source format (auto-detect by default)
27
sview-15_10.tar.gz/StImageViewer/StImageViewer.cbp -> sview-15_11.tar.gz/StImageViewer/StImageViewer.cbp
Changed
63
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/libStImageViewer" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Option createStaticLib="1" />
11
- <Compiler>
12
- <Add option="-O3" />
13
- <Add option="-std=c++0x" />
14
- <Add option="-Wall" />
15
- <Add option="-g" />
16
- <Add option="-shared" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add library="opengl32" />
25
- <Add library="gdi32" />
26
- <Add library="Comdlg32" />
27
- <Add library="shell32" />
28
- <Add library="Wsock32" />
29
- <Add library="Version" />
30
- </Linker>
31
- <ExtraCommands>
32
- <Add before='cmd /c call ..\copy_res.bat $(TARGET_OUTPUT_DIR) $(TARGET_OUTPUT_BASENAME)' />
33
- </ExtraCommands>
34
- </Target>
35
<Target title="WIN_vc_x86">
36
<Option output="../bin/$(TARGET_NAME)/StImageViewer" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
37
<Option object_output="obj/$(TARGET_NAME)/" />
38
39
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";2' />
40
</ExtraCommands>
41
</Target>
42
- <Target title="WIN_vc_x86_DEBUG">
43
+ <Target title="WIN_vc_AMD64_DEBUG">
44
<Option output="../bin/$(TARGET_NAME)/StImageViewer" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
45
<Option object_output="obj/$(TARGET_NAME)/" />
46
<Option type="3" />
47
- <Option compiler="msvc10" />
48
+ <Option compiler="windows_sdk_x86_64" />
49
<Option createStaticLib="1" />
50
<Compiler>
51
<Add option="/MDd" />
52
53
<Unit filename="StImageViewer.h" />
54
<Unit filename="StImageViewer.rc">
55
<Option compilerVar="WINDRES" />
56
- <Option target="WIN_gcc_x86" />
57
<Option target="WIN_vc_x86" />
58
- <Option target="WIN_vc_x86_DEBUG" />
59
+ <Option target="WIN_vc_AMD64_DEBUG" />
60
<Option target="WIN_vc_AMD64" />
61
</Unit>
62
<Unit filename="StImageViewerGUI.cpp" />
63
sview-15_10.tar.gz/StImageViewer/StImageViewer.cpp -> sview-15_11.tar.gz/StImageViewer/StImageViewer.cpp
Changed
201
1
2
#include <StGLWidgets/StGLImageRegion.h>
3
#include <StGLWidgets/StGLMessageBox.h>
4
#include <StGLWidgets/StGLMsgStack.h>
5
+#include <StGLWidgets/StGLPlayList.h>
6
#include <StSettings/StSettings.h>
7
#include <StSocket/StCheckUpdates.h>
8
#include <StThreads/StThread.h>
9
#include <StImage/StImageFile.h>
10
+#include <StCore/StSearchMonitors.h>
11
12
#include "../StOutAnaglyph/StOutAnaglyph.h"
13
#include "../StOutDual/StOutDual.h"
14
15
static const char ST_SETTING_RECENT_L[] = "recentL";
16
static const char ST_SETTING_RECENT_R[] = "recentR";
17
static const char ST_SETTING_SAVE_RECENT[] = "toSaveRecent";
18
+ static const char ST_SETTING_SHOW_LIST[] = "showPlaylist";
19
static const char ST_SETTING_COMPRESS[] = "toCompress";
20
static const char ST_SETTING_ESCAPENOQUIT[]= "escNoQuit";
21
static const char ST_SETTING_FULLSCREENUI[]= "fullScreenUI";
22
- static const char ST_SETTING_SHOW_TOOLBAR[]= "toShowToolbar";
23
24
static const char ST_SETTING_SCALE_ADJUST[] = "scaleAdjust";
25
static const char ST_SETTING_SCALE_FORCE2X[] = "scale2X";
26
27
static const char ST_ARGUMENT_FILE_RIGHT[] = "right";
28
static const char ST_ARGUMENT_FILE_LAST[] = "last";
29
30
+ static const char ST_ARGUMENT_SHOW_MENU[] = "toShowMenu";
31
+ static const char ST_ARGUMENT_SHOW_TOPBAR[]= "toShowTopbar";
32
+ static const char ST_ARGUMENT_MONITOR[] = "monitorId";
33
+ static const char ST_ARGUMENT_WINLEFT[] = "windowLeft";
34
+ static const char ST_ARGUMENT_WINTOP[] = "windowTop";
35
+ static const char ST_ARGUMENT_WINWIDTH[] = "windowWidth";
36
+ static const char ST_ARGUMENT_WINHEIGHT[] = "windowHeight";
37
+
38
}
39
40
/**
41
42
const StHandle<StOpenInfo>& theOpenInfo,
43
const StString& theAppName)
44
: StApplication(theResMgr, theParentWin, theOpenInfo),
45
+ myPlayList(new StPlayList(1, false)),
46
myAppName(!theAppName.isEmpty() ? theAppName : ST_DRAWER_PLUGIN_NAME),
47
myEventLoaded(false),
48
//
49
50
params.checkUpdatesDays = new StInt32Param(7);
51
params.srcFormat = new StInt32Param(StFormat_AUTO);
52
params.srcFormat->signals.onChanged.connect(this, &StImageViewer::doSwitchSrcFormat);
53
+ params.ToShowPlayList = new StBoolParam(false);
54
+ params.ToShowPlayList->signals.onChanged = stSlot(this, &StImageViewer::doShowPlayList);
55
params.ToTrackHead = new StBoolParamNamed(true, tr(StImageViewerStrings::MENU_VIEW_TRACK_HEAD));
56
params.ToShowFps = new StBoolParamNamed(false, tr(StImageViewerStrings::MENU_SHOW_FPS));
57
- params.ToShowToolbar = new StBoolParamNamed(true, "Show toolbar");
58
+ params.ToShowMenu = new StBoolParamNamed(true, "Show main menu");
59
+ params.ToShowTopbar = new StBoolParamNamed(true, "Show top toolbar");
60
params.IsMobileUI = new StBoolParamNamed(StWindow::isMobile(), "Mobile UI");
61
params.IsMobileUI->signals.onChanged = stSlot(this, &StImageViewer::doScaleHiDPI);
62
params.IsVSyncOn = new StBoolParam(true);
63
64
mySettings->loadParam (ST_SETTING_SHOW_FPS, params.ToShowFps);
65
mySettings->loadParam (ST_SETTING_MOBILE_UI, params.IsMobileUI);
66
mySettings->loadParam (ST_SETTING_VSYNC, params.IsVSyncOn);
67
+ mySettings->loadParam (ST_SETTING_SHOW_LIST, params.ToShowPlayList);
68
69
int32_t aSlideShowDelayInt = int32_t(mySlideShowDelay);
70
mySettings->loadInt32 (ST_SETTING_SLIDESHOW_DELAY, aSlideShowDelayInt);
71
72
mySettings->saveParam (ST_SETTING_SHOW_FPS, params.ToShowFps);
73
mySettings->saveParam (ST_SETTING_MOBILE_UI, params.IsMobileUI);
74
mySettings->saveParam (ST_SETTING_VSYNC, params.IsVSyncOn);
75
+ mySettings->saveParam (ST_SETTING_SHOW_LIST, params.ToShowPlayList);
76
if(myToSaveSrcFormat) {
77
mySettings->saveParam(ST_SETTING_SRCFORMAT, params.srcFormat);
78
}
79
80
81
// create the GUI with default values
82
params.ScaleHiDPI->setValue(myWindow->getScaleFactor());
83
- myGUI = new StImageViewerGUI(this, myWindow.access(), myLangMap.access(),
84
+ myGUI = new StImageViewerGUI(this, myWindow.access(), myLangMap.access(), myPlayList,
85
myLoader.isNull() ? NULL : myLoader->getTextureQueue());
86
myGUI->setContext(myContext);
87
88
89
StString anImgLibStr;
90
mySettings->loadString(ST_SETTING_IMAGELIB, anImgLibStr);
91
params.imageLib = StImageFile::imgLibFromString(anImgLibStr);
92
- myLoader = new StImageLoader(params.imageLib, myMsgQueue, myLangMap,
93
+ myLoader = new StImageLoader(params.imageLib, myMsgQueue, myLangMap, myPlayList,
94
myGUI->myImage->getTextureQueue(), myContext->getMaxTextureSize());
95
myLoader->signals.onLoaded.connect(this, &StImageViewer::doLoaded);
96
myLoader->setCompressMemory(myWindow->isMobile());
97
98
}
99
100
void StImageViewer::parseArguments(const StArgumentsMap& theArguments) {
101
- StArgument argFullscreen = theArguments[ST_SETTING_FULLSCREEN];
102
- StArgument argSlideshow = theArguments[ST_SETTING_SLIDESHOW];
103
- StArgument argViewMode = theArguments[ST_SETTING_VIEWMODE];
104
- StArgument argSrcFormat = theArguments[ST_SETTING_SRCFORMAT];
105
- StArgument argImgLibrary = theArguments[ST_SETTING_IMAGELIB];
106
- StArgument argToCompress = theArguments[ST_SETTING_COMPRESS];
107
- StArgument argEscNoQuit = theArguments[ST_SETTING_ESCAPENOQUIT];
108
- StArgument argFullScreenUI = theArguments[ST_SETTING_FULLSCREENUI];
109
- StArgument argToolbar = theArguments[ST_SETTING_SHOW_TOOLBAR];
110
- StArgument argSaveRecent = theArguments[ST_SETTING_SAVE_RECENT];
111
- if(argToCompress.isValid()) {
112
- myLoader->setCompressMemory(!argToCompress.isValueOff());
113
- }
114
- if(argEscNoQuit.isValid()) {
115
- myEscNoQuit = !argEscNoQuit.isValueOff();
116
- }
117
- if(argFullScreenUI.isValid()) {
118
- myToHideUIFullScr = argFullScreenUI.isValueOff();
119
- }
120
- if(argToolbar.isValid()) {
121
- params.ToShowToolbar->setValue(!argToolbar.isValueOff());
122
- }
123
- if(argFullscreen.isValid()) {
124
- params.isFullscreen->setValue(!argFullscreen.isValueOff());
125
- }
126
- if(argSlideshow.isValid() && !argSlideshow.isValueOff()) {
127
+ StArgument anArgSlideshow = theArguments[ST_SETTING_SLIDESHOW];
128
+ StArgument anArgViewMode = theArguments[ST_SETTING_VIEWMODE];
129
+ StArgument anArgSrcFormat = theArguments[ST_SETTING_SRCFORMAT];
130
+ StArgument anArgImgLibrary = theArguments[ST_SETTING_IMAGELIB];
131
+ StArgument anArgToCompress = theArguments[ST_SETTING_COMPRESS];
132
+ StArgument anArgEscNoQuit = theArguments[ST_SETTING_ESCAPENOQUIT];
133
+ StArgument anArgFullScreenUI = theArguments[ST_SETTING_FULLSCREENUI];
134
+ StArgument anArgShowMenu = theArguments[ST_ARGUMENT_SHOW_MENU];
135
+ StArgument anArgShowTopbar = theArguments[ST_ARGUMENT_SHOW_TOPBAR];
136
+ StArgument anArgSaveRecent = theArguments[ST_SETTING_SAVE_RECENT];
137
+
138
+ StArgument anArgFullscreen = theArguments[ST_SETTING_FULLSCREEN];
139
+ StArgument anArgMonitor = theArguments[ST_ARGUMENT_MONITOR];
140
+ StArgument anArgWinLeft = theArguments[ST_ARGUMENT_WINLEFT];
141
+ StArgument anArgWinTop = theArguments[ST_ARGUMENT_WINTOP];
142
+ StArgument anArgWinWidth = theArguments[ST_ARGUMENT_WINWIDTH];
143
+ StArgument anArgWinHeight = theArguments[ST_ARGUMENT_WINHEIGHT];
144
+ StRect<int32_t> aRect = myWindow->getWindowedPlacement();
145
+ bool toSetRect = false;
146
+ if(anArgMonitor.isValid()) {
147
+ const size_t aMonId = (size_t )::atol(anArgMonitor.getValue().toCString());
148
+ const StMonitor& aMonOld = myWindow->getMonitors()[aRect.center()];
149
+ const StMonitor& aMonNew = myWindow->getMonitors()[aMonId];
150
+ if(aMonOld.getId() != aMonNew.getId()) {
151
+ const int aLeft = aRect.left() - aMonOld.getVRect().left();
152
+ const int aTop = aRect.top() - aMonOld.getVRect().top();
153
+ aRect.moveLeftTo(aMonNew.getVRect().left() + aLeft);
154
+ aRect.moveTopTo (aMonNew.getVRect().top() + aTop);
155
+ toSetRect = true;
156
+ }
157
+ }
158
+ if(anArgWinLeft.isValid()) {
159
+ aRect.moveLeftTo(::atol(anArgWinLeft.getValue().toCString()));
160
+ toSetRect = true;
161
+ }
162
+ if(anArgWinTop.isValid()) {
163
+ aRect.moveTopTo(::atol(anArgWinTop.getValue().toCString()));
164
+ toSetRect = true;
165
+ }
166
+ if(anArgWinWidth.isValid()) {
167
+ aRect.right() = aRect.left() + ::atol(anArgWinWidth.getValue().toCString());
168
+ toSetRect = true;
169
+ }
170
+ if(anArgWinHeight.isValid()) {
171
+ aRect.bottom() = aRect.top() + ::atol(anArgWinHeight.getValue().toCString());
172
+ toSetRect = true;
173
+ }
174
+ if(toSetRect) {
175
+ myWindow->setPlacement(aRect, true);
176
+ }
177
+ if(anArgFullscreen.isValid()) {
178
+ params.isFullscreen->setValue(!anArgFullscreen.isValueOff());
179
+ }
180
+
181
+ if(anArgToCompress.isValid()) {
182
+ myLoader->setCompressMemory(!anArgToCompress.isValueOff());
183
+ }
184
+ if(anArgEscNoQuit.isValid()) {
185
+ myEscNoQuit = !anArgEscNoQuit.isValueOff();
186
+ }
187
+ if(anArgFullScreenUI.isValid()) {
188
+ myToHideUIFullScr = anArgFullScreenUI.isValueOff();
189
+ }
190
+ if(anArgShowMenu.isValid()) {
191
+ params.ToShowMenu->setValue(!anArgShowMenu.isValueOff());
192
+ }
193
+ if(anArgShowTopbar.isValid()) {
194
+ params.ToShowTopbar->setValue(!anArgShowTopbar.isValueOff());
195
+ }
196
+ if( anArgSlideshow.isValid()
197
+ && !anArgSlideshow.isValueOff()) {
198
doSlideShow();
199
}
200
- if(argViewMode.isValid()) {
201
sview-15_10.tar.gz/StImageViewer/StImageViewer.h -> sview-15_11.tar.gz/StImageViewer/StImageViewer.h
Changed
29
1
2
StHandle<StInt32Param> checkUpdatesDays; //!< days count between updates checks
3
StHandle<StInt32Param> srcFormat; //!< source format
4
StHandle<StBoolParam> ToTrackHead; //!< enable/disable head-tracking
5
- StHandle<StBoolParam> ToShowToolbar; //!< show/hide toolbar
6
+ StHandle<StBoolParam> ToShowMenu; //!< show main menu
7
+ StHandle<StBoolParam> ToShowTopbar; //!< show topbar
8
+ StHandle<StBoolParam> ToShowPlayList; //!< display playlist
9
StHandle<StBoolParam> ToShowFps; //!< display FPS meter
10
StHandle<StBoolParam> IsMobileUI; //!< display mobile interface
11
StHandle<StBoolParam> IsVSyncOn; //!< flag to use VSync
12
13
ST_LOCAL void doSwitchSrcFormat(const int32_t theSrcFormat);
14
ST_LOCAL void doSwitchViewMode(const int32_t theMode);
15
ST_LOCAL void doPanoramaOnOff(const size_t );
16
+ ST_LOCAL void doShowPlayList(const bool theToShow);
17
+ ST_LOCAL void doFileNext();
18
19
public:
20
21
22
StHandle<StGLContext> myContext;
23
StHandle<StSettings> mySettings; //!< settings manager for Image Viewer plugin
24
StHandle<StTranslations> myLangMap; //!< translated strings map
25
+ StHandle<StPlayList> myPlayList; //!< play list
26
StHandle<StImageViewerGUI> myGUI; //!< GUI root widget
27
StHandle<StImageLoader> myLoader; //!< main image loader class
28
StHandle<StCheckUpdates> myUpdates; //!< check updates utility
29
sview-15_10.tar.gz/StImageViewer/StImageViewerGUI.cpp -> sview-15_11.tar.gz/StImageViewer/StImageViewerGUI.cpp
Changed
201
1
2
#include <StGLWidgets/StGLMenuItem.h>
3
#include <StGLWidgets/StGLMsgStack.h>
4
#include <StGLWidgets/StGLOpenFile.h>
5
+#include <StGLWidgets/StGLPlayList.h>
6
#include <StGLWidgets/StGLRangeFieldFloat32.h>
7
#include <StGLWidgets/StGLScrollArea.h>
8
#include <StGLWidgets/StGLSwitchTextured.h>
9
10
myPlugin->doSaveImageInfo(0);
11
}
12
13
-void StImageViewerGUI::createDesktopUI() {
14
+void StImageViewerGUI::createDesktopUI(const StHandle<StPlayList>& thePlayList) {
15
if(myPlugin->params.ToShowFps->getValue()) {
16
myFpsWidget = new StGLFpsLabel(this);
17
}
18
19
createUpperToolbar();
20
21
- const StMarginsI& aMargins = getRootMargins();
22
+ const StMarginsI& aRootMargins = getRootMargins();
23
StMarginsI aButtonMargins;
24
const IconSize anIconSize = scaleIcon(32, aButtonMargins);
25
- /*myBtnPlayList = new StGLTextureButton(this, -aMargins.right - scale(8 + 8 + 32), -aMargins.bottom - scale(8),
26
- StGLCorner(ST_VCORNER_BOTTOM, ST_HCORNER_RIGHT));
27
- myBtnPlayList->setTexturePath(iconTexture(stCString("playList"), anIconSize));
28
- myBtnPlayList->changeMargins() = aButtonMargins;*/
29
+ const int anIconStep = scale(32);
30
31
- // fullscreen button
32
+ myPanelBottom = new StGLContainer(this, aRootMargins.left, -aRootMargins.bottom, StGLCorner(ST_VCORNER_BOTTOM, ST_HCORNER_LEFT), scale(4096), scale(32));
33
+ int aBottomBarNbRight = 0;
34
+ const int aRight = -scale(8);
35
+ const int aBottom = -scale(8);
36
if(myWindow->hasFullscreenMode()) {
37
- myBtnFull = new StGLTextureButton(this, -aMargins.right - scale(8), -aMargins.bottom - scale(8),
38
- StGLCorner(ST_VCORNER_BOTTOM, ST_HCORNER_RIGHT));
39
- myBtnFull->signals.onBtnClick.connect(myPlugin->params.isFullscreen.operator->(), &StBoolParam::doReverse);
40
- myBtnFull->setTexturePath(iconTexture(stCString("fullScreen"), anIconSize));
41
+ myBtnFull = new StGLCheckboxTextured(myPanelBottom, myPlugin->params.isFullscreen,
42
+ iconTexture(stCString("actionVideoFullscreenOff"), anIconSize),
43
+ iconTexture(stCString("actionVideoFullscreenOn"), anIconSize),
44
+ (aBottomBarNbRight++) * (-anIconStep) + aRight, aBottom,
45
+ StGLCorner(ST_VCORNER_TOP, ST_HCORNER_RIGHT));
46
+ myBtnFull->setDrawShadow(true);
47
+ myBtnFull->setFalseOpacity(1.0f);
48
myBtnFull->changeMargins() = aButtonMargins;
49
}
50
51
+ myBtnList = new StGLCheckboxTextured(myPanelBottom, myPlugin->params.ToShowPlayList,
52
+ iconTexture(stCString("actionVideoPlaylistOff"), anIconSize),
53
+ iconTexture(stCString("actionVideoPlaylist"), anIconSize),
54
+ (aBottomBarNbRight++) * (-anIconStep) + aRight, aBottom,
55
+ StGLCorner(ST_VCORNER_TOP, ST_HCORNER_RIGHT));
56
+ myBtnList->setDrawShadow(true);
57
+ myBtnList->changeMargins() = aButtonMargins;
58
+
59
myDescr = new StGLDescription(this);
60
61
+ myPlayList = new StGLPlayList(this, thePlayList);
62
+ myPlayList->setCorner(StGLCorner(ST_VCORNER_TOP, ST_HCORNER_RIGHT));
63
+ myPlayList->changeFitMargins().top = scale(110);
64
+ myPlayList->changeFitMargins().bottom = scale(110);
65
+ //myPlayList->changeMargins().bottom = scale(32);
66
+ myPlayList->setOpacity(myPlugin->params.ToShowPlayList->getValue() ? 1.0f : 0.0f, false);
67
+ myPlayList->signals.onOpenItem = stSlot(myPlugin, &StImageViewer::doFileNext);
68
+
69
// create Main menu
70
createMainMenu();
71
}
72
73
StGLMenu* aMenu = new StGLMenu(this, 0, 0, StGLMenu::MENU_VERTICAL);
74
75
const StGLVec3 aBlack(0.0f, 0.0f, 0.0f);
76
- const StGLVec3 aGreen(0.4f, 0.8f, 0.4f);
77
+ const StGLVec3 aGreen(0.0f, 0.6f, 0.4f);
78
const StGLVec3 aRed (1.0f, 0.0f, 0.0f);
79
80
aMenu->addItem(tr(MENU_VIEW_ADJUST_RESET), myPlugin->getAction(StImageViewer::Action_ImageAdjustReset))
81
82
return aMenu;
83
}
84
85
-void StImageViewerGUI::createMobileUI() {
86
+void StImageViewerGUI::createMobileUI(const StHandle<StPlayList>& thePlayList) {
87
createMobileUpperToolbar();
88
createMobileBottomToolbar();
89
90
+ myPlayList = new StGLPlayList(this, thePlayList);
91
+ myPlayList->setCorner(StGLCorner(ST_VCORNER_TOP, ST_HCORNER_RIGHT));
92
+ myPlayList->changeFitMargins().top = scale(56);
93
+ myPlayList->changeFitMargins().bottom = scale(100);
94
+ //myPlayList->changeMargins().bottom = scale(56);
95
+ myPlayList->setOpacity(myPlugin->params.ToShowPlayList->getValue() ? 1.0f : 0.0f, false);
96
+ myPlayList->signals.onOpenItem = stSlot(myPlugin, &StImageViewer::doFileNext);
97
+
98
if(myPlugin->params.ToShowFps->getValue()) {
99
myFpsWidget = new StGLFpsLabel(this);
100
}
101
102
aBtnZoomOut->setDrawShadow(true);
103
aBtnZoomOut->setUserData(StImageViewer::Action_StereoParamsBegin + StGLImageRegion::Action_ScaleOut);
104
aBtnZoomOut->signals.onBtnHold += stSlot(this, &StImageViewerGUI::doAction);
105
+
106
+ myBtnList = new StGLCheckboxTextured(myPanelBottom, myPlugin->params.ToShowPlayList,
107
+ iconTexture(stCString("actionVideoPlaylistOff"), anIconSize),
108
+ iconTexture(stCString("actionVideoPlaylist"), anIconSize),
109
+ (aBtnIter++) * (-anIconStep), 0,
110
+ StGLCorner(ST_VCORNER_TOP, ST_HCORNER_RIGHT));
111
+ myBtnList->setDrawShadow(true);
112
+ myBtnList->changeMargins() = aButtonMargins;
113
}
114
115
void StImageViewerGUI::doOpenFile(const size_t ) {
116
117
118
StGLOpenFile* aDialog = new StGLOpenFile(this, tr(DIALOG_OPEN_FILE), tr(BUTTON_CLOSE));
119
aDialog->setMimeList(myPlugin->myLoader->getMimeList());
120
+#if defined(_WIN32)
121
+ //
122
+#else
123
+ aDialog->addHotItem("/", "Root");
124
+#endif
125
+ aDialog->addHotItem(getResourceManager()->getFolder(StResourceManager::FolderId_SdCard));
126
aDialog->addHotItem(getResourceManager()->getFolder(StResourceManager::FolderId_Downloads));
127
aDialog->addHotItem(getResourceManager()->getFolder(StResourceManager::FolderId_Pictures));
128
+ aDialog->addHotItem(getResourceManager()->getFolder(StResourceManager::FolderId_Photos));
129
aDialog->signals.onFileSelected = stSlot(myPlugin, &StImageViewer::doOpen1FileFromGui);
130
131
if(myPlugin->params.lastFolder.isEmpty()) {
132
133
anItem = aMenu->addItem("Slideshow", myPlugin->getAction(StImageViewer::Action_SlideShow));
134
anItem->setIcon(stCMenuIcon("actionSlideShow"));
135
aMenu->stglInit();
136
+ setFocus(aMenu);
137
}
138
139
StImageViewerGUI::StImageViewerGUI(StImageViewer* thePlugin,
140
StWindow* theWindow,
141
StTranslations* theLangMap,
142
+ const StHandle<StPlayList>& thePlayList,
143
const StHandle<StGLTextureQueue>& theTextureQueue)
144
: StGLRootWidget(thePlugin->myResMgr),
145
myPlugin(thePlugin),
146
147
myImage(NULL),
148
myDescr(NULL),
149
myMsgStack(NULL),
150
+ myPlayList(NULL),
151
//
152
myMenuRoot(NULL),
153
//
154
155
myBtnSwapLR(NULL),
156
myBtnPanorama(NULL),
157
myBtnSrcFrmt(NULL),
158
- myBtnPlayList(NULL),
159
+ myBtnList(NULL),
160
myBtnFull(NULL),
161
//
162
myFpsWidget(NULL),
163
164
myImage->params.ViewMode->signals.onChanged += stSlot(myPlugin, &StImageViewer::doSwitchViewMode);
165
166
if(isMobile()) {
167
- createMobileUI();
168
+ createMobileUI(thePlayList);
169
} else {
170
- createDesktopUI();
171
+ createDesktopUI(thePlayList);
172
}
173
174
myMsgStack = new StGLMsgStack(this, myPlugin->getMessagesQueue());
175
176
}
177
178
void StImageViewerGUI::setVisibility(const StPointD_t& theCursor,
179
- bool isMouseActive,
180
bool toForceHide) {
181
- const bool toShowToolbar = !myIsMinimalGUI
182
- && myPlugin->params.ToShowToolbar->getValue();
183
- const bool hasUpperPanel = toShowToolbar
184
+ const bool toShowPlayList = myPlugin->params.ToShowPlayList->getValue();
185
+ const bool hasMainMenu = myPlugin->params.ToShowMenu->getValue()
186
+ && myMenuRoot != NULL;
187
+ const bool hasUpperPanel = !myIsMinimalGUI
188
+ && myPlugin->params.ToShowTopbar->getValue()
189
&& myPanelUpper != NULL;
190
- const bool hasBottomPanel = toShowToolbar
191
+ const bool hasBottomPanel = !myIsMinimalGUI
192
&& myPanelBottom != NULL;
193
+ const bool isMouseActive = myWindow->isMouseMoved();
194
195
StHandle<StStereoParams> aParams = myImage->getSource();
196
+ const double aStillTime = myVisibilityTimer.getElapsedTime();
197
myIsVisibleGUI = isMouseActive
198
|| aParams.isNull()
199
- || myVisibilityTimer.getElapsedTime() < 2.0
200
+ || aStillTime < 2.0
201
sview-15_10.tar.gz/StImageViewer/StImageViewerGUI.h -> sview-15_11.tar.gz/StImageViewer/StImageViewerGUI.h
Changed
63
1
2
class StGLMsgStack;
3
class StGLFpsLabel;
4
class StGLTable;
5
+class StGLPlayList;
6
+class StPlayList;
7
class StWindow;
8
9
/**
10
11
ST_LOCAL StImageViewerGUI(StImageViewer* thePlugin,
12
StWindow* theWindow,
13
StTranslations* theLangMap,
14
+ const StHandle<StPlayList>& thePlayList,
15
const StHandle<StGLTextureQueue>& theTextureQueue);
16
ST_LOCAL virtual ~StImageViewerGUI();
17
ST_LOCAL virtual void stglUpdate(const StPointD_t& pointZo);
18
19
ST_LOCAL virtual void stglDraw(unsigned int theView);
20
21
ST_LOCAL void setVisibility(const StPointD_t& theCursor,
22
- bool isMouseActive,
23
bool toForceHide);
24
25
public:
26
27
/**
28
* Create normal (desktop) interface.
29
*/
30
- ST_LOCAL void createDesktopUI();
31
+ ST_LOCAL void createDesktopUI(const StHandle<StPlayList>& thePlayList);
32
33
/**
34
* Create upper tool-bar.
35
36
/**
37
* Create mobile interface.
38
*/
39
- ST_LOCAL void createMobileUI();
40
+ ST_LOCAL void createMobileUI(const StHandle<StPlayList>& thePlayList);
41
42
ST_LOCAL void createMobileUpperToolbar();
43
ST_LOCAL void createMobileBottomToolbar();
44
45
StGLImageRegion* myImage; //!< the main image
46
StGLDescription* myDescr; //!< description text shown near mouse cursor
47
StGLMsgStack* myMsgStack; //!< messages stack
48
+ StGLPlayList* myPlayList;
49
50
StGLMenu* myMenuRoot; //!< main menu
51
52
53
StGLTextureButton* myBtnSwapLR;
54
StGLCheckboxTextured* myBtnPanorama;
55
StGLTextureButton* myBtnSrcFrmt;
56
- StGLTextureButton* myBtnPlayList;
57
- StGLTextureButton* myBtnFull;
58
+ StGLTextureButton* myBtnList;
59
+ StGLCheckboxTextured* myBtnFull;
60
StGLFpsLabel* myFpsWidget;
61
62
StGLTable* myHKeysTable;
63
sview-15_10.tar.gz/StImageViewer/lang/chinese/StImageViewer.lng -> sview-15_11.tar.gz/StImageViewer/lang/chinese/StImageViewer.lng
Changed
201
1
2
•# Chinese translation file for StImageViewer program
3
# @author YSC
4
--------
5
-1000="上一图片"
6
-1001="下一图片"
7
-1002="切换左/右"
8
-1003="还原切换左/右"
9
-1004="立体格式:"
10
-1015="打开另一图片"
11
-1028="显示/隐藏播放列表"
12
-1029="切换\n全屏/窗口模式"
13
-1100="文件"
14
-1101="打开图片->>"
15
-1102="另存为->>"
16
-1103="立体格式->>"
17
-1104="图片信息"
18
-1109="退出"
19
-1110="单一立体文件"
20
-1111="左+右文件"
21
-1130="自动侦测"
22
-1131="单画面"
23
-1132="对眼"
24
-1133="平行配对"
25
-1134="上/下 (右/左)"
26
-1135="上/下 (左/右)"
27
-1136="交错"
28
-1137="分色红/青"
29
-1138="分色绿/红+蓝"
30
-1139="分色黄/蓝"
31
-1142="双流"
32
-1200="查看"
33
-1201="立体输出->>"
34
-1202="全屏"
35
-1203="重置"
36
-1204="切换左/右"
37
-1205="显示比例->>"
38
-1206="光滑过滤->>"
39
-1207="图像调节->>"
40
-1208="表面处理->>"
41
-1210="立体"
42
-1211="左画面"
43
-1212="右画面"
44
-1213="平行配对"
45
-1214="对眼"
46
-1250="源格式"
47
-1251="重启维持"
48
-?1252="Heal anamorphic 1080p/720p"
49
-1260="接近"
50
-1261="线状"
51
-1270="重置默认"
52
-1271="亮度"
53
-1272="饱和度"
54
-1273="伽马"
55
-1280="平面"
56
-1281="球面"
57
-1282="圆柱"
58
-?1283="Cubemap"
59
-?1285="Track orientation"
60
-?1286="Track orientation (poor)"
61
-1400="改变设备->>"
62
-1401="关于插件..."
63
-1402="显示 FPS"
64
-1403="同步"
65
-1500="帮助"
66
-1501="关于..."
67
-1502="更新检查->>"
68
-1503="许可"
69
-1504="语言 (Language)"
70
-1506="用户提示"
71
-1508="关于系统"
72
-1509="界面大小->>"
73
-?1510="Hotkeys"
74
-?1511="Settings"
75
-1520="现在"
76
-1521="每天"
77
-1522="每周"
78
-1523="每年"
79
-1524="绝不"
80
-1590="小"
81
-1591="正常"
82
-1592="大"
83
-1593="强制高解析 2X"
84
-2000="选择图片文件打开"
85
-2001="选择左画面图片打开"
86
-2002="选择右画面图片文件打开"
87
-2003="图像信息"
88
-2004="信息未获得"
89
-2005="文件删除"
90
-2006="确定完全移除吗?"
91
-2007="激活解码器:"
92
-2008="确定将元数据保存到文件吗?"
93
-2009="元数据只能保存到JPEG文件."
94
-2010="选择保存快照位置"
95
-2011="什么也没有保存!"
96
-2012="快照不为空!"
97
-?2013="Assign new Hot Key for action\n<i>{0}</i>"
98
-?2014="Conflicts with: <i>{0}</i>"
99
-3000="sView - Image Viewer"
100
-3001="版本"
101
-3002="Image viewer allows you to open stereoscopic images in formats JPEG, PNG, MPO and a lot of others.\n © {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis program is distributed under GPL3.0"
102
-3003="官网www.sview.ru有新版本软件.\n请升级."
103
-3004="系统信息"
104
-4000="关闭"
105
-4001="取消"
106
-4006="保存"
107
-4007="删除"
108
-?4008="Default"
109
-?4009="Defaults"
110
-?4010="Assign"
111
-5000="[左]"
112
-5001="[右]"
113
-5002="文件名字(s)"
114
-5003="视频大小"
115
-5004="装载时间"
116
-5005="ms"
117
-5006="像素比率"
118
-5007="像素格式"
119
-5008="(不存储在元数据)"
120
-5009="(不匹配的元数据)"
121
-5011="(不存储在元数据中,\n但检测到文件名称)"
122
-5100="JPEG 说明"
123
-5101="JPS 说明"
124
-5200="相机生产商"
125
-5201="相机型号"
126
-5202="用户说明"
127
-5203="图像时间戳"
128
-6000="切换\n全屏/窗口模式"
129
-6001="显示 FPS"
130
-6002="立体格式: 自动侦测"
131
-6003="立体格式: 单画面"
132
-6004="立体格式: 上/下"
133
-6005="立体格式: 对眼"
134
-?6006="Show file info"
135
-?6007="Playlist - Go to the first item"
136
-?6008="Playlist - Go to the last item"
137
-6009="播放上一文件"
138
-6010="播放下一文件"
139
-?6011="Playlist - Start/stop slideshow"
140
-6012="另存为 PNG"
141
-6013="另存为 JPEG"
142
-?6014="Save file metadata"
143
-?6015="Delete the file from file system"
144
-?6016="Reset image adjustment"
145
-?6017="Reset image position"
146
-6018="切换左/右"
147
-?6019="Gamma correction - decrease"
148
-?6020="Gamma correction - increase"
149
-?6021="DX separation - decrease"
150
-?6022="DX separation - increase"
151
-?6023="DY separation - decrease"
152
-?6024="DY separation - increase"
153
-?6025="Angular separation - decrease"
154
-?6026="Angular separation - increase"
155
-?6027="Rotate 90 degrees counterclockwise"
156
-?6028="Rotate 90 degrees clockwise"
157
-?6029="Rotate counterclockwise"
158
-?6030="Rotate clockwise"
159
-?6031="Select next view mode"
160
-?6032="Panning - navigate to the left"
161
-?6033="Panning - navigate to the right"
162
-?6034="Panning - navigate to the top"
163
-?6035="Panning - navigate to the bottom"
164
-?6036="Scale - increment"
165
-?6037="Scale - decrement"
166
-?6038="Y Rotation - left"
167
-?6039="Y Rotation - right"
168
-?6040="X Rotation - up"
169
-?6041="X Rotation - down"
170
-?6042="Enable/disable panorama mode"
171
+1000=上一图片
172
+1001=下一图片
173
+1002=切换左/右
174
+1003=还原切换左/右
175
+1004=立体格式:
176
+1015=打开另一图片
177
+1028=显示/隐藏播放列表
178
+1029=切换\n全屏/窗口模式
179
+1100=文件
180
+1101=打开图片
181
+1102=另存为
182
+1103=立体格式
183
+1104=图片信息
184
+1109=退出
185
+1110=单一立体文件
186
+1111=左+右文件
187
+1130=自动侦测
188
+1131=单画面
189
+1132=对眼
190
+1133=平行配对
191
+1134=上/下 (右/左)
192
+1135=上/下 (左/右)
193
+1136=交错
194
+1137=分色红/青
195
+1138=分色绿/红+蓝
196
+1139=分色黄/蓝
197
+1142=双流
198
+1200=查看
199
+1201=立体输出
200
+1202=全屏
201
sview-15_10.tar.gz/StImageViewer/lang/english/StImageViewer.lng -> sview-15_11.tar.gz/StImageViewer/lang/english/StImageViewer.lng
Changed
201
1
2
# English translation file for StImageViewer program
3
# @author Kirill Gavrilov
4
--------
5
-1000="Previous image"
6
-1001="Next image"
7
-1002="Swap Left/Right"
8
-1003="UnSwap Left/Right"
9
-1004="Stereoscopic format:"
10
-1015="Open another image"
11
-1028="Show/Hide playlist"
12
-1029="Switch\nfullscreen/windowed"
13
-1100="Media"
14
-1101="Open Image..."
15
-1102="Save Image As..."
16
-1103="Stereoscopic format"
17
-1104="Image info"
18
-1109="Quit"
19
-1110="From One file"
20
-1111="Left+Right files"
21
-1130="Source"
22
-1131="Mono"
23
-1132="Cross-eyed"
24
-1133="Parallel Pair"
25
-1134="Over/Under (R/L)"
26
-1135="Over/Under (L/R)"
27
-1136="Interlaced"
28
-1137="Anaglyph Red/Cyan"
29
-1138="Anaglyph Green/Red+Blue"
30
-1139="Anaglyph Yellow/Blue"
31
-1142="2 Streams"
32
-1200="View"
33
-1201="Stereo Output"
34
-1202="Fullscreen"
35
-1203="Reset"
36
-1204="Swap Left/Right"
37
-1205="Display Ratio"
38
-1206="Smooth Filter"
39
-1207="Image Adjust"
40
-1208="Panorama"
41
-1210="Stereo"
42
-1211="Left View"
43
-1212="Right View"
44
-1213="Parallel Pair"
45
-1214="Cross-eyed"
46
-1250="Source"
47
-1251="Keep on restart"
48
-1252="Heal anamorphic 1080p/720p"
49
-1260="Nearest"
50
-1261="Linear"
51
-1270="Reset to defaults"
52
-1271="Brightness"
53
-1272="Saturation"
54
-1273="Gamma"
55
-1280="Off"
56
-1281="Sphere"
57
-1282="Cylinder"
58
-1283="Cubemap"
59
-1285="Track orientation"
60
-1286="Track orientation (poor)"
61
-1400="Change device"
62
-1401="About Plugin..."
63
-1402="Show FPS"
64
-1403="VSync"
65
-1500="Help"
66
-1501="About..."
67
-1502="Check for updates"
68
-1503="License text"
69
-1504="Language"
70
-1506="User tips"
71
-1508="About system"
72
-1509="Interface Scale"
73
-1510="Hotkeys"
74
-1511="Settings"
75
-1520="Now"
76
-1521="Each day"
77
-1522="Each week"
78
-1523="Each year"
79
-1524="Never"
80
-1590="Small"
81
-1591="Normal"
82
-1592="Big"
83
-1593="Force HiDPI 2X"
84
-2000="Choose the image file to open"
85
-2001="Choose LEFT image file to open"
86
-2002="Choose RIGHT image file to open"
87
-2003="Image Info"
88
-2004="Information is unavailable"
89
-2005="File deletion"
90
-2006="Do you really want to completely remove this file?"
91
-2007="File metadata saving"
92
-2008="Do you really want to save metadata to the file?"
93
-2009="Metadata can be saved only into JPEG files."
94
-2010="Choose location to save snapshot"
95
-2011="Nothing to save!"
96
-2012="Snapshot not available!"
97
-2013="Assign new Hot Key for action\n<i>{0}</i>"
98
-2014="Conflicts with: <i>{0}</i>"
99
-3000="sView - Image Viewer"
100
-3001="version"
101
-3002="Image viewer allows you to open stereoscopic images in formats JPEG, PNG, MPO and a lot of others.\n © {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis program is distributed under GPL3.0"
102
-3003="A new version of sView is available on the official site www.sview.ru.\nPlease update your program."
103
-3004="System Info"
104
-4000="Close"
105
-4001="Cancel"
106
-4006="Save"
107
-4007="Delete"
108
-4008="Default"
109
-4009="Defaults"
110
-4010="Assign"
111
-5000="[left]"
112
-5001="[right]"
113
-5002="File name"
114
-5003="Dimensions"
115
-5004="Load time"
116
-5005="ms"
117
-5006="Pixel ratio"
118
-5007="Color model"
119
-5008="(does not stored in metadata)"
120
-5009="(does not match metadata)"
121
-5011="(does not stored in metadata,\nbut detected from file name)"
122
-5100="JPEG Comment"
123
-5101="JPS Comment"
124
-5200="Camera Maker"
125
-5201="Camera Model"
126
-5202="User Comment"
127
-5203="Image timestamp"
128
-6000="Switch fullscreen/windowed"
129
-6001="Show/hide FPS meter"
130
-6002="Stereo format - Auto"
131
-6003="Stereo format - Mono"
132
-6004="Stereo format - Over/Under"
133
-6005="Stereo format - Side by side"
134
-6006="Show file info"
135
-6007="Playlist - Go to the first item"
136
-6008="Playlist - Go to the last item"
137
-6009="Playlist - Go to the previous item"
138
-6010="Playlist - Go to the next item"
139
-6011="Playlist - Start/stop slideshow"
140
-6012="Save in PNG format"
141
-6013="Save in JPEG format"
142
-6014="Save file metadata"
143
-6015="Delete the file from file system"
144
-6016="Reset image adjustment"
145
-6017="Reset image position"
146
-6018="Swap Left/Right"
147
-6019="Gamma correction - decrease"
148
-6020="Gamma correction - increase"
149
-6021="DX separation - decrease"
150
-6022="DX separation - increase"
151
-6023="DY separation - decrease"
152
-6024="DY separation - increase"
153
-6025="Angular separation - decrease"
154
-6026="Angular separation - increase"
155
-6027="Rotate 90 degrees counterclockwise"
156
-6028="Rotate 90 degrees clockwise"
157
-6029="Rotate counterclockwise"
158
-6030="Rotate clockwise"
159
-6031="Select next view mode"
160
-6032="Panning - navigate to the left"
161
-6033="Panning - navigate to the right"
162
-6034="Panning - navigate to the top"
163
-6035="Panning - navigate to the bottom"
164
-6036="Scale - increment"
165
-6037="Scale - decrement"
166
-6038="Y Rotation - left"
167
-6039="Y Rotation - right"
168
-6040="X Rotation - up"
169
-6041="X Rotation - down"
170
-6042="Enable/disable panorama mode"
171
+1000=Previous image
172
+1001=Next image
173
+1002=Swap Left/Right
174
+1003=UnSwap Left/Right
175
+1004=Stereoscopic format:
176
+1015=Open another image
177
+1028=Show/Hide playlist
178
+1029=Switch\nfullscreen/windowed
179
+1100=Media
180
+1101=Open Image...
181
+1102=Save Image As...
182
+1103=Stereoscopic format
183
+1104=Image info
184
+1109=Quit
185
+1110=From One file
186
+1111=Left+Right files
187
+1130=Source
188
+1131=Mono
189
+1132=Cross-eyed
190
+1133=Parallel Pair
191
+1134=Over/Under (R/L)
192
+1135=Over/Under (L/R)
193
+1136=Interlaced
194
+1137=Anaglyph Red/Cyan
195
+1138=Anaglyph Green/Red+Blue
196
+1139=Anaglyph Yellow/Blue
197
+1142=2 Streams
198
+1200=View
199
+1201=Stereo Output
200
+1202=Fullscreen
201
sview-15_10.tar.gz/StImageViewer/lang/french/StImageViewer.lng -> sview-15_11.tar.gz/StImageViewer/lang/french/StImageViewer.lng
Changed
201
1
2
•# French translation file for StImageViewer program
3
# @author gramoun for Kirill Gavrilov
4
--------
5
-1000="Image Précédente"
6
-1001="Image Suivante"
7
-1002="Gauche/Droite inversé"
8
-1003="Gauche/Droite normal"
9
-1004="Format entrée:"
10
-1015="Ouvre autre image"
11
-1028="Affiche/Masque playlist"
12
-1029="Bascule\Plein écran/fenêtre"
13
-1100="Média"
14
-1101="Ouvre Image..."
15
-1102="Enregistre Image Sous.."
16
-1103="Format Stéréo d'entrée"
17
-1104="Image info"
18
-1109="Quitter"
19
-1110="Depuis un fichier"
20
-1111="2 Fichiers Gauche+Droit"
21
-1130="Source"
22
-1131="Mono"
23
-1132="Cross-eyed"
24
-1133="Coté/Coté (SbS)"
25
-1134="Dessus/Dessous(D/G)"
26
-1135="Dessus/Dessous(G/D)"
27
-1136="Entrelacé"
28
-1137="Anaglyphe Rouge/Bleu"
29
-1138="Anaglyphe Vert/Magenta"
30
-1139="Anaglyphe Jaune/Bleu"
31
-1142="2 Streams"
32
-1200="Affichage"
33
-1201="Sortie Stéréo"
34
-1202="Plein Ecran"
35
-1203="Réinitialisation"
36
-1204="Inverser Gauche/Droite"
37
-1205="Ratio d'affichage"
38
-1206="Lissage antialiasing"
39
-1207="Réglage de l'image"
40
-1208="Panorama"
41
-1210="Stéréo"
42
-1211="Vue Gauche"
43
-1212="Vue Droite"
44
-1213="Coté/Coté (SbS)"
45
-1214="Cross-eyed"
46
-1250="Source"
47
-1251="Garder après redémarrage"
48
-?1252="Heal anamorphic 1080p/720p"
49
-1260="Plus proche"
50
-1261="Lineaire"
51
-1270="Rétablir par défaut"
52
-1271="Brightness"
53
-1272="Saturation"
54
-1273="Gamma"
55
-1280="Plan"
56
-1281="Sphère"
57
-1282="Cylindre"
58
-1283="Cubemap"
59
-?1285="Track orientation"
60
-?1286="Track orientation (poor)"
61
-1400="Changer la sortie"
62
-1401="A propos du Plugin..."
63
-1402="Voir I/S"
64
-1403="Synchro Vert."
65
-1500="Aide"
66
-1501="A Propos..."
67
-1502="Vérifier nouvelle version"
68
-1503="Texte de la Licence"
69
-1504="Language"
70
-1506="Conseils d'utilisation"
71
-?1508="About system"
72
-?1509="Scale Interface"
73
-1510="Raccourcis"
74
-1511="Paramètres"
75
-1520="Maintenant"
76
-1521="Chaque Jour"
77
-1522="Chaque Mois"
78
-1523="Chaque Année"
79
-1524="Jamais"
80
-1590="Petit"
81
-1591="Normal"
82
-1592="Gros"
83
-1593="Force HiDPI 2X"
84
-2000="Choix du fichier image à ouvrir"
85
-2001="Choix du fichier image Gauche à ouvrir"
86
-2002="Choix du fichier image Droite à ouvrir"
87
-2003="Info de l'image"
88
-2004="L'information est indisponible"
89
-?2005="File deletion"
90
-?2006="Do you really want to completely remove this file?"
91
-?2007="File metadata saving"
92
-?2008="Do you really want to save metadata to the file?"
93
-?2009="Metadata can be saved only into JPEG files."
94
-2010="Emplacement de la capture écran"
95
-2011="Rien à enregistrer!"
96
-2012="Capture non disponible!"
97
-2013="Changement raccourcu clavier pour\n<i>{0}</i>"
98
-?2014="Conflicts with: <i>{0}</i>"
99
-3000="sView - Image Viewer"
100
-3001="version"
101
-3002="Image viewer vous permet d'ouvrir des images stéréoscopiques en formats JPEG, PNG, MPO.\n © {0} Kirill Gavrilov <{1}>\nSite Officiel: {2}\n\nThis program is distributed under GPL3.0"
102
-3003="Une nouvelle version de sView est disponible sur le site officiel www.sview.ru.\nSVP, mettez votre programme à jour."
103
-3004="Informations sur le système"
104
-4000="Fermer"
105
-4001="Annuler"
106
-4006="Enregistre"
107
-4007="Supprimer"
108
-?4008="Default"
109
-?4009="Defaults"
110
-4010="Affecter"
111
-5000="[gauche]"
112
-5001="[droite]"
113
-5002="Nom de fichier"
114
-5003="Résolution"
115
-5004="Temps de démarrage"
116
-5005="ms"
117
-5006="Pixel ratio"
118
-5007="Modèle colorimétrique"
119
-?5008="(does not stored in metadata)"
120
-?5009="(does not match metadata)"
121
-?5011="(does not stored in metadata,\nbut detected from file name)"
122
-5100="JPEG commentaire"
123
-5101="JPS commentaire"
124
-5200="Camera Maker"
125
-5201="Camera Model"
126
-5202="User Comment"
127
-5203="Image timestamp"
128
-6000="Bascule\Plein écran/fenêtre"
129
-6001="Voir I/S"
130
-6002="Format Stéréo d'entrée - Auto-détection"
131
-6003="Format Stéréo d'entrée - Mono"
132
-6004="Format Stéréo d'entrée - Dessus/Dessous"
133
-6005="Format Stéréo d'entrée - Coté/Coté (SbS)"
134
-6006="Afficher les informations sur le fichier"
135
-6007="Playlist - Aller au premier élément"
136
-6008="Playlist - Aller au dernier élément"
137
-6009="Playlist - Aller à l'élément précédent"
138
-6010="Playlist - Aller à l'élément suivant"
139
-6011="Playlist - Lancer / arrêter le diaporama"
140
-6012="Enregistrer au format PNG"
141
-6013="Enregistrer au format JPEG"
142
-6014="Enregistrer les métadonnées d'un fichier"
143
-6015="Supprimer le fichier du système de fichiers"
144
-6016="Réinitialiser réglage de l'image"
145
-6017="Réinitialiser position de l'image"
146
-6018="Inverser Gauche/Droite"
147
-?6019="Gamma correction - decrease"
148
-?6020="Gamma correction - increase"
149
-?6021="DX separation - decrease"
150
-?6022="DX separation - increase"
151
-?6023="DY separation - decrease"
152
-?6024="DY separation - increase"
153
-?6025="Angular separation - decrease"
154
-?6026="Angular separation - increase"
155
-6027="Faire pivoter un objet de 90 degrés vers la gauche"
156
-6028="Faire pivoter un objet de 90 degrés vers la droite"
157
-6029="Sens inverse des aiguilles d’une montre"
158
-6030="Sens des aiguilles d’une montre"
159
-?6031="Select next view mode"
160
-6032="Naviguer vers la gauche"
161
-6033="Naviguer vers la droite"
162
-6034="Naviguer vers le haut"
163
-6035="Naviguer vers le bas"
164
-6036="Zoom"
165
-6037="Dézoomer"
166
-?6038="Y Rotation - left"
167
-?6039="Y Rotation - right"
168
-?6040="X Rotation - up"
169
-?6041="X Rotation - down"
170
-6042="Activer / désactiver le mode panorama"
171
+1000=Image Précédente
172
+1001=Image Suivante
173
+1002=Gauche/Droite inversé
174
+1003=Gauche/Droite normal
175
+1004=Format entrée:
176
+1015=Ouvre autre image
177
+1028=Affiche/Masque playlist
178
+1029=Bascule\Plein écran/fenêtre
179
+1100=Média
180
+1101=Ouvre Image...
181
+1102=Enregistre Image Sous..
182
+1103=Format Stéréo d'entrée
183
+1104=Image info
184
+1109=Quitter
185
+1110=Depuis un fichier
186
+1111=2 Fichiers Gauche+Droit
187
+1130=Source
188
+1131=Mono
189
+1132=Cross-eyed
190
+1133=Coté/Coté (SbS)
191
+1134=Dessus/Dessous(D/G)
192
+1135=Dessus/Dessous(G/D)
193
+1136=Entrelacé
194
+1137=Anaglyphe Rouge/Bleu
195
+1138=Anaglyphe Vert/Magenta
196
+1139=Anaglyphe Jaune/Bleu
197
+1142=2 Streams
198
+1200=Affichage
199
+1201=Sortie Stéréo
200
+1202=Plein Ecran
201
sview-15_10.tar.gz/StImageViewer/lang/german/StImageViewer.lng -> sview-15_11.tar.gz/StImageViewer/lang/german/StImageViewer.lng
Changed
201
1
2
# German translation file for StImageViewer program
3
# @author Kirill Gavrilov
4
--------
5
-1000="Vorheriges Bild"
6
-1001="Nachstes Bild"
7
-1002="L&R Vertauschen An"
8
-1003="L&R Vertauschen Aus"
9
-1004="Quellformat:"
10
-1015="Öffnen anderen Bild"
11
-1028="Anzeigen/ausblenden Wiedergabeliste"
12
-1029="Vollbildmodus/Fenstermodus"
13
-1100="Medien"
14
-1101="Bild öffnen..."
15
-1102="Bild speichern als..."
16
-1103="Quelle Stereo-Format"
17
-1104="Bildinfo"
18
-1109="Beenden"
19
-1110="Einer Datei"
20
-1111="Zwei Dateien"
21
-1130="Quelle"
22
-1131="Mono"
23
-1132="Schielend"
24
-1133="Parallel Pair"
25
-1134="Over/Under (R/L)"
26
-1135="Over/Under (L/R)"
27
-1136="Interlaced"
28
-1137="Anaglyph Rot/Cyan"
29
-1138="Anaglyph Grün/Rot+Blau"
30
-1139="Anaglyph Gelb/Blau"
31
-1142="2 Streams"
32
-1200="Ansicht"
33
-1201="Stereo-Ausgang"
34
-1202="Vollbild"
35
-1203="Zurückstellen"
36
-1204="L&R Vertauschen"
37
-1205="Seitenverhältnis"
38
-1206="Glatte Filter"
39
-1207="Bildeinstellung"
40
-1208="Panorama"
41
-1210="Stereo"
42
-1211="Linke Bild"
43
-1212="Rechte Bild"
44
-1213="Parallel Pair"
45
-1214="Cross-eyed"
46
-1250="Quelle"
47
-1251="Halten beim Neustart"
48
-?1252="Heal anamorphic 1080p/720p"
49
-1260="Nearest"
50
-1261="Linear"
51
-1270="Auf Standardwerte zurücksetzen"
52
-1271="Helligkeit"
53
-1272="Sättigung"
54
-1273="Gamma"
55
-1280="Aus"
56
-1281="Kugel"
57
-1282="Zylinder"
58
-1283="Cubemap"
59
-?1285="Track orientation"
60
-?1286="Track orientation (poor)"
61
-1400="Gerät ändern"
62
-1401="Über Plugin..."
63
-1402="FPS anzeigen"
64
-1403="VSync"
65
-1500="Hilfe"
66
-1501="Über..."
67
-1502="Nach Updates suchen"
68
-1503="Lizenztext"
69
-1504="Language"
70
-1506="Anwendertipps"
71
-1508="Über System"
72
-1509="Maßstab Benutzeroberfläche"
73
-1510="Hotkeys"
74
-1511="Einstellungen"
75
-1520="jetzt"
76
-1521="täglich"
77
-1522="wöchentlich"
78
-1523="jährlich"
79
-1524="nie"
80
-1590="klein"
81
-1591="normal"
82
-1592="groß"
83
-1593="erzwingen HiDPI 2X"
84
-2000="Wählen die Bilddatei zu öffnen"
85
-2001="Wählen die linke Bilddatei zu öffnen"
86
-2002="Wählen die rechte Bilddatei zu öffnen"
87
-2003="Bildinfo"
88
-2004="Information nicht verfügbar"
89
-2005="Löschen von Dateien"
90
-?2006="Do you really want to completely remove this file?"
91
-?2007="File metadata saving"
92
-?2008="Do you really want to save metadata to the file?"
93
-?2009="Metadata can be saved only into JPEG files."
94
-2010="Wählen einen Speicherort für Schnappschuss"
95
-2011="Nichts zu speichern!"
96
-2012="Schnappschuss ist nicht verfügbar!"
97
-2013="Hotkey ändern\n<i>{0}</i>"
98
-2014="Konflikten: <i>{0}</i>"
99
-3000="sView - Image Viewer"
100
-3001="Version"
101
-?3002="Image viewer allows you to open stereoscopic images in formats JPEG, PNG, MPO and a lot of others.\n © {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis program is distributed under GPL3.0"
102
-?3003="A new version of sView is available on the official site www.sview.ru.\nPlease update your program."
103
-3004="System Info"
104
-4000="Schließen"
105
-4001="Abbrechen"
106
-4006="Speichern"
107
-4007="Löschen"
108
-4008="Default"
109
-4009="Defaults"
110
-4010="Zuweisen"
111
-5000="[linke]"
112
-5001="[rechte]"
113
-5002="Dateiname"
114
-5003="Auflösung"
115
-5004="Ladezeit"
116
-5005="ms"
117
-5006="Pixelseitenverhältnis"
118
-5007="Farbmodell"
119
-5008="(nicht in Metadaten gespeichert)"
120
-5009="(keine Metadaten übereinstimmen)"
121
-5011="(nicht in Metadaten gespeichert,\nsondern von Dateinamen detektiert)"
122
-5100="JPEG Kommentar"
123
-5101="JPS Kommentar"
124
-5200="Kamerahersteller"
125
-5201="Kameramodell"
126
-5202="User Kommentar"
127
-5203="Bild-Zeitstempel"
128
-6000="Vollbildmodus/Fenstermodus"
129
-6001="FPS anzeigen"
130
-6002="Stereo-Format - Autoerkennung"
131
-6003="Stereo-Format - Mono"
132
-6004="Stereo-Format - Over/Under"
133
-6005="Stereo-Format - Side by side"
134
-6006="Datei info"
135
-6007="Wiedergabeliste - Zum ersten Element"
136
-6008="Wiedergabeliste - Zum letzten Element"
137
-6009="Wiedergabeliste - Zum vorherigen Element"
138
-6010="Wiedergabeliste - Zum nächsten Element"
139
-6011="Wiedergabeliste - Diashow starten / stoppen"
140
-6012="Speichern im PNG-Format"
141
-6013="Speichern im JPEG-Format"
142
-6014="Datei-Metadaten speichern"
143
-6015="Die Datei löschen aus dem Dateisystem"
144
-6016="Zurücksetzen Bildeinstellung"
145
-6017="Zurücksetzen Bildposition"
146
-6018="L&R Vertauschen"
147
-6019="Gamma-Korrektur - verringern"
148
-6020="Gamma-Korrektur - erhöhen"
149
-6021="DX Trennung - verringern"
150
-6022="DX Trennung - erhöhen"
151
-6023="DY Trennung - verringern"
152
-6024="DY Trennung - erhöhen"
153
-6025="Winkelabstand - verringern"
154
-6026="Winkelabstand - erhöhen"
155
-6027="Um 90 Grad gegen Uhrzeigersinn drehen"
156
-6028="Um 90 Grad im Uhrzeigersinn drehen"
157
-6029="Drehen gegen den Uhrzeigersinn"
158
-6030="Im Uhrzeigersinn drehen"
159
-?6031="Select next view mode"
160
-6032="Navigieren nach links"
161
-6033="Navigieren nach rechts"
162
-6034="Navigieren nach oben"
163
-6035="Navigieren nach unten"
164
-6036="Zoomen"
165
-6037="Herauszoomen"
166
-6038="Y-Drehung - links"
167
-6039="Y-Drehung - rechts"
168
-6040="X-Drehung - nach oben"
169
-6041="X-Drehung - nach unten"
170
-6042="Aktivieren / Deaktivieren der Panorama-Modus"
171
+1000=Vorheriges Bild
172
+1001=Nachstes Bild
173
+1002=L&R Vertauschen An
174
+1003=L&R Vertauschen Aus
175
+1004=Quellformat:
176
+1015=Öffnen anderen Bild
177
+1028=Anzeigen/ausblenden Wiedergabeliste
178
+1029=Vollbildmodus/Fenstermodus
179
+1100=Medien
180
+1101=Bild öffnen...
181
+1102=Bild speichern als...
182
+1103=Quelle Stereo-Format
183
+1104=Bildinfo
184
+1109=Beenden
185
+1110=Einer Datei
186
+1111=Zwei Dateien
187
+1130=Quelle
188
+1131=Mono
189
+1132=Schielend
190
+1133=Parallel Pair
191
+1134=Over/Under (R/L)
192
+1135=Over/Under (L/R)
193
+1136=Interlaced
194
+1137=Anaglyph Rot/Cyan
195
+1138=Anaglyph Grün/Rot+Blau
196
+1139=Anaglyph Gelb/Blau
197
+1142=2 Streams
198
+1200=Ansicht
199
+1201=Stereo-Ausgang
200
+1202=Vollbild
201
sview-15_10.tar.gz/StImageViewer/lang/korean/StImageViewer.lng -> sview-15_11.tar.gz/StImageViewer/lang/korean/StImageViewer.lng
Changed
201
1
2
# @author Kirill Gavrilov
3
# @translator Kwon Daesuk <hyntel@clunix.com>
4
--------
5
-1000="앞 이미지"
6
-1001="다음 이미지"
7
-1002="좌/우 변경"
8
-1003="좌/우 복원"
9
-1004="소스 포맷:"
10
-1015="다른 이미지 열기"
11
-1028="재생 목록 보이기/감추기"
12
-1029="전환\n전체화면/윈도화면"
13
-1100="미디어"
14
-1101="이미지 열기..."
15
-1102="다른 이름으로 저장..."
16
-1103="입력 스테레오 형식"
17
-?1104="Image info"
18
-1109="나가기"
19
-1110="한 파일에서 열기"
20
-1111="좌+우 파일들에서 열기"
21
-1130="자동감지"
22
-1131="모노"
23
-1132="크로스-아이"
24
-1133="패럴렐 페어"
25
-1134="상/하(R/L)"
26
-1135="상/하(L/R)"
27
-?1136="Interlaced"
28
-?1137="Anaglyph Red/Cyan"
29
-?1138="Anaglyph Green/Red+Blue"
30
-?1139="Anaglyph Yellow/Blue"
31
-?1142="2 Streams"
32
-?1200="View"
33
-1201="입체 출력"
34
-1202="전체 화면"
35
-1203="리셋"
36
-1204="좌/우 변경"
37
-1205="화면 비율"
38
-?1206="Smooth Filter"
39
-1207="이미지 보정"
40
-?1208="Panorama"
41
-?1210="Stereo"
42
-?1211="Left View"
43
-?1212="Right View"
44
-1213="패럴렐 페어"
45
-1214="크로스-아이"
46
-?1250="Source"
47
-1251="재시작시 유지"
48
-?1252="Heal anamorphic 1080p/720p"
49
-?1260="Nearest"
50
-?1261="Linear"
51
-1270="기본값으로 리셋"
52
-1271="밝기"
53
-?1272="Saturation"
54
-1273="감마"
55
-?1280="Off"
56
-?1281="Sphere"
57
-?1282="Cylinder"
58
-?1283="Cubemap"
59
-?1285="Track orientation"
60
-?1286="Track orientation (poor)"
61
-1400="장치 변경"
62
-?1401="About Plugin..."
63
-?1402="Show FPS"
64
-?1403="VSync"
65
-1500="도움말"
66
-1501="이 프로그램에 대해..."
67
-1502="업데이트 확인"
68
-1503="라이선스 문서"
69
-1504="언어 (Language)"
70
-1506="사용자 팁"
71
-?1508="About system"
72
-?1509="Interface Scale"
73
-?1510="Hotkeys"
74
-?1511="Settings"
75
-1520="지금"
76
-1521="매일Each day"
77
-1522="매주Each week"
78
-1523="매년Each year"
79
-1524="하지 않음Never"
80
-1590="작게 Small"
81
-1591="보통Normal"
82
-1592="크게 Big"
83
-1593="HiDPI 2X로"
84
-2000="열어볼 이미지 파일 선택"
85
-2001="왼쪽 이미지 선택"
86
-2002="오른쪽 이미지 선택"
87
-2003="Image Info"
88
-2004="Information is unavailable"
89
-2005="File deletion"
90
-2006="Do you really want to completely remove this file?"
91
-2007="File metadata saving"
92
-2008="Do you really want to save metadata to the file?"
93
-2009="Metadata can be saved only into JPEG files."
94
-2010="스냅샷 저장 위치 선택"
95
-2011="저장할 수 없음!"
96
-2012="스냅샷이 없음!"
97
-?2013="Assign new Hot Key for action\n<i>{0}</i>"
98
-?2014="Conflicts with: <i>{0}</i>"
99
-3000="sView - 이미지 뷰어"
100
-3001="version"
101
-3002="이 이미지 뷰어로 JPEG, PNG, MPO 외 다양한 양식의 스테레오 이미지를 볼 수 있습니다.\n © {0} Kirill Gavrilov <{1}>\n 공식 사이트: {2}\n\n이 프로그램은 GPL3.0 하에 배포됩니다."
102
-3003="sView 최신 버전은 공식 사이트 www.sview.ru에서 구할 수 있습니다.\n프로그램을 업데이트하세요."
103
-?3004="System Info"
104
-4000="닫기"
105
-?4001="Cancel"
106
-?4006="Save"
107
-?4007="Delete"
108
-?4008="Default"
109
-?4009="Defaults"
110
-?4010="Assign"
111
-?5000="[left]"
112
-?5001="[right]"
113
-?5002="File name"
114
-?5003="Dimensions"
115
-?5004="Load time"
116
-?5005="ms"
117
-?5006="Pixel ratio"
118
-?5007="Color model"
119
-?5008="(does not stored in metadata)"
120
-?5009="(does not match metadata)"
121
-?5011="(does not stored in metadata,\nbut detected from file name)"
122
-?5100="JPEG Comment"
123
-?5101="JPS Comment"
124
-?5200="Camera Maker"
125
-?5201="Camera Model"
126
-?5202="User Comment"
127
-?5203="Image timestamp"
128
-6000="전환 전체화면/윈도화면"
129
-?6001="Show/hide FPS meter"
130
-6002="입력 스테레오 형식: 자동감지"
131
-6003="입력 스테레오 형식: 모노"
132
-6004="입력 스테레오 형식: 상/하"
133
-6005="입력 스테레오 형식: 크로스-아이"
134
-?6006="Show file info"
135
-?6007="Playlist - Go to the first item"
136
-?6008="Playlist - Go to the last item"
137
-?6009="Playlist - Go to the previous item"
138
-?6010="Playlist - Go to the next item"
139
-?6011="Playlist - Start/stop slideshow"
140
-6012="다른 이름으로 저장 PNG"
141
-6013="다른 이름으로 저장 JPEG"
142
-?6014="Save file metadata"
143
-?6015="Delete the file from file system"
144
-?6016="Reset image adjustment"
145
-?6017="Reset image position"
146
-6018="좌/우 변경"
147
-?6019="Gamma correction - decrease"
148
-?6020="Gamma correction - increase"
149
-?6021="DX separation - decrease"
150
-?6022="DX separation - increase"
151
-?6023="DY separation - decrease"
152
-?6024="DY separation - increase"
153
-?6025="Angular separation - decrease"
154
-?6026="Angular separation - increase"
155
-?6027="Rotate 90 degrees counterclockwise"
156
-?6028="Rotate 90 degrees clockwise"
157
-?6029="Rotate counterclockwise"
158
-?6030="Rotate clockwise"
159
-?6031="Select next view mode"
160
-?6032="Panning - navigate to the left"
161
-?6033="Panning - navigate to the right"
162
-?6034="Panning - navigate to the top"
163
-?6035="Panning - navigate to the bottom"
164
-?6036="Scale - increment"
165
-?6037="Scale - decrement"
166
-?6038="Y Rotation - left"
167
-?6039="Y Rotation - right"
168
-?6040="X Rotation - up"
169
-?6041="X Rotation - down"
170
-?6042="Enable/disable panorama mode"
171
+1000=앞 이미지
172
+1001=다음 이미지
173
+1002=좌/우 변경
174
+1003=좌/우 복원
175
+1004=소스 포맷:
176
+1015=다른 이미지 열기
177
+1028=재생 목록 보이기/감추기
178
+1029=전환\n전체화면/윈도화면
179
+1100=미디어
180
+1101=이미지 열기...
181
+1102=다른 이름으로 저장...
182
+1103=입력 스테레오 형식
183
+?1104=Image info
184
+1109=나가기
185
+1110=한 파일에서 열기
186
+1111=좌+우 파일들에서 열기
187
+1130=자동감지
188
+1131=모노
189
+1132=크로스-아이
190
+1133=패럴렐 페어
191
+1134=상/하(R/L)
192
+1135=상/하(L/R)
193
+?1136=Interlaced
194
+?1137=Anaglyph Red/Cyan
195
+?1138=Anaglyph Green/Red+Blue
196
+?1139=Anaglyph Yellow/Blue
197
+?1142=2 Streams
198
+?1200=View
199
+1201=입체 출력
200
+1202=전체 화면
201
sview-15_10.tar.gz/StImageViewer/lang/russian/StImageViewer.lng -> sview-15_11.tar.gz/StImageViewer/lang/russian/StImageViewer.lng
Changed
201
1
2
# Russian translation file for StImageViewer program
3
# @author Kirill Gavrilov
4
--------
5
-1000="Предыдущая картинка"
6
-1001="Следующая картинка"
7
-1002="Поменять ракурсы местами"
8
-1003="Отключить реверс ракурсов"
9
-1004="Исходный стереоформат:"
10
-1015="Открыть изображение"
11
-1028="Отобразить/Скрыть\nсписок файлов"
12
-1029="Оконный/Полноэкранный\nрежим просмотра"
13
-1100="Медиа"
14
-1101="Открыть изображение..."
15
-1102="Сохранить как..."
16
-1103="Исходный стереоформат"
17
-1104="Информация о файле"
18
-1109="Выход"
19
-1110="Из одного файла"
20
-1111="Левый+Правый файлы"
21
-1130="Исходный"
22
-1131="Моно"
23
-1132="Перекрёстная пара"
24
-1133="Параллельная пара"
25
-1134="Вертикальная пара (П/Л)"
26
-1135="Вертикальная пара (Л/П)"
27
-1136="Чересстрочный"
28
-1137="Анаглиф (Красно-Голубой)"
29
-1138="Анаглиф (Пурпурный)"
30
-1139="Анаглиф (Жёлтый)"
31
-1142="2 потока"
32
-1200="Вид"
33
-1201="Вывод стерео"
34
-1202="Полный экран"
35
-1203="Сбросить"
36
-1204="Реверс ракурсов"
37
-1205="Соотношение сторон"
38
-1206="Сглаживание текстур"
39
-1207="Цветокоррекция"
40
-1208="Панорама"
41
-1210="Стерео"
42
-1211="Левый ракурс"
43
-1212="Правый ракурс"
44
-1213="Параллельная пара"
45
-1214="Перекрёстная пара"
46
-1250="Исходное"
47
-1251="Запомнить"
48
-?1252="Heal anamorphic 1080p/720p"
49
-1260="Nearest"
50
-1261="Linear"
51
-1270="Сбросить настройки"
52
-1271="Яркость"
53
-1272="Насыщенность"
54
-1273="Гамма"
55
-1280="Плоскость"
56
-1281="Сфера"
57
-1282="Цилиндр"
58
-1283="Куб"
59
-1285="Отслеживать ориентацию"
60
-1286="Отслеживать ориентацию (poor)"
61
-1400="Выбрать устройство"
62
-1401="О модуле..."
63
-1402="Отображать FPS"
64
-1403="Верт. синхронизация"
65
-1500="Помощь"
66
-1501="О программе..."
67
-1502="Проверить обновления"
68
-1503="Открыть лицензию"
69
-1504="Language"
70
-1506="Подсказки"
71
-1508="О системе"
72
-1509="Масштаб. интерфейса"
73
-1510="Горячие клавиши"
74
-1511="Настройки"
75
-1520="Сейчас"
76
-1521="Каждый день"
77
-1522="Каждую неделю"
78
-1523="Каждый год"
79
-1524="Никогда"
80
-1590="Мелко"
81
-1591="Нормально"
82
-1592="Крупно"
83
-1593="Форсировать HiDPI 2X"
84
-2000="Выберите картинку"
85
-2001="Выберите файл с ЛЕВЫМ ракурсом"
86
-2002="Выберите файл с ПРАВЫМ ракурсом"
87
-2003="Информация о файле"
88
-2004="Информация не доступна"
89
-2005="Удаление файла"
90
-2006="Вы действительно хотите\n<b>удалить файл</b> минуя корзину?"
91
-2007="Сохранение метаданных"
92
-2008="Вы действительно хотите\nсохранить метаданные в файл?"
93
-2009="Сохранение метаданных доступно только для файлов JPEG."
94
-2010="Выберите путь для сохранения картинки"
95
-2011="Ничего не открыто!"
96
-2012="Изображение недоступно для сохранения!"
97
-2013="Назначить новую комбинацию для\n<i>{0}</i>"
98
-2014="Конфликтует с: <i>{0}</i>"
99
-3000="sView - программа для просмотра изображений"
100
-3001="версия"
101
-3002="Программа отображает стереоскопические изображения в форматах JPEG, PNG, MPO.\n © {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}\n\nПрограмма распространяется на условиях GPL3.0"
102
-3003="Доступно обновление программы.\nВы можете загрузить новую версию с официального сайта www.sview.ru."
103
-3004="Информация о системе"
104
-4000="Закрыть"
105
-4001="Отменить"
106
-4006="Сохранить"
107
-4007="Удалить"
108
-4008="По умолчанию"
109
-4009="Сбросить всё"
110
-4010="Установить"
111
-5000="[левый]"
112
-5001="[правый]"
113
-5002="Имя файла"
114
-5003="Разрешение"
115
-5004="Время загрузки"
116
-5005="мс"
117
-5006="Пропорции пикселя"
118
-5007="Color model"
119
-5008="(информация отсутствует в метаданных)"
120
-5009="(не соответствует метаданным)"
121
-5011="(информация отсутствует в метаданных,\nно была определена по имени файла)"
122
-5100="JPEG комментарий"
123
-5101="JPS комментарий"
124
-5200="Производитель камеры"
125
-5201="Модель камеры"
126
-5202="Комментарий"
127
-5203="Дата создания"
128
-6000="Активирование полноэкранного режима"
129
-6001="Отображение FPS"
130
-6002="Стереоформат - Автоопределение"
131
-6003="Стереоформат - Моно"
132
-6004="Стереоформат - Вертикальная пара"
133
-6005="Стереоформат - Перекрёстная пара"
134
-6006="Информация о файле"
135
-6007="Список файлов - Перейти к первому элементу"
136
-6008="Список файлов - Перейти к последнему элементу"
137
-6009="Список файлов - Перейти к предыдущему элементу"
138
-6010="Список файлов - Перейти к следующему элементу"
139
-6011="Список файлов - Запустить/остановить слайдшоу"
140
-6012="Сохранить в PNG формате"
141
-6013="Сохранить в JPEG формате"
142
-6014="Сохранить в файл метаданные со стереоформатом"
143
-6015="Удалить файл из файловой системы"
144
-6016="Сбросить настройки цвета"
145
-6017="Сбросить позицию картинки"
146
-6018="Реверс ракурсов"
147
-6019="Гамма коррекция - понизить коэффициент"
148
-6020="Гамма коррекция - повысить коэффициент"
149
-6021="DX разделение ракурсов - уменьшить"
150
-6022="DX разделение ракурсов - увеличить"
151
-6023="DY разделение ракурсов - уменьшить"
152
-6024="DY разделение ракурсов - увеличить"
153
-6025="Угловое разделение ракурсов - уменьшить"
154
-6026="Угловое разделение ракурсов - увеличить"
155
-6027="Поворот на 90 градусов против часовой стрелки"
156
-6028="Поворот на 90 градусов по часовой стрелке"
157
-6029="Поворот против часовой стрелки"
158
-6030="Поворот по часовой стрелке"
159
-6031="Выбрать следующий режим"
160
-6032="Паннинг - движение налево"
161
-6033="Паннинг - движение направо"
162
-6034="Паннинг - движение наверх"
163
-6035="Паннинг - движение вниз"
164
-6036="Масштабирование - увеличить"
165
-6037="Масштабирование - уменьшить"
166
-6038="Y наклон - налево"
167
-6039="Y наклон - направо"
168
-6040="X наклон - наверх"
169
-6041="X наклон - вниз"
170
-6042="Включить/выключить панорамный режим"
171
+1000=Предыдущая картинка
172
+1001=Следующая картинка
173
+1002=Поменять ракурсы местами
174
+1003=Отключить реверс ракурсов
175
+1004=Исходный стереоформат:
176
+1015=Открыть изображение
177
+1028=Отобразить/Скрыть\nсписок файлов
178
+1029=Оконный/Полноэкранный\nрежим просмотра
179
+1100=Медиа
180
+1101=Открыть изображение...
181
+1102=Сохранить как...
182
+1103=Исходный стереоформат
183
+1104=Информация о файле
184
+1109=Выход
185
+1110=Из одного файла
186
+1111=Левый+Правый файлы
187
+1130=Исходный
188
+1131=Моно
189
+1132=Перекрёстная пара
190
+1133=Параллельная пара
191
+1134=Вертикальная пара (П/Л)
192
+1135=Вертикальная пара (Л/П)
193
+1136=Чересстрочный
194
+1137=Анаглиф (Красно-Голубой)
195
+1138=Анаглиф (Пурпурный)
196
+1139=Анаглиф (Жёлтый)
197
+1142=2 потока
198
+1200=Вид
199
+1201=Вывод стерео
200
+1202=Полный экран
201
sview-15_10.tar.gz/StMonitorsDump/StMonitorsDump.cbp -> sview-15_11.tar.gz/StMonitorsDump/StMonitorsDump.cbp
Changed
49
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/StMonitorsDump" prefix_auto="1" extension_auto="1" />
7
- <Option working_dir="../bin/$(TARGET_NAME)/" />
8
- <Option object_output="obj/$(TARGET_NAME)/" />
9
- <Option type="1" />
10
- <Option compiler="gcc" />
11
- <Compiler>
12
- <Add option="-O3" />
13
- <Add option="-std=c++0x" />
14
- <Add option="-Wall" />
15
- <Add option="-g" />
16
- <Add option="-mmmx" />
17
- <Add option="-msse" />
18
- <Add option="-DUNICODE" />
19
- <Add option="-D_WIN32_WINNT=0x0500" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add library="gdi32" />
25
- <Add library="user32" />
26
- <Add library="kernel32" />
27
- <Add library="Version" />
28
- <Add library="nvapi" />
29
- </Linker>
30
- </Target>
31
<Target title="WIN_vc_x86">
32
<Option output="../bin/$(TARGET_NAME)/StMonitorsDump" prefix_auto="1" extension_auto="1" />
33
<Option working_dir="../bin/$(TARGET_NAME)/" />
34
35
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /manifest "..\dpiAware.manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";1' />
36
</ExtraCommands>
37
</Target>
38
- <Target title="WIN_vc_x86_DEBUG">
39
+ <Target title="WIN_vc_AMD64_DEBUG">
40
<Option output="../bin/$(TARGET_NAME)/StMonitorsDump" prefix_auto="1" extension_auto="1" />
41
<Option working_dir="../bin/$(TARGET_NAME)/" />
42
<Option object_output="obj/$(TARGET_NAME)/" />
43
<Option type="1" />
44
- <Option compiler="msvc10" />
45
+ <Option compiler="windows_sdk_x86_64" />
46
<Compiler>
47
<Add option="/MDd" />
48
<Add option="/Od" />
49
sview-15_10.tar.gz/StMoviePlayer/StMoviePlayer.cbp -> sview-15_11.tar.gz/StMoviePlayer/StMoviePlayer.cbp
Changed
100
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/libStMoviePlayer" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Option parameters="--in=StMoviePlayer" />
11
- <Option host_application="./sView" />
12
- <Option run_host_application_in_terminal="0" />
13
- <Option createStaticLib="1" />
14
- <Compiler>
15
- <Add option="-O3" />
16
- <Add option="-std=c++0x" />
17
- <Add option="-Wall" />
18
- <Add option="-g" />
19
- <Add option="-shared" />
20
- <Add option="-mmmx" />
21
- <Add option="-msse" />
22
- <Add option="-DUNICODE" />
23
- <Add option="-DST_DEBUG" />
24
- <Add option="-DST_HAVE_STCONFIG" />
25
- </Compiler>
26
- <Linker>
27
- <Add library="opengl32" />
28
- <Add library="OpenAL32" />
29
- <Add library="gdi32" />
30
- <Add library="Comdlg32" />
31
- <Add library="shell32" />
32
- <Add library="Wsock32" />
33
- <Add library="Version" />
34
- </Linker>
35
- <ExtraCommands>
36
- <Add before='cmd /c call ..\copy_res.bat $(TARGET_OUTPUT_DIR) $(TARGET_OUTPUT_BASENAME)' />
37
- </ExtraCommands>
38
- </Target>
39
<Target title="WIN_vc_x86">
40
<Option output="../bin/$(TARGET_NAME)/StMoviePlayer" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
41
<Option working_dir="../bin/$(TARGET_NAME)/" />
42
43
<Add library="Advapi32" />
44
<Add library="Comdlg32" />
45
<Add library="shell32" />
46
+ <Add library="Ole32" />
47
<Add library="Wsock32" />
48
</Linker>
49
<ExtraCommands>
50
51
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";2' />
52
</ExtraCommands>
53
</Target>
54
- <Target title="WIN_vc_x86_DEBUG">
55
+ <Target title="WIN_vc_AMD64_DEBUG">
56
<Option output="../bin/$(TARGET_NAME)/StMoviePlayer" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
57
<Option working_dir="../bin/$(TARGET_NAME)/" />
58
<Option object_output="obj/$(TARGET_NAME)/" />
59
<Option type="3" />
60
- <Option compiler="msvc10" />
61
+ <Option compiler="windows_sdk_x86_64" />
62
<Option parameters="--in=StMoviePlayer" />
63
<Option host_application="./sView" />
64
<Option run_host_application_in_terminal="0" />
65
66
<Add library="Advapi32" />
67
<Add library="Comdlg32" />
68
<Add library="shell32" />
69
+ <Add library="Ole32" />
70
<Add library="Wsock32" />
71
<Add library="Version" />
72
</Linker>
73
74
<Add library="Advapi32" />
75
<Add library="Comdlg32" />
76
<Add library="shell32" />
77
+ <Add library="Ole32" />
78
<Add library="Wsock32" />
79
</Linker>
80
<ExtraCommands>
81
82
<Unit filename="StMoviePlayer.h" />
83
<Unit filename="StMoviePlayer.rc">
84
<Option compilerVar="WINDRES" />
85
- <Option target="WIN_gcc_x86" />
86
<Option target="WIN_vc_x86" />
87
- <Option target="WIN_vc_x86_DEBUG" />
88
+ <Option target="WIN_vc_AMD64_DEBUG" />
89
<Option target="WIN_vc_AMD64" />
90
</Unit>
91
<Unit filename="StMoviePlayerGUI.cpp" />
92
93
<Unit filename="StVideo/StSubtitlesASS.h" />
94
<Unit filename="StVideo/StVideo.cpp" />
95
<Unit filename="StVideo/StVideo.h" />
96
+ <Unit filename="StVideo/StVideoDxva2.cpp" />
97
<Unit filename="StVideo/StVideoQueue.cpp" />
98
<Unit filename="StVideo/StVideoQueue.h" />
99
<Unit filename="StVideo/StVideoTimer.cpp" />
100
sview-15_10.tar.gz/StMoviePlayer/StMoviePlayer.cpp -> sview-15_11.tar.gz/StMoviePlayer/StMoviePlayer.cpp
Changed
201
1
2
#include <StSocket/StCheckUpdates.h>
3
#include <StSettings/StSettings.h>
4
#include <StStrings/StStringStream.h>
5
+#include <StCore/StSearchMonitors.h>
6
7
#include <StGL/StGLContext.h>
8
#include <StGLCore/StGLCore20.h>
9
10
static const char ST_SETTING_WEBUI_ON[] = "webuiOn";
11
static const char ST_SETTING_WEBUI_PORT[] = "webuiPort";
12
static const char ST_SETTING_WEBUI_ERRORS[] = "webuiShowErrors";
13
+ static const char ST_SETTING_WEBUI_CMDPORT[] = "webuiCmdPort";
14
15
static const char ST_ARGUMENT_FILE_LEFT[] = "left";
16
static const char ST_ARGUMENT_FILE_RIGHT[] = "right";
17
18
static const char ST_ARGUMENT_FILE_PAUSE[] = "pause";
19
static const char ST_ARGUMENT_FILE_PAUSED[]= "paused";
20
static const char ST_ARGUMENT_BENCHMARK[] = "benchmark";
21
+ static const char ST_ARGUMENT_SHOW_MENU[] = "toShowMenu";
22
+ static const char ST_ARGUMENT_SHOW_TOPBAR[]= "toShowTopbar";
23
+ static const char ST_ARGUMENT_MONITOR[] = "monitorId";
24
+ static const char ST_ARGUMENT_WINLEFT[] = "windowLeft";
25
+ static const char ST_ARGUMENT_WINTOP[] = "windowTop";
26
+ static const char ST_ARGUMENT_WINWIDTH[] = "windowWidth";
27
+ static const char ST_ARGUMENT_WINHEIGHT[] = "windowHeight";
28
+
29
+#ifdef _WIN32
30
+ inline void stFromLocaleOrUtf8(StString& theStrResult,
31
+ const char* theStrInput) {
32
+ int aWideSize = MultiByteToWideChar(CP_UTF8, MB_ERR_INVALID_CHARS, theStrInput, -1, NULL, 0);
33
+ if(aWideSize == 0) {
34
+ theStrResult.fromLocale(theStrInput);
35
+ return;
36
+ }
37
+
38
+ wchar_t* aWideBuffer = new wchar_t[aWideSize + 1];
39
+ MultiByteToWideChar(CP_UTF8, 0, theStrInput, -1, aWideBuffer, aWideSize);
40
+ aWideBuffer[aWideSize] = L'\0';
41
+ theStrResult.fromUnicode(aWideBuffer);
42
+ delete[] aWideBuffer;
43
+ }
44
+#endif
45
46
}
47
48
49
50
void StALDeviceParam::initList() {
51
myValue = 0;
52
- myDevicesList.clear();
53
+ myDevicesLoc.clear();
54
+ myDevicesUtf.clear();
55
StString aName;
56
if(alcIsExtensionPresent(NULL, "ALC_ENUMERATE_ALL_EXT") != AL_TRUE) {
57
- // ansient OpenAL implementations supports only single device (like from apples)
58
+ // ancient OpenAL implementations (like from apples) support only single device
59
const ALchar* aDefDevice = alcGetString(NULL, ALC_DEFAULT_DEVICE_SPECIFIER);
60
#ifdef _WIN32
61
- aName.fromLocale(aDefDevice);
62
+ stFromLocaleOrUtf8(aName, aDefDevice);
63
#else
64
aName.fromUnicode(aDefDevice);
65
#endif
66
- myDevicesList.add(aName);
67
+ myDevicesUtf.add(aName);
68
+ myDevicesLoc.push_back(std::string(aDefDevice));
69
return;
70
}
71
72
+ const StString THE_ALSOFT_SUFFIX(" on OpenAL Soft");
73
const ALchar* aDevicesNames = alcGetString(NULL, ALC_ALL_DEVICES_SPECIFIER);
74
- while(aDevicesNames && *aDevicesNames) {
75
+ while(aDevicesNames != NULL
76
+ && *aDevicesNames != '\0') {
77
+ std::string aCName(aDevicesNames);
78
#ifdef _WIN32
79
- aName.fromLocale(aDevicesNames);
80
+ stFromLocaleOrUtf8(aName, aDevicesNames);
81
#else
82
aName.fromUnicode(aDevicesNames);
83
#endif
84
- myDevicesList.add(aName);
85
- aDevicesNames += strlen(aDevicesNames) + 1;
86
+ // cut-off redundant suffixes - the names are too long
87
+ if(aName.isEndsWithIgnoreCase(THE_ALSOFT_SUFFIX)) {
88
+ size_t anEnd = aName.getLength() - THE_ALSOFT_SUFFIX.getLength();
89
+ aName = aName.subString(0, anEnd);
90
+ }
91
+
92
+ myDevicesUtf.add(aName);
93
+ myDevicesLoc.push_back(aCName);
94
+ aDevicesNames += aCName.length() + 1;
95
}
96
- if(myDevicesList.isEmpty()) {
97
- myDevicesList.add("None"); // append dummy device
98
+ if(myDevicesUtf.isEmpty()) {
99
+ // append dummy device
100
+ myDevicesUtf.add("None");
101
+ myDevicesLoc.push_back("");
102
}
103
}
104
105
StALDeviceParam::~StALDeviceParam() {}
106
107
int32_t StALDeviceParam::getValueFromName(const StString& theName) {
108
- for(size_t anId = 0; anId < myDevicesList.size(); ++anId) {
109
- if(myDevicesList[anId] == theName) {
110
+ for(size_t anId = 0; anId < myDevicesUtf.size(); ++anId) {
111
+ if(myDevicesUtf[anId] == theName) {
112
return int32_t(anId);
113
}
114
}
115
116
return myValue >= 0;
117
}
118
119
-StString StALDeviceParam::getTitle() const {
120
- if(myDevicesList.isEmpty()) {
121
+StString StALDeviceParam::getUtfTitle() const {
122
+ if(myDevicesUtf.isEmpty()) {
123
return StString();
124
}
125
+
126
int32_t anActive = getValue();
127
- return myDevicesList[(anActive >= 0 && size_t(anActive) < myDevicesList.size()) ? size_t(anActive) : 0];
128
+ return myDevicesUtf[(anActive >= 0 && size_t(anActive) < myDevicesUtf.size()) ? size_t(anActive) : 0];
129
+}
130
+
131
+std::string StALDeviceParam::getCTitle() const {
132
+ if(myDevicesUtf.isEmpty()) {
133
+ return std::string();
134
+ }
135
+
136
+ int32_t anActive = getValue();
137
+ return myDevicesLoc[(anActive >= 0 && size_t(anActive) < myDevicesUtf.size()) ? size_t(anActive) : 0];
138
}
139
140
/**
141
142
params.ToShowPlayList->signals.onChanged = stSlot(this, &StMoviePlayer::doShowPlayList);
143
params.ToTrackHead = new StBoolParamNamed(true, tr(MENU_VIEW_TRACK_HEAD));
144
params.ToShowFps = new StBoolParamNamed(false, tr(MENU_FPS_METER));
145
+ params.ToShowMenu = new StBoolParamNamed(true, "Show main menu");
146
+ params.ToShowTopbar= new StBoolParamNamed(true, "Show top toolbar");
147
params.IsMobileUI = new StBoolParamNamed(StWindow::isMobile(), "Mobile UI");
148
params.IsMobileUI->signals.onChanged = stSlot(this, &StMoviePlayer::doScaleHiDPI);
149
params.IsVSyncOn = new StBoolParam(true);
150
151
params.StartWebUI->changeValues().add(tr(MENU_MEDIA_WEBUI_ONCE));
152
params.StartWebUI->changeValues().add(tr(MENU_MEDIA_WEBUI_ON));
153
params.ToPrintWebErrors = new StBoolParam(true);
154
+ params.IsLocalWebUI = new StBoolParam(false);
155
params.WebUIPort = new StInt32Param(8080);
156
params.audioStream = new StInt32Param(-1);
157
params.audioStream->signals.onChanged = stSlot(this, &StMoviePlayer::doSwitchAudioStream);
158
159
mySettings->saveParam (ST_SETTING_SUBTITLES_PARSER, params.SubtitlesParser);
160
mySettings->saveParam (ST_SETTING_SEARCH_SUBS, params.ToSearchSubs);
161
mySettings->saveInt32 (ST_SETTING_FPSTARGET, params.TargetFps);
162
- mySettings->saveString(ST_SETTING_OPENAL_DEVICE, params.alDevice->getTitle());
163
+ mySettings->saveString(ST_SETTING_OPENAL_DEVICE, params.alDevice->getUtfTitle());
164
mySettings->saveInt32 (ST_SETTING_UPDATES_LAST_CHECK, myLastUpdateDay);
165
mySettings->saveParam (ST_SETTING_UPDATES_INTERVAL, params.checkUpdatesDays);
166
mySettings->saveParam (ST_SETTING_SRCFORMAT, params.srcFormat);
167
168
mySettings->saveParam (ST_SETTING_GPU_DECODING, params.UseGpu);
169
170
mySettings->saveParam (ST_SETTING_WEBUI_ON, params.StartWebUI);
171
- mySettings->saveParam (ST_SETTING_WEBUI_PORT, params.WebUIPort);
172
+ if(!params.IsLocalWebUI->getValue()) {
173
+ mySettings->saveParam (ST_SETTING_WEBUI_PORT, params.WebUIPort);
174
+ }
175
mySettings->saveParam (ST_SETTING_WEBUI_ERRORS, params.ToPrintWebErrors);
176
mySettings->saveParam (ST_SETTING_SAVE_IMG_TYPE, params.SnapshotImgType);
177
mySettings->saveParam (ST_SETTING_EXPERIMENTAL, params.ToShowExtra);
178
179
stMemZero(&aCallbacks, sizeof(aCallbacks));
180
aCallbacks.begin_request = StMoviePlayer::beginRequestHandler;
181
const StString aPort = params.WebUIPort->getValue();
182
- const char* anOptions[] = { "listening_ports", aPort.toCString(), NULL };
183
+
184
+ StString aControlList = "+0.0.0.0/0";
185
+ if(params.IsLocalWebUI->getValue()) {
186
+ aControlList = "-0.0.0.0/0,+127.0.0.0/16";
187
+ }
188
+ const char* anOptions[] = { "listening_ports", aPort.toCString(),
189
+ "access_control_list", aControlList.toCString(),
190
+ NULL };
191
myWebCtx = mg_start(&aCallbacks, this, anOptions);
192
if(myWebCtx == NULL
193
&& params.ToPrintWebErrors->getValue()) {
194
195
196
// load hot-keys
197
if(!isReset) {
198
+ #ifdef ST_HAVE_MONGOOSE
199
+ // handle this argument in advance
200
+ if(!myOpenFileInfo.isNull()) {
201
sview-15_10.tar.gz/StMoviePlayer/StMoviePlayer.h -> sview-15_11.tar.gz/StMoviePlayer/StMoviePlayer.h
Changed
65
1
2
3
#include <StGLWidgets/StGLImageRegion.h>
4
5
+#include <vector>
6
+
7
// forward declarations
8
class StCheckUpdates;
9
class StFileNode;
10
11
ST_LOCAL StALDeviceParam();
12
13
/**
14
- * Desctructor.
15
+ * Destructor.
16
*/
17
- ST_LOCAL ~StALDeviceParam();
18
+ ST_LOCAL virtual ~StALDeviceParam();
19
20
ST_LOCAL void initList();
21
22
23
/**
24
* Returns title for active AL device.
25
*/
26
- ST_LOCAL StString getTitle() const;
27
+ ST_LOCAL StString getUtfTitle() const;
28
+
29
+ /**
30
+ * Returns title for active AL device.
31
+ */
32
+ ST_LOCAL std::string getCTitle() const;
33
34
/**
35
* Return list of available translations.
36
*/
37
ST_LOCAL const StArrayList<StString>& getList() const {
38
- return myDevicesList;
39
+ return myDevicesUtf;
40
}
41
42
private:
43
44
- StArrayList<StString> myDevicesList;
45
+ std::vector<std::string> myDevicesLoc;
46
+ StArrayList<StString> myDevicesUtf;
47
48
};
49
50
51
StHandle<StBoolParam> ToTrackHead; //!< enable/disable head-tracking
52
StHandle<StBoolParam> ToShowPlayList; //!< display playlist
53
StHandle<StBoolParam> ToShowFps; //!< display FPS meter
54
+ StHandle<StBoolParam> ToShowMenu; //!< show main menu
55
+ StHandle<StBoolParam> ToShowTopbar; //!< show topbar
56
StHandle<StBoolParam> IsMobileUI; //!< display mobile interface
57
StHandle<StBoolParam> ToLimitFps; //!< limit CPU usage or not
58
StHandle<StBoolParam> IsVSyncOn; //!< flag to use VSync
59
StHandle<StEnumParam> StartWebUI; //!< to start Web UI or not
60
StHandle<StBoolParam> ToPrintWebErrors; //!< print Web UI starting errors
61
+ StHandle<StBoolParam> IsLocalWebUI; //!< restrict remote access to 127.0.0.0
62
StHandle<StInt32Param> WebUIPort; //!< port to start Web UI
63
StHandle<StInt32Param> audioStream; //!< active Audio stream
64
StHandle<StInt32Param> subtitlesStream; //!< active Subtitles stream
65
sview-15_10.tar.gz/StMoviePlayer/StMoviePlayer.vcxproj -> sview-15_11.tar.gz/StMoviePlayer/StMoviePlayer.vcxproj
Changed
45
1
2
<PreprocessorDefinitions>ST_HAVE_STCONFIG;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
3
</ResourceCompile>
4
<Link>
5
- <AdditionalDependencies>opengl32.lib;OpenAL32.lib;user32.lib;gdi32.lib;Advapi32.lib;Comdlg32.lib;Shell32.lib;avutil.lib;avformat.lib;avcodec.lib;swscale.lib;freetype.lib;libwebp.lib;StGLWidgets.lib;StShared.lib;StCore.lib;StOutAnaglyph.lib;StOutDual.lib;StOutIZ3D.lib;StOutInterlace.lib;StOutPageFlip.lib;StOutDistorted.lib;%(AdditionalDependencies)</AdditionalDependencies>
6
+ <AdditionalDependencies>opengl32.lib;OpenAL32.lib;user32.lib;gdi32.lib;Advapi32.lib;Comdlg32.lib;Shell32.lib;Ole32.lib;avutil.lib;avformat.lib;avcodec.lib;swscale.lib;freetype.lib;libwebp.lib;StGLWidgets.lib;StShared.lib;StCore.lib;StOutAnaglyph.lib;StOutDual.lib;StOutIZ3D.lib;StOutInterlace.lib;StOutPageFlip.lib;StOutDistorted.lib;%(AdditionalDependencies)</AdditionalDependencies>
7
<SuppressStartupBanner>true</SuppressStartupBanner>
8
<AdditionalLibraryDirectories>..\3rdparty\lib\WIN_vc_x86;..\lib\WIN_vc_x86;$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
9
<SubSystem>Windows</SubSystem>
10
11
<PreprocessorDefinitions>ST_HAVE_STCONFIG;_CRT_SECURE_NO_WARNINGS;_DEBUG;ST_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
12
</ResourceCompile>
13
<Link>
14
- <AdditionalDependencies>opengl32.lib;OpenAL32.lib;user32.lib;gdi32.lib;Advapi32.lib;Comdlg32.lib;Shell32.lib;avutil.lib;avformat.lib;avcodec.lib;swscale.lib;freetype.lib;libwebp.lib;StGLWidgets.lib;StShared.lib;StCore.lib;StOutAnaglyph.lib;StOutDual.lib;StOutIZ3D.lib;StOutInterlace.lib;StOutPageFlip.lib;StOutDistorted.lib;%(AdditionalDependencies)</AdditionalDependencies>
15
+ <AdditionalDependencies>opengl32.lib;OpenAL32.lib;user32.lib;gdi32.lib;Advapi32.lib;Comdlg32.lib;Shell32.lib;Ole32.lib;avutil.lib;avformat.lib;avcodec.lib;swscale.lib;freetype.lib;libwebp.lib;StGLWidgets.lib;StShared.lib;StCore.lib;StOutAnaglyph.lib;StOutDual.lib;StOutIZ3D.lib;StOutInterlace.lib;StOutPageFlip.lib;StOutDistorted.lib;%(AdditionalDependencies)</AdditionalDependencies>
16
<SuppressStartupBanner>true</SuppressStartupBanner>
17
<AdditionalLibraryDirectories>..\3rdparty\lib\WIN_vc_x86_DEBUG;..\lib\WIN_vc_x86_DEBUG;$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
18
<GenerateDebugInformation>true</GenerateDebugInformation>
19
20
<PreprocessorDefinitions>ST_HAVE_STCONFIG;_CRT_SECURE_NO_WARNINGS;NDEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
21
</ResourceCompile>
22
<Link>
23
- <AdditionalDependencies>opengl32.lib;OpenAL32.lib;user32.lib;gdi32.lib;Advapi32.lib;Comdlg32.lib;Shell32.lib;avutil.lib;avformat.lib;avcodec.lib;swscale.lib;freetype.lib;libwebp.lib;StGLWidgets.lib;StShared.lib;StCore.lib;StOutAnaglyph.lib;StOutDual.lib;StOutIZ3D.lib;StOutInterlace.lib;StOutPageFlip.lib;StOutDistorted.lib;%(AdditionalDependencies)</AdditionalDependencies>
24
+ <AdditionalDependencies>opengl32.lib;OpenAL32.lib;user32.lib;gdi32.lib;Advapi32.lib;Comdlg32.lib;Shell32.lib;Ole32.lib;avutil.lib;avformat.lib;avcodec.lib;swscale.lib;freetype.lib;libwebp.lib;StGLWidgets.lib;StShared.lib;StCore.lib;StOutAnaglyph.lib;StOutDual.lib;StOutIZ3D.lib;StOutInterlace.lib;StOutPageFlip.lib;StOutDistorted.lib;%(AdditionalDependencies)</AdditionalDependencies>
25
<SuppressStartupBanner>true</SuppressStartupBanner>
26
<AdditionalLibraryDirectories>..\3rdparty\lib\WIN_vc_AMD64;..\lib\WIN_vc_AMD64;$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
27
<SubSystem>Windows</SubSystem>
28
29
<PreprocessorDefinitions>ST_HAVE_STCONFIG;_CRT_SECURE_NO_WARNINGS;_DEBUG;ST_DEBUG;%(PreprocessorDefinitions)</PreprocessorDefinitions>
30
</ResourceCompile>
31
<Link>
32
- <AdditionalDependencies>opengl32.lib;OpenAL32.lib;user32.lib;gdi32.lib;Advapi32.lib;Comdlg32.lib;Shell32.lib;avutil.lib;avformat.lib;avcodec.lib;swscale.lib;freetype.lib;libwebp.lib;StGLWidgets.lib;StShared.lib;StCore.lib;StOutAnaglyph.lib;StOutDual.lib;StOutIZ3D.lib;StOutInterlace.lib;StOutPageFlip.lib;StOutDistorted.lib;%(AdditionalDependencies)</AdditionalDependencies>
33
+ <AdditionalDependencies>opengl32.lib;OpenAL32.lib;user32.lib;gdi32.lib;Advapi32.lib;Comdlg32.lib;Shell32.lib;Ole32.lib;avutil.lib;avformat.lib;avcodec.lib;swscale.lib;freetype.lib;libwebp.lib;StGLWidgets.lib;StShared.lib;StCore.lib;StOutAnaglyph.lib;StOutDual.lib;StOutIZ3D.lib;StOutInterlace.lib;StOutPageFlip.lib;StOutDistorted.lib;%(AdditionalDependencies)</AdditionalDependencies>
34
<SuppressStartupBanner>true</SuppressStartupBanner>
35
<AdditionalLibraryDirectories>..\3rdparty\lib\WIN_vc_AMD64_DEBUG;..\lib\WIN_vc_AMD64_DEBUG;$(OutDir);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
36
<GenerateDebugInformation>true</GenerateDebugInformation>
37
38
<ClCompile Include="StVideo\StSubtitleQueue.cpp" />
39
<ClCompile Include="StVideo\StSubtitlesASS.cpp" />
40
<ClCompile Include="StVideo\StVideo.cpp" />
41
+ <ClCompile Include="StVideo\StVideoDxva2.cpp" />
42
<ClCompile Include="StVideo\StVideoQueue.cpp" />
43
<ClCompile Include="StVideo\StVideoTimer.cpp" />
44
<ClCompile Include="stMongoose.c" />
45
sview-15_10.tar.gz/StMoviePlayer/StMoviePlayer.vcxproj.filters -> sview-15_11.tar.gz/StMoviePlayer/StMoviePlayer.vcxproj.filters
Changed
11
1
2
<ClCompile Include="StVideo\StVideo.cpp">
3
<Filter>Source files</Filter>
4
</ClCompile>
5
+ <ClCompile Include="StVideo\StVideoDxva2.cpp">
6
+ <Filter>Source files</Filter>
7
+ </ClCompile>
8
<ClCompile Include="StVideo\StVideoQueue.cpp">
9
<Filter>Source files</Filter>
10
</ClCompile>
11
sview-15_10.tar.gz/StMoviePlayer/StMoviePlayerGUI.cpp -> sview-15_11.tar.gz/StMoviePlayer/StMoviePlayerGUI.cpp
Changed
201
1
2
static const int DISPL_X_REGION_UPPER = 32;
3
static const int DISPL_X_REGION_BOTTOM = 52;
4
5
- static const StGLVec3 aBlack(0.0f, 0.0f, 0.0f);
6
- static const StGLVec3 aGreen(0.4f, 0.8f, 0.4f);
7
- static const StGLVec3 aRed (1.0f, 0.0f, 0.0f);
8
+ static const StGLVec3 aBlack (0.0f, 0.0f, 0.0f);
9
+ static const StGLVec3 aGreen (0.0f, 0.6f, 0.4f);
10
+ static const StGLVec3 aRed (1.0f, 0.0f, 0.0f);
11
12
}
13
14
15
myBtnInfo->changeMargins() = aButtonMargins;
16
17
StGLTextureButton* aSrcBtn = new StGLTextureButton(myPanelUpper, aLeft + (aBtnIter++) * anIconStep, aTop,
18
- StGLCorner(ST_VCORNER_TOP, ST_HCORNER_LEFT), StFormat_NB);
19
+ StGLCorner(ST_VCORNER_TOP, ST_HCORNER_LEFT), StFormat_NB + 1);
20
aSrcBtn->changeMargins() = aButtonMargins;
21
aSrcBtn->signals.onBtnClick += stSlot(this, &StMoviePlayerGUI::doDisplayStereoFormatCombo);
22
- const StString aSrcTextures[StFormat_NB] = {
23
+ const StString aSrcTextures[StFormat_NB + 1] = {
24
iconTexture(stCString("menuMono"), anIconSize),
25
iconTexture(stCString("menuSbsLR"), anIconSize),
26
iconTexture(stCString("menuSbsRL"), anIconSize),
27
28
iconTexture(stCString("menuRedCyanLR"), anIconSize),
29
iconTexture(stCString("menuGreenMagentaLR"), anIconSize),
30
iconTexture(stCString("menuYellowBlueLR"), anIconSize),
31
- iconTexture(stCString("menuTiledLR"), anIconSize)
32
+ iconTexture(stCString("menuTiledLR"), anIconSize),
33
+ iconTexture(stCString("menuAuto"), anIconSize)
34
};
35
- aSrcBtn->setTexturePath(aSrcTextures, StFormat_NB);
36
+ aSrcBtn->setTexturePath(aSrcTextures, StFormat_NB + 1);
37
aSrcBtn->setDrawShadow(true);
38
myBtnSrcFrmt = aSrcBtn;
39
40
41
#endif
42
43
#ifdef ST_HAVE_MONGOOSE
44
- aMenuMedia->addItem(tr(MENU_MEDIA_WEBUI) + ":" + myPlugin->params.WebUIPort->getValue(), aMenuWebUI);
45
+ StString aWebUiItem = tr(MENU_MEDIA_WEBUI) + ":" + myPlugin->params.WebUIPort->getValue();
46
+ if(myPlugin->params.IsLocalWebUI->getValue()) {
47
+ aWebUiItem += " [CMD]";
48
+ }
49
+ aMenuMedia->addItem(aWebUiItem, aMenuWebUI);
50
#endif
51
aMenuMedia->addItem(tr(MENU_MEDIA_QUIT), myPlugin->getAction(StMoviePlayer::Action_Quit));
52
return aMenuMedia;
53
54
StGLMenu* StMoviePlayerGUI::createWebUIMenu() {
55
StGLMenu* aMenu = new StGLMenu(this, 0, 0, StGLMenu::MENU_VERTICAL);
56
for(size_t anIter = 0; anIter < myPlugin->params.StartWebUI->getValues().size(); ++anIter) {
57
+ if(myPlugin->params.IsLocalWebUI->getValue()
58
+ && anIter == StMoviePlayer::WEBUI_AUTO) {
59
+ continue;
60
+ }
61
aMenu->addItem(myPlugin->params.StartWebUI->getValues()[anIter], myPlugin->params.StartWebUI, (int32_t )anIter);
62
}
63
aMenu->addItem(tr(MENU_MEDIA_WEBUI_SHOW_ERRORS), myPlugin->params.ToPrintWebErrors);
64
65
myBtnOpen->changeMargins() = aButtonMargins;
66
67
StGLTextureButton* aSrcBtn = new StGLTextureButton(myPanelUpper, (aBtnIter++) * myIconStep, 0,
68
- StGLCorner(ST_VCORNER_TOP, ST_HCORNER_LEFT), StFormat_NB);
69
+ StGLCorner(ST_VCORNER_TOP, ST_HCORNER_LEFT), StFormat_NB + 1);
70
aSrcBtn->changeMargins() = aButtonMargins;
71
aSrcBtn->signals.onBtnClick += stSlot(this, &StMoviePlayerGUI::doDisplayStereoFormatCombo);
72
- const StString aSrcTextures[StFormat_NB] = {
73
+ const StString aSrcTextures[StFormat_NB + 1] = {
74
iconTexture(stCString("menuMono"), anIconSize),
75
iconTexture(stCString("menuSbsLR"), anIconSize),
76
iconTexture(stCString("menuSbsRL"), anIconSize),
77
78
iconTexture(stCString("menuRedCyanLR"), anIconSize),
79
iconTexture(stCString("menuGreenMagentaLR"), anIconSize),
80
iconTexture(stCString("menuYellowBlueLR"), anIconSize),
81
- iconTexture(stCString("menuTiledLR"), anIconSize)
82
+ iconTexture(stCString("menuTiledLR"), anIconSize),
83
+ iconTexture(stCString("menuAuto"), anIconSize)
84
};
85
- aSrcBtn->setTexturePath(aSrcTextures, StFormat_NB);
86
+ aSrcBtn->setTexturePath(aSrcTextures, StFormat_NB + 1);
87
aSrcBtn->setDrawShadow(true);
88
myBtnSrcFrmt = aSrcBtn;
89
90
91
92
StGLOpenFile* aDialog = new StGLOpenFile(this, tr(DIALOG_OPEN_FILE), tr(BUTTON_CLOSE));
93
aDialog->setMimeList(myPlugin->myVideo->getMimeListVideo());
94
+#if defined(_WIN32)
95
+ //
96
+#else
97
+ aDialog->addHotItem("/", "Root");
98
+#endif
99
+ aDialog->addHotItem(getResourceManager()->getFolder(StResourceManager::FolderId_SdCard));
100
aDialog->addHotItem(getResourceManager()->getFolder(StResourceManager::FolderId_Downloads));
101
aDialog->addHotItem(getResourceManager()->getFolder(StResourceManager::FolderId_Videos));
102
aDialog->addHotItem(getResourceManager()->getFolder(StResourceManager::FolderId_Music));
103
104
anItem->setIcon(stCMenuIcon("actionSettings"));
105
anItem->signals.onItemClick += stSlot(this, &StMoviePlayerGUI::doMobileSettings);
106
aMenu->stglInit();
107
+ setFocus(aMenu);
108
}
109
110
StMoviePlayerGUI::StMoviePlayerGUI(StMoviePlayer* thePlugin,
111
112
//
113
}
114
115
-void StMoviePlayerGUI::stglUpdate(const StPointD_t& thePointZo,
116
- bool theIsMouseMoved) {
117
+void StMoviePlayerGUI::stglUpdate(const StPointD_t& thePointZo) {
118
if(mySeekBar != NULL
119
&& myPanelBottom != NULL
120
&& myTimeBox->wasResized()) {
121
122
myBtnSubs->getTrackedValue()->setValue(myPlugin->params.subtitlesStream->getValue() != -1);
123
}
124
125
- setVisibility(thePointZo, theIsMouseMoved);
126
+ setVisibility(thePointZo);
127
StGLRootWidget::stglUpdate(thePointZo);
128
if(myVolumeBar != NULL) {
129
char aBuff[128];
130
131
132
}
133
134
-void StMoviePlayerGUI::setVisibility(const StPointD_t& theCursor,
135
- bool theIsMouseMoved) {
136
+void StMoviePlayerGUI::setVisibility(const StPointD_t& theCursor) {
137
const bool toShowPlayList = myPlugin->params.ToShowPlayList->getValue();
138
+ const bool hasMainMenu = myPlugin->params.ToShowMenu->getValue()
139
+ && myMenuRoot != NULL;
140
+ const bool hasUpperPanel = myPlugin->params.ToShowTopbar->getValue()
141
+ && myPanelUpper != NULL;
142
+
143
const int aRootSizeY = getRectPx().height();
144
const bool hasVideo = myPlugin->myVideo->hasVideoStream();
145
+ const bool isMouseActive = myWindow->isMouseMoved();
146
+ const double aStillTime = myVisibilityTimer.getElapsedTime();
147
StHandle<StStereoParams> aParams = myImage->getSource();
148
- myIsVisibleGUI = theIsMouseMoved
149
+ myIsVisibleGUI = !hasVideo
150
+ || isMouseActive
151
|| aParams.isNull()
152
- || myVisibilityTimer.getElapsedTime() < 2.0
153
- || (myPanelUpper != NULL && myPanelUpper ->isPointIn(theCursor))
154
+ || aStillTime < 2.0
155
+ || (hasUpperPanel && myPanelUpper->isPointIn(theCursor))
156
|| (myPanelBottom != NULL && int(aRootSizeY * theCursor.y()) > (aRootSizeY - 2 * myPanelBottom->getRectPx().height())
157
&& theCursor.y() < 1.0)
158
|| (mySeekBar != NULL && mySeekBar ->isPointIn(theCursor))
159
|| (myPlayList != NULL && toShowPlayList && myPlayList->isPointIn(theCursor))
160
- || (myMenuRoot != NULL && myMenuRoot->isActive());
161
+ || (hasMainMenu && myMenuRoot->isActive());
162
if(!myIsVisibleGUI
163
&& myBtnPlay != NULL
164
&& myBtnPlay->getFaceId() == 0
165
166
myIsVisibleGUI = true;
167
}
168
const float anOpacity = (float )myVisLerp.perform(myIsVisibleGUI, false);
169
- if(theIsMouseMoved) {
170
+ if(isMouseActive) {
171
myVisibilityTimer.restart();
172
}
173
174
if(myMenuRoot != NULL) {
175
- myMenuRoot->setOpacity(anOpacity, false);
176
+ myMenuRoot->setOpacity(hasMainMenu ? anOpacity : 0.0f, false);
177
+ }
178
+ if(myPanelUpper != NULL) {
179
+ myPanelUpper->setOpacity(hasUpperPanel ? anOpacity : 0.0f, true);
180
}
181
if(mySeekBar != NULL) {
182
mySeekBar->setOpacity(anOpacity, false);
183
}
184
- if(myPanelUpper != NULL) {
185
- myPanelUpper->setOpacity(anOpacity, true);
186
- }
187
if(myPanelBottom != NULL) {
188
myPanelBottom->setOpacity(anOpacity, true);
189
}
190
191
myPlayList->setOpacity(anOpacity, true);
192
}
193
194
+ const StPlayList::CurrentPosition aCurrPos = myPlugin->myVideo->getPlayList().getCurrentPosition();
195
+ if(myBtnPrev != NULL) {
196
+ myBtnPrev->setOpacityScale(aCurrPos == StPlayList::CurrentPosition_Middle
197
+ || aCurrPos == StPlayList::CurrentPosition_Last ? 1.0f : 0.5f);
198
+ }
199
+ if(myBtnNext != NULL) {
200
+ myBtnNext->setOpacityScale(aCurrPos == StPlayList::CurrentPosition_Middle
201
sview-15_10.tar.gz/StMoviePlayer/StMoviePlayerGUI.h -> sview-15_11.tar.gz/StMoviePlayer/StMoviePlayerGUI.h
Changed
14
1
2
ST_LOCAL virtual void stglDraw(unsigned int theView);
3
4
using StGLRootWidget::stglUpdate;
5
- ST_LOCAL void stglUpdate(const StPointD_t& thePointZo,
6
- bool theIsMouseMoved);
7
- ST_LOCAL void setVisibility(const StPointD_t& theCursor,
8
- bool theIsMouseMoved);
9
+ ST_LOCAL void stglUpdate(const StPointD_t& thePointZo);
10
+ ST_LOCAL void setVisibility(const StPointD_t& theCursor);
11
12
public:
13
14
sview-15_10.tar.gz/StMoviePlayer/StVideo/StALContext.cpp -> sview-15_11.tar.gz/StMoviePlayer/StVideo/StALContext.cpp
Changed
23
1
2
return extList;
3
}
4
5
-bool StALContext::create(const StString& theDeviceName) {
6
- if(theDeviceName.isEmpty()) {
7
+bool StALContext::create(const std::string& theDeviceName) {
8
+ if(theDeviceName.empty()) {
9
// open default device
10
hDevice = alcOpenDevice(NULL);
11
} else {
12
- #if defined(_WIN32)
13
- char aBuffer[ST_MAX_PATH];
14
- theDeviceName.toLocale(aBuffer, ST_MAX_PATH);
15
- hDevice = alcOpenDevice(aBuffer);
16
- #else
17
- hDevice = alcOpenDevice(theDeviceName.toCString());
18
- #endif
19
+ hDevice = alcOpenDevice(theDeviceName.c_str());
20
}
21
if(hDevice == NULL) {
22
return false;
23
sview-15_10.tar.gz/StMoviePlayer/StVideo/StALContext.h -> sview-15_11.tar.gz/StMoviePlayer/StVideo/StALContext.h
Changed
17
1
2
/**
3
- * Copyright © 2009-2013 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* StMoviePlayer program is free software: you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
9
/**
10
* Creates the AL device with specified name.
11
*/
12
- ST_CPPEXPORT bool create(const StString& theDeviceName = StString());
13
+ ST_CPPEXPORT bool create(const std::string& theDeviceName);
14
15
/**
16
* Release the AL device.
17
sview-15_10.tar.gz/StMoviePlayer/StVideo/StAVPacketQueue.cpp -> sview-15_11.tar.gz/StMoviePlayer/StVideo/StAVPacketQueue.cpp
Changed
43
1
2
#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 0, 0))
3
myGetBuffInit = myCodecCtx->get_buffer2;
4
#endif
5
-#if(LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(54, 2, 100))
6
- myIsAttachedPic = myStream != NULL
7
- && (myStream->disposition & AV_DISPOSITION_ATTACHED_PIC) != 0;
8
-#endif
9
+ myIsAttachedPic = stAV::isAttachedPicture(myStream);
10
return true;
11
}
12
13
14
myIsAttachedPic = false;
15
}
16
17
-void StAVPacketQueue::fillCodecInfo(AVCodec* theCodec) {
18
+void StAVPacketQueue::fillCodecInfo(const AVCodec* theCodec,
19
+ const StString& theDescExtra) {
20
StMutexAuto aLock(myMutexInfo);
21
if(theCodec == NULL) {
22
myCodecName.clear();
23
24
myCodecStr.clear();
25
} else {
26
myCodecName = theCodec->name;
27
- myCodecDesc = theCodec->long_name;
28
+ myCodecDesc = theCodec->long_name + theDescExtra;
29
myCodecStr = StString("[") + myCodecName + stCString("] ") + myCodecDesc;
30
}
31
}
32
33
myIsPlaying = false;
34
break;
35
}
36
+ case ST_PLAYEVENT_NEXT:
37
+ case ST_PLAYEVENT_NONE: {
38
+ break;
39
+ }
40
}
41
myPlayEvent = theEventId;
42
myEventMutex.unlock();
43
sview-15_10.tar.gz/StMoviePlayer/StVideo/StAVPacketQueue.h -> sview-15_11.tar.gz/StMoviePlayer/StVideo/StAVPacketQueue.h
Changed
11
1
2
/**
3
* Update codec description.
4
*/
5
- ST_LOCAL void fillCodecInfo(AVCodec* theCodec);
6
+ ST_LOCAL void fillCodecInfo(const AVCodec* theCodec,
7
+ const StString& theDescExtra = "");
8
9
/**
10
* Get codec description.
11
sview-15_10.tar.gz/StMoviePlayer/StVideo/StAudioQueue.cpp -> sview-15_11.tar.gz/StMoviePlayer/StVideo/StAudioQueue.cpp
Changed
46
1
2
}
3
4
bool StAudioQueue::stalInit() {
5
- StHandle<StString> aDevName = myAlDeviceName;
6
- if(!myAlCtx.create(*aDevName)) {
7
- if(!myAlCtx.create()) {
8
+ std::string aDevName;
9
+ {
10
+ StMutexAuto aLock(mySwitchMutex);
11
+ aDevName = myAlDeviceName;
12
+ }
13
+ if(!myAlCtx.create(aDevName)) {
14
+ if(aDevName.empty()
15
+ || !myAlCtx.create("")) {
16
// retry with default device
17
return false;
18
}
19
20
return SV_THREAD_RETURN 0;
21
}
22
23
-StAudioQueue::StAudioQueue(const StString& theAlDeviceName)
24
+StAudioQueue::StAudioQueue(const std::string& theAlDeviceName)
25
: StAVPacketQueue(512),
26
myPlaybackTimer(false),
27
myDowntimeEvent(true),
28
29
myIsAlValid(ST_AL_INIT_NA),
30
myToSwitchDev(false),
31
myIsDisconnected(false),
32
- myAlDeviceName(new StString(theAlDeviceName)),
33
+ myAlDeviceName(theAlDeviceName),
34
myAlFormat(AL_FORMAT_STEREO16),
35
myPrevFormat(AL_FORMAT_STEREO16),
36
myPrevFrequency(0),
37
38
return true;
39
}
40
41
- myAlDeviceName = new StString();
42
+ myAlDeviceName.clear();
43
stalDeinit(); // release OpenAL context
44
myIsAlValid = (stalInit() ? ST_AL_INIT_OK : ST_AL_INIT_KO);
45
myIsDisconnected = true;
46
sview-15_10.tar.gz/StMoviePlayer/StVideo/StAudioQueue.h -> sview-15_11.tar.gz/StMoviePlayer/StVideo/StAudioQueue.h
Changed
37
1
2
3
public: //! @name public API
4
5
- ST_LOCAL StAudioQueue(const StString& theAlDeviceName);
6
+ ST_LOCAL StAudioQueue(const std::string& theAlDeviceName);
7
ST_LOCAL virtual ~StAudioQueue();
8
9
ST_LOCAL bool isInDowntime() {
10
11
/**
12
* Switch audio device.
13
*/
14
- ST_LOCAL void switchAudioDevice(const StString& theAlDeviceName) {
15
- myAlDeviceName = new StString(theAlDeviceName);
16
+ ST_LOCAL void switchAudioDevice(const std::string& theAlDeviceName) {
17
+ StMutexAuto aLock(mySwitchMutex);
18
+ myAlDeviceName = theAlDeviceName;
19
myToSwitchDev = true;
20
}
21
22
23
StPCMBuffer myBufferOut; //!< output PCM audio buffer
24
StTimer myLimitTimer;
25
volatile IState_t myIsAlValid; //!< OpenAL initialization state
26
+ StMutex mySwitchMutex; //!< switch audio device lock
27
volatile bool myToSwitchDev; //!< switch audio device flag
28
volatile bool myIsDisconnected;//!< audio device disconnection flag
29
30
private: //! @name OpenAL items
31
32
- StHandle<StString> myAlDeviceName; //!< Output audio device name for OpenAL context initialization
33
+ std::string myAlDeviceName; //!< Output audio device name for OpenAL context initialization
34
StALContext myAlCtx; //!< OpenAL context
35
ALuint myAlBuffers[NUM_AL_SOURCES][NUM_AL_BUFFERS]; //!< audio buffers
36
ALuint myAlSources[NUM_AL_SOURCES]; //!< audio sources
37
sview-15_10.tar.gz/StMoviePlayer/StVideo/StVideo.cpp -> sview-15_11.tar.gz/StMoviePlayer/StVideo/StVideo.cpp
Changed
67
1
2
3
const char* StVideo::ST_VIDEOS_MIME_STRING = ST_VIDEO_PLUGIN_MIME_CHAR;
4
5
-StVideo::StVideo(const StString& theALDeviceName,
6
+StVideo::StVideo(const std::string& theALDeviceName,
7
const StHandle<StTranslations>& theLangMap,
8
const StHandle<StPlayList>& thePlayList,
9
const StHandle<StGLTextureQueue>& theTextureQueue,
10
11
myFileInfoTmp->Info.add(StArgument(tr(INFO_DURATION),
12
StFormatTime::formatSeconds(theInfo.Duration)));
13
}
14
- } else if(!myVideoSlave->isInitialized()) {
15
+ } else if(!myVideoSlave->isInitialized()
16
+ && !stAV::isAttachedPicture(aStream)) {
17
myVideoSlave->init(aFormatCtx, aStreamId, "");
18
if(myVideoSlave->isInitialized()) {
19
mySlaveCtx = aFormatCtx;
20
21
const bool toSeekBack) {
22
const int aFlags = toSeekBack ? AVSEEK_FLAG_BACKWARD : 0;
23
AVStream* aStream = theFormatCtx->streams[theStreamId];
24
-#if(LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(54, 2, 100))
25
- if((aStream->disposition & AV_DISPOSITION_ATTACHED_PIC) != 0) {
26
+ if(stAV::isAttachedPicture(aStream)) {
27
return false;
28
}
29
-#endif
30
31
int64_t aSeekTarget = stAV::secondsToUnits(aStream, theSeekPts + stAV::unitsToSeconds(aStream, aStream->start_time));
32
bool isSeekDone = av_seek_frame(theFormatCtx, theStreamId, aSeekTarget, aFlags) >= 0;
33
34
const bool toUseGpu = params.UseGpu->getValue();
35
const bool toDecodeSlave = myVideoMaster->getStereoFormatByUser() == StFormat_AUTO
36
&& mySlaveStream >= 0;
37
+ // keep failed flag
38
+ const bool isGpuFailed = myVideoMaster->isGpuFailed()
39
+ || (myVideoSlave->isInitialized() && myVideoSlave->isGpuFailed());
40
if(toUseGpu != myVideoMaster->toUseGpu()
41
|| toDecodeSlave != myVideoSlave->isInitialized()) {
42
- myVideoMaster->setUseGpu(toUseGpu);
43
- myVideoSlave ->setUseGpu(toUseGpu);
44
doFlush();
45
if(myVideoMaster->isInitialized()) {
46
const StString aFileNameMaster = myVideoMaster->getFileName();
47
48
if(myVideoSlave->isInitialized()) {
49
myVideoSlave->deinit();
50
}
51
+
52
+ myVideoMaster->setUseGpu(toUseGpu, isGpuFailed);
53
+ myVideoSlave ->setUseGpu(toUseGpu, isGpuFailed);
54
myVideoMaster->init(aCtxMaster, aStreamIdMaster, aFileNameMaster);
55
myVideoMaster->setSlave(NULL);
56
if(toDecodeSlave) {
57
58
if(toDecodeSlave) {
59
myVideoSlave->pushStart();
60
}
61
+ } else {
62
+ myVideoMaster->setUseGpu(toUseGpu);
63
+ myVideoSlave ->setUseGpu(toUseGpu);
64
}
65
}
66
}
67
sview-15_10.tar.gz/StMoviePlayer/StVideo/StVideo.h -> sview-15_11.tar.gz/StMoviePlayer/StVideo/StVideo.h
Changed
26
1
2
/**
3
- * Copyright © 2007-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* StMoviePlayer program is free software: you can redistribute it and/or modify
7
* it under the terms of the GNU General Public License as published by
8
9
/**
10
* Main constructor.
11
*/
12
- ST_LOCAL StVideo(const StString& theALDeviceName,
13
+ ST_LOCAL StVideo(const std::string& theALDeviceName,
14
const StHandle<StTranslations>& theLangMap,
15
const StHandle<StPlayList>& thePlayList,
16
const StHandle<StGLTextureQueue>& theTextureQueue,
17
18
/**
19
* Switch audio device.
20
*/
21
- ST_LOCAL void switchAudioDevice(const StString& theAlDeviceName) {
22
+ ST_LOCAL void switchAudioDevice(const std::string& theAlDeviceName) {
23
myAudio->switchAudioDevice(theAlDeviceName);
24
}
25
26
sview-15_11.tar.gz/StMoviePlayer/StVideo/StVideoDxva2.cpp
Added
201
1
2
+/**
3
+ * Copyright © 2015 Kirill Gavrilov <kirill@sview.ru>
4
+ *
5
+ * StMoviePlayer program is free software: you can redistribute it and/or modify
6
+ * it under the terms of the GNU General Public License as published by
7
+ * the Free Software Foundation, either version 3 of the License, or
8
+ * (at your option) any later version.
9
+ *
10
+ * StMoviePlayer program is distributed in the hope that it will be useful,
11
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
+ * See the GNU General Public License for more details.
14
+ *
15
+ * You should have received a copy of the GNU General Public
16
+ * License along with this program.
17
+ * If not, see <http://www.gnu.org/licenses/>.
18
+ */
19
+
20
+#include "StVideoQueue.h"
21
+
22
+#if defined(_WIN32)
23
+
24
+#include <StAV/StAVPacket.h>
25
+#include <StAV/StAVFrame.h>
26
+#include <StAV/StAVBufferPool.h>
27
+#include <StLibrary.h>
28
+
29
+#include <vector>
30
+
31
+#ifdef _MSC_VER
32
+ // nonstandard extension used : nameless struct/union
33
+ #pragma warning(disable : 4201)
34
+#endif
35
+
36
+#include <d3d9.h>
37
+#include <dxva2api.h>
38
+
39
+#ifdef _MSC_VER
40
+ #pragma warning(default : 4201)
41
+#endif
42
+
43
+extern "C" {
44
+
45
+ #include <libavcodec/dxva2.h>
46
+ #include <libavutil/buffer.h>
47
+ #include <libavutil/imgutils.h>
48
+
49
+};
50
+
51
+// define all the GUIDs used directly here,
52
+// to avoid problems with inconsistent dxva2api.h versions in mingw-w64 and different MSVC version
53
+#include <initguid.h>
54
+
55
+DEFINE_GUID(IID_IDirectXVideoDecoderService, 0xfc51a551,0xd5e7,0x11d9,0xaf,0x55,0x00,0x05,0x4e,0x43,0xff,0x02);
56
+
57
+DEFINE_GUID(DXVA2_ModeMPEG2_VLD, 0xee27417f, 0x5e28,0x4e65,0xbe,0xea,0x1d,0x26,0xb5,0x08,0xad,0xc9);
58
+DEFINE_GUID(DXVA2_ModeMPEG2and1_VLD, 0x86695f12, 0x340e,0x4f04,0x9f,0xd3,0x92,0x53,0xdd,0x32,0x74,0x60);
59
+DEFINE_GUID(DXVA2_ModeH264_E, 0x1b81be68, 0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
60
+DEFINE_GUID(DXVA2_ModeH264_F, 0x1b81be69, 0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
61
+DEFINE_GUID(DXVADDI_Intel_ModeH264_E, 0x604F8E68, 0x4951,0x4C54,0x88,0xFE,0xAB,0xD2,0x5C,0x15,0xB3,0xD6);
62
+DEFINE_GUID(DXVA2_ModeVC1_D, 0x1b81beA3, 0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
63
+DEFINE_GUID(DXVA2_ModeVC1_D2010, 0x1b81beA4, 0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
64
+DEFINE_GUID(DXVA2_ModeHEVC_VLD_Main, 0x5b11d51b, 0x2f4c,0x4452,0xbc,0xc3,0x09,0xf2,0xa1,0x16,0x0c,0xc0);
65
+DEFINE_GUID(DXVA2_NoEncrypt, 0x1b81beD0, 0xa0c7,0x11d3,0xb9,0x84,0x00,0xc0,0x4f,0x2e,0x73,0xc5);
66
+DEFINE_GUID(GUID_NULL, 0x00000000, 0x0000,0x0000,0x00,0x00,0x00,0x00,0x00,0x00,0x00,0x00);
67
+
68
+struct StDxva2Mode {
69
+ const GUID* guid;
70
+ AVCodecID codec;
71
+
72
+ StDxva2Mode(const GUID& theGuid,
73
+ const AVCodecID theCodec)
74
+ : guid(&theGuid),
75
+ codec(theCodec) {}
76
+};
77
+
78
+struct StDxva2SurfaceInfo {
79
+ int used;
80
+ uint64_t age;
81
+};
82
+
83
+/**
84
+ * DXVA2 HWAccel context.
85
+ */
86
+class StDxva2Context : public StHWAccelContext {
87
+
88
+ public:
89
+
90
+ /**
91
+ * Empty constructor.
92
+ */
93
+ StDxva2Context()
94
+ : myDeviceHandle(INVALID_HANDLE_VALUE),
95
+ myD3d9(NULL),
96
+ myD3d9Device(NULL),
97
+ myD3d9DevMgr(NULL),
98
+ myDecoderService(NULL),
99
+ myDxvaDecoder(NULL),
100
+ myDecoderGuid(GUID_NULL),
101
+ myD3dSurfaces(NULL),
102
+ mySurfInfos(NULL),
103
+ myNbSurfaces(0),
104
+ mySurfaceAge(0),
105
+ myFrameTmp(NULL) {
106
+ myD3dLib .loadSimple("d3d9.dll");
107
+ myDxva2Lib.loadSimple("dxva2.dll");
108
+ }
109
+
110
+ /**
111
+ * Destructor.
112
+ */
113
+ virtual ~StDxva2Context() {
114
+ release();
115
+ }
116
+
117
+ /**
118
+ * Release context.
119
+ */
120
+ void release();
121
+
122
+ /**
123
+ * Return true if DXVA2 has been successfully initialized.
124
+ */
125
+ virtual bool isValid() const { return myDeviceHandle != INVALID_HANDLE_VALUE; }
126
+
127
+ /**
128
+ * Create context.
129
+ */
130
+ virtual bool create(StVideoQueue& theVideo);
131
+
132
+ /**
133
+ * Destroy decoder.
134
+ */
135
+ virtual void decoderDestroy() {
136
+ myPoolsTmp[0].release();
137
+ myPoolsTmp[1].release();
138
+ myPoolsTmp[2].release();
139
+
140
+ if(myD3dSurfaces != NULL) {
141
+ for(uint32_t aSurfIter = 0; aSurfIter < myNbSurfaces; ++aSurfIter) {
142
+ if(myD3dSurfaces[aSurfIter] != NULL) {
143
+ myD3dSurfaces[aSurfIter]->Release();
144
+ }
145
+ }
146
+ }
147
+ av_freep(&myD3dSurfaces);
148
+ av_freep(&mySurfInfos);
149
+ myNbSurfaces = 0;
150
+ mySurfaceAge = 0;
151
+
152
+ if(myDxvaDecoder != NULL) {
153
+ myDxvaDecoder->Release();
154
+ myDxvaDecoder = NULL;
155
+ }
156
+ }
157
+
158
+ /**
159
+ * Create decoder.
160
+ */
161
+ virtual bool decoderCreate(StVideoQueue& theVideo,
162
+ AVCodecContext* theCodecCtx);
163
+
164
+ /**
165
+ * AVFrame initialization callback.
166
+ */
167
+ virtual int getFrameBuffer(StVideoQueue& theVideo,
168
+ AVFrame* theFrame);
169
+
170
+ /**
171
+ * Fetch decoded results into specified frame.
172
+ */
173
+ virtual bool retrieveFrame(StVideoQueue& theVideo,
174
+ AVFrame* theFrame);
175
+
176
+ private:
177
+
178
+ struct StDxva2SurfaceWrapper {
179
+ StDxva2Context* ctx;
180
+ LPDIRECT3DSURFACE9 surface;
181
+ IDirectXVideoDecoder* decoder;
182
+ };
183
+
184
+ /**
185
+ * Buffer release callback.
186
+ */
187
+ static void stReleaseBufferDxva2(void* theOpaque,
188
+ uint8_t* theData) {
189
+ (void )theData;
190
+ StDxva2SurfaceWrapper* aWrapper = (StDxva2SurfaceWrapper* )theOpaque;
191
+ StDxva2Context* aDxvaCtx = aWrapper->ctx;
192
+ for(uint32_t aSurfIter = 0; aSurfIter < aDxvaCtx->myNbSurfaces; ++aSurfIter) {
193
+ if(aDxvaCtx->myD3dSurfaces[aSurfIter] == aWrapper->surface) {
194
+ aDxvaCtx->mySurfInfos[aSurfIter].used = 0;
195
+ break;
196
+ }
197
+ }
198
+ aWrapper->surface->Release();
199
+ aWrapper->decoder->Release();
200
+ av_free(aWrapper);
201
sview-15_10.tar.gz/StMoviePlayer/StVideo/StVideoQueue.cpp -> sview-15_11.tar.gz/StMoviePlayer/StVideo/StVideoQueue.cpp
Changed
201
1
2
}
3
#endif
4
5
-#ifdef ST_AV_OLDSYNC
6
+#if(LIBAVCODEC_VERSION_INT < AV_VERSION_INT(55, 0, 0))
7
/**
8
- * These are called whenever we allocate a frame
9
- * buffer. We use this to store the global_pts in
10
- * a frame at the time it is allocated.
11
+ * Release the frame buffer (old API).
12
*/
13
- static int ourGetBuffer(AVCodecContext* theCodecCtx,
14
- AVFrame* theFrame) {
15
- StVideoQueue* aVideoQueue = (StVideoQueue* )theCodecCtx->opaque;
16
- const int aResult = avcodec_default_get_buffer(theCodecCtx, theFrame);
17
- #ifdef ST_USE64PTR
18
- theFrame->opaque = (void* )aVideoQueue->getVideoPktPts();
19
- #else
20
- int64_t* aPts = new int64_t();
21
- *aPts = aVideoQueue->getVideoPktPts();
22
- theFrame->opaque = aPts;
23
- #endif
24
- return aResult;
25
- }
26
-
27
- static void ourReleaseBuffer(AVCodecContext* theCodecCtx,
28
- AVFrame* theFrame) {
29
+ static void stReleaseFrameBuffer(AVCodecContext* theCodecCtx,
30
+ AVFrame* theFrame) {
31
+ #if defined(ST_AV_OLDSYNC) && !ST_USE64PTR
32
if(theFrame != NULL) {
33
- #ifdef ST_USE64PTR
34
- theFrame->opaque = (void* )stAV::NOPTS_VALUE;
35
- #else
36
delete (int64_t* )theFrame->opaque;
37
theFrame->opaque = NULL;
38
- #endif
39
}
40
+ #endif
41
avcodec_default_release_buffer(theCodecCtx, theFrame);
42
}
43
#endif
44
45
return SV_THREAD_RETURN 0;
46
}
47
48
-};
49
+}
50
+
51
+AVPixelFormat StVideoQueue::getFrameFormat(const AVPixelFormat* theFormats) {
52
+ if(!myUseGpu || myIsGpuFailed) {
53
+ return avcodec_default_get_format(myCodecCtx, theFormats);
54
+ }
55
+
56
+ for(const AVPixelFormat* aFormatIter = theFormats; *aFormatIter != -1; ++aFormatIter) {
57
+ /*const AVPixFmtDescriptor* aDesc = av_pix_fmt_desc_get(*aFormatIter);
58
+ if(!(aDesc->flags & AV_PIX_FMT_FLAG_HWACCEL)) {
59
+ return *aFormatIter;
60
+ }*/
61
+
62
+ #if defined(_WIN32)
63
+ if(*aFormatIter == stAV::PIX_FMT::DXVA2_VLD) {
64
+ if(!hwaccelInit()) {
65
+ myIsGpuFailed = true;
66
+ return avcodec_default_get_format(myCodecCtx, theFormats);
67
+ }
68
+ return *aFormatIter;
69
+ }
70
+ #endif
71
+ }
72
+
73
+ return *theFormats;
74
+}
75
+
76
+int StVideoQueue::getFrameBuffer(AVFrame* theFrame,
77
+ int theFlags) {
78
+ int aResult = 0;
79
+#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 0, 0))
80
+ bool isDone = false;
81
+ #if defined(_WIN32)
82
+ if(theFrame->format == stAV::PIX_FMT::DXVA2_VLD) {
83
+ if(!myHWAccelCtx.isNull()) {
84
+ aResult = myHWAccelCtx->getFrameBuffer(*this, theFrame);
85
+ } else {
86
+ aResult = -1;
87
+ }
88
+ isDone = true;
89
+ }
90
+ #endif
91
+ if(!isDone) {
92
+ aResult = avcodec_default_get_buffer2(myCodecCtx, theFrame, theFlags);
93
+ }
94
+
95
+ #ifdef ST_AV_OLDSYNC
96
+ #ifdef ST_USE64PTR
97
+ theFrame->opaque = (void* )myVideoPktPts;
98
+ #else
99
+ AVFrameSideData* aSideDataSync = av_frame_new_side_data(theFrame, (AVFrameSideDataType )1000, sizeof(myVideoPktPts));
100
+ if(aSideDataSync != NULL) {
101
+ memcpy(aSideDataSync->data, &myVideoPktPts, sizeof(myVideoPktPts));
102
+ }
103
+ #endif
104
+ #endif
105
+#else
106
+ aResult = avcodec_default_get_buffer(myCodecCtx, theFrame);
107
+ #ifdef ST_AV_OLDSYNC
108
+ #ifdef ST_USE64PTR
109
+ theFrame->opaque = (void* )myVideoPktPts;
110
+ #else
111
+ int64_t* aPts = new int64_t();
112
+ *aPts = myVideoPktPts;
113
+ theFrame->opaque = aPts;
114
+ #endif
115
+ #endif
116
+#endif
117
+ return aResult;
118
+}
119
+
120
+#if !defined(_WIN32)
121
+bool StVideoQueue::hwaccelInit() { return false; }
122
+#endif
123
+
124
+inline AVCodecID stFindCodecId(const char* theName) {
125
+ AVCodec* aCodec = avcodec_find_decoder_by_name(theName);
126
+ return aCodec != NULL ? aCodec->id : AV_CODEC_ID_NONE;
127
+}
128
129
StVideoQueue::StVideoQueue(const StHandle<StGLTextureQueue>& theTextureQueue,
130
const StHandle<StVideoQueue>& theMaster)
131
: StAVPacketQueue(512),
132
+ CodecIdH264 (stFindCodecId("h264")),
133
+ CodecIdHEVC (stFindCodecId("hevc")),
134
+ CodecIdMPEG2(stFindCodecId("mpeg2video")),
135
+ CodecIdWMV3 (stFindCodecId("wmv3")),
136
+ CodecIdVC1 (stFindCodecId("vc1")),
137
myDowntimeState(true),
138
myTextureQueue(theTextureQueue),
139
myHasDataState(false),
140
myMaster(theMaster),
141
-#if defined(_WIN32)
142
- myCodecDxva264(avcodec_find_decoder_by_name("h264_dxva2")),
143
- myCodecDxvaWmv(avcodec_find_decoder_by_name("wmv3_dxva2")),
144
- myCodecDxvaVc1(avcodec_find_decoder_by_name("vc1_dxva2")),
145
-#elif defined(__APPLE__)
146
+#if defined(__APPLE__)
147
myCodecVda(avcodec_find_decoder_by_name("h264_vda")),
148
#endif
149
myUseGpu(false),
150
+ myIsGpuFailed(false),
151
//
152
myToRgbCtx(NULL),
153
myToRgbPixFmt(stAV::PIX_FMT::NONE),
154
155
myStFormatByUser(StFormat_AUTO),
156
myStFormatByName(StFormat_AUTO),
157
myStFormatInStream(StFormat_AUTO) {
158
-
159
#ifdef ST_USE64PTR
160
myFrame.Frame->opaque = (void* )stAV::NOPTS_VALUE;
161
#else
162
myFrame.Frame->opaque = NULL;
163
#endif
164
+
165
+#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
166
+ myFrameBufRef = new StAVFrameCounter();
167
+#endif
168
+
169
myThread = new StThread(threadFunction, (void* )this, theMaster.isNull() ? "StVideoQueueM" : "StVideoQueueS");
170
}
171
172
173
myThread.nullify();
174
175
deinit();
176
+ myHWAccelCtx.nullify();
177
}
178
179
namespace {
180
181
{StFormat_AUTO, NULL}
182
};
183
184
-};
185
+}
186
+
187
+bool StVideoQueue::initCodec(AVCodec* theCodec,
188
+ const bool theToUseGpu) {
189
+ // close previous codec
190
+ if(myCodec != NULL) {
191
+ avcodec_close(myCodecCtx);
192
+ fillCodecInfo(NULL);
193
+ }
194
+ myCodec = NULL;
195
196
-bool StVideoQueue::initCodec(AVCodec* theCodec) {
197
// configure the codec
198
myCodecCtx->codec_id = theCodec->id;
199
- //myCodecCtx->debug_mv = debug_mv;
200
- //myCodecCtx->debug = debug;
201
sview-15_10.tar.gz/StMoviePlayer/StVideo/StVideoQueue.h -> sview-15_11.tar.gz/StMoviePlayer/StVideo/StVideoQueue.h
Changed
196
1
2
#include <StGLStereo/StGLTextureQueue.h>
3
4
#include "StAVPacketQueue.h"
5
-#include <StAV/StAVFrame.h>
6
+#include <StAV/StAVImage.h>
7
8
// forward declarations
9
class StVideoQueue;
10
class StThread;
11
12
+/**
13
+ * Interface defining HWAccel context.
14
+ */
15
+class StHWAccelContext {
16
+
17
+ public:
18
+
19
+ /**
20
+ * Initialize the context.
21
+ */
22
+ virtual bool create(StVideoQueue& theVideo) = 0;
23
+
24
+ /**
25
+ * Destructor.
26
+ */
27
+ virtual ~StHWAccelContext() {}
28
+
29
+ /**
30
+ * Return true if context has been successfully initialized.
31
+ */
32
+ virtual bool isValid() const = 0;
33
+
34
+ /**
35
+ * Create decoder.
36
+ */
37
+ virtual bool decoderCreate(StVideoQueue& theVideo,
38
+ AVCodecContext* theCodecCtx) = 0;
39
+
40
+ /**
41
+ * Release decoder.
42
+ */
43
+ virtual void decoderDestroy() = 0;
44
+
45
+ /**
46
+ * AVFrame initialization callback.
47
+ */
48
+ virtual int getFrameBuffer(StVideoQueue& theVideo,
49
+ AVFrame* theFrame) = 0;
50
+
51
+ /**
52
+ * Fetch decoded results into specified frame.
53
+ */
54
+ virtual bool retrieveFrame(StVideoQueue& theVideo,
55
+ AVFrame* theFrame) = 0;
56
+
57
+};
58
+
59
// define StHandle template specialization
60
ST_DEFINE_HANDLE(StVideoQueue, StAVPacketQueue);
61
62
63
64
public:
65
66
+ AVCodecID CodecIdH264;
67
+ AVCodecID CodecIdHEVC;
68
+ AVCodecID CodecIdMPEG2;
69
+ AVCodecID CodecIdWMV3;
70
+ AVCodecID CodecIdVC1;
71
+
72
+ public:
73
+
74
/**
75
* @return true if GPU usage is enabled
76
*/
77
78
}
79
80
/**
81
+ * Return true if GPU usage has been requested but failed (e.g. decoder should be reinitialized).
82
+ */
83
+ ST_LOCAL bool isGpuFailed() const {
84
+ return myIsGpuFailed;
85
+ }
86
+
87
+ /**
88
* Setup GPU usage. Requires re-initialization to take effect!
89
*/
90
- ST_LOCAL void setUseGpu(const bool theToUseGpu) {
91
- myUseGpu = theToUseGpu;
92
+ ST_LOCAL void setUseGpu(const bool theToUseGpu,
93
+ const bool theIsGpuFailed = false) {
94
+ myUseGpu = theToUseGpu;
95
+ myIsGpuFailed = theIsGpuFailed;
96
}
97
98
ST_LOCAL bool isInDowntime() {
99
100
myHasDataState.reset();
101
}
102
103
- ST_LOCAL int64_t getVideoPktPts() const {
104
- return myVideoPktPts;
105
- }
106
-
107
ST_LOCAL void setAClock(const double thePts) {
108
myAudioClockMutex.lock();
109
myAudioClock = thePts;
110
111
private:
112
113
/**
114
+ * Select frame format from the list.
115
+ */
116
+ ST_LOCAL static AVPixelFormat stGetFrameFormat(AVCodecContext* theCodecCtx,
117
+ const AVPixelFormat* theFormats) {
118
+ StVideoQueue* aVideoQueue = (StVideoQueue* )theCodecCtx->opaque;
119
+ return aVideoQueue->getFrameFormat(theFormats);
120
+ }
121
+
122
+ /**
123
+ * Frame buffer allocation callback (deprecated form).
124
+ */
125
+ ST_LOCAL static int stGetFrameBuffer1(AVCodecContext* theCodecCtx,
126
+ AVFrame* theFrame) {
127
+ StVideoQueue* aVideoQueue = (StVideoQueue* )theCodecCtx->opaque;
128
+ return aVideoQueue->getFrameBuffer(theFrame, 0);
129
+ }
130
+
131
+ /**
132
+ * Frame buffer allocation callback (wrapper).
133
+ */
134
+ ST_LOCAL static int stGetFrameBuffer2(AVCodecContext* theCodecCtx,
135
+ AVFrame* theFrame,
136
+ int theFlags) {
137
+ StVideoQueue* aVideoQueue = (StVideoQueue* )theCodecCtx->opaque;
138
+ return aVideoQueue->getFrameBuffer(theFrame, theFlags);
139
+ }
140
+
141
+ private:
142
+
143
+ /**
144
* Initialize codec context.
145
*/
146
- ST_LOCAL bool initCodec(AVCodec* theCodec);
147
+ ST_LOCAL bool initCodec(AVCodec* theCodec,
148
+ const bool theToUseGpu);
149
+
150
+ /**
151
+ * Select frame format from the list.
152
+ */
153
+ ST_LOCAL AVPixelFormat getFrameFormat(const AVPixelFormat* theFormats);
154
+
155
+ /**
156
+ * Frame buffer allocation callback.
157
+ */
158
+ ST_LOCAL int getFrameBuffer(AVFrame* theFrame,
159
+ int theFlags);
160
+
161
+ /**
162
+ * Initialize hardware accelerated decoder.
163
+ */
164
+ ST_LOCAL bool hwaccelInit();
165
+
166
+private:
167
168
/**
169
* Initialize adapter over AVframe or perform to RGB conversion.
170
171
StHandle<StVideoQueue> myMaster; //!< handle to Master decoding thread
172
StHandle<StVideoQueue> mySlave; //!< handle to Slave decoding thread
173
174
-#if defined(_WIN32)
175
- AVCodec* myCodecDxva264; //!< DXVA2 codec (decoding on GPU in Windows)
176
- AVCodec* myCodecDxvaWmv; //!< DXVA2 codec (decoding on GPU in Windows)
177
- AVCodec* myCodecDxvaVc1; //!< DXVA2 codec (decoding on GPU in Windows)
178
-#elif defined(__APPLE__)
179
+ StHandle<StHWAccelContext> myHWAccelCtx;
180
+#if defined(__APPLE__)
181
AVCodec* myCodecVda; //!< VDA codec (decoding on GPU in OS X)
182
#endif
183
bool myUseGpu; //!< activate decoding on GPU when possible
184
+ bool myIsGpuFailed; //!< flag indicating that GPU decoder can not handle input data
185
186
StAVFrame myFrameRGB; //!< frame, converted to RGB (soft)
187
StImagePlane myDataRGB; //!< RGB buffer data (for swscale)
188
189
bool myToRgbIsBroken; //!< indicates broke swscale context - to RGB conversion is impossible
190
191
StAVFrame myFrame; //!< original decoded video frame
192
+ StHandle<StAVFrameCounter> myFrameBufRef;
193
StImage myDataAdp; //!< buffer data adaptor
194
AVDiscard myAvDiscard; //!< discard parameter (to skip or not frames)
195
196
sview-15_10.tar.gz/StMoviePlayer/lang/chinese/StMoviePlayer.lng -> sview-15_11.tar.gz/StMoviePlayer/lang/chinese/StMoviePlayer.lng
Changed
201
1
2
•# Chinese translation file for StMoviePlayer program
3
# @author YSC
4
--------
5
-1002="切换 左/右"
6
-1003="还原切换 左/右"
7
-1004="立体格式:"
8
-1015="打开另一视频"
9
-1020="播放/暂停"
10
-1021="显示/隐藏\n播放列表"
11
-1022="播放上一文件"
12
-1023="播放下一文件"
13
-1029="切换\n全屏/窗口模式"
14
-1100="文件"
15
-1101="打开视频->>"
16
-1102="保存快照->>"
17
-1103="立体格式->>"
18
-1170="文件信息"
19
-1104="音频设备->>"
20
-1105="随机播放"
21
-1106="近期播放记录->>"
22
-1107="通过GPU视频解码"
23
-1108="界面设计->>"
24
-1109="退出"
25
-1110="单一立体文件"
26
-1111="左右分离视频文件"
27
-1130="自动识别"
28
-1131="单画面"
29
-1132="左|右(右|左)"
30
-1133="平行配对"
31
-1134="上/下(右/左)"
32
-1135="上/下(左/右)"
33
-1136="交错"
34
-1137="立体红/青"
35
-1138="立体绿/红+蓝"
36
-1139="立体黄/蓝"
37
-1140="帧连续"
38
-1141="2x720p 平铺于 1080p"
39
-1142="2 视频流"
40
-1160="清除播放历史"
41
-1180="关闭"
42
-1181="应用一次"
43
-1182="每次应用"
44
-1185="显示错误"
45
-?1186="界面设计can not be started on {0} port!"
46
-1200="视频"
47
-1201="立体输出->>"
48
-1202="全屏"
49
-1203="重置"
50
-1204="切换左/右"
51
-1205="显示比例->>"
52
-1206="平滑过滤->>"
53
-1207="图像校正->>"
54
-1208="表面处理->>"
55
-1210="立体"
56
-1211="左画面"
57
-1212="右画面"
58
-1213="平行配对"
59
-1214="对眼"
60
-1250="源格式"
61
-1251="重启维持"
62
-?1252="Heal anamorphic 1080p/720p"
63
-1260="接近"
64
-1261="线性"
65
-1262="混纺交织"
66
-1270="重置默认"
67
-1271="亮度"
68
-1272="饱和度"
69
-1273="伽马"
70
-1280="平面"
71
-1281="球面"
72
-1282="圆筒"
73
-?1283="Cubemap"
74
-?1285="Track orientation"
75
-?1286="Track orientation (poor)"
76
-1300="音频"
77
-1301="无"
78
-1302="音/视频 延迟"
79
-1303="从文件加载"
80
-1320="音/视频 同步"
81
-1321="音频提前于视频输入正值,否则负值。"
82
-1322="音频延迟:"
83
-1323="秒(s)"
84
-1350="字幕"
85
-1351="无"
86
-1353="从文件加载"
87
-1354="字体大小"
88
-1355="视差"
89
-1356="文本解析"
90
-?1357="Placement"
91
-?1358="Top"
92
-?1359="Bottom"
93
-?1360="Plain text"
94
-?1361="Lite HTML"
95
-1400="改变设备->>"
96
-1401="关于插件…"
97
-1402="FPS控制->>"
98
-1420="同时"
99
-1421="显示表"
100
-1422="减少CPU的使用"
101
-1500="帮助"
102
-1501="关于..."
103
-1502="检查更新->>"
104
-1503="许可证文本"
105
-1504="语言 (Language)"
106
-1505="阻止休眠->>"
107
-1506="用户提示"
108
-1507="实验特性"
109
-1508="关于系统"
110
-1509="界面尺寸->>"
111
-?1510="Hotkeys"
112
-?1511="Settings"
113
-1520="现在"
114
-1521="每天"
115
-1522="每周"
116
-1523="每年"
117
-1524="绝不"
118
-1550="绝不"
119
-1551="总是"
120
-1552="回放期间"
121
-1553="全屏时"
122
-1590="小"
123
-1591="正常"
124
-1592="大"
125
-1593="强制高解析 2X"
126
-2000="选择视频文件打开"
127
-2001="选择左视频文件打开"
128
-2002="选择右视频文件打开"
129
-2003="文件信息"
130
-2004="文件信息未获得"
131
-2005="文件删除"
132
-2006="确定完全移除吗?"
133
-2007="激活解码器:"
134
-2010="选择保存快照位置"
135
-2011="什么也没有保存!"
136
-2012="快照不为空!"
137
-?2013="Assign new Hot Key for action\n<i>{0}</i>"
138
-?2014="Conflicts with: <i>{0}</i>"
139
-3000="sView - Movie Player"
140
-3001="版本"
141
-?3002="Movie player allows you to play stereoscopic video.\n © {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis program is distributed under GPL3.0"
142
-?3003="A new version of sView is available on the official site www.sview.ru.\nPlease update your program."
143
-3004="系统信息"
144
-4000="关闭"
145
-4001="取消"
146
-4005="重置"
147
-4006="保存"
148
-4007="删除"
149
-?4008="Default"
150
-?4009="Defaults"
151
-?4010="Assign"
152
-5000="[左]"
153
-5001="[右]"
154
-5002="文件名字(s)"
155
-5003="视频大小"
156
-5004="装载时间"
157
-5005="ms"
158
-5006="像素比率"
159
-5007="像素格式"
160
-5008="(不存储在元数据)"
161
-5009="(不匹配的元数据)"
162
-5010="持续时间"
163
-5011="(不存储在元数据中,\n但检测到文件名称)"
164
-5300="标题"
165
-5301="作曲家"
166
-5302="艺术家"
167
-5303="专辑"
168
-5304="相册"
169
-5305="盘"
170
-5306="NB 盘"
171
-5307="流派"
172
-5308="评论"
173
-5309="注释"
174
-5310="描述"
175
-5311="出版商"
176
-5312="版权"
177
-5313="编码器"
178
-5314="工程师"
179
-5315="源"
180
-5316="创建时间"
181
-5317="数据"
182
-5318="年"
183
-5319="语言"
184
-5320="跟踪"
185
-5321="NB 轨道"
186
-5322="音轨增益"
187
-5323="轨道峰"
188
-5324="专辑增益"
189
-5325="专辑峰"
190
-6000="退出"
191
-6001="切换\n全屏/窗口模式"
192
-6002="显示 FPS"
193
-6003="立体格式: 自动侦测"
194
-6004="立体格式: 单画面"
195
-6005="立体格式: 上/下"
196
-6006="立体格式: 对眼"
197
-?6007="Show file info"
198
-?6008="Playlist - Go to the first item"
199
-?6009="Playlist - Go to the last item"
200
-6010="播放上一文件"
201
sview-15_10.tar.gz/StMoviePlayer/lang/czech/StMoviePlayer.lng -> sview-15_11.tar.gz/StMoviePlayer/lang/czech/StMoviePlayer.lng
Changed
10
1
2
?6023=Audio volume up
3
?6024=Previous audio track
4
?6025=Next audio track
5
-?6026=Next subtitles track
6
+?6026=Previous subtitles track
7
?6027=Next subtitles track
8
?6028=Copy displayed subtitles text
9
?6029=Open URL from clipboard
10
sview-15_10.tar.gz/StMoviePlayer/lang/english/StMoviePlayer.lng -> sview-15_11.tar.gz/StMoviePlayer/lang/english/StMoviePlayer.lng
Changed
201
1
2
# English translation file for StMoviePlayer program
3
# @author Kirill Gavrilov
4
--------
5
-1002="Swap Left/Right"
6
-1003="UnSwap Left/Right"
7
-1004="Stereoscopic format:"
8
-1015="Open another movie"
9
-1020="Play/Pause"
10
-1021="Show/Hide playlist"
11
-1022="Play Previous File"
12
-1023="Play Next File"
13
-1029="Switch\nfullscreen/windowed"
14
-1100="Media"
15
-1101="Open Movie..."
16
-1102="Save Snapshot..."
17
-1103="Stereoscopic format"
18
-1170="File info"
19
-1104="Audio Device"
20
-1105="Shuffle"
21
-1106="Recent files"
22
-1107="Video decoding on GPU"
23
-1108="Web UI"
24
-1109="Quit"
25
-1110="From One file"
26
-1111="Left+Right files"
27
-1130="Source"
28
-1131="Mono"
29
-1132="Cross-eyed"
30
-1133="Parallel Pair"
31
-1134="Over/Under (R/L)"
32
-1135="Over/Under (L/R)"
33
-1136="Interlaced"
34
-1137="Anaglyph Red/Cyan"
35
-1138="Anaglyph Green/Red+Blue"
36
-1139="Anaglyph Yellow/Blue"
37
-1140="Frame-sequential"
38
-1141="2x720p in 1080p tiled"
39
-1142="2 Streams"
40
-1160="Clear history"
41
-1180="Turn Off"
42
-1181="Launch once"
43
-1182="Launch every time"
44
-1185="Show errors"
45
-1186="Web UI can not be started on {0} port!"
46
-1200="View"
47
-1201="Stereo Output"
48
-1202="Fullscreen"
49
-1203="Reset"
50
-1204="Swap Left/Right"
51
-1205="Display Ratio"
52
-1206="Smooth Filter"
53
-1207="Image Adjust"
54
-1208="Panorama"
55
-1210="Stereo"
56
-1211="Left View"
57
-1212="Right View"
58
-1213="Parallel Pair"
59
-1214="Cross-eyed"
60
-1250="Source"
61
-1251="Keep on restart"
62
-1252="Heal anamorphic 1080p/720p"
63
-1260="Nearest"
64
-1261="Linear"
65
-1262="Blend Deinterlace"
66
-1270="Reset to defaults"
67
-1271="Brightness"
68
-1272="Saturation"
69
-1273="Gamma"
70
-1280="Plane"
71
-1281="Sphere"
72
-1282="Cylinder"
73
-1283="Cubemap"
74
-1285="Track orientation"
75
-1286="Track orientation (poor)"
76
-1300="Audio"
77
-1301="None"
78
-1302="Audio/Video delay"
79
-1303="Attach from file"
80
-1320="Audio/Video synchronization"
81
-1321="Enter positive value if audio appears earlier than video and negative otherwise."
82
-1322="Audio delay:"
83
-1323="second(s)"
84
-1350="Subtitles"
85
-1351="None"
86
-1353="Attach from file"
87
-1354="Font Size"
88
-1355="Parallax"
89
-1356="Text parser"
90
-1357="Placement"
91
-1358="Top"
92
-1359="Bottom"
93
-1360="Plain text"
94
-1361="Lite HTML"
95
-1400="Change device"
96
-1401="About Plugin..."
97
-1402="FPS Control"
98
-1420="VSync"
99
-1421="Show Meter"
100
-1422="Reduce CPU usage"
101
-1500="Help"
102
-1501="About..."
103
-1502="Check for updates"
104
-1503="License text"
105
-1504="Language"
106
-1505="Block sleeping"
107
-1506="User tips"
108
-1507="Experimental features"
109
-1508="About system"
110
-1509="Interface Scale"
111
-1510="Hotkeys"
112
-1511="Settings"
113
-1520="Now"
114
-1521="Each day"
115
-1522="Each week"
116
-1523="Each year"
117
-1524="Never"
118
-1550="Never"
119
-1551="Always"
120
-1552="During Playback"
121
-1553="When in Full-screen"
122
-1590="Small"
123
-1591="Normal"
124
-1592="Big"
125
-1593="Force HiDPI 2X"
126
-2000="Choose the video file to open"
127
-2001="Choose LEFT video file to open"
128
-2002="Choose RIGHT video file to open"
129
-2003="File Info"
130
-2004="File information is unavailable"
131
-2005="File deletion"
132
-2006="Do you really want to completely remove this file?"
133
-2007="Active decoders:"
134
-2010="Choose location to save snapshot"
135
-2011="Nothing to save!"
136
-2012="Snapshot not available!"
137
-2013="Assign new Hot Key for action\n<i>{0}</i>"
138
-2014="Conflicts with: <i>{0}</i>"
139
-3000="sView - Movie Player"
140
-3001="version"
141
-3002="Movie player allows you to play stereoscopic video.\n © {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis program is distributed under GPL3.0"
142
-3003="A new version of sView is available on the official site www.sview.ru.\nPlease update your program."
143
-3004="System Info"
144
-4000="Close"
145
-4001="Cancel"
146
-4005="Reset"
147
-4006="Save"
148
-4007="Delete"
149
-4008="Default"
150
-4009="Defaults"
151
-4010="Assign"
152
-5000="[left]"
153
-5001="[right]"
154
-5002="File name(s)"
155
-5003="Video dimensions"
156
-5004="Load time"
157
-5005="ms"
158
-5006="Pixel ratio"
159
-5007="Pixel format"
160
-5008="(does not stored in metadata)"
161
-5009="(does not match metadata)"
162
-5010="Duration"
163
-5011="(does not stored in metadata,\nbut detected from file name)"
164
-5300="Title"
165
-5301="Composer"
166
-5302="Artist"
167
-5303="Album artist"
168
-5304="Album"
169
-5305="Disc"
170
-5306="Nb. of discs"
171
-5307="Genre"
172
-5308="Comment"
173
-5309="Notes"
174
-5310="Description"
175
-5311="Publisher"
176
-5312="Copyright"
177
-5313="Encoder"
178
-5314="Engineer"
179
-5315="Source"
180
-5316="Creation time"
181
-5317="Date"
182
-5318="Year"
183
-5319="Language"
184
-5320="Track"
185
-5321="Nb. of tracks"
186
-5322="Track gain"
187
-5323="Track peak"
188
-5324="Album gain"
189
-5325="Album peak"
190
-6000="Quit program"
191
-6001="Switch fullscreen/windowed"
192
-6002="Show/hide FPS meter"
193
-6003="Stereo format - Auto"
194
-6004="Stereo format - Mono"
195
-6005="Stereo format - Over/Under"
196
-6006="Stereo format - Side by side"
197
-6007="Show file info"
198
-6008="Playlist - Go to the first item"
199
-6009="Playlist - Go to the last item"
200
-6010="Playlist - Go to the previous item"
201
sview-15_10.tar.gz/StMoviePlayer/lang/french/StMoviePlayer.lng -> sview-15_11.tar.gz/StMoviePlayer/lang/french/StMoviePlayer.lng
Changed
201
1
2
•# French translation file for StMoviePlayer program
3
# @author gramoun for Kirill Gavrilov
4
--------
5
-1002="Gauche/Droite inversé"
6
-1003="Gauche/Droite normal"
7
-1004="Format entrée:"
8
-1015="Ouvre autre vidéo"
9
-1020="Lecture/Pause"
10
-1021="Affiche/Masque playlist"
11
-1022="Fichier Précédent"
12
-1023="Fichier Suivant"
13
-1029="Bascule\Plein écran/fenêtre"
14
-1100="Média"
15
-1101="Ouvre Video..."
16
-1102="Enregistre Capture..."
17
-1103="Format Stéréo d'entrée"
18
-1170="File info"
19
-1104="Audio Device"
20
-1105="Aléatorie"
21
-1106="Médias récents"
22
-1107="Video decoding on GPU"
23
-1108="Web UI"
24
-1109="Quitter"
25
-1110="Depuis un fichier"
26
-1111="2 Fichiers Gauche+Droit"
27
-1130="Source"
28
-1131="Mono"
29
-1132="Cross-eyed"
30
-1133="Coté/Coté (SbS)"
31
-1134="Dessus/Dessous(D/G)"
32
-1135="Dessus/Dessous(G/D)"
33
-1136="Entrelacé"
34
-1137="Anaglyphe Rouge/Bleu"
35
-1138="Anaglyphe Vert/Magenta"
36
-1139="Anaglyphe Jaune/Bleu"
37
-1140="Frame-sequential"
38
-1141="2x720p in 1080p tiled"
39
-1142="2 Streams"
40
-1160="Effacer l'historique"
41
-1180="Arrêter"
42
-1181="Lancez une fois"
43
-1182="Lancer à chaque fois"
44
-1185="Afficher les erreurs"
45
-?1186="Web UI can not be started on {0} port!"
46
-1200="Affichage"
47
-1201="Sortie Stéréo"
48
-1202="Plein Ecran"
49
-1203="Réinitialisation"
50
-1204="Inverser Gauche/Droite"
51
-1205="Ratio d'affichage"
52
-1206="Lissage antialiasing"
53
-1207="Réglage de l'image"
54
-1208="Panorama"
55
-1210="Stéréo"
56
-1211="Vue Gauche"
57
-1212="Vue Droite"
58
-1213="Coté/Coté (SbS)"
59
-1214="Cross-eyed"
60
-1250="Source"
61
-1251="Garder après redémarrage"
62
-?1252="Heal anamorphic 1080p/720p"
63
-1260="Plus proche"
64
-1261="Lineaire"
65
-1262="Blend Deinterlace"
66
-1270="Rétablir par défaut"
67
-1271="Brightness"
68
-1272="Saturation"
69
-1273="Gamma"
70
-1280="Plan"
71
-1281="Sphère"
72
-1282="Cylindre"
73
-1283="Cubemap"
74
-?1285="Track orientation"
75
-?1286="Track orientation (poor)"
76
-1300="Audio"
77
-1301="Aucun"
78
-1302="Audio/Video delay"
79
-1303="Attacher un fichier"
80
-1320="Audio/Video synchronization"
81
-?1321="Enter positive value if audio appears earlier than video and negative otherwise."
82
-1322="Audio delay:"
83
-1323="second(s)"
84
-1350="Subtitles"
85
-1351="Aucun"
86
-1353="Attacher un fichier"
87
-1354="Taille De Police"
88
-1355="Parallaxe"
89
-?1356="Text parser"
90
-1357="Placement"
91
-1358="En haut"
92
-1359="Au fond"
93
-?1360="Plain text"
94
-?1361="Lite HTML"
95
-1400="Changer la sortie"
96
-1401="A propos du Plugin..."
97
-1402="Contrôle de I/S"
98
-1420="Synchro Vert."
99
-1421="Voir I/S"
100
-1422="Réduire l'utilisation de CPU"
101
-1500="Aide"
102
-1501="A Propos..."
103
-1502="Vérifier nouvelle version"
104
-1503="Texte de la Licence"
105
-1504="Language"
106
-1505="Empêcher le sommeil"
107
-1506="Conseils d'utilisation"
108
-?1507="Experimental features"
109
-?1508="About system"
110
-?1509="Scale Interface"
111
-1510="Raccourcis"
112
-1511="Paramètres"
113
-1520="Maintenant"
114
-1521="Chaque Jour"
115
-1522="Chaque Mois"
116
-1523="Chaque Année"
117
-1524="Jamais"
118
-1550="Jamais"
119
-1551="Always"
120
-1552="During Playback"
121
-1553="When in Full-screen"
122
-1590="Petit"
123
-1591="Normal"
124
-1592="Gros"
125
-1593="Force HiDPI 2X"
126
-2000="Choix du fichier vidéo à ouvrir"
127
-2001="Choix du fichier vidéo Gauche à ouvrir"
128
-2002="Choix du fichier vidéo Droite à ouvrir"
129
-?2003="File Info"
130
-2004="L'information est indisponible"
131
-?2005="File deletion"
132
-?2006="Do you really want to completely remove this file?"
133
-?2007="Active decoders:"
134
-2010="Emplacement de la capture écran"
135
-2011="Rien à enregistrer!"
136
-2012="Capture non disponible!"
137
-2013="Changement raccourcu clavier pour\n<i>{0}</i>"
138
-?2014="Conflicts with: <i>{0}</i>"
139
-3000="sView - Movie Player"
140
-3001="version"
141
-3002="Movie Player vous permet d'ouvrir des vidéo stéréoscopiques.\n © {0} Kirill Gavrilov <{1}>\nSite Officiel: {2}\n\nThis program is distributed under GPL3.0"
142
-3003="Une nouvelle version de sView est disponible sur le site officiel www.sview.ru.\nSVP, mettez votre programme à jour."
143
-3004="System Info"
144
-4000="Fermer"
145
-4001="Annuler"
146
-4005="Réinitialiser"
147
-4006="Enregistre"
148
-4007="Supprimer"
149
-?4008="Default"
150
-?4009="Defaults"
151
-4010="Affecter"
152
-5000="[gauche]"
153
-5001="[droite]"
154
-5002="Nom de fichier(s)"
155
-5003="Résolution vidéo"
156
-5004="Temps de démarrage"
157
-5005="ms"
158
-5006="Pixel ratio"
159
-5007="Pixel format"
160
-?5008="(does not stored in metadata)"
161
-?5009="(does not match metadata)"
162
-5010="Durée"
163
-?5011="(does not stored in metadata,\nbut detected from file name)"
164
-5300="Titre"
165
-5301="Compositeur"
166
-5302="Artiste"
167
-5303="Artiste de l'album"
168
-5304="Album"
169
-5305="Disque"
170
-5306="Nb. de disques"
171
-5307="Genre"
172
-5308="Commentaire"
173
-5309="Remarques"
174
-5310="Description"
175
-5311="Éditeur"
176
-5312="Copyright"
177
-5313="Encoder"
178
-5314="Ingénieur"
179
-5315="Source"
180
-5316="Temps de création"
181
-5317="Date"
182
-5318="Année"
183
-5319="Langue"
184
-5320="Track"
185
-5321="Nb. of tracks"
186
-5322="Track gain"
187
-5323="Track peak"
188
-5324="Album gain"
189
-5325="Album peak"
190
-6000="Quit program"
191
-6001="Bascule\Plein écran/fenêtre"
192
-6002="Voir I/S"
193
-6003="Format Stéréo d'entrée - Auto-détection"
194
-6004="Format Stéréo d'entrée - Mono"
195
-6005="Format Stéréo d'entrée - Dessus/Dessous"
196
-6006="Format Stéréo d'entrée - Coté/Coté (SbS)"
197
-6007="Afficher les informations sur le fichier"
198
-6008="Playlist - Aller au premier élément"
199
-6009="Playlist - Aller au dernier élément"
200
-6010="Playlist - Aller à l'élément précédent"
201
sview-15_10.tar.gz/StMoviePlayer/lang/german/StMoviePlayer.lng -> sview-15_11.tar.gz/StMoviePlayer/lang/german/StMoviePlayer.lng
Changed
201
1
2
# German translation file for StMoviePlayer program
3
# @author Kirill Gavrilov
4
--------
5
-1002="L&R Vertauschen An"
6
-1003="L&R Vertauschen Aus"
7
-1004="Quellformat:"
8
-1015="Öffnen anderen Film"
9
-1020="Wiedergabe/Pause"
10
-1021="Anzeigen/ausblenden Wiedergabeliste"
11
-1022="Vorheriges Stück"
12
-1023="Nachfolgendes Stück"
13
-1029="Vollbildmodus/Fenstermodus"
14
-1100="Medien"
15
-1101="Film öffnen..."
16
-1102="Videoschnappschuss speichern..."
17
-1103="Quelle Stereo-Format"
18
-1170="Datei-Info"
19
-1104="Audiogerät"
20
-1105="Zufällig"
21
-1106="Zuletzt geöffnete Medien öffnen"
22
-1107="GPU-basierter Video-Dekodierung"
23
-1108="Web UI"
24
-1109="Beenden"
25
-1110="Einer Datei"
26
-1111="Zwei Dateien"
27
-1130="Quelle"
28
-1131="Mono"
29
-1132="Schielend"
30
-1133="Parallel Pair"
31
-1134="Over/Under (R/L)"
32
-1135="Over/Under (L/R)"
33
-1136="Interlaced"
34
-1137="Anaglyph Rot/Cyan"
35
-1138="Anaglyph Grün/Rot+Blau"
36
-1139="Anaglyph Gelb/Blau"
37
-1140="Rahmen-sequentielle"
38
-1141="2x720p in 1080p tiled"
39
-1142="2 Streams"
40
-1160="Verlauf löschen"
41
-1180="Ausschalten"
42
-1181="Starten einmal"
43
-1182="Starten jedesmal"
44
-1185="Fehler anzeigen"
45
-?1186="Web UI can not be started on {0} port!"
46
-1200="Ansicht"
47
-1201="Stereo-Ausgang"
48
-1202="Vollbild"
49
-1203="Zurückstellen"
50
-1204="L&R Vertauschen"
51
-1205="Seitenverhältnis"
52
-1206="Glatte Filter"
53
-1207="Bildeinstellung"
54
-1208="Panorama"
55
-1210="Stereo"
56
-1211="Linke Bild"
57
-1212="Rechte Bild"
58
-1213="Parallel Pair"
59
-1214="Cross-eyed"
60
-1250="Quelle"
61
-1251="Halten beim Neustart"
62
-?1252="Heal anamorphic 1080p/720p"
63
-1260="Nearest"
64
-1261="Linear"
65
-1262="Blend Deinterlace"
66
-1270="Auf Standardwerte zurücksetzen"
67
-1271="Helligkeit"
68
-1272="Sättigung"
69
-1273="Gamma"
70
-1280="Fläche"
71
-1281="Kugel"
72
-1282="Zylinder"
73
-1283="Cubemap"
74
-?1285="Track orientation"
75
-?1286="Track orientation (poor)"
76
-1300="Audio"
77
-1301="keiner"
78
-1302="Audio/Video Verzögerung"
79
-1303="Bringen aus der Datei"
80
-1320="Audio/Video Synchronisierung"
81
-1321="Enter positive value if audio appears earlier than video and negative otherwise."
82
-1322="Audioverzögerung:"
83
-1323="Sek."
84
-1350="Untertitel"
85
-1351="keiner"
86
-1353="Bringen aus der Datei"
87
-1354="Schriftgröße"
88
-1355="Parallax"
89
-1356="Text parser"
90
-1357="Platzierungen"
91
-1358="Top"
92
-1359="Boden"
93
-1360="Plain text"
94
-1361="Lite HTML"
95
-1400="Gerät ändern"
96
-1401="Über Plugin..."
97
-1402="FPS Kontrolle"
98
-1420="VSync"
99
-1421="Zeige Meter"
100
-1422="Reduce CPU usage"
101
-1500="Hilfe"
102
-1501="Über..."
103
-1502="Nach Updates suchen"
104
-1503="Lizenztext"
105
-1504="Language"
106
-1505="Blockieren Schlaf"
107
-1506="Anwendertipps"
108
-1507="Experimentelle Funktionen"
109
-1508="Über System"
110
-1509="Maßstab Benutzeroberfläche"
111
-1510="Hotkeys"
112
-1511="Einstellungen"
113
-1520="jetzt"
114
-1521="täglich"
115
-1522="wöchentlich"
116
-1523="jährlich"
117
-1524="nie"
118
-1550="nie"
119
-1551="immer"
120
-1552="während der Wiedergabe"
121
-1553="wenn in Vollbild"
122
-1590="klein"
123
-1591="normal"
124
-1592="groß"
125
-1593="erzwingen HiDPI 2X"
126
-2000="Wählen die Videodatei zu öffnen"
127
-2001="Wählen die linke Videodatei zu öffnen"
128
-2002="Wählen die rechte Videodatei zu öffnen"
129
-2003="Datei-Info"
130
-2004="Information nicht verfügbar"
131
-2005="Löschen von Dateien"
132
-?2006="Do you really want to completely remove this file?"
133
-?2007="Active decoders:"
134
-2010="Wählen einen Speicherort für Videoschnappschuss"
135
-2011="Nichts zu speichern!"
136
-2012="Schnappschuss ist nicht verfügbar!"
137
-2013="Hotkey ändern\n<i>{0}</i>"
138
-2014="Konflikten: <i>{0}</i>"
139
-3000="sView - Movie Player"
140
-3001="Version"
141
-?3002="Movie player allows you to play stereoscopic video.\n © {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis program is distributed under GPL3.0"
142
-?3003="A new version of sView is available on the official site www.sview.ru.\nPlease update your program."
143
-3004="System Info"
144
-4000="Schließen"
145
-4001="Abbrechen"
146
-4005="Rücksetzen"
147
-4006="Speichern"
148
-4007="Löschen"
149
-4008="Default"
150
-4009="Defaults"
151
-4010="Zuweisen"
152
-5000="[linke]"
153
-5001="[rechte]"
154
-5002="Dateiname(n)"
155
-5003="Video dimensions"
156
-5004="Ladezeit"
157
-5005="ms"
158
-5006="Pixelseitenverhältnis"
159
-5007="Pixel format"
160
-5008="(nicht in Metadaten gespeichert)"
161
-5009="(keine Metadaten übereinstimmen)"
162
-5010="Dauer"
163
-5011="(nicht in Metadaten gespeichert,\nsondern von Dateinamen detektiert)"
164
-5300="Titel"
165
-5301="Composer"
166
-5302="Artist"
167
-5303="Album artist"
168
-5304="Album"
169
-5305="Disc"
170
-5306="Nb. of discs"
171
-5307="Genre"
172
-5308="Kommentar"
173
-5309="Notes"
174
-5310="Beschreibung"
175
-5311="Publisher"
176
-5312="Copyright"
177
-5313="Encoder"
178
-5314="Engineer"
179
-5315="Source"
180
-5316="Creation time"
181
-5317="Datum"
182
-5318="Jahr"
183
-5319="Sprache"
184
-5320="Track"
185
-5321="Nb. of tracks"
186
-5322="Track gain"
187
-5323="Track peak"
188
-5324="Album gain"
189
-5325="Album peak"
190
-6000="Beenden"
191
-6001="Vollbildmodus/Fenstermodus"
192
-6002="FPS anzeigen"
193
-6003="Stereo-Format - Autoerkennung"
194
-6004="Stereo-Format - Mono"
195
-6005="Stereo-Format - Over/Under"
196
-6006="Stereo-Format - Side by side"
197
-6007="Datei info"
198
-6008="Wiedergabeliste - Zum ersten Element"
199
-6009="Wiedergabeliste - Zum letzten Element"
200
-6010="Wiedergabeliste - Zum vorherigen Element"
201
sview-15_10.tar.gz/StMoviePlayer/lang/korean/StMoviePlayer.lng -> sview-15_11.tar.gz/StMoviePlayer/lang/korean/StMoviePlayer.lng
Changed
201
1
2
# @author Kirill Gavrilov
3
# @translator Kwon Daesuk <hyntel@clunix.com>
4
--------
5
-1002="좌/우 교체"
6
-1003="좌/우 복원"
7
-1004="소스 형식:"
8
-1015="다른 영상 열기"
9
-1020="재생/멈춤"
10
-1021="재생 목록 보이기/감추기"
11
-1022="앞 파일 재생"
12
-1023="다음 파일 재생"
13
-1029="전환\n전체화면/윈도우화면"
14
-1100="미디어"
15
-1101="파일 열기..."
16
-1102="스냅샷 저장..."
17
-1103="소스 스테레오 형식"
18
-?1170="File info"
19
-1104="오디오 장치"
20
-1105="셔플"
21
-1106="최근 파일"
22
-1107="GPU 비디오 디코딩"
23
-1108="웹 UI"
24
-1109="종료"
25
-1110="파일 하나에서 재생"
26
-1111="좌+우 각 파일에서 재생"
27
-1130="자동감지"
28
-1131="단일영상"
29
-1132="크로스-아이"
30
-1133="패럴렐 페어"
31
-1134="상/하 (R/L)"
32
-1135="상/하 (L/R)"
33
-1136="인터레이스"
34
-?1137="red/cyan"
35
-?1138="green/red+blue"
36
-?1139="yellow/blue"
37
-1140="순차 프레임"
38
-1141="2x720p in 1080p tiled"
39
-1142="2 스트림"
40
-1160="재생 기록 소거"
41
-1180="끄기"
42
-1181="한번만 실행"
43
-1182="매번 실행"
44
-1185="오류 보이기"
45
-1186="웹 UI {0} 포트에서 시작 불가!"
46
-1200="보기"
47
-1201="입체 출력"
48
-1202="전체 화면"
49
-1203="리셋"
50
-1204="좌/우 교체"
51
-1205="화면 비율"
52
-1206="Smooth 필터"
53
-1207="이미지 수정"
54
-?1208="Panorama"
55
-1210="Stereo"
56
-1211="왼쪽 View"
57
-1212="오른쪽 View"
58
-1213="패럴렐 페어"
59
-1214="크로스 아이"
60
-?1250="Source"
61
-1251="재시작시 유지"
62
-?1252="Heal anamorphic 1080p/720p"
63
-?1260="Nearest"
64
-?1261="Linear"
65
-?1262="Blend Deinterlace"
66
-1270="초기값 리셋"
67
-1271="밝기"
68
-?1272="Saturation"
69
-1273="감마"
70
-?1280="Plane"
71
-?1281="Sphere"
72
-?1282="Cylinder"
73
-?1283="Cubemap"
74
-?1285="Track orientation"
75
-?1286="Track orientation (poor)"
76
-?1300="Audio"
77
-1301="없음"
78
-1302="오디오/비디오 지연시간"
79
-1303="파일에서 불러오기"
80
-1320="오디오/비디오 동기화"
81
-1321="오디오가 화면보다 먼저 들리면 +값을, 반대이면 -값을 넣으시오"
82
-1322="오디오 지연:"
83
-1323="초(s)"
84
-1350="자막"
85
-1351="없음"
86
-1353="파일에서 불러오기"
87
-1354="폰트 크기"
88
-?1355="Parallax"
89
-?1356="Text parser"
90
-?1357="Placement"
91
-?1358="Top"
92
-?1359="Bottom"
93
-?1360="Plain text"
94
-?1361="Lite HTML"
95
-1400="장치 변경"
96
-?1401="About Plugin..."
97
-?1402="FPS 제어"
98
-?1420="VSync"
99
-?1421="Show Meter"
100
-1422="CPU 부하 감소"
101
-1500="도움말"
102
-1501="이 프로그램에 대해..."
103
-1502="업데이트 확인"
104
-1503="라이선스 문서"
105
-1504="언어 (Language)"
106
-1505="블록 슬리핑"
107
-1506="사용자 팁"
108
-1507="실험적 기능"
109
-1508="시스템에 대해"
110
-?1509="Interface Scale"
111
-?1510="Hotkeys"
112
-?1511="Settings"
113
-1520="지금"
114
-1521="매일"
115
-1522="매주"
116
-1523="매년"
117
-1524="하지않음"
118
-1550="하지않음"
119
-1551="항상"
120
-1552="재생중"
121
-1553="전체화면중"
122
-1590="작게"
123
-1591="보통"
124
-1592="크게"
125
-1593="HiDPI 2X 로"
126
-2000="재생할 비디오 파일을 선택하시오"
127
-2001="좌안 비디오 파일을 선택하시오"
128
-2002="우안 비디오 파일을 선택하시오"
129
-?2003="File Info"
130
-?2004="File information is unavailable"
131
-?2005="File deletion"
132
-?2006="Do you really want to completely remove this file?"
133
-?2007="Active decoders:"
134
-2010="스냅샷을 저장할 위치를 선택하시오"
135
-2011="저장할 수 없음!"
136
-2012="스냅샷 없음!"
137
-?2013="Assign new Hot Key for action\n<i>{0}</i>"
138
-?2014="Conflicts with: <i>{0}</i>"
139
-3000="sView - 3D 동영상 플레이어"
140
-3001="version"
141
-3002="이 동영상 플레이어는 스테레오스코픽 동영상을 재생할 수 있습니다.\n © {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\n이 프로그램은 GPL3.0 하에 배포됩니다."
142
-3003="sView 새 버전은 www.sview.ru 에서 얻으실 수 있습니다.\n 프로그램을 업데이트 하세요."
143
-?3004="System Info"
144
-4000="닫기"
145
-?4001="Cancel"
146
-4005="리셋"
147
-?4006="Save"
148
-?4007="Delete"
149
-?4008="Default"
150
-?4009="Defaults"
151
-?4010="Assign"
152
-?5000="[left]"
153
-?5001="[right]"
154
-?5002="File name(s)"
155
-?5003="Video dimensions"
156
-?5004="Load time"
157
-?5005="ms"
158
-?5006="Pixel ratio"
159
-?5007="Pixel format"
160
-?5008="(does not stored in metadata)"
161
-?5009="(does not match metadata)"
162
-?5010="Duration"
163
-?5011="(does not stored in metadata,\nbut detected from file name)"
164
-?5300="Title"
165
-?5301="Composer"
166
-?5302="Artist"
167
-?5303="Album artist"
168
-?5304="Album"
169
-?5305="Disc"
170
-?5306="Nb. of discs"
171
-?5307="Genre"
172
-?5308="Comment"
173
-?5309="Notes"
174
-?5310="Description"
175
-?5311="Publisher"
176
-?5312="Copyright"
177
-?5313="Encoder"
178
-?5314="Engineer"
179
-?5315="Source"
180
-?5316="Creation time"
181
-?5317="Date"
182
-?5318="Year"
183
-?5319="Language"
184
-?5320="Track"
185
-?5321="Nb. of tracks"
186
-?5322="Track gain"
187
-?5323="Track peak"
188
-?5324="Album gain"
189
-?5325="Album peak"
190
-6000="나가기"
191
-6001="전환 전체화면/윈도화면"
192
-?6002="Show/hide FPS meter"
193
-6003="입력 스테레오 형식: 자동감지"
194
-6004="입력 스테레오 형식: 모노"
195
-6005="입력 스테레오 형식: 상/하"
196
-6006="입력 스테레오 형식: 크로스-아이"
197
-?6007="Show file info"
198
-?6008="Playlist - Go to the first item"
199
-?6009="Playlist - Go to the last item"
200
-6010="앞 파일 재생"
201
sview-15_10.tar.gz/StMoviePlayer/lang/russian/StMoviePlayer.lng -> sview-15_11.tar.gz/StMoviePlayer/lang/russian/StMoviePlayer.lng
Changed
201
1
2
# Russian translation file for StMoviePlayer program
3
# @author Kirill Gavrilov
4
--------
5
-1002="Поменять ракурсы местами"
6
-1003="Отключить реверс ракурсов"
7
-1004="Исходный стереоформат:"
8
-1015="Открыть видеофайл"
9
-1020="Пауза/Воспроизведение"
10
-1021="Отобразить/Скрыть\nсписок файлов"
11
-1022="Предыдущий файл"
12
-1023="Следующий файл"
13
-1029="Оконный/Полноэкранный\nрежим просмотра"
14
-1100="Медиа"
15
-1101="Открыть видео..."
16
-1102="Сохранить кадр..."
17
-1103="Исходный стереоформат"
18
-1170="Информация о файле"
19
-1104="Аудио устройство"
20
-1105="Случайный порядок"
21
-1106="Последние файлы"
22
-1107="Декодирование видео на GPU"
23
-1108="Web UI"
24
-1109="Выход"
25
-1110="Из одного файла"
26
-1111="Левый+Правый файлы"
27
-1130="Исходный"
28
-1131="Моно"
29
-1132="Перекрёстная пара"
30
-1133="Параллельная пара"
31
-1134="Вертикальная пара (П/Л)"
32
-1135="Вертикальная пара (Л/П)"
33
-1136="Чересстрочный"
34
-1137="Анаглиф (Красно-Голубой)"
35
-1138="Анаглиф (Пурпурный)"
36
-1139="Анаглиф (Жёлтый)"
37
-1140="Чередование кадров"
38
-1141="2x720p in 1080p tiled"
39
-1142="2 потока"
40
-1160="Очистить историю"
41
-1180="Отключить"
42
-1181="Запустить один раз"
43
-1182="Запускать при старте"
44
-1185="Показывать ошибки"
45
-1186="Web-интерфейс не может быть запущен на порте {0}!"
46
-1200="Вид"
47
-1201="Вывод стерео"
48
-1202="Полный экран"
49
-1203="Сбросить"
50
-1204="Реверс ракурсов"
51
-1205="Соотношение сторон"
52
-1206="Сглаживание текстур"
53
-1207="Цветокоррекция"
54
-1208="Панорама"
55
-1210="Стерео"
56
-1211="Левый ракурс"
57
-1212="Правый ракурс"
58
-1213="Параллельная пара"
59
-1214="Перекрёстная пара"
60
-1140="Чередование кадров"
61
-1250="Исходное"
62
-1251="Запомнить"
63
-?1252="Heal anamorphic 1080p/720p"
64
-1260="Без сглаживания"
65
-1261="Линейное"
66
-1262="Blend Deinterlace"
67
-1270="Сбросить настройки"
68
-1271="Яркость"
69
-1272="Насыщенность"
70
-1273="Гамма"
71
-1280="Плоскость"
72
-1281="Сфера"
73
-1282="Цилиндр
74
-1283="Куб"
75
-1285="Отслеживать ориентацию"
76
-1286="Отслеживать ориентацию (poor)"
77
-1300="Аудио"
78
-1301="Без звука"
79
-1302="Задержка звука"
80
-1303="Добавить дорожку из файла"
81
-1320="Синхронизация видео со звуком"
82
-1321="Введите положительное значение, если звук опережает видео, и отрицательное в противном случае."
83
-1322="Задержка звука:"
84
-1323="секунд"
85
-1350="Субтитры"
86
-1351="Без титров"
87
-1353="Добавить файл"
88
-1400="Выбрать устройство"
89
-1401="О модуле..."
90
-1402="FPS Control"
91
-1420="Верт. синхронизация"
92
-1421="Отображать FPS"
93
-1422="Ограничить использование CPU"
94
-1500="Помощь"
95
-1501="О программе..."
96
-1502="Проверить обновления"
97
-1503="Открыть лицензию"
98
-1504="Language"
99
-1505="Блокировать спящий режим"
100
-1506="Подсказки"
101
-1507="Экспериментальные функции"
102
-1508="О системе"
103
-1509="Масштаб. интерфейса"
104
-1510="Горячие клавиши"
105
-1511="Настройки"
106
-1520="Сейчас"
107
-1521="Каждый день"
108
-1522="Каждую неделю"
109
-1523="Каждый год"
110
-1524="Никогда"
111
-1550="Никогда"
112
-1551="Всегда"
113
-1552="Во время воспроизведения"
114
-1553="В полноэкранном режиме"
115
-1354="Размер текста"
116
-1355="Параллакс"
117
-1356="Text parser"
118
-1357="Положение"
119
-1358="Сверху"
120
-1359="Снизу"
121
-1360="Plain text"
122
-1361="Lite HTML"
123
-1590="Мелко"
124
-1591="Нормально"
125
-1592="Крупно"
126
-1593="Форсировать HiDPI 2X"
127
-2000="Выберите видеофайл"
128
-2001="Выберите видеофайл с ЛЕВЫМ ракурсом"
129
-2002="Выберите видеофайл с ПРАВЫМ ракурсом"
130
-2003="Информация о файле"
131
-2004="Информация о файле недоступна"
132
-2005="Удаление файла"
133
-2006="Вы действительно хотите\n<b>удалить файл</b> минуя корзину?"
134
-2007="Активные декодеры:"
135
-2010="Выберите путь для сохранения картинки"
136
-2011="Ничего не открыто!"
137
-2012="Изображение недоступно для сохранения!"
138
-2013="Назначить новую комбинацию для\n<i>{0}</i>"
139
-2014="Конфликтует с: <i>{0}</i>"
140
-3000="sView - программа для воспроизведения видео"
141
-3001="версия"
142
-3002="Программа воспроизводит стереоскопическое видео.\n © {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}\n\nПрограмма распространяется на условиях GPL3.0"
143
-3003="Доступно обновление программы.\nВы можете загрузить новую версию с официального сайта www.sview.ru."
144
-3004="Информация о системе"
145
-4000="Закрыть"
146
-4001="Отменить"
147
-4005="Сбросить"
148
-4006="Сохранить"
149
-4007="Удалить"
150
-4008="По умолчанию"
151
-4009="Сбросить всё"
152
-4010="Установить"
153
-5000="[левый]"
154
-5001="[правый]"
155
-5002="Имена файлов"
156
-5003="Разрешение видео"
157
-5004="Время загрузки"
158
-5005="мс"
159
-5006="Пропорции пикселя"
160
-5007="Пиксельный формат"
161
-5008="(информация отсутствует в метаданных)"
162
-5009="(не соответствует метаданным)"
163
-5010="Продолжительность"
164
-5011="(информация отсутствует в метаданных,\nно была определена по имени файла)"
165
-5300="Заголовок"
166
-5301="Композитор"
167
-5302="Artist"
168
-5303="Album artist"
169
-5304="Альбом"
170
-5305="Диск"
171
-5306="Количество дисков"
172
-5307="Жанр"
173
-5308="Комментарий"
174
-5309="Примечания"
175
-5310="Описание"
176
-5311="Publisher"
177
-5312="Copyright"
178
-5313="Encoder"
179
-5314="Engineer"
180
-5315="Источник"
181
-5316="Дата создания"
182
-5317="Дата"
183
-5318="Год"
184
-5319="Язык"
185
-5320="Track"
186
-5321="Nb. of tracks"
187
-5322="Track gain"
188
-5323="Track peak"
189
-5324="Album gain"
190
-5325="Album peak"
191
-6000="Выход из программы"
192
-6001="Активирование полноэкранного режима"
193
-6002="Отображение FPS"
194
-6003="Стереоформат - Автоопределение"
195
-6004="Стереоформат - Моно"
196
-6005="Стереоформат - Вертикальная пара"
197
-6006="Стереоформат - Перекрёстная пара"
198
-6007="Информация о файле"
199
-6008="Список файлов - Перейти к первому элементу"
200
-6009="Список файлов - Перейти к последнему элементу"
201
sview-15_10.tar.gz/StOutAnaglyph/StOutAnaglyph.cbp -> sview-15_11.tar.gz/StOutAnaglyph/StOutAnaglyph.cbp
Changed
59
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/StOutAnaglyph" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Option createStaticLib="1" />
11
- <Compiler>
12
- <Add option="-O3" />
13
- <Add option="-std=c++0x" />
14
- <Add option="-Wall" />
15
- <Add option="-g" />
16
- <Add option="-shared" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add library="opengl32" />
25
- <Add library="gdi32" />
26
- <Add library="Version" />
27
- </Linker>
28
- <ExtraCommands>
29
- <Add before='cmd /c call ..\copy_res.bat $(TARGET_OUTPUT_DIR) $(TARGET_OUTPUT_BASENAME)' />
30
- </ExtraCommands>
31
- </Target>
32
<Target title="WIN_vc_x86">
33
<Option output="../bin/$(TARGET_NAME)/StOutAnaglyph" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
34
<Option object_output="obj/$(TARGET_NAME)/" />
35
36
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";2' />
37
</ExtraCommands>
38
</Target>
39
- <Target title="WIN_vc_x86_DEBUG">
40
+ <Target title="WIN_vc_AMD64_DEBUG">
41
<Option output="../bin/$(TARGET_NAME)/StOutAnaglyph" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
42
<Option object_output="obj/$(TARGET_NAME)/" />
43
<Option type="3" />
44
- <Option compiler="msvc10" />
45
+ <Option compiler="windows_sdk_x86_64" />
46
<Option createStaticLib="1" />
47
<Compiler>
48
<Add option="/MDd" />
49
50
<Option compilerVar="WINDRES" />
51
<Option target="WIN_vc_x86" />
52
<Option target="WIN_vc_AMD64" />
53
- <Option target="WIN_gcc_x86" />
54
- <Option target="WIN_vc_x86_DEBUG" />
55
+ <Option target="WIN_vc_AMD64_DEBUG" />
56
</Unit>
57
<Unit filename="lang/chinese/language.lng">
58
<Option target="<{~None~}>" />
59
sview-15_10.tar.gz/StOutAnaglyph/StOutAnaglyph.cpp -> sview-15_11.tar.gz/StOutAnaglyph/StOutAnaglyph.cpp
Changed
36
1
2
/**
3
+ * StOutAnaglyph, class providing stereoscopic output in Anaglyph format using StCore toolkit.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutAnaglyph library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutAnaglyph library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StOutAnaglyph.h"
25
26
}
27
28
void StOutAnaglyph::beforeClose() {
29
- mySettings->saveInt32Rect(ST_SETTING_WINDOWPOS, StWindow::getWindowedPlacement());
30
+ if(isMovable() && myWasUsed) {
31
+ mySettings->saveInt32Rect(ST_SETTING_WINDOWPOS, StWindow::getWindowedPlacement());
32
+ }
33
mySettings->saveParam(ST_SETTING_GLASSES, params.Glasses);
34
mySettings->saveParam(ST_SETTING_REDCYAN, params.RedCyan);
35
mySettings->saveParam(ST_SETTING_AMBERBLUE, params.AmberBlue);
36
sview-15_10.tar.gz/StOutAnaglyph/StOutAnaglyph.h -> sview-15_11.tar.gz/StOutAnaglyph/StOutAnaglyph.h
Changed
25
1
2
/**
3
+ * StOutAnaglyph, class providing stereoscopic output in Anaglyph format using StCore toolkit.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutAnaglyph library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutAnaglyph library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StOutAnaglyph_h_
25
sview-15_10.tar.gz/StOutAnaglyph/lang/chinese/StOutAnaglyph.lng -> sview-15_11.tar.gz/StOutAnaglyph/lang/chinese/StOutAnaglyph.lng
Changed
39
1
2
•# Chinese translation file for StOutAnaglyph library
3
# @author YSC
4
--------
5
-1000="分色眼镜"
6
-1001="滤色简单眼镜. 通用"
7
-1010="眼镜类型"
8
-1011="红-青"
9
-1012="黄-蓝"
10
-1013="绿-洋红"
11
-1102="红-青 滤镜"
12
-1120="单画面"
13
-1121="调节"
14
-1122="变灰"
15
-1123="黑"
16
-1103="黄-蓝 滤镜"
17
-1130="单画面"
18
-1131="Dubios"
19
-2000="sView - 分色输出模块"
20
-2001="版本"
21
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
22
+1000=分色眼镜
23
+1001=滤色简单眼镜. 通用
24
+1010=眼镜类型
25
+1011=红-青
26
+1012=黄-蓝
27
+1013=绿-洋红
28
+1102=红-青 滤镜
29
+1120=单画面
30
+1121=调节
31
+1122=变灰
32
+1123=黑
33
+1103=黄-蓝 滤镜
34
+1130=单画面
35
+1131=Dubios
36
+2000=sView - 分色输出模块
37
+2001=版本
38
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
39
sview-15_10.tar.gz/StOutAnaglyph/lang/czech/StOutAnaglyph.lng -> sview-15_11.tar.gz/StOutAnaglyph/lang/czech/StOutAnaglyph.lng
Changed
7
1
2
1131=Dubios
3
2000=sView - modul pro výstup anaglyf
4
2001=verze
5
-2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}\n\nБиблиотека распространяется на условиях LGPL3.0
6
+2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}
7
sview-15_10.tar.gz/StOutAnaglyph/lang/english/StOutAnaglyph.lng -> sview-15_11.tar.gz/StOutAnaglyph/lang/english/StOutAnaglyph.lng
Changed
39
1
2
# English translation file for StOutAnaglyph library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Anaglyph glasses"
6
-1001="Simple glasses with color-filters. Commonly used"
7
-1010="Glasses type"
8
-1011="Red-Cyan (R+GB)"
9
-1012="Yellow-Blue (RG+B)"
10
-1013="Green-Magenta (G+RB)"
11
-1102="Red-Cyan filter"
12
-1120="Simple"
13
-1121="Optimized"
14
-1122="Grayed"
15
-1123="Dark"
16
-1103="Yellow-Blue filter"
17
-1130="Simple"
18
-1131="Dubios"
19
-2000="sView - Anaglyph Output module"
20
-2001="version"
21
-2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
22
+1000=Anaglyph glasses
23
+1001=Simple glasses with color-filters. Commonly used
24
+1010=Glasses type
25
+1011=Red-Cyan (R+GB)
26
+1012=Yellow-Blue (RG+B)
27
+1013=Green-Magenta (G+RB)
28
+1102=Red-Cyan filter
29
+1120=Simple
30
+1121=Optimized
31
+1122=Grayed
32
+1123=Dark
33
+1103=Yellow-Blue filter
34
+1130=Simple
35
+1131=Dubios
36
+2000=sView - Anaglyph Output module
37
+2001=version
38
+2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
39
sview-15_10.tar.gz/StOutAnaglyph/lang/french/StOutAnaglyph.lng -> sview-15_11.tar.gz/StOutAnaglyph/lang/french/StOutAnaglyph.lng
Changed
39
1
2
# French translation file for StOutAnaglyph library
3
# @author gramoun for Kirill Gavrilov
4
--------
5
-1000="Lunettes Anaglyphes"
6
-1001="Simples Lunettes avec filtre couleur. Couramment utilisées"
7
-1010="Type de verre"
8
-1011="Rouge-Bleue (R+B)"
9
-1012="Jaune-Bleue (RV+B)"
10
-1013="Vert-Magenta (V+RB)"
11
-1102="Filtre Rouge-Bleu"
12
-1120="Simple"
13
-1121="Optimisé"
14
-1122="Gris"
15
-1123="Foncé"
16
-1103="Filtre Jaune-Bleue"
17
-1130="Simple"
18
-1131="Dubios"
19
-2000="sView - Anaglyph Output module"
20
-2001="version"
21
-2002="© {0} Kirill Gavrilov <{1}>\nSite Officiel: {2}\n\nThis library is distributed under LGPL3.0"
22
+1000=Lunettes Anaglyphes
23
+1001=Simples Lunettes avec filtre couleur. Couramment utilisées
24
+1010=Type de verre
25
+1011=Rouge-Bleue (R+B)
26
+1012=Jaune-Bleue (RV+B)
27
+1013=Vert-Magenta (V+RB)
28
+1102=Filtre Rouge-Bleu
29
+1120=Simple
30
+1121=Optimisé
31
+1122=Gris
32
+1123=Foncé
33
+1103=Filtre Jaune-Bleue
34
+1130=Simple
35
+1131=Dubios
36
+2000=sView - Anaglyph Output module
37
+2001=version
38
+2002=© {0} Kirill Gavrilov <{1}>\nSite Officiel: {2}
39
sview-15_10.tar.gz/StOutAnaglyph/lang/german/StOutAnaglyph.lng -> sview-15_11.tar.gz/StOutAnaglyph/lang/german/StOutAnaglyph.lng
Changed
39
1
2
# German translation file for StOutAnaglyph library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Anaglyphenbrillen"
6
-1001="Simple glasses with color-filters. Commonly used"
7
-1010="Brillenartiger"
8
-1011="Rot-Cyan (R+GB)"
9
-1012="Gelb-Blau (RG+B)"
10
-1013="Green-Magenta (G+RB)"
11
-1102="Rot-Cyan Filter"
12
-1120="Einfach"
13
-1121="Optimiert"
14
-1122="Grayed"
15
-1123="Dunkel"
16
-1103="Gelb-Blau Filter"
17
-1130="Einfach"
18
-1131="Dubios"
19
-2000="sView - Anaglyph Ausgangsmodul"
20
-2001="Version"
21
-2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
22
+1000=Anaglyphenbrillen
23
+1001=Simple glasses with color-filters. Commonly used
24
+1010=Brillenartiger
25
+1011=Rot-Cyan (R+GB)
26
+1012=Gelb-Blau (RG+B)
27
+1013=Green-Magenta (G+RB)
28
+1102=Rot-Cyan Filter
29
+1120=Einfach
30
+1121=Optimiert
31
+1122=Grayed
32
+1123=Dunkel
33
+1103=Gelb-Blau Filter
34
+1130=Einfach
35
+1131=Dubios
36
+2000=sView - Anaglyph Ausgangsmodul
37
+2001=Version
38
+2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
39
sview-15_10.tar.gz/StOutAnaglyph/lang/korean/StOutAnaglyph.lng -> sview-15_11.tar.gz/StOutAnaglyph/lang/korean/StOutAnaglyph.lng
Changed
39
1
2
# English translation file for StOutAnaglyph library
3
# @author Kirill Gavrilov
4
--------
5
-?1000="Anaglyph glasses"
6
-?1001="Simple glasses with color-filters. Commonly used"
7
-?1010="Glasses type"
8
-?1011="Red-Cyan (R+GB)"
9
-?1012="Yellow-Blue (RG+B)"
10
-?1013="Green-Magenta (G+RB)"
11
-?1102="Red-Cyan filter"
12
-?1120="Simple"
13
-?1121="Optimized"
14
-?1122="Grayed"
15
-?1123="Dark"
16
-?1103="Yellow-Blue filter"
17
-?1130="Simple"
18
-?1131="Dubios"
19
-?2000="sView - Anaglyph Output module"
20
-?2001="version"
21
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
22
+?1000=Anaglyph glasses
23
+?1001=Simple glasses with color-filters. Commonly used
24
+?1010=Glasses type
25
+?1011=Red-Cyan (R+GB)
26
+?1012=Yellow-Blue (RG+B)
27
+?1013=Green-Magenta (G+RB)
28
+?1102=Red-Cyan filter
29
+?1120=Simple
30
+?1121=Optimized
31
+?1122=Grayed
32
+?1123=Dark
33
+?1103=Yellow-Blue filter
34
+?1130=Simple
35
+?1131=Dubios
36
+?2000=sView - Anaglyph Output module
37
+?2001=version
38
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
39
sview-15_10.tar.gz/StOutAnaglyph/lang/russian/StOutAnaglyph.lng -> sview-15_11.tar.gz/StOutAnaglyph/lang/russian/StOutAnaglyph.lng
Changed
39
1
2
# Russian translation file for StOutAnaglyph library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Анаглифные очки"
6
-1001="Очки с цветовыми фильтрами"
7
-1010="Тип очков"
8
-1011="Красно-голубые"
9
-1012="Жёлто-Синие"
10
-1013="Зелёно-Пурпурные"
11
-1102="Красно-голубой фильтр"
12
-1120="Простой"
13
-1121="Оптимизированный"
14
-1122="Серый"
15
-1123="Тёмный"
16
-1103="Жёлто-Синий фильтр"
17
-1130="Простой"
18
-1131="Dubios"
19
-2000="sView - модуль вывода для Анаглифных очков"
20
-2001="версия"
21
-2002="© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}\n\nБиблиотека распространяется на условиях LGPL3.0"
22
+1000=Анаглифные очки
23
+1001=Очки с цветовыми фильтрами
24
+1010=Тип очков
25
+1011=Красно-голубые
26
+1012=Жёлто-Синие
27
+1013=Зелёно-Пурпурные
28
+1102=Красно-голубой фильтр
29
+1120=Простой
30
+1121=Оптимизированный
31
+1122=Серый
32
+1123=Тёмный
33
+1103=Жёлто-Синий фильтр
34
+1130=Простой
35
+1131=Dubios
36
+2000=sView - модуль вывода для Анаглифных очков
37
+2001=версия
38
+2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}
39
sview-15_10.tar.gz/StOutAnaglyph/shaders/fAnaglyphGray.shf -> sview-15_11.tar.gz/StOutAnaglyph/shaders/fAnaglyphGray.shf
Changed
24
1
2
* Gray Anaglyph fragment shader.
3
* Copyright © 2007-2011 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutAnaglyph library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutAnaglyph library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
/**
24
sview-15_10.tar.gz/StOutAnaglyph/shaders/fAnaglyphGreen.shf -> sview-15_11.tar.gz/StOutAnaglyph/shaders/fAnaglyphGreen.shf
Changed
24
1
2
* Simple Green-Magenta Anaglyphs fragment shader.
3
* Copyright © 2010 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutAnaglyph library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutAnaglyph library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
uniform sampler2D texL, texR;
24
sview-15_10.tar.gz/StOutAnaglyph/shaders/fAnaglyphOptim.shf -> sview-15_11.tar.gz/StOutAnaglyph/shaders/fAnaglyphOptim.shf
Changed
24
1
2
* Optimized Anaglyphs (StereoVision) fragment shader.
3
* Copyright © 2007-2010 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutAnaglyph library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutAnaglyph library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
// http://research.csc.ncsu.edu/stereographics/LS.pdf
24
sview-15_10.tar.gz/StOutAnaglyph/shaders/fAnaglyphSimple.shf -> sview-15_11.tar.gz/StOutAnaglyph/shaders/fAnaglyphSimple.shf
Changed
24
1
2
* Simple Anaglyphs fragment shader.
3
* Copyright © 2007-2010 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutAnaglyph library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutAnaglyph library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
uniform sampler2D texL, texR;
24
sview-15_10.tar.gz/StOutAnaglyph/shaders/fAnaglyphTrue.shf -> sview-15_11.tar.gz/StOutAnaglyph/shaders/fAnaglyphTrue.shf
Changed
24
1
2
* True (dark) Anaglyph fragment shader.
3
* Copyright © 2007-2010 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutAnaglyph library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutAnaglyph library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
/**
24
sview-15_10.tar.gz/StOutAnaglyph/shaders/fAnaglyphYellow.shf -> sview-15_11.tar.gz/StOutAnaglyph/shaders/fAnaglyphYellow.shf
Changed
24
1
2
* Simple Yellow Anaglyphs fragment shader.
3
* Copyright © 2007-2010 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutAnaglyph library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutAnaglyph library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
uniform sampler2D texL, texR;
24
sview-15_10.tar.gz/StOutAnaglyph/shaders/fAnaglyphYellowDubois.shf -> sview-15_11.tar.gz/StOutAnaglyph/shaders/fAnaglyphYellowDubois.shf
Changed
24
1
2
* Dubois amber blue anaglyph fragment shader.
3
* Copyright © 2012 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutAnaglyph library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutAnaglyph library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
/**
24
sview-15_10.tar.gz/StOutAnaglyph/shaders/vAnaglyph.shv -> sview-15_11.tar.gz/StOutAnaglyph/shaders/vAnaglyph.shv
Changed
24
1
2
/**
3
* Copyright © 2009-2010 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutAnaglyph library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutAnaglyph library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
// per-vertex input
24
sview-15_10.tar.gz/StOutDistorted/StOutDistorted.cbp -> sview-15_11.tar.gz/StOutDistorted/StOutDistorted.cbp
Changed
60
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/libStOutDistorted" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Option createStaticLib="1" />
11
- <Compiler>
12
- <Add option="-O3" />
13
- <Add option="-std=c++0x" />
14
- <Add option="-Wall" />
15
- <Add option="-g" />
16
- <Add option="-shared" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add library="opengl32" />
25
- <Add library="gdi32" />
26
- <Add library="Version" />
27
- </Linker>
28
- <ExtraCommands>
29
- <Add before='cmd /c call ..\copy_res.bat $(TARGET_OUTPUT_DIR) $(TARGET_OUTPUT_BASENAME)' />
30
- </ExtraCommands>
31
- </Target>
32
<Target title="WIN_vc_x86">
33
<Option output="../bin/$(TARGET_NAME)/StOutDistorted" prefix_auto="1" extension_auto="1" />
34
<Option object_output="obj/$(TARGET_NAME)/" />
35
36
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";2' />
37
</ExtraCommands>
38
</Target>
39
- <Target title="WIN_vc_x86_DEBUG">
40
+ <Target title="WIN_vc_AMD64_DEBUG">
41
<Option output="../bin/$(TARGET_NAME)/StOutDistorted" prefix_auto="1" extension_auto="1" />
42
<Option object_output="obj/$(TARGET_NAME)/" />
43
<Option type="3" />
44
- <Option compiler="msvc10" />
45
+ <Option compiler="windows_sdk_x86_64" />
46
<Option createStaticLib="1" />
47
<Compiler>
48
<Add option="/MDd" />
49
50
<Unit filename="StOutDistorted.cpp" />
51
<Unit filename="StOutDistorted.h" />
52
<Unit filename="StOutDistorted.rc">
53
- <Option target="WIN_gcc_x86" />
54
<Option target="WIN_vc_x86" />
55
- <Option target="WIN_vc_x86_DEBUG" />
56
+ <Option target="WIN_vc_AMD64_DEBUG" />
57
<Option target="WIN_vc_AMD64" />
58
</Unit>
59
<Unit filename="lang/chinese/language.lng">
60
sview-15_10.tar.gz/StOutDistorted/StOutDistorted.cpp -> sview-15_11.tar.gz/StOutDistorted/StOutDistorted.cpp
Changed
201
1
2
/**
3
+ * StOutDistorted, class providing stereoscopic output in anamorph side by side format using StCore toolkit.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutDual library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutDual library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StOutDistorted.h"
25
26
#include <StGL/StGLEnums.h>
27
#include <StGL/StGLProgram.h>
28
#include <StGL/StGLFrameBuffer.h>
29
+#include <StGL/StGLArbFbo.h>
30
#include <StGLCore/StGLCore20.h>
31
#include <StSettings/StSettings.h>
32
#include <StSettings/StTranslations.h>
33
34
#ifdef ST_HAVE_LIBOVR
35
36
#include <OVR.h>
37
-//#include <OVR_CAPI_GL.h> // broken SDK
38
-#include <../Src/OVR_CAPI_GL.h>
39
+#include <OVR_CAPI_GL.h>
40
41
#ifdef _MSC_VER
42
- #ifdef _DEBUG
43
- #if defined(_WIN64) || defined(__WIN64__)
44
- #pragma comment(lib, "libovr64d.lib")
45
- #else
46
- #pragma comment(lib, "libovrd.lib")
47
- #endif
48
- #else
49
- #if defined(_WIN64) || defined(__WIN64__)
50
- #pragma comment(lib, "libovr64.lib")
51
- #else
52
- #pragma comment(lib, "libovr.lib")
53
- #endif
54
- #endif
55
- #pragma comment(lib, "Winmm.lib")
56
- #pragma comment(lib, "Ws2_32.lib") // requires Windows Vista+
57
+ #pragma comment(lib, "LibOVR.lib")
58
#endif
59
60
#endif
61
62
static const char ST_SETTING_DEVICE_ID[] = "deviceId";
63
static const char ST_SETTING_WINDOWPOS[] = "windowPos";
64
static const char ST_SETTING_LAYOUT[] = "layout";
65
- static const char ST_SETTING_ANAMORPH[] = "anamorph";
66
static const char ST_SETTING_MONOCLONE[] = "monoClone";
67
static const char ST_SETTING_MARGINS[] = "margins";
68
static const char ST_SETTING_WARP_COEF[] = "warpCoef";
69
70
STTR_PARAMETER_LAYOUT = 1110,
71
STTR_PARAMETER_LAYOUT_SBS = 1111,
72
STTR_PARAMETER_LAYOUT_OVERUNDER = 1112,
73
+ STTR_PARAMETER_LAYOUT_SBS_ANAMORPH = 1113,
74
+ STTR_PARAMETER_LAYOUT_OVERUNDER_ANAMORPH = 1114,
75
STTR_PARAMETER_DISTORTION = 1120,
76
STTR_PARAMETER_DISTORTION_OFF = 1121,
77
STTR_PARAMETER_MONOCLONE = 1123,
78
79
void StOutDistorted::getOptions(StParamsList& theList) const {
80
if(myDevice != DEVICE_OCULUS) {
81
theList.add(params.Layout);
82
- theList.add(params.Anamorph);
83
}
84
theList.add(params.MonoClone);
85
}
86
87
myChromAb(0.996f, -0.004f, 1.014f, 0.0f),
88
//myChromAb(1.0f, 0.0f, 1.0f, 0.0f),
89
myOvrHmd(NULL),
90
+ myOvrSizeX(0),
91
+ myOvrSizeY(0),
92
+#ifdef ST_HAVE_LIBOVR
93
+ myOvrSwapTexture(NULL),
94
+ myOvrMirrorTexture(NULL),
95
+ myOvrMirrorFbo(0),
96
+#endif
97
myToReduceGui(false),
98
myToShowCursor(true),
99
myToCompressMem(myInstancesNb.increment() > 1),
100
myIsBroken(false),
101
- myIsStereoOn(false) {
102
-
103
+ myIsStereoOn(false),
104
+ myIsHdmiPack(false) {
105
#ifdef ST_HAVE_LIBOVR
106
- ovr_Initialize();
107
+ myOvrSwapFbo[0] = 0;
108
+ myOvrSwapFbo[1] = 0;
109
#endif
110
-
111
const StSearchMonitors& aMonitors = StWindow::getMonitors();
112
StTranslations aLangMap(getResourceManager(), ST_OUT_PLUGIN_NAME);
113
114
115
+ aDescr.format("2013-2015", "kirill@sview.ru", "www.sview.ru");
116
117
// detect connected displays
118
- int aSupportLevel = ST_DEVICE_SUPPORT_NONE;
119
+ int aSupportOculus = ST_DEVICE_SUPPORT_NONE;
120
+ int aSupportParallel = ST_DEVICE_SUPPORT_NONE;
121
+ bool isHdmiPack = false;
122
for(size_t aMonIter = 0; aMonIter < aMonitors.size(); ++aMonIter) {
123
const StMonitor& aMon = aMonitors[aMonIter];
124
if(aMon.getPnPId().isStartsWith(stCString("OVR"))) {
125
// Oculus Rift
126
- aSupportLevel = ST_DEVICE_SUPPORT_HIGHT;
127
+ aSupportOculus = ST_DEVICE_SUPPORT_HIGHT;
128
break;
129
+ } else if(aMon.getVRect().width() == 1920
130
+ && aMon.getVRect().height() == 2205) {
131
+ aSupportParallel = ST_DEVICE_SUPPORT_HIGHT;
132
+ isHdmiPack = true;
133
+ } else if(aMon.getVRect().width() == 1280
134
+ && aMon.getVRect().height() == 1470) {
135
+ aSupportParallel = ST_DEVICE_SUPPORT_HIGHT;
136
+ isHdmiPack = true;
137
}
138
}
139
140
+#ifdef ST_HAVE_LIBOVR
141
+ const ovrResult anOvrRes = ovr_Initialize(NULL);
142
+ if(!OVR_SUCCESS(anOvrRes)) {
143
+ ST_ERROR_LOG("StOutDistorted, OVR initialization has failed!");
144
+ } else {
145
+ aSupportOculus = ST_DEVICE_SUPPORT_HIGHT;
146
+ }
147
+#endif
148
+
149
// devices list
150
StHandle<StOutDevice> aDevDistorted = new StOutDevice();
151
aDevDistorted->PluginId = ST_OUT_PLUGIN_NAME;
152
aDevDistorted->DeviceId = "Distorted";
153
- aDevDistorted->Priority = ST_DEVICE_SUPPORT_NONE;
154
+ aDevDistorted->Priority = aSupportParallel;
155
aDevDistorted->Name = aLangMap.changeValueId(STTR_DISTORTED_NAME, "TV (parallel pair)");
156
aDevDistorted->Desc = aLangMap.changeValueId(STTR_DISTORTED_DESC, "Distorted Output");
157
myDevices.add(aDevDistorted);
158
159
StHandle<StOutDevice> aDevOculus = new StOutDevice();
160
aDevOculus->PluginId = ST_OUT_PLUGIN_NAME;
161
aDevOculus->DeviceId = "Oculus";
162
- aDevOculus->Priority = aSupportLevel;
163
+ aDevOculus->Priority = aSupportOculus;
164
aDevOculus->Name = aLangMap.changeValueId(STTR_OCULUS_NAME, "Oculus Rift");
165
aDevOculus->Desc = aLangMap.changeValueId(STTR_OCULUS_DESC, "Distorted Output");
166
myDevices.add(aDevOculus);
167
168
}
169
170
// Distortion parameters
171
- params.Anamorph = new StBoolParamNamed(false, "Anamorph");
172
- mySettings->loadParam(ST_SETTING_ANAMORPH, params.Anamorph);
173
params.MonoClone = new StBoolParamNamed(false, aLangMap.changeValueId(STTR_PARAMETER_MONOCLONE, "Show Mono in Stereo"));
174
mySettings->loadParam(ST_SETTING_MONOCLONE, params.MonoClone);
175
176
// Layout option
177
- StHandle<StEnumParam> aLayoutParam = new StEnumParam(LAYOUT_SIDE_BY_SIDE,
178
+ StHandle<StEnumParam> aLayoutParam = new StEnumParam(isHdmiPack ? LAYOUT_OVER_UNDER : LAYOUT_SIDE_BY_SIDE_ANAMORPH,
179
aLangMap.changeValueId(STTR_PARAMETER_LAYOUT, "Layout"));
180
- aLayoutParam->changeValues().add(aLangMap.changeValueId(STTR_PARAMETER_LAYOUT_SBS, "Side-by-Side"));
181
- aLayoutParam->changeValues().add(aLangMap.changeValueId(STTR_PARAMETER_LAYOUT_OVERUNDER, "Top-and-Bottom"));
182
+ aLayoutParam->changeValues().add(aLangMap.changeValueId(STTR_PARAMETER_LAYOUT_SBS_ANAMORPH, "Side-by-Side (Anamorph)"));
183
+ aLayoutParam->changeValues().add(aLangMap.changeValueId(STTR_PARAMETER_LAYOUT_OVERUNDER_ANAMORPH, "Top-and-Bottom (Anamorph)"));
184
+ aLayoutParam->changeValues().add(aLangMap.changeValueId(STTR_PARAMETER_LAYOUT_SBS, "Side-by-Side"));
185
+ aLayoutParam->changeValues().add(aLangMap.changeValueId(STTR_PARAMETER_LAYOUT_OVERUNDER, "Top-and-Bottom") + (isHdmiPack ? " [HDMI]" : ""));
186
params.Layout = aLayoutParam;
187
mySettings->loadParam(ST_SETTING_LAYOUT, params.Layout);
188
189
190
}
191
StWindow::setPlacement(aRect, true);
192
}
193
+ checkHdmiPack();
194
StWindow::setTitle("sView - Distorted Renderer");
195
196
StRectI_t aMargins;
197
198
199
void StOutDistorted::releaseResources() {
200
if(!myContext.isNull()) {
201
sview-15_10.tar.gz/StOutDistorted/StOutDistorted.h -> sview-15_11.tar.gz/StOutDistorted/StOutDistorted.h
Changed
110
1
2
/**
3
+ * StOutDistorted, class providing stereoscopic output in anamorph side by side format using StCore toolkit.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutDual library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutDual library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StOutDistorted_h_
25
26
class StGLFrameBuffer;
27
class StGLTexture;
28
29
-struct ovrHmdDesc_;
30
-typedef const ovrHmdDesc_* ovrHmd;
31
+typedef struct ovrHmdStruct* ovrSession;
32
+typedef union ovrGLTexture_s ovrGLTexture;
33
+typedef struct ovrSwapTextureSet_ ovrSwapTextureSet;
34
35
/**
36
* This class implements stereoscopic rendering on displays
37
38
*/
39
ST_CPPEXPORT virtual void showCursor(const bool theToShow);
40
41
+ /**
42
+ * Return true if device has orientation sensor.
43
+ */
44
+ ST_CPPEXPORT virtual bool hasOrientationSensor() const;
45
+
46
+ /**
47
+ * Get head orientation.
48
+ */
49
+ ST_CPPEXPORT virtual StQuaternion<double> getDeviceOrientation() const;
50
+
51
ST_CPPEXPORT virtual GLfloat getLensDist() const;
52
53
/**
54
55
private:
56
57
/**
58
+ * Detect frame pack HMDI mode.
59
+ */
60
+ ST_LOCAL void checkHdmiPack();
61
+
62
+ /**
63
* Release GL resources before window closing.
64
*/
65
ST_LOCAL void releaseResources();
66
67
};
68
69
enum Layout {
70
- LAYOUT_SIDE_BY_SIDE = 0, //!< anamorph side by side
71
- LAYOUT_OVER_UNDER = 1, //!< anamorph over under
72
+ LAYOUT_SIDE_BY_SIDE_ANAMORPH = 0, //!< anamorph side by side
73
+ LAYOUT_OVER_UNDER_ANAMORPH = 1, //!< anamorph over under
74
+ LAYOUT_SIDE_BY_SIDE = 2, //!< full-size side by side
75
+ LAYOUT_OVER_UNDER = 3, //!< full-size over under
76
};
77
78
struct {
79
80
StHandle<StInt32Param> Layout; //!< pair layout
81
- StHandle<StBoolParam> Anamorph; //!< anamorph filter
82
StHandle<StBoolParam> MonoClone;//!< display mono in stereo
83
84
} params;
85
86
87
StMarginsI myBarMargins; //!< GUI margins
88
89
- ovrHmd myOvrHmd;
90
+ ovrSession myOvrHmd;
91
+ int myOvrSizeX;
92
+ int myOvrSizeY;
93
+ StQuaternion<double> myOvrOrient;
94
+#ifdef ST_HAVE_LIBOVR
95
+ ovrSwapTextureSet* myOvrSwapTexture;
96
+ GLuint myOvrSwapFbo[2];
97
+ ovrGLTexture* myOvrMirrorTexture;
98
+ GLuint myOvrMirrorFbo;
99
+#endif
100
101
bool myToReduceGui; //!< scale down GUI
102
bool myToShowCursor; //!< cursor visibility flag
103
bool myToCompressMem; //!< reduce memory usage
104
bool myIsBroken; //!< special flag for broke state - when FBO can not be allocated
105
bool myIsStereoOn;
106
+ bool myIsHdmiPack; //!< "frame packed" mode in HDMI 1.4a
107
108
};
109
110
sview-15_10.tar.gz/StOutDistorted/lang/chinese/StOutDistorted.lng -> sview-15_11.tar.gz/StOutDistorted/lang/chinese/StOutDistorted.lng
Changed
33
1
2
•# Chinese translation file for StOutDistorted library
3
# @author YSC
4
--------
5
-1000="TV (平行配对)"
6
-1001="扭曲输出"
7
-1002="眼镜裂隙"
8
-1003="桶变形"
9
-1110="配线"
10
-1111="左右并列"
11
-1112="上和下"
12
-1120="扭曲"
13
-1121="无"
14
-1123="单画面"
15
-2000="sView -变形输出模块"
16
-2001="版本"
17
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
18
+1000=TV (平行配对)
19
+1001=扭曲输出
20
+1002=眼镜裂隙
21
+1003=桶变形
22
+1110=配线
23
+1111=左右并列
24
+1112=上和下
25
+1113=左右并列 (Anamorph)
26
+1114=上和下 (Anamorph)
27
+1120=扭曲
28
+1121=无
29
+1123=单画面
30
+2000=sView -变形输出模块
31
+2001=版本
32
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
33
sview-15_10.tar.gz/StOutDistorted/lang/czech/StOutDistorted.lng -> sview-15_11.tar.gz/StOutDistorted/lang/czech/StOutDistorted.lng
Changed
14
1
2
1110=Uspořádání dvojice
3
1111=Vedle sebe
4
1112=Dvojice Nad/pod
5
+1113=Vedle sebe (Anamorph)
6
+1114=Dvojice Nad/pod (Anamorph)
7
1120=Filtr
8
1121=Žádný
9
1123=Zobrazit mono ve stereu
10
2000=sView - Modul deformace výstupu
11
2001=verze
12
-2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}\n\nБиблиотека распространяется на условиях LGPL3.0
13
+2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}
14
sview-15_10.tar.gz/StOutDistorted/lang/english/StOutDistorted.lng -> sview-15_11.tar.gz/StOutDistorted/lang/english/StOutDistorted.lng
Changed
33
1
2
# English translation file for StOutDistorted library
3
# @author Kirill Gavrilov
4
--------
5
-1000="TV (parallel pair)"
6
-1001="Distorted Output"
7
-1002="Oculus Rift"
8
-1003="Barrel distortion"
9
-1110="Layout"
10
-1111="Side-by-Side"
11
-1112="Top-and-Bottom"
12
-1120="Distortion"
13
-1121="None"
14
-1123="Show Mono in Stereo"
15
-2000="sView - Distorted Output module"
16
-2001="version"
17
-2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
18
+1000=TV (parallel pair)
19
+1001=Distorted Output
20
+1002=Oculus Rift
21
+1003=Barrel distortion
22
+1110=Layout
23
+1111=Side-by-Side
24
+1112=Top-and-Bottom
25
+1113=Side-by-Side (Anamorph)
26
+1114=Top-and-Bottom (Anamorph)
27
+1120=Distortion
28
+1121=None
29
+1123=Show Mono in Stereo
30
+2000=sView - Distorted Output module
31
+2001=version
32
+2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
33
sview-15_10.tar.gz/StOutDistorted/lang/french/StOutDistorted.lng -> sview-15_11.tar.gz/StOutDistorted/lang/french/StOutDistorted.lng
Changed
33
1
2
# French translation file for StOutDistorted library
3
# @author gramoun for Kirill Gavrilov
4
--------
5
-1000="TV (parallel pair)"
6
-1001="Distorted Output"
7
-1002="Oculus Rift"
8
-1003="Barrel distortion"
9
-1110="Layout"
10
-1111="Side-by-Side"
11
-1112="Top-and-Bottom"
12
-1120="Distortion"
13
-1121="None"
14
-1123="Show Mono in Stereo"
15
-2000="sView - Distorted Output module"
16
-2001="version"
17
-2002="© {0} Kirill Gavrilov <{1}>\nSite Officiel: {2}\n\nThis library is distributed under LGPL3.0"
18
+1000=TV (parallel pair)
19
+1001=Distorted Output
20
+1002=Oculus Rift
21
+1003=Barrel distortion
22
+1110=Layout
23
+1111=Side-by-Side
24
+1112=Top-and-Bottom
25
+1113=Side-by-Side (Anamorph)
26
+1114=Top-and-Bottom (Anamorph)
27
+1120=Distortion
28
+1121=None
29
+1123=Show Mono in Stereo
30
+2000=sView - Distorted Output module
31
+2001=version
32
+2002=© {0} Kirill Gavrilov <{1}>\nSite Officiel: {2}
33
sview-15_10.tar.gz/StOutDistorted/lang/german/StOutDistorted.lng -> sview-15_11.tar.gz/StOutDistorted/lang/german/StOutDistorted.lng
Changed
33
1
2
# German translation file for StOutDistorted library
3
# @author Kirill Gavrilov
4
--------
5
-1000="TV (parallel pair)"
6
-1001="Distorted Output"
7
-1002="Oculus Rift"
8
-1003="Barrel distortion"
9
-1110="Layout"
10
-1111="Side-by-Side"
11
-1112="Top-and-Bottom"
12
-1120="Verzerrung"
13
-1121="keiner"
14
-1123="Show Mono in Stereo"
15
-2000="sView - Distorted Ausgangsmodul"
16
-2001="Version"
17
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
18
+1000=TV (parallel pair)
19
+1001=Distorted Output
20
+1002=Oculus Rift
21
+1003=Barrel distortion
22
+1110=Layout
23
+1111=Side-by-Side
24
+1112=Top-and-Bottom
25
+1113=Side-by-Side (Anamorph)
26
+1114=Top-and-Bottom (Anamorph)
27
+1120=Verzerrung
28
+1121=keiner
29
+1123=Show Mono in Stereo
30
+2000=sView - Distorted Ausgangsmodul
31
+2001=Version
32
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
33
sview-15_10.tar.gz/StOutDistorted/lang/korean/StOutDistorted.lng -> sview-15_11.tar.gz/StOutDistorted/lang/korean/StOutDistorted.lng
Changed
33
1
2
# English translation file for StOutDistorted library
3
# @author Kirill Gavrilov
4
--------
5
-?1000="TV (parallel pair)"
6
-?1001="Distorted Output"
7
-?1002="Oculus Rift"
8
-?1003="Barrel distortion"
9
-?1110="Layout"
10
-?1111="Side-by-Side"
11
-?1112="Top-and-Bottom"
12
-?1120="Distortion"
13
-?1121="None"
14
-?1123="Show Mono in Stereo"
15
-?2000="sView - Distorted Output module"
16
-?2001="version"
17
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
18
+?1000=TV (parallel pair)
19
+?1001=Distorted Output
20
+?1002=Oculus Rift
21
+?1003=Barrel distortion
22
+?1110=Layout
23
+?1111=Side-by-Side
24
+?1112=Top-and-Bottom
25
+?1113=Side-by-Side (Anamorph)
26
+?1114=Top-and-Bottom (Anamorph)
27
+?1120=Distortion
28
+?1121=None
29
+?1123=Show Mono in Stereo
30
+?2000=sView - Distorted Output module
31
+?2001=version
32
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
33
sview-15_10.tar.gz/StOutDistorted/lang/russian/StOutDistorted.lng -> sview-15_11.tar.gz/StOutDistorted/lang/russian/StOutDistorted.lng
Changed
33
1
2
# Russian translation file for StOutDistorted library
3
# @author Kirill Gavrilov
4
--------
5
-1000="TV (параллельная пара)"
6
-1001="Distorted Output"
7
-1002="Oculus Rift"
8
-1003="Barrel distortion"
9
-1110="Расположение пары"
10
-1111="Горизонтальная пара"
11
-1112="Вертикальная пара"
12
-1120="Фильтр"
13
-1121="None"
14
-1123="Отображать моно в стерео"
15
-2000="sView - Distorted Output module"
16
-2001="версия"
17
-2002="© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}\n\nБиблиотека распространяется на условиях LGPL3.0"
18
+1000=TV (параллельная пара)
19
+1001=Distorted Output
20
+1002=Oculus Rift
21
+1003=Barrel distortion
22
+1110=Расположение пары
23
+1111=Горизонтальная пара
24
+1112=Вертикальная пара
25
+1113=Анаморфная горизонтальная пара
26
+1114=Анаморфная вертикальная пара
27
+1120=Фильтр
28
+1121=None
29
+1123=Отображать моно в стерео
30
+2000=sView - Distorted Output module
31
+2001=версия
32
+2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}
33
sview-15_10.tar.gz/StOutDual/StOutDual.cbp -> sview-15_11.tar.gz/StOutDual/StOutDual.cbp
Changed
59
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/libStOutDual" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Option createStaticLib="1" />
11
- <Compiler>
12
- <Add option="-O3" />
13
- <Add option="-std=c++0x" />
14
- <Add option="-Wall" />
15
- <Add option="-g" />
16
- <Add option="-shared" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add library="opengl32" />
25
- <Add library="gdi32" />
26
- <Add library="Version" />
27
- </Linker>
28
- <ExtraCommands>
29
- <Add before='cmd /c call ..\copy_res.bat $(TARGET_OUTPUT_DIR) $(TARGET_OUTPUT_BASENAME)' />
30
- </ExtraCommands>
31
- </Target>
32
<Target title="WIN_vc_x86">
33
<Option output="../bin/$(TARGET_NAME)/StOutDual" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
34
<Option object_output="obj/$(TARGET_NAME)/" />
35
36
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";2' />
37
</ExtraCommands>
38
</Target>
39
- <Target title="WIN_vc_x86_DEBUG">
40
+ <Target title="WIN_vc_AMD64_DEBUG">
41
<Option output="../bin/$(TARGET_NAME)/StOutDual" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
42
<Option object_output="obj/$(TARGET_NAME)/" />
43
<Option type="3" />
44
- <Option compiler="msvc10" />
45
+ <Option compiler="windows_sdk_x86_64" />
46
<Option createStaticLib="1" />
47
<Compiler>
48
<Add option="/MDd" />
49
50
<Option compilerVar="WINDRES" />
51
<Option target="WIN_vc_x86" />
52
<Option target="WIN_vc_AMD64" />
53
- <Option target="WIN_gcc_x86" />
54
- <Option target="WIN_vc_x86_DEBUG" />
55
+ <Option target="WIN_vc_AMD64_DEBUG" />
56
</Unit>
57
<Unit filename="lang/chinese/language.lng">
58
<Option target="<{~None~}>" />
59
sview-15_10.tar.gz/StOutDual/StOutDual.cpp -> sview-15_11.tar.gz/StOutDual/StOutDual.cpp
Changed
36
1
2
/**
3
+ * StOutDual, class providing stereoscopic output for Dual Input hardware using StCore toolkit.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutDual library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutDual library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StOutDual.h"
25
26
}
27
28
void StOutDual::beforeClose() {
29
- mySettings->saveInt32Rect(ST_SETTING_WINDOWPOS, StWindow::getWindowedPlacement());
30
+ if(isMovable() && myWasUsed) {
31
+ mySettings->saveInt32Rect(ST_SETTING_WINDOWPOS, StWindow::getWindowedPlacement());
32
+ }
33
mySettings->saveParam(ST_SETTING_SLAVE_ID, params.SlaveMonId);
34
mySettings->saveParam(ST_SETTING_MONOCLONE, params.MonoClone);
35
mySettings->saveInt32(ST_SETTING_DEVICE_ID, myDevice);
36
sview-15_10.tar.gz/StOutDual/StOutDual.h -> sview-15_11.tar.gz/StOutDual/StOutDual.h
Changed
25
1
2
/**
3
+ * StOutDual, class providing stereoscopic output for Dual Input hardware using StCore toolkit.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutDual library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutDual library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StOutDual_h_
25
sview-15_10.tar.gz/StOutDual/lang/chinese/StOutDual.lng -> sview-15_11.tar.gz/StOutDual/lang/chinese/StOutDual.lng
Changed
23
1
2
•# Chinese translation file for StOutDual library
3
# @author YSC
4
--------
5
-1000="双输出"
6
-1001="双输出设备: some HMD,镜面立体显示器, 双投影"
7
-1002="镜面输出"
8
-1003="手工镜面立体显示器 (X-向镜面)"
9
-1102="从显示器(第二个)"
10
-1103="单画面"
11
-2000="sView - 双输出模式"
12
-2001="版本"
13
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
14
+1000=双输出
15
+1001=双输出设备: some HMD,镜面立体显示器, 双投影
16
+1002=镜面输出
17
+1003=手工镜面立体显示器 (X-向镜面)
18
+1102=从显示器(第二个)
19
+1103=单画面
20
+2000=sView - 双输出模式
21
+2001=版本
22
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
23
sview-15_10.tar.gz/StOutDual/lang/czech/StOutDual.lng -> sview-15_11.tar.gz/StOutDual/lang/czech/StOutDual.lng
Changed
7
1
2
1103=Zobrazovat mono ve stereu
3
2000=sView - modul výstupu na zrcadlové a duální systémy
4
2001=verze
5
-2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}\n\nБиблиотека распространяется на условиях LGPL3.0
6
+2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}
7
sview-15_10.tar.gz/StOutDual/lang/english/StOutDual.lng -> sview-15_11.tar.gz/StOutDual/lang/english/StOutDual.lng
Changed
23
1
2
# English translation file for StOutDual library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Dual Output"
6
-1001="Stereo-device with dual input: some HMD, Mirrored Stereo monitors, Dual-Projectors"
7
-1002="Mirror Output"
8
-1003="Hand-make Mirrored Stereo monitors (mirror in X-direction)"
9
-1102="Slave Monitor"
10
-1103="Show Mono in Stereo"
11
-2000="sView - Dual Output module"
12
-2001="version"
13
-2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
14
+1000=Dual Output
15
+1001=Stereo-device with dual input: some HMD, Mirrored Stereo monitors, Dual-Projectors
16
+1002=Mirror Output
17
+1003=Hand-make Mirrored Stereo monitors (mirror in X-direction)
18
+1102=Slave Monitor
19
+1103=Show Mono in Stereo
20
+2000=sView - Dual Output module
21
+2001=version
22
+2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
23
sview-15_10.tar.gz/StOutDual/lang/french/StOutDual.lng -> sview-15_11.tar.gz/StOutDual/lang/french/StOutDual.lng
Changed
23
1
2
# French translation file for StOutDual library
3
# @author gramoun for Kirill Gavrilov
4
--------
5
-1000="Double-Sortie"
6
-1001="Sortie Stereo avec double affichage: HMD, moniteurs à miroir stéréo, Double Projecteurs"
7
-1002="Sortie Miroir"
8
-1003="moniteurs à miroir stéréo manuel(mirroir dans X-directions)"
9
-1102="Slave Monitor"
10
-1103="Show Mono in Stereo"
11
-2000="sView - Dual Output module"
12
-2001="version"
13
-2002="© {0} Kirill Gavrilov <{1}>\nSite Officiel: {2}\n\nThis library is distributed under LGPL3.0"
14
+1000=Double-Sortie
15
+1001=Sortie Stereo avec double affichage: HMD, moniteurs à miroir stéréo, Double Projecteurs
16
+1002=Sortie Miroir
17
+1003=moniteurs à miroir stéréo manuel(mirroir dans X-directions)
18
+1102=Slave Monitor
19
+1103=Show Mono in Stereo
20
+2000=sView - Dual Output module
21
+2001=version
22
+2002=© {0} Kirill Gavrilov <{1}>\nSite Officiel: {2}
23
sview-15_10.tar.gz/StOutDual/lang/german/StOutDual.lng -> sview-15_11.tar.gz/StOutDual/lang/german/StOutDual.lng
Changed
23
1
2
# German translation file for StOutDual library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Doppelausgang"
6
-1001="Stereo-device with dual input: some HMD, Mirrored Stereo monitors, Dual-Projectors"
7
-1002="Mirror Output"
8
-1003="Hand-make Mirrored Stereo monitors (mirror in X-direction)"
9
-1102="Slave Monitor"
10
-1103="Show Mono in Stereo"
11
-2000="sView - Dual Ausgangsmodul"
12
-2001="Version"
13
-2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
14
+1000=Doppelausgang
15
+1001=Stereo-device with dual input: some HMD, Mirrored Stereo monitors, Dual-Projectors
16
+1002=Mirror Output
17
+1003=Hand-make Mirrored Stereo monitors (mirror in X-direction)
18
+1102=Slave Monitor
19
+1103=Show Mono in Stereo
20
+2000=sView - Dual Ausgangsmodul
21
+2001=Version
22
+2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
23
sview-15_10.tar.gz/StOutDual/lang/korean/StOutDual.lng -> sview-15_11.tar.gz/StOutDual/lang/korean/StOutDual.lng
Changed
23
1
2
# English translation file for StOutDual library
3
# @author Kirill Gavrilov
4
--------
5
-?1000="Dual Output"
6
-?1001="Stereo-device with dual input: some HMD, Mirrored Stereo monitors, Dual-Projectors"
7
-?1002="Mirror Output"
8
-?1003="Hand-make Mirrored Stereo monitors (mirror in X-direction)"
9
-?1102="Slave Monitor"
10
-?1103="Show Mono in Stereo"
11
-?2000="sView - Dual Output module"
12
-?2001="version"
13
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
14
+?1000=Dual Output
15
+?1001=Stereo-device with dual input: some HMD, Mirrored Stereo monitors, Dual-Projectors
16
+?1002=Mirror Output
17
+?1003=Hand-make Mirrored Stereo monitors (mirror in X-direction)
18
+?1102=Slave Monitor
19
+?1103=Show Mono in Stereo
20
+?2000=sView - Dual Output module
21
+?2001=version
22
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
23
sview-15_10.tar.gz/StOutDual/lang/russian/StOutDual.lng -> sview-15_11.tar.gz/StOutDual/lang/russian/StOutDual.lng
Changed
23
1
2
# Russian translation file for StOutDual library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Двойной вывод"
6
-1001="Профессиональные HMD, зеркальные мониторы, многопроекторные системы"
7
-1002="Зеркальный вывод"
8
-1003="Самодельные зеркальные системы"
9
-1102="Второй монитор"
10
-1103="Отображать моно в стерео"
11
-2000="sView - модуль вывода на Зеркальные стереосистемы"
12
-2001="версия"
13
-2002="© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}\n\nБиблиотека распространяется на условиях LGPL3.0"
14
+1000=Двойной вывод
15
+1001=Профессиональные HMD, зеркальные мониторы, многопроекторные системы
16
+1002=Зеркальный вывод
17
+1003=Самодельные зеркальные системы
18
+1102=Второй монитор
19
+1103=Отображать моно в стерео
20
+2000=sView - модуль вывода на Зеркальные стереосистемы
21
+2001=версия
22
+2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}
23
sview-15_10.tar.gz/StOutIZ3D/StOutIZ3D.cbp -> sview-15_11.tar.gz/StOutIZ3D/StOutIZ3D.cbp
Changed
59
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/libStOutIZ3D" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Option createStaticLib="1" />
11
- <Compiler>
12
- <Add option="-O3" />
13
- <Add option="-std=c++0x" />
14
- <Add option="-Wall" />
15
- <Add option="-g" />
16
- <Add option="-shared" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add library="opengl32" />
25
- <Add library="gdi32" />
26
- <Add library="Version" />
27
- </Linker>
28
- <ExtraCommands>
29
- <Add before='cmd /c call ..\copy_res.bat $(TARGET_OUTPUT_DIR) $(TARGET_OUTPUT_BASENAME)' />
30
- </ExtraCommands>
31
- </Target>
32
<Target title="WIN_vc_x86">
33
<Option output="../bin/$(TARGET_NAME)/StOutIZ3D" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
34
<Option object_output="obj/$(TARGET_NAME)/" />
35
36
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";2' />
37
</ExtraCommands>
38
</Target>
39
- <Target title="WIN_vc_x86_DEBUG">
40
+ <Target title="WIN_vc_AMD64_DEBUG">
41
<Option output="../bin/$(TARGET_NAME)/StOutIZ3D" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
42
<Option object_output="obj/$(TARGET_NAME)/" />
43
<Option type="3" />
44
- <Option compiler="msvc10" />
45
+ <Option compiler="windows_sdk_x86_64" />
46
<Option createStaticLib="1" />
47
<Compiler>
48
<Add option="/MDd" />
49
50
<Option compilerVar="WINDRES" />
51
<Option target="WIN_vc_x86" />
52
<Option target="WIN_vc_AMD64" />
53
- <Option target="WIN_gcc_x86" />
54
- <Option target="WIN_vc_x86_DEBUG" />
55
+ <Option target="WIN_vc_AMD64_DEBUG" />
56
</Unit>
57
<Unit filename="StOutIZ3DShaders.cpp" />
58
<Unit filename="StOutIZ3DShaders.h" />
59
sview-15_10.tar.gz/StOutIZ3D/StOutIZ3D.cpp -> sview-15_11.tar.gz/StOutIZ3D/StOutIZ3D.cpp
Changed
36
1
2
/**
3
+ * StOutInterlace, class providing stereoscopic output for iZ3D monitors using StCore toolkit.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutIZ3D library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutIZ3D library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StOutIZ3D.h"
25
26
}
27
28
void StOutIZ3D::beforeClose() {
29
- mySettings->saveInt32Rect(ST_SETTING_WINDOWPOS, StWindow::getWindowedPlacement());
30
+ if(isMovable() && myWasUsed) {
31
+ mySettings->saveInt32Rect(ST_SETTING_WINDOWPOS, StWindow::getWindowedPlacement());
32
+ }
33
mySettings->saveParam(ST_SETTING_TABLE, params.Glasses);
34
mySettings->flush();
35
}
36
sview-15_10.tar.gz/StOutIZ3D/StOutIZ3D.h -> sview-15_11.tar.gz/StOutIZ3D/StOutIZ3D.h
Changed
25
1
2
/**
3
+ * StOutInterlace, class providing stereoscopic output for iZ3D monitors using StCore toolkit.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutIZ3D library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutIZ3D library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StOutIZ3D_h_
25
sview-15_10.tar.gz/StOutIZ3D/StOutIZ3DShaders.cpp -> sview-15_11.tar.gz/StOutIZ3D/StOutIZ3DShaders.cpp
Changed
25
1
2
/**
3
+ * StOutInterlace, class providing stereoscopic output for iZ3D monitors using StCore toolkit.
4
* Copyright © 2009-2012 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutIZ3D library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutIZ3D library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StOutIZ3DShaders.h"
25
sview-15_10.tar.gz/StOutIZ3D/StOutIZ3DShaders.h -> sview-15_11.tar.gz/StOutIZ3D/StOutIZ3DShaders.h
Changed
25
1
2
/**
3
+ * StOutInterlace, class providing stereoscopic output for iZ3D monitors using StCore toolkit.
4
* Copyright © 2009-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutIZ3D library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutIZ3D library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StOutIZ3DShaders_h_
25
sview-15_10.tar.gz/StOutIZ3D/lang/chinese/StOutIZ3D.lng -> sview-15_11.tar.gz/StOutIZ3D/lang/chinese/StOutIZ3D.lng
Changed
23
1
2
•# Chinese translation file for StOutIZ3D library
3
# @author YSC
4
--------
5
-1000="IZ3D 显示"
6
-1001="IZ3D 显示"
7
-1102="iZ3D 眼镜"
8
-1120="传统"
9
-1121="现代"
10
-1122="传统 (快)"
11
-2000="sView - iZ3D 输出模式"
12
-2001="版本"
13
-?2002="© {0} Kirill Gavrilov <{1}>\n© 2007-2009 iZ3D LLC\nOfficial site: {2}\nSite iZ3D LLC: www.iz3d.com\n\nThis library is distributed under LGPL3.0"
14
+1000=IZ3D 显示
15
+1001=IZ3D 显示
16
+1102=iZ3D 眼镜
17
+1120=传统
18
+1121=现代
19
+1122=传统 (快)
20
+2000=sView - iZ3D 输出模式
21
+2001=版本
22
+?2002=© {0} Kirill Gavrilov <{1}>\n© 2007-2009 iZ3D LLC\nOfficial site: {2}\nSite iZ3D LLC: www.iz3d.com
23
sview-15_10.tar.gz/StOutIZ3D/lang/czech/StOutIZ3D.lng -> sview-15_11.tar.gz/StOutIZ3D/lang/czech/StOutIZ3D.lng
Changed
7
1
2
1122=Klasické (rychlé)
3
2000=sView - Modul stereovýstupu pro monitor iZ3D
4
2001=версия
5
-2002=© {0} Гаврилов Кирилл <{1}>\n© 2007-2009 iZ3D LLC\nОфициальный сайт: {2}\nСайт iZ3D LLC: www.iz3d.com\n\nБиблиотека распространяется на условиях LGPL3.0
6
+2002=© {0} Гаврилов Кирилл <{1}>\n© 2007-2009 iZ3D LLC\nОфициальный сайт: {2}\nСайт iZ3D LLC: www.iz3d.com
7
sview-15_10.tar.gz/StOutIZ3D/lang/english/StOutIZ3D.lng -> sview-15_11.tar.gz/StOutIZ3D/lang/english/StOutIZ3D.lng
Changed
23
1
2
# English translation file for StOutIZ3D library
3
# @author Kirill Gavrilov
4
--------
5
-1000="IZ3D Display"
6
-1001="IZ3D Display"
7
-1102="iZ3D glasses"
8
-1120="Classic"
9
-1121="Modern"
10
-1122="Classic (fast)"
11
-2000="sView - iZ3D Output module"
12
-2001="version"
13
-2002="© {0} Kirill Gavrilov <{1}>\n© 2007-2009 iZ3D LLC\nOfficial site: {2}\nSite iZ3D LLC: www.iz3d.com\n\nThis library is distributed under LGPL3.0"
14
+1000=IZ3D Display
15
+1001=IZ3D Display
16
+1102=iZ3D glasses
17
+1120=Classic
18
+1121=Modern
19
+1122=Classic (fast)
20
+2000=sView - iZ3D Output module
21
+2001=version
22
+2002=© {0} Kirill Gavrilov <{1}>\n© 2007-2009 iZ3D LLC\nOfficial site: {2}\nSite iZ3D LLC: www.iz3d.com
23
sview-15_10.tar.gz/StOutIZ3D/lang/french/StOutIZ3D.lng -> sview-15_11.tar.gz/StOutIZ3D/lang/french/StOutIZ3D.lng
Changed
23
1
2
# French translation file for StOutIZ3D library
3
# @author gramoun for Kirill Gavrilov
4
--------
5
-1000="Affichage IZ3D"
6
-1001="Affichage IZ3D"
7
-1102="Lunettes iZ3D"
8
-1120="Classique"
9
-1121="Moderne"
10
-1122="Classice (rapide)"
11
-2000="sView - iZ3D Output module"
12
-2001="version"
13
-?2002="© {0} Kirill Gavrilov <{1}>\n© 2007-2009 iZ3D LLC\nOfficial site: {2}\nSite iZ3D LLC: www.iz3d.com\n\nThis library is distributed under LGPL3.0"
14
+1000=Affichage IZ3D
15
+1001=Affichage IZ3D
16
+1102=Lunettes iZ3D
17
+1120=Classique
18
+1121=Moderne
19
+1122=Classice (rapide)
20
+2000=sView - iZ3D Output module
21
+2001=version
22
+?2002=© {0} Kirill Gavrilov <{1}>\n© 2007-2009 iZ3D LLC\nOfficial site: {2}\nSite iZ3D LLC: www.iz3d.com
23
sview-15_10.tar.gz/StOutIZ3D/lang/german/StOutIZ3D.lng -> sview-15_11.tar.gz/StOutIZ3D/lang/german/StOutIZ3D.lng
Changed
23
1
2
# German translation file for StOutIZ3D library
3
# @author Kirill Gavrilov
4
--------
5
-1000="IZ3D Bildschirmen"
6
-1001="IZ3D Bildschirmen"
7
-1102="iZ3D Brillen"
8
-1120="Klassisch"
9
-1121="Modern"
10
-1122="Klassisch (schnell)"
11
-2000="sView - iZ3D Ausgangsmodul"
12
-2001="Version"
13
-?2002="© {0} Kirill Gavrilov <{1}>\n© 2007-2009 iZ3D LLC\nOfficial site: {2}\nSite iZ3D LLC: www.iz3d.com\n\nThis library is distributed under LGPL3.0"
14
+1000=IZ3D Bildschirmen
15
+1001=IZ3D Bildschirmen
16
+1102=iZ3D Brillen
17
+1120=Klassisch
18
+1121=Modern
19
+1122=Klassisch (schnell)
20
+2000=sView - iZ3D Ausgangsmodul
21
+2001=Version
22
+?2002=© {0} Kirill Gavrilov <{1}>\n© 2007-2009 iZ3D LLC\nOfficial site: {2}\nSite iZ3D LLC: www.iz3d.com
23
sview-15_10.tar.gz/StOutIZ3D/lang/korean/StOutIZ3D.lng -> sview-15_11.tar.gz/StOutIZ3D/lang/korean/StOutIZ3D.lng
Changed
23
1
2
# English translation file for StOutIZ3D library
3
# @author Kirill Gavrilov
4
--------
5
-?1000="IZ3D Display"
6
-?1001="IZ3D Display"
7
-?1102="iZ3D glasses"
8
-?1120="Classic"
9
-?1121="Modern"
10
-?1122="Classic (fast)"
11
-?2000="sView - iZ3D Output module"
12
-?2001="version"
13
-?2002="© {0} Kirill Gavrilov <{1}>\n© 2007-2009 iZ3D LLC\nOfficial site: {2}\nSite iZ3D LLC: www.iz3d.com\n\nThis library is distributed under LGPL3.0"
14
+?1000=IZ3D Display
15
+?1001=IZ3D Display
16
+?1102=iZ3D glasses
17
+?1120=Classic
18
+?1121=Modern
19
+?1122=Classic (fast)
20
+?2000=sView - iZ3D Output module
21
+?2001=version
22
+?2002=© {0} Kirill Gavrilov <{1}>\n© 2007-2009 iZ3D LLC\nOfficial site: {2}\nSite iZ3D LLC: www.iz3d.com
23
sview-15_10.tar.gz/StOutIZ3D/lang/russian/StOutIZ3D.lng -> sview-15_11.tar.gz/StOutIZ3D/lang/russian/StOutIZ3D.lng
Changed
23
1
2
# Russian translation file for StOutIZ3D library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Монитор IZ3D"
6
-1001="Монитор IZ3D"
7
-1102="Модель очков"
8
-1120="Классика"
9
-1121="Современные"
10
-1122="Классика (быстрый)"
11
-2000="sView - модуль стереовывода на мониторы iZ3D"
12
-2001="версия"
13
-2002="© {0} Гаврилов Кирилл <{1}>\n© 2007-2009 iZ3D LLC\nОфициальный сайт: {2}\nСайт iZ3D LLC: www.iz3d.com\n\nБиблиотека распространяется на условиях LGPL3.0"
14
+1000=Монитор IZ3D
15
+1001=Монитор IZ3D
16
+1102=Модель очков
17
+1120=Классика
18
+1121=Современные
19
+1122=Классика (быстрый)
20
+2000=sView - модуль стереовывода на мониторы iZ3D
21
+2001=версия
22
+2002=© {0} Гаврилов Кирилл <{1}>\n© 2007-2009 iZ3D LLC\nОфициальный сайт: {2}\nСайт iZ3D LLC: www.iz3d.com
23
sview-15_10.tar.gz/StOutIZ3D/shaders/fIZ3DBackClassic.shf -> sview-15_11.tar.gz/StOutIZ3D/shaders/fIZ3DBackClassic.shf
Changed
24
1
2
* Copyright © 2007-2008 iZ3D LLC
3
* Copyright © 2007-2010 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutIZ3D library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutIZ3D library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
// it is always better to store variables in vectors
24
sview-15_10.tar.gz/StOutIZ3D/shaders/fIZ3DBackTable.shf -> sview-15_11.tar.gz/StOutIZ3D/shaders/fIZ3DBackTable.shf
Changed
24
1
2
* Copyright © 2007-2009 iZ3D LLC
3
* Copyright © 2007-2010 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutIZ3D library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutIZ3D library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
uniform sampler2D texL, texR, textT;
24
sview-15_10.tar.gz/StOutIZ3D/shaders/fIZ3DFrontClassic.shf -> sview-15_11.tar.gz/StOutIZ3D/shaders/fIZ3DFrontClassic.shf
Changed
24
1
2
* Copyright © 2007-2008 iZ3D LLC
3
* Copyright © 2007-2010 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutIZ3D library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutIZ3D library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
vec4 vecOne = vec4( 1.0, 1.0, 1.0, 1.0);
24
sview-15_10.tar.gz/StOutIZ3D/shaders/fIZ3DFrontTable.shf -> sview-15_11.tar.gz/StOutIZ3D/shaders/fIZ3DFrontTable.shf
Changed
24
1
2
* Copyright © 2007-2009 iZ3D LLC
3
* Copyright © 2007-2010 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutIZ3D library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutIZ3D library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
uniform sampler2D texL, texR, textT;
24
sview-15_10.tar.gz/StOutIZ3D/shaders/vIZ3D.shv -> sview-15_11.tar.gz/StOutIZ3D/shaders/vIZ3D.shv
Changed
24
1
2
/**
3
* Copyright © 2009-2010 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutIZ3D library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutIZ3D library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
// per-vertex input
24
sview-15_10.tar.gz/StOutInterlace/StOutInterlace.cbp -> sview-15_11.tar.gz/StOutInterlace/StOutInterlace.cbp
Changed
59
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/libStOutInterlace" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Option createStaticLib="1" />
11
- <Compiler>
12
- <Add option="-O3" />
13
- <Add option="-std=c++0x" />
14
- <Add option="-Wall" />
15
- <Add option="-g" />
16
- <Add option="-shared" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add library="opengl32" />
25
- <Add library="gdi32" />
26
- <Add library="Version" />
27
- </Linker>
28
- <ExtraCommands>
29
- <Add before='cmd /c call ..\copy_res.bat $(TARGET_OUTPUT_DIR) $(TARGET_OUTPUT_BASENAME)' />
30
- </ExtraCommands>
31
- </Target>
32
<Target title="WIN_vc_x86">
33
<Option output="../bin/$(TARGET_NAME)/StOutInterlace" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
34
<Option object_output="obj/$(TARGET_NAME)/" />
35
36
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";2' />
37
</ExtraCommands>
38
</Target>
39
- <Target title="WIN_vc_x86_DEBUG">
40
+ <Target title="WIN_vc_AMD64_DEBUG">
41
<Option output="../bin/$(TARGET_NAME)/StOutInterlace" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
42
<Option object_output="obj/$(TARGET_NAME)/" />
43
<Option type="3" />
44
- <Option compiler="msvc10" />
45
+ <Option compiler="windows_sdk_x86_64" />
46
<Option createStaticLib="1" />
47
<Compiler>
48
<Add option="/MDd" />
49
50
<Option compilerVar="WINDRES" />
51
<Option target="WIN_vc_x86" />
52
<Option target="WIN_vc_AMD64" />
53
- <Option target="WIN_gcc_x86" />
54
- <Option target="WIN_vc_x86_DEBUG" />
55
+ <Option target="WIN_vc_AMD64_DEBUG" />
56
</Unit>
57
<Unit filename="lang/chinese/language.lng">
58
<Option target="<{~None~}>" />
59
sview-15_10.tar.gz/StOutInterlace/StOutInterlace.cpp -> sview-15_11.tar.gz/StOutInterlace/StOutInterlace.cpp
Changed
36
1
2
/**
3
+ * StOutInterlace, class providing stereoscopic output in row interlaced format using StCore toolkit.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutInterlace library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutInterlace library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StOutInterlace.h"
25
26
}
27
28
void StOutInterlace::beforeClose() {
29
- mySettings->saveInt32Rect(ST_SETTING_WINDOWPOS, StWindow::getWindowedPlacement());
30
+ if(isMovable() && myWasUsed) {
31
+ mySettings->saveInt32Rect(ST_SETTING_WINDOWPOS, StWindow::getWindowedPlacement());
32
+ }
33
mySettings->saveParam(ST_SETTING_BIND_MONITOR, params.BindToMon);
34
mySettings->saveParam(ST_SETTING_REVERSE, params.ToReverse);
35
mySettings->saveInt32(ST_SETTING_DEVICE_ID, myDevice);
36
sview-15_10.tar.gz/StOutInterlace/StOutInterlace.h -> sview-15_11.tar.gz/StOutInterlace/StOutInterlace.h
Changed
25
1
2
/**
3
+ * StOutInterlace, class providing stereoscopic output in row interlaced format using StCore toolkit.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutInterlace library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutInterlace library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StOutInterlace_h_
25
sview-15_10.tar.gz/StOutInterlace/lang/chinese/StOutInterlace.lng -> sview-15_11.tar.gz/StOutInterlace/lang/chinese/StOutInterlace.lng
Changed
31
1
2
•# Chinese translation file for StOutInterlace library
3
# @author YSC
4
--------
5
-1000="水平交错"
6
-1001="水平交错显示: Zalman, 现代,..."
7
-1002="垂直交错"
8
-1003="垂直交错显示"
9
-1006="DLP TV (棋盘式)"
10
-1007="DLP TV (棋盘式)"
11
-1008="交错ED显示器"
12
-1009="空间交错模式"
13
-1102="次序颠倒"
14
-1103="强制支持显示器"
15
-2000="sView - 交错输出模块"
16
-2001="版本"
17
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
18
+1000=水平交错
19
+1001=水平交错显示: Zalman, 现代,...
20
+1002=垂直交错
21
+1003=垂直交错显示
22
+1006=DLP TV (棋盘式)
23
+1007=DLP TV (棋盘式)
24
+1008=交错ED显示器
25
+1009=空间交错模式
26
+1102=次序颠倒
27
+1103=强制支持显示器
28
+2000=sView - 交错输出模块
29
+2001=版本
30
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
31
sview-15_10.tar.gz/StOutInterlace/lang/czech/StOutInterlace.lng -> sview-15_11.tar.gz/StOutInterlace/lang/czech/StOutInterlace.lng
Changed
7
1
2
1103=Provázat s monitorem
3
2000=sView - modul prokládaného zobrazování
4
2001=verze
5
-2002=© {0} Гаврилов Кирилл <{1}>\noficiální strana: {2}\n\nБиблиотека распространяется на условиях LGPL3.0
6
+2002=© {0} Гаврилов Кирилл <{1}>\noficiální strana: {2}
7
sview-15_10.tar.gz/StOutInterlace/lang/english/StOutInterlace.lng -> sview-15_11.tar.gz/StOutInterlace/lang/english/StOutInterlace.lng
Changed
31
1
2
# English translation file for StOutInterlace library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Row Interlaced"
6
-1001="Row interlaced displays: Zalman, Hyundai,..."
7
-1002="Column Interlaced"
8
-1003="Column interlaced displays"
9
-1006="DLP TV (chessboard)"
10
-1007="DLP TV (chessboard)"
11
-1008="Interlaced ED"
12
-1009="EDimensional in interlaced mode"
13
-1102="Reverse Order"
14
-1103="Bind to supported monitor"
15
-2000="sView - Interlaced Output module"
16
-2001="version"
17
-2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
18
+1000=Row Interlaced
19
+1001=Row interlaced displays: Zalman, Hyundai,...
20
+1002=Column Interlaced
21
+1003=Column interlaced displays
22
+1006=DLP TV (chessboard)
23
+1007=DLP TV (chessboard)
24
+1008=Interlaced ED
25
+1009=EDimensional in interlaced mode
26
+1102=Reverse Order
27
+1103=Bind to supported monitor
28
+2000=sView - Interlaced Output module
29
+2001=version
30
+2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
31
sview-15_10.tar.gz/StOutInterlace/lang/french/StOutInterlace.lng -> sview-15_11.tar.gz/StOutInterlace/lang/french/StOutInterlace.lng
Changed
31
1
2
# French translation file for StOutInterlace library
3
# @author gramoun for Kirill Gavrilov
4
--------
5
-1000="Lignes entrelacées"
6
-1001="Ecrans entrelacés par lignes: Zalman, Hyundai,..."
7
-1002="Colonnes entrelacées"
8
-1003="Ecrans entrelacés par colonnes"
9
-1006="DLP TV (échiquier)"
10
-1007="DLP TV (échiquier)"
11
-1008="Interlaced ED"
12
-1009="EDimensional en mode entrelacé"
13
-1102="Inverser l'ordre"
14
-1103="Lier à écran supporté"
15
-2000="sView - Interlaced Output module"
16
-2001="version"
17
-2002="© {0} Kirill Gavrilov <{1}>\nSite Officiel: {2}\n\nThis library is distributed under LGPL3.0"
18
+1000=Lignes entrelacées
19
+1001=Ecrans entrelacés par lignes: Zalman, Hyundai,...
20
+1002=Colonnes entrelacées
21
+1003=Ecrans entrelacés par colonnes
22
+1006=DLP TV (échiquier)
23
+1007=DLP TV (échiquier)
24
+1008=Interlaced ED
25
+1009=EDimensional en mode entrelacé
26
+1102=Inverser l'ordre
27
+1103=Lier à écran supporté
28
+2000=sView - Interlaced Output module
29
+2001=version
30
+2002=© {0} Kirill Gavrilov <{1}>\nSite Officiel: {2}
31
sview-15_10.tar.gz/StOutInterlace/lang/german/StOutInterlace.lng -> sview-15_11.tar.gz/StOutInterlace/lang/german/StOutInterlace.lng
Changed
31
1
2
# German translation file for StOutInterlace library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Horizontal Interlaced"
6
-1001="Row interlaced displays: Zalman, Hyundai,..."
7
-1002="Vertikal Interlaced"
8
-1003="Column interlaced displays"
9
-1006="DLP TV (chessboard)"
10
-1007="DLP TV (chessboard)"
11
-1008="Interlaced ED"
12
-1009="EDimensional in interlaced mode"
13
-1102="Umgekehrte Reihenfolge"
14
-1103="Bind to supported monitor"
15
-2000="sView - Interlaced Ausgangsmodul"
16
-2001="Version"
17
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
18
+1000=Horizontal Interlaced
19
+1001=Row interlaced displays: Zalman, Hyundai,...
20
+1002=Vertikal Interlaced
21
+1003=Column interlaced displays
22
+1006=DLP TV (chessboard)
23
+1007=DLP TV (chessboard)
24
+1008=Interlaced ED
25
+1009=EDimensional in interlaced mode
26
+1102=Umgekehrte Reihenfolge
27
+1103=Bind to supported monitor
28
+2000=sView - Interlaced Ausgangsmodul
29
+2001=Version
30
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
31
sview-15_10.tar.gz/StOutInterlace/lang/korean/StOutInterlace.lng -> sview-15_11.tar.gz/StOutInterlace/lang/korean/StOutInterlace.lng
Changed
31
1
2
# English translation file for StOutInterlace library
3
# @author Kirill Gavrilov
4
--------
5
-?1000="Row Interlaced"
6
-?1001="Row interlaced displays: Zalman, Hyundai,..."
7
-?1002="Column Interlaced"
8
-?1003="Column interlaced displays"
9
-?1006="DLP TV (chessboard)"
10
-?1007="DLP TV (chessboard)"
11
-?1008="Interlaced ED"
12
-?1009="EDimensional in interlaced mode"
13
-?1102="Reverse Order"
14
-?1103="Bind to supported monitor"
15
-?2000="sView - Interlaced Output module"
16
-?2001="version"
17
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
18
+?1000=Row Interlaced
19
+?1001=Row interlaced displays: Zalman, Hyundai,...
20
+?1002=Column Interlaced
21
+?1003=Column interlaced displays
22
+?1006=DLP TV (chessboard)
23
+?1007=DLP TV (chessboard)
24
+?1008=Interlaced ED
25
+?1009=EDimensional in interlaced mode
26
+?1102=Reverse Order
27
+?1103=Bind to supported monitor
28
+?2000=sView - Interlaced Output module
29
+?2001=version
30
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
31
sview-15_10.tar.gz/StOutInterlace/lang/russian/StOutInterlace.lng -> sview-15_11.tar.gz/StOutInterlace/lang/russian/StOutInterlace.lng
Changed
31
1
2
# Russian translation file for StOutInterlace library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Чересстрочный вывод"
6
-1001="Чересстрочные мониторы: Zalman, Hyundai,..."
7
-1002="Column Interlaced"
8
-1003="Column interlaced displays"
9
-1006="DLP ТВ (шахматная доска)"
10
-1007="DLP ТВ (шахматная доска)"
11
-1008="Чересстрочный ED"
12
-1009="EDimensional в чересстрочном режиме"
13
-1102="Реверсировать порядок"
14
-1103="Bind to supported monitor"
15
-2000="sView - модуль Чересстрочного стереовывода"
16
-2001="версия"
17
-2002="© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}\n\nБиблиотека распространяется на условиях LGPL3.0"
18
+1000=Чересстрочный вывод
19
+1001=Чересстрочные мониторы: Zalman, Hyundai,...
20
+1002=Column Interlaced
21
+1003=Column interlaced displays
22
+1006=DLP ТВ (шахматная доска)
23
+1007=DLP ТВ (шахматная доска)
24
+1008=Чересстрочный ED
25
+1009=EDimensional в чересстрочном режиме
26
+1102=Реверсировать порядок
27
+1103=Bind to supported monitor
28
+2000=sView - модуль Чересстрочного стереовывода
29
+2001=версия
30
+2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}
31
sview-15_10.tar.gz/StOutInterlace/shaders/fEDinterlace.shf -> sview-15_11.tar.gz/StOutInterlace/shaders/fEDinterlace.shf
Changed
24
1
2
* EDimensional interlace activation fragment shader.
3
* Copyright © 2009 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutInterlace library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutInterlace library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
uniform int vpSizeY;
24
sview-15_10.tar.gz/StOutInterlace/shaders/fEDoff.shf -> sview-15_11.tar.gz/StOutInterlace/shaders/fEDoff.shf
Changed
24
1
2
* EDimensional disactivation fragment shader.
3
* Copyright © 2009 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutInterlace library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutInterlace library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
uniform int vpSizeY;
24
sview-15_10.tar.gz/StOutInterlace/shaders/vED.shv -> sview-15_11.tar.gz/StOutInterlace/shaders/vED.shv
Changed
24
1
2
/**
3
* Copyright © 2009 Kirill Gavrilov <kirill@sview.ru>
4
*
5
- * StOutInterlace library is free software: you can redistribute it and/or modify
6
- * it under the terms of the GNU Lesser General Public License as published by
7
- * the Free Software Foundation, either version 3 of the License, or
8
- * (at your option) any later version.
9
- *
10
- * StOutInterlace library is distributed in the hope that it will be useful,
11
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
12
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
13
- * See the GNU General Public License for more details.
14
- *
15
- * You should have received a copy of the GNU Lesser General Public
16
- * License along with this library.
17
- * If not, see <http://www.gnu.org/licenses/>.
18
+ * Distributed under the Boost Software License, Version 1.0.
19
+ * See accompanying file license-boost.txt or copy at
20
+ * http://www.boost.org/LICENSE_1_0.txt
21
*/
22
23
void main(void) {
24
sview-15_10.tar.gz/StOutPageFlip/StDXAqbsControl.cpp -> sview-15_11.tar.gz/StOutPageFlip/StDXAqbsControl.cpp
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2011 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if(defined(_WIN32) || defined(__WIN32__))
25
sview-15_10.tar.gz/StOutPageFlip/StDXAqbsControl.h -> sview-15_11.tar.gz/StOutPageFlip/StDXAqbsControl.h
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2011 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StDXAqbsControl_h_
25
sview-15_10.tar.gz/StOutPageFlip/StDXInfo.h -> sview-15_11.tar.gz/StOutPageFlip/StDXInfo.h
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2011 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StDXInfo_h_
25
sview-15_10.tar.gz/StOutPageFlip/StDXManager.cpp -> sview-15_11.tar.gz/StOutPageFlip/StDXManager.cpp
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifdef _WIN32
25
sview-15_10.tar.gz/StOutPageFlip/StDXManager.h -> sview-15_11.tar.gz/StOutPageFlip/StDXManager.h
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StDXManager_h_
25
sview-15_10.tar.gz/StOutPageFlip/StDXNVSurface.cpp -> sview-15_11.tar.gz/StOutPageFlip/StDXNVSurface.cpp
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if defined(_WIN32)
25
sview-15_10.tar.gz/StOutPageFlip/StDXNVSurface.h -> sview-15_11.tar.gz/StOutPageFlip/StDXNVSurface.h
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StDXNVSurface_h_
25
sview-15_10.tar.gz/StOutPageFlip/StDXNVWindow.cpp -> sview-15_11.tar.gz/StOutPageFlip/StDXNVWindow.cpp
Changed
105
1
2
/**
3
- * Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
5
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
6
*
7
- * StOutPageFlip library is free software: you can redistribute it and/or modify
8
- * it under the terms of the GNU Lesser General Public License as published by
9
- * the Free Software Foundation, either version 3 of the License, or
10
- * (at your option) any later version.
11
- *
12
- * StOutPageFlip library is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15
- * See the GNU General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU Lesser General Public
18
- * License along with this library.
19
- * If not, see <http://www.gnu.org/licenses/>.
20
+ * Distributed under the Boost Software License, Version 1.0.
21
+ * See accompanying file license-boost.txt or copy at
22
+ * http://www.boost.org/LICENSE_1_0.txt
23
*/
24
25
#ifdef _WIN32
26
27
myEventQuit (false),
28
myEventShow (false),
29
myEventHide (false),
30
- myEventUpdate(false) {
31
+ myEventUpdate(false),
32
+ myEventCursorShow(false),
33
+ myEventCursorHide(false),
34
+ myToHideCursor(false) {
35
stMemZero(myMouseState, sizeof(myMouseState));
36
stMemZero(&myWinMsg, sizeof(myWinMsg));
37
stMemZero(myKeysMap, sizeof(myKeysMap));
38
39
return true;
40
}
41
42
+void StDXNVWindow::showCursor(bool theToShow) {
43
+ if(myToHideCursor != theToShow) {
44
+ return;
45
+ }
46
+
47
+ if(theToShow) {
48
+ myEventCursorShow.set();
49
+ } else {
50
+ myEventCursorHide.set();
51
+ }
52
+ myToHideCursor = !theToShow;
53
+}
54
+
55
void StDXNVWindow::dxShow() {
56
POINT aCursorPos = {};
57
::GetCursorPos(&aCursorPos); // backup cursor position
58
59
StDXMsg_Show,
60
StDXMsg_Hide,
61
StDXMsg_Update,
62
- StDXMsg_WINDOW
63
+ StDXMsg_CursorShow,
64
+ StDXMsg_CursorHide,
65
+ StDXMsg_WINDOW,
66
+ StDXMsg_NB = StDXMsg_WINDOW
67
};
68
- HANDLE aWaitEvents[4] = {};
69
- aWaitEvents[StDXMsg_Quit] = myEventQuit .getHandle();
70
- aWaitEvents[StDXMsg_Show] = myEventShow .getHandle();
71
- aWaitEvents[StDXMsg_Hide] = myEventHide .getHandle();
72
- aWaitEvents[StDXMsg_Update] = myEventUpdate.getHandle();
73
+ HANDLE aWaitEvents[StDXMsg_NB] = {};
74
+ aWaitEvents[StDXMsg_Quit] = myEventQuit .getHandle();
75
+ aWaitEvents[StDXMsg_Show] = myEventShow .getHandle();
76
+ aWaitEvents[StDXMsg_Hide] = myEventHide .getHandle();
77
+ aWaitEvents[StDXMsg_Update] = myEventUpdate.getHandle();
78
+ aWaitEvents[StDXMsg_CursorShow] = myEventCursorShow.getHandle();
79
+ aWaitEvents[StDXMsg_CursorHide] = myEventCursorHide.getHandle();
80
81
myEventReady.set();
82
for(;;) {
83
- switch(::MsgWaitForMultipleObjects(4, aWaitEvents, FALSE, INFINITE, QS_ALLINPUT)) {
84
+ switch(::MsgWaitForMultipleObjects(StDXMsg_NB, aWaitEvents, FALSE, INFINITE, QS_ALLINPUT)) {
85
case WAIT_OBJECT_0 + StDXMsg_Quit: {
86
ST_DEBUG_LOG_AT("releaseDXWindow() [message thread]");
87
if(myIsThreadedDx) {
88
89
}
90
break;
91
}
92
+ case WAIT_OBJECT_0 + StDXMsg_CursorShow: {
93
+ ::ShowCursor(TRUE);
94
+ myEventCursorShow.reset();
95
+ break;
96
+ }
97
+ case WAIT_OBJECT_0 + StDXMsg_CursorHide: {
98
+ ::ShowCursor(FALSE);
99
+ myEventCursorHide.reset();
100
+ break;
101
+ }
102
case WAIT_OBJECT_0 + StDXMsg_WINDOW: {
103
// a windows message has arrived
104
peekMessages();
105
sview-15_10.tar.gz/StOutPageFlip/StDXNVWindow.h -> sview-15_11.tar.gz/StOutPageFlip/StDXNVWindow.h
Changed
48
1
2
/**
3
- * Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
5
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
6
*
7
- * StOutPageFlip library is free software: you can redistribute it and/or modify
8
- * it under the terms of the GNU Lesser General Public License as published by
9
- * the Free Software Foundation, either version 3 of the License, or
10
- * (at your option) any later version.
11
- *
12
- * StOutPageFlip library is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15
- * See the GNU General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU Lesser General Public
18
- * License along with this library.
19
- * If not, see <http://www.gnu.org/licenses/>.
20
+ * Distributed under the Boost Software License, Version 1.0.
21
+ * See accompanying file license-boost.txt or copy at
22
+ * http://www.boost.org/LICENSE_1_0.txt
23
*/
24
25
#ifdef _WIN32
26
27
~StDXNVWindow();
28
29
/**
30
+ * Post message to hide the cursor.
31
+ */
32
+ void showCursor(bool theToShow);
33
+
34
+ /**
35
* Specify if WGL <-> D3D interoperation extension should be used.
36
*/
37
bool toUseWglDxInterop() const {
38
39
StCondition myEventShow;
40
StCondition myEventHide;
41
StCondition myEventUpdate;
42
+ StCondition myEventCursorShow; //!< event to show cursor
43
+ StCondition myEventCursorHide; //!< event to hide cursor
44
+ bool myToHideCursor;
45
46
};
47
48
sview-15_10.tar.gz/StOutPageFlip/StGLColoredLine.cpp -> sview-15_11.tar.gz/StOutPageFlip/StGLColoredLine.cpp
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2010-2012 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StGLColoredLine.h"
25
sview-15_10.tar.gz/StOutPageFlip/StGLColoredLine.h -> sview-15_11.tar.gz/StOutPageFlip/StGLColoredLine.h
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2010-2012 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StGLColoredLine_h_
25
sview-15_10.tar.gz/StOutPageFlip/StGLControlED.cpp -> sview-15_11.tar.gz/StOutPageFlip/StGLControlED.cpp
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2010-2012 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StGLControlED.h"
25
sview-15_10.tar.gz/StOutPageFlip/StGLControlED.h -> sview-15_11.tar.gz/StOutPageFlip/StGLControlED.h
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2010-2012 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StGLControlED_h_
25
sview-15_10.tar.gz/StOutPageFlip/StGLDeviceControl.h -> sview-15_11.tar.gz/StOutPageFlip/StGLDeviceControl.h
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2010-2012 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StGLDeviceControl_h_
25
sview-15_10.tar.gz/StOutPageFlip/StOutPageFlip.cbp -> sview-15_11.tar.gz/StOutPageFlip/StOutPageFlip.cbp
Changed
66
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/libStOutPageFlip" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option object_output="obj/$(TARGET_NAME)/" />
8
- <Option type="3" />
9
- <Option compiler="gcc" />
10
- <Option createStaticLib="1" />
11
- <Compiler>
12
- <Add option="-O3" />
13
- <Add option="-std=c++0x" />
14
- <Add option="-Wall" />
15
- <Add option="-g" />
16
- <Add option="-shared" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-fcheck-new" />
20
- <Add option="-fno-strict-aliasing" />
21
- <Add option="-Wno-comment" />
22
- <Add option="-Wno-unknown-pragmas" />
23
- <Add option="-DUNICODE" />
24
- <Add option="-DST_DEBUG" />
25
- <Add option="-DST_HAVE_STCONFIG" />
26
- </Compiler>
27
- <Linker>
28
- <Add library="opengl32" />
29
- <Add library="gdi32" />
30
- <Add library="Version" />
31
- <Add library="D3D9" />
32
- <Add library="nvapi" />
33
- </Linker>
34
- <ExtraCommands>
35
- <Add before='cmd /c call ..\copy_res.bat $(TARGET_OUTPUT_DIR) $(TARGET_OUTPUT_BASENAME)' />
36
- </ExtraCommands>
37
- </Target>
38
<Target title="WIN_vc_x86">
39
<Option output="../bin/$(TARGET_NAME)/StOutPageFlip" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
40
<Option object_output="obj/$(TARGET_NAME)/" />
41
42
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";2' />
43
</ExtraCommands>
44
</Target>
45
- <Target title="WIN_vc_x86_DEBUG">
46
+ <Target title="WIN_vc_AMD64_DEBUG">
47
<Option output="../bin/$(TARGET_NAME)/StOutPageFlip" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
48
<Option object_output="obj/$(TARGET_NAME)/" />
49
<Option type="3" />
50
- <Option compiler="msvc10" />
51
+ <Option compiler="windows_sdk_x86_64" />
52
<Option createStaticLib="1" />
53
<Compiler>
54
<Add option="/MDd" />
55
56
<Unit filename="StOutPageFlip.h" />
57
<Unit filename="StOutPageFlip.rc">
58
<Option compilerVar="WINDRES" />
59
- <Option target="WIN_gcc_x86" />
60
<Option target="WIN_vc_x86" />
61
- <Option target="WIN_vc_x86_DEBUG" />
62
+ <Option target="WIN_vc_AMD64_DEBUG" />
63
<Option target="WIN_vc_AMD64" />
64
</Unit>
65
<Unit filename="StOutPageFlipExt.cpp" />
66
sview-15_10.tar.gz/StOutPageFlip/StOutPageFlip.cpp -> sview-15_11.tar.gz/StOutPageFlip/StOutPageFlip.cpp
Changed
52
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StOutPageFlip.h"
25
26
}
27
28
void StOutPageFlip::beforeClose() {
29
- mySettings->saveInt32Rect(ST_SETTING_WINDOWPOS, StWindow::getWindowedPlacement());
30
+ if(isMovable() && myWasUsed) {
31
+ mySettings->saveInt32Rect(ST_SETTING_WINDOWPOS, StWindow::getWindowedPlacement());
32
+ }
33
mySettings->saveInt32(ST_SETTING_DEVICE_ID, myDevice);
34
mySettings->saveParam(ST_SETTING_ADVANCED, params.ToShowExtra);
35
if(myWasUsed) {
36
37
#endif
38
}
39
40
+void StOutPageFlip::showCursor(const bool theToShow) {
41
+ StWindow::showCursor(theToShow);
42
+#ifdef _WIN32
43
+ if(!myOutD3d.DxWindow.isNull()) {
44
+ myOutD3d.DxWindow->showCursor(theToShow);
45
+ }
46
+#endif
47
+}
48
+
49
bool StOutPageFlip::create() {
50
StWindow::show();
51
52
sview-15_10.tar.gz/StOutPageFlip/StOutPageFlip.h -> sview-15_11.tar.gz/StOutPageFlip/StOutPageFlip.h
Changed
38
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StOutPageFlip_h_
25
26
*/
27
ST_CPPEXPORT virtual void stglDraw();
28
29
+ /**
30
+ * Show/Hide mouse cursor.
31
+ * @param theToShow true to show cursor
32
+ */
33
+ ST_CPPEXPORT virtual void showCursor(const bool theToShow);
34
+
35
protected:
36
37
ST_LOCAL void setupDevice();
38
sview-15_10.tar.gz/StOutPageFlip/StOutPageFlipExt.cpp -> sview-15_11.tar.gz/StOutPageFlip/StOutPageFlipExt.cpp
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2007-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StOutPageFlipExt.h"
25
sview-15_10.tar.gz/StOutPageFlip/StOutPageFlipExt.h -> sview-15_11.tar.gz/StOutPageFlip/StOutPageFlipExt.h
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2007-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StOutPageFlipExt_h_
25
sview-15_10.tar.gz/StOutPageFlip/StOutPageFlipStrings.h -> sview-15_11.tar.gz/StOutPageFlip/StOutPageFlipStrings.h
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2007-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StOutPageFlipStrings_h_
25
sview-15_10.tar.gz/StOutPageFlip/StQuadBufferCheck.ObjC.mm -> sview-15_11.tar.gz/StOutPageFlip/StQuadBufferCheck.ObjC.mm
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2011 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if (defined(__APPLE__))
25
sview-15_10.tar.gz/StOutPageFlip/StQuadBufferCheck.cpp -> sview-15_11.tar.gz/StOutPageFlip/StQuadBufferCheck.cpp
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2009-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#include "StQuadBufferCheck.h"
25
sview-15_10.tar.gz/StOutPageFlip/StQuadBufferCheck.h -> sview-15_11.tar.gz/StOutPageFlip/StQuadBufferCheck.h
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2009-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StQuadBufferCheck_h_
25
sview-15_10.tar.gz/StOutPageFlip/StVuzixSDK.h -> sview-15_11.tar.gz/StOutPageFlip/StVuzixSDK.h
Changed
25
1
2
/**
3
+ * StOutPageFlip, class providing stereoscopic output for Shutter Glasses displays using StCore toolkit.
4
* Copyright © 2009 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StOutPageFlip library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StOutPageFlip library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StVuzixSDK_h_
25
sview-15_10.tar.gz/StOutPageFlip/lang/chinese/StOutPageFlip.lng -> sview-15_11.tar.gz/StOutPageFlip/lang/chinese/StOutPageFlip.lng
Changed
49
1
2
•# Chinese translation file for StOutPageFlip library
3
# @author YSC
4
--------
5
-1000="快门眼镜"
6
-1001="快门眼镜"
7
-1002="Vuzix HMD"
8
-1003="Vuzix HMD"
9
-1102="缓冲类型"
10
-1103="眼镜控制编码"
11
-1120="OpenGL 跟踪"
12
-1122="OpenGL硬件"
13
-1123="Direct3D (全屏)"
14
-1124="Direct3D (未获得)"
15
-1125="Direct3D AMD (全屏)"
16
-1126="Direct3D AMD (未获得)"
17
-1127="Direct3D NVIDIA (全屏)"
18
-1128="Direct3D NVIDIA (失效)"
19
-1130="无编码"
20
-1131="蓝线同步"
21
-1132="白线同步"
22
-1134="空间自动开/关"
23
-2000="sView - 快门输出模式"
24
-2001="版本"
25
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
26
-?3001="OpenGL Hardware QuadBuffer is unavailable!\n\nYou can try another Quad Buffer type\n(including OpenGL emulated in Extra section)."
27
+1000=快门眼镜
28
+1001=快门眼镜
29
+1002=Vuzix HMD
30
+1003=Vuzix HMD
31
+1102=缓冲类型
32
+1103=眼镜控制编码
33
+1120=OpenGL 跟踪
34
+1122=OpenGL硬件
35
+1123=Direct3D (全屏)
36
+1124=Direct3D (未获得)
37
+1125=Direct3D AMD (全屏)
38
+1126=Direct3D AMD (未获得)
39
+1127=Direct3D NVIDIA (全屏)
40
+1128=Direct3D NVIDIA (失效)
41
+1130=无编码
42
+1131=蓝线同步
43
+1132=白线同步
44
+1134=空间自动开/关
45
+2000=sView - 快门输出模式
46
+2001=版本
47
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
48
+?3001=OpenGL Hardware QuadBuffer is unavailable!\n\nYou can try another Quad Buffer type\n(including OpenGL emulated in Extra section).
49
sview-15_10.tar.gz/StOutPageFlip/lang/czech/StOutPageFlip.lng -> sview-15_11.tar.gz/StOutPageFlip/lang/czech/StOutPageFlip.lng
Changed
8
1
2
1134=eDimensional auto on/off
3
2000=sView - modul stereovýstupu pro aktivní závěrkové brýle
4
2001=версия
5
-2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}\n\nБиблиотека распространяется на условиях LGPL3.0
6
+2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}
7
3001=OpenGL Hardware QuadBuffer není dostupný!
8
sview-15_10.tar.gz/StOutPageFlip/lang/english/StOutPageFlip.lng -> sview-15_11.tar.gz/StOutPageFlip/lang/english/StOutPageFlip.lng
Changed
49
1
2
# English translation file for StOutPageFlip library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Shutter glasses"
6
-1001="Shutter glasses"
7
-1002="Vuzix HMD"
8
-1003="Vuzix HMD"
9
-1102="Quad Buffer type"
10
-1103="Glasses control codes"
11
-1120="OpenGL Emulated"
12
-1122="OpenGL Hardware"
13
-1123="Direct3D (Fullscreen)"
14
-1124="Direct3D (Unavailable)"
15
-1125="Direct3D AMD (Fullscreen)"
16
-1126="Direct3D AMD (Unavailable)"
17
-1127="Direct3D NVIDIA (Fullscreen)"
18
-1128="Direct3D NVIDIA (Disabled)"
19
-1130="No codes"
20
-1131="Blue line sync"
21
-1132="White line sync"
22
-1134="eDimensional auto on/off"
23
-2000="sView - PageFlip Output module"
24
-2001="version"
25
-2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
26
-3001="OpenGL Hardware QuadBuffer is unavailable!\n\nYou can try another Quad Buffer type\n(including OpenGL emulated in Extra section)."
27
+1000=Shutter glasses
28
+1001=Shutter glasses
29
+1002=Vuzix HMD
30
+1003=Vuzix HMD
31
+1102=Quad Buffer type
32
+1103=Glasses control codes
33
+1120=OpenGL Emulated
34
+1122=OpenGL Hardware
35
+1123=Direct3D (Fullscreen)
36
+1124=Direct3D (Unavailable)
37
+1125=Direct3D AMD (Fullscreen)
38
+1126=Direct3D AMD (Unavailable)
39
+1127=Direct3D NVIDIA (Fullscreen)
40
+1128=Direct3D NVIDIA (Disabled)
41
+1130=No codes
42
+1131=Blue line sync
43
+1132=White line sync
44
+1134=eDimensional auto on/off
45
+2000=sView - PageFlip Output module
46
+2001=version
47
+2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
48
+3001=OpenGL Hardware QuadBuffer is unavailable!\n\nYou can try another Quad Buffer type\n(including OpenGL emulated in Extra section).
49
sview-15_10.tar.gz/StOutPageFlip/lang/french/StOutPageFlip.lng -> sview-15_11.tar.gz/StOutPageFlip/lang/french/StOutPageFlip.lng
Changed
49
1
2
# French translation file for StOutPageFlip library
3
# @author gramoun for Kirill Gavrilov
4
--------
5
-1000="Lunettes Actives"
6
-1001="Lunettes Actives"
7
-1002="Vuzix HMD"
8
-1003="Vuzix HMD"
9
-1102="Quad Buffer type"
10
-1103="Codes de controle des lunettes"
11
-1120="OpenGL Emulé"
12
-1122="OpenGL Matériel"
13
-1123="Direct3D (Fullscreen)"
14
-1124="Direct3D (Unavailable)"
15
-1125="Direct3D AMD (Fullscreen)"
16
-1126="Direct3D AMD (Unavailable)"
17
-1127="Direct3D NVIDIA (Fullscreen)"
18
-1128="Direct3D NVIDIA (Disabled)"
19
-1130="Sans"
20
-1131="Synchro ligne bleue"
21
-1132="Synchro ligne blanche"
22
-1134="eDimensional auto Marche/Arrêt"
23
-2000="sView - PageFlip Output module"
24
-2001="version"
25
-2002="© {0} Kirill Gavrilov <{1}>\nOfficiel site: {2}\n\nThis library is distributed under LGPL3.0"
26
-?3001="OpenGL Hardware QuadBuffer is unavailable!\n\nYou can try another Quad Buffer type\n(including OpenGL emulated in Extra section)."
27
+1000=Lunettes Actives
28
+1001=Lunettes Actives
29
+1002=Vuzix HMD
30
+1003=Vuzix HMD
31
+1102=Quad Buffer type
32
+1103=Codes de controle des lunettes
33
+1120=OpenGL Emulé
34
+1122=OpenGL Matériel
35
+1123=Direct3D (Fullscreen)
36
+1124=Direct3D (Unavailable)
37
+1125=Direct3D AMD (Fullscreen)
38
+1126=Direct3D AMD (Unavailable)
39
+1127=Direct3D NVIDIA (Fullscreen)
40
+1128=Direct3D NVIDIA (Disabled)
41
+1130=Sans
42
+1131=Synchro ligne bleue
43
+1132=Synchro ligne blanche
44
+1134=eDimensional auto Marche/Arrêt
45
+2000=sView - PageFlip Output module
46
+2001=version
47
+2002=© {0} Kirill Gavrilov <{1}>\nOfficiel site: {2}
48
+?3001=OpenGL Hardware QuadBuffer is unavailable!\n\nYou can try another Quad Buffer type\n(including OpenGL emulated in Extra section).
49
sview-15_10.tar.gz/StOutPageFlip/lang/german/StOutPageFlip.lng -> sview-15_11.tar.gz/StOutPageFlip/lang/german/StOutPageFlip.lng
Changed
49
1
2
# German translation file for StOutPageFlip library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Shutterbrille"
6
-1001="Shutterbrille"
7
-1002="Vuzix HMD"
8
-1003="Vuzix HMD"
9
-1102="Quad Buffer Typ"
10
-1103="Brille Kontrollcodes"
11
-1120="OpenGL emulierte"
12
-1122="OpenGL hardware"
13
-1123="Direct3D (Vollbild)"
14
-1124="Direct3D (nicht verfügbar)"
15
-1125="Direct3D AMD (Vollbild)"
16
-1126="Direct3D AMD (nicht verfügbar)"
17
-1127="Direct3D NVIDIA (Vollbild)"
18
-1128="Direct3D NVIDIA (behindert)"
19
-1130="keine Codes"
20
-1131="blau Linie sync"
21
-1132="weiß Linie sync"
22
-1134="eDimensional auto on/off"
23
-2000="sView - PageFlip Ausgangsmodul"
24
-2001="Version"
25
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
26
-3001="OpenGL Hardware QuadBuffer nicht verfügbar!\n\nSie können eine andere Quad Buffer versuchen\n(einschließlich OpenGL emulierte in extra Sektion)."
27
+1000=Shutterbrille
28
+1001=Shutterbrille
29
+1002=Vuzix HMD
30
+1003=Vuzix HMD
31
+1102=Quad Buffer Typ
32
+1103=Brille Kontrollcodes
33
+1120=OpenGL emulierte
34
+1122=OpenGL hardware
35
+1123=Direct3D (Vollbild)
36
+1124=Direct3D (nicht verfügbar)
37
+1125=Direct3D AMD (Vollbild)
38
+1126=Direct3D AMD (nicht verfügbar)
39
+1127=Direct3D NVIDIA (Vollbild)
40
+1128=Direct3D NVIDIA (behindert)
41
+1130=keine Codes
42
+1131=blau Linie sync
43
+1132=weiß Linie sync
44
+1134=eDimensional auto on/off
45
+2000=sView - PageFlip Ausgangsmodul
46
+2001=Version
47
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
48
+3001=OpenGL Hardware QuadBuffer nicht verfügbar!\n\nSie können eine andere Quad Buffer versuchen\n(einschließlich OpenGL emulierte in extra Sektion).
49
sview-15_10.tar.gz/StOutPageFlip/lang/korean/StOutPageFlip.lng -> sview-15_11.tar.gz/StOutPageFlip/lang/korean/StOutPageFlip.lng
Changed
49
1
2
# English translation file for StOutPageFlip library
3
# @author Kirill Gavrilov
4
--------
5
-?1000="Shutter glasses"
6
-?1001="Shutter glasses"
7
-?1002="Vuzix HMD"
8
-?1003="Vuzix HMD"
9
-?1102="Quad Buffer type"
10
-?1103="Glasses control codes"
11
-?1120="OpenGL Emulated"
12
-?1122="OpenGL Hardware"
13
-?1123="Direct3D (Fullscreen)"
14
-?1124="Direct3D (Unavailable)"
15
-?1125="Direct3D AMD (Fullscreen)"
16
-?1126="Direct3D AMD (Unavailable)"
17
-?1127="Direct3D NVIDIA (Fullscreen)"
18
-?1128="Direct3D NVIDIA (Disabled)"
19
-?1130="No codes"
20
-?1131="Blue line sync"
21
-?1132="White line sync"
22
-?1134="eDimensional auto on/off"
23
-?2000="sView - PageFlip Output module"
24
-?2001="version"
25
-?2002="© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}\n\nThis library is distributed under LGPL3.0"
26
-?3001="OpenGL Hardware QuadBuffer is unavailable!\n\nYou can try another Quad Buffer type\n(including OpenGL emulated in Extra section)."
27
+?1000=Shutter glasses
28
+?1001=Shutter glasses
29
+?1002=Vuzix HMD
30
+?1003=Vuzix HMD
31
+?1102=Quad Buffer type
32
+?1103=Glasses control codes
33
+?1120=OpenGL Emulated
34
+?1122=OpenGL Hardware
35
+?1123=Direct3D (Fullscreen)
36
+?1124=Direct3D (Unavailable)
37
+?1125=Direct3D AMD (Fullscreen)
38
+?1126=Direct3D AMD (Unavailable)
39
+?1127=Direct3D NVIDIA (Fullscreen)
40
+?1128=Direct3D NVIDIA (Disabled)
41
+?1130=No codes
42
+?1131=Blue line sync
43
+?1132=White line sync
44
+?1134=eDimensional auto on/off
45
+?2000=sView - PageFlip Output module
46
+?2001=version
47
+?2002=© {0} Kirill Gavrilov <{1}>\nOfficial site: {2}
48
+?3001=OpenGL Hardware QuadBuffer is unavailable!\n\nYou can try another Quad Buffer type\n(including OpenGL emulated in Extra section).
49
sview-15_10.tar.gz/StOutPageFlip/lang/russian/StOutPageFlip.lng -> sview-15_11.tar.gz/StOutPageFlip/lang/russian/StOutPageFlip.lng
Changed
49
1
2
# Russian translation file for StOutPageFlip library
3
# @author Kirill Gavrilov
4
--------
5
-1000="Затворные очки"
6
-1001="Затворные очки"
7
-1002="Vuzix HMD"
8
-1003="Vuzix HMD"
9
-1102="Тип Квадробуфера"
10
-1103="Управление очками"
11
-1120="OpenGL эмуляция"
12
-1122="OpenGL аппаратный"
13
-1123="Direct3D (Fullscreen)"
14
-1124="Direct3D (Unavailable)"
15
-1125="Direct3D AMD (Fullscreen)"
16
-1126="Direct3D AMD (Unavailable)"
17
-1127="Direct3D NVIDIA (Fullscreen)"
18
-1128="Direct3D NVIDIA (Disabled)"
19
-1130="Без контроля"
20
-1131="Голубая линия"
21
-1132="Белая линия"
22
-1134="eDimensional авто вкл/выкл"
23
-2000="sView - модуль стереовывода для завторных очков"
24
-2001="версия"
25
-2002="© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}\n\nБиблиотека распространяется на условиях LGPL3.0"
26
-3001="OpenGL Hardware QuadBuffer не доступен!\n\nМожно попробовать другой тип квадробуфера в меню\n(включая эмулированный OpenGL в расширенном режиме)."
27
+1000=Затворные очки
28
+1001=Затворные очки
29
+1002=Vuzix HMD
30
+1003=Vuzix HMD
31
+1102=Тип Квадробуфера
32
+1103=Управление очками
33
+1120=OpenGL эмуляция
34
+1122=OpenGL аппаратный
35
+1123=Direct3D (Fullscreen)
36
+1124=Direct3D (Unavailable)
37
+1125=Direct3D AMD (Fullscreen)
38
+1126=Direct3D AMD (Unavailable)
39
+1127=Direct3D NVIDIA (Fullscreen)
40
+1128=Direct3D NVIDIA (Disabled)
41
+1130=Без контроля
42
+1131=Голубая линия
43
+1132=Белая линия
44
+1134=eDimensional авто вкл/выкл
45
+2000=sView - модуль стереовывода для завторных очков
46
+2001=версия
47
+2002=© {0} Гаврилов Кирилл <{1}>\nОфициальный сайт: {2}
48
+3001=OpenGL Hardware QuadBuffer не доступен!\n\nМожно попробовать другой тип квадробуфера в меню\n(включая эмулированный OpenGL в расширенном режиме).
49
sview-15_10.tar.gz/StShared/StAVFrame.cpp -> sview-15_11.tar.gz/StShared/StAVFrame.cpp
Changed
71
1
2
/**
3
- * Copyright © 2013-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
* See accompanying file license-boost.txt or copy at
8
9
10
#include <StAV/StAVFrame.h>
11
12
+#include <StAV/StAVImage.h>
13
+
14
StAVFrame::StAVFrame()
15
#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
16
: Frame(av_frame_alloc())
17
18
thePixFmt = theCodecCtx->pix_fmt;
19
#endif
20
}
21
+
22
+StAVFrameCounter::StAVFrameCounter()
23
+: myFrame(NULL),
24
+ myIsProxy(false) {
25
+#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
26
+ myFrame = av_frame_alloc();
27
+#endif
28
+}
29
+
30
+StAVFrameCounter::~StAVFrameCounter() {
31
+#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
32
+ av_frame_free(&myFrame);
33
+#endif
34
+}
35
+
36
+void StAVFrameCounter::createReference(StHandle<StBufferCounter>& theOther) const {
37
+#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
38
+ StHandle<StAVFrameCounter> anAvRef = StHandle<StAVFrameCounter>::downcast(theOther);
39
+ if(anAvRef.isNull()) {
40
+ anAvRef = new StAVFrameCounter();
41
+ theOther = anAvRef;
42
+ }
43
+
44
+ av_frame_unref(anAvRef->myFrame);
45
+ if(myIsProxy) {
46
+ // just steal the reference
47
+ av_frame_move_ref(anAvRef->myFrame, myFrame);
48
+ } else {
49
+ av_frame_ref(anAvRef->myFrame, myFrame);
50
+ }
51
+#else
52
+ theOther.nullify();
53
+#endif
54
+}
55
+
56
+void StAVFrameCounter::releaseReference() {
57
+#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
58
+ av_frame_unref(myFrame);
59
+#endif
60
+}
61
+
62
+void StAVFrameCounter::moveReferenceFrom(AVFrame* theFrame) {
63
+ myIsProxy = true;
64
+#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
65
+ av_frame_unref(myFrame);
66
+ av_frame_move_ref(myFrame, theFrame);
67
+#else
68
+ (void )theFrame;
69
+#endif
70
+}
71
sview-15_10.tar.gz/StShared/StAVImage.cpp -> sview-15_11.tar.gz/StShared/StAVImage.cpp
Changed
201
1
2
/**
3
- * Copyright © 2011-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
* See accompanying file license-boost.txt or copy at
8
9
: myImageFormat(NULL),
10
myFormatCtx(NULL),
11
myCodecCtx(NULL),
12
- myCodec(NULL),
13
- myFrame(NULL) {
14
+ myCodec(NULL) {
15
StAVImage::init();
16
myImageFormat = av_find_input_format("image2");
17
-#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
18
- myFrame = av_frame_alloc();
19
-#else
20
- myFrame = avcodec_alloc_frame();
21
-#endif
22
}
23
24
StAVImage::~StAVImage() {
25
close();
26
-#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
27
- av_frame_free(&myFrame);
28
-#else
29
- av_free(myFrame);
30
-#endif
31
}
32
33
int StAVImage::getAVPixelFormat(const StImage& theImage) {
34
35
}
36
37
void StAVImage::close() {
38
+ myMetadata.clear();
39
+ closeAvCtx();
40
+}
41
+
42
+void StAVImage::closeAvCtx() {
43
+ myFrame.reset();
44
if(myCodec != NULL && myCodecCtx != NULL) {
45
avcodec_close(myCodecCtx); // close VIDEO codec
46
}
47
48
StImage::nullify();
49
setState();
50
close();
51
+ myMetadata.clear();
52
53
switch(theImageType) {
54
case ST_TYPE_PNG:
55
56
myCodec = avcodec_find_decoder_by_name("mjpeg");
57
break;
58
}
59
+ case ST_TYPE_EXR: {
60
+ myCodec = avcodec_find_decoder_by_name("exr");
61
+ break;
62
+ }
63
+ case ST_TYPE_WEBP:
64
+ case ST_TYPE_WEBPLL: {
65
+ myCodec = avcodec_find_decoder_by_name("webp");
66
+ break;
67
+ }
68
default: {
69
break;
70
}
71
72
// decode one frame
73
int isFrameFinished = 0;
74
#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 23, 0))
75
- avcodec_decode_video2(myCodecCtx, myFrame, &isFrameFinished, anAvPkt.getAVpkt());
76
+ avcodec_decode_video2(myCodecCtx, myFrame.Frame, &isFrameFinished, anAvPkt.getAVpkt());
77
#else
78
- avcodec_decode_video(myCodecCtx, myFrame, &isFrameFinished,
79
+ avcodec_decode_video(myCodecCtx, myFrame.Frame, &isFrameFinished,
80
theDataPtr, theDataSize);
81
#endif
82
83
84
85
#ifdef ST_AV_NEWSTEREO
86
// currently it is unlikelly... but maybe in future?
87
- AVFrameSideData* aSideData = av_frame_get_side_data(myFrame, AV_FRAME_DATA_STEREO3D);
88
+ AVFrameSideData* aSideData = av_frame_get_side_data(myFrame.Frame, AV_FRAME_DATA_STEREO3D);
89
if(aSideData != NULL) {
90
AVStereo3D* aStereo = (AVStereo3D* )aSideData->data;
91
mySrcFormat = stAV::stereo3dAvToSt(aStereo->type);
92
93
}
94
#endif
95
96
+ // it is unlikely that there would be any metadata from format...
97
+ // but lets try
98
+ if(myFormatCtx != NULL) {
99
+ for(stAV::meta::Tag* aTag = stAV::meta::findTag(myFormatCtx->metadata, "", NULL, stAV::meta::SEARCH_IGNORE_SUFFIX);
100
+ aTag != NULL;
101
+ aTag = stAV::meta::findTag(myFormatCtx->metadata, "", aTag, stAV::meta::SEARCH_IGNORE_SUFFIX)) {
102
+ myMetadata.add(StDictEntry(aTag->key, aTag->value));
103
+ }
104
+ for(stAV::meta::Tag* aTag = stAV::meta::findTag(myFormatCtx->streams[0]->metadata, "", NULL, stAV::meta::SEARCH_IGNORE_SUFFIX);
105
+ aTag != NULL;
106
+ aTag = stAV::meta::findTag(myFormatCtx->streams[0]->metadata, "", aTag, stAV::meta::SEARCH_IGNORE_SUFFIX)) {
107
+ myMetadata.add(StDictEntry(aTag->key, aTag->value));
108
+ }
109
+ }
110
+
111
+ // collect metadata from the frame
112
+ stAV::meta::Dict* aFrameMetadata = stAV::meta::getFrameMetadata(myFrame.Frame);
113
+ for(stAV::meta::Tag* aTag = stAV::meta::findTag(aFrameMetadata, "", NULL, stAV::meta::SEARCH_IGNORE_SUFFIX);
114
+ aTag != NULL;
115
+ aTag = stAV::meta::findTag(aFrameMetadata, "", aTag, stAV::meta::SEARCH_IGNORE_SUFFIX)) {
116
+ myMetadata.add(StDictEntry(aTag->key, aTag->value));
117
+ }
118
+
119
stAV::dimYUV aDimsYUV;
120
if(myCodecCtx->pix_fmt == stAV::PIX_FMT::RGB24) {
121
setColorModel(StImage::ImgColor_RGB);
122
- changePlane(0).initWrapper(StImagePlane::ImgRGB, myFrame->data[0],
123
+ changePlane(0).initWrapper(StImagePlane::ImgRGB, myFrame.getPlane(0),
124
myCodecCtx->width, myCodecCtx->height,
125
- myFrame->linesize[0]);
126
+ myFrame.getLineSize(0));
127
} else if(myCodecCtx->pix_fmt == stAV::PIX_FMT::BGR24) {
128
setColorModel(StImage::ImgColor_RGB);
129
- changePlane(0).initWrapper(StImagePlane::ImgBGR, myFrame->data[0],
130
+ changePlane(0).initWrapper(StImagePlane::ImgBGR, myFrame.getPlane(0),
131
myCodecCtx->width, myCodecCtx->height,
132
- myFrame->linesize[0]);
133
+ myFrame.getLineSize(0));
134
} else if(myCodecCtx->pix_fmt == stAV::PIX_FMT::RGBA32) {
135
setColorModel(StImage::ImgColor_RGBA);
136
- changePlane(0).initWrapper(StImagePlane::ImgRGBA, myFrame->data[0],
137
+ changePlane(0).initWrapper(StImagePlane::ImgRGBA, myFrame.getPlane(0),
138
myCodecCtx->width, myCodecCtx->height,
139
- myFrame->linesize[0]);
140
+ myFrame.getLineSize(0));
141
} else if(myCodecCtx->pix_fmt == stAV::PIX_FMT::BGRA32) {
142
setColorModel(StImage::ImgColor_RGBA);
143
- changePlane(0).initWrapper(StImagePlane::ImgBGRA, myFrame->data[0],
144
+ changePlane(0).initWrapper(StImagePlane::ImgBGRA, myFrame.getPlane(0),
145
myCodecCtx->width, myCodecCtx->height,
146
- myFrame->linesize[0]);
147
+ myFrame.getLineSize(0));
148
} else if(myCodecCtx->pix_fmt == stAV::PIX_FMT::GRAY8) {
149
setColorModel(StImage::ImgColor_GRAY);
150
- changePlane(0).initWrapper(StImagePlane::ImgGray, myFrame->data[0],
151
+ changePlane(0).initWrapper(StImagePlane::ImgGray, myFrame.getPlane(0),
152
myCodecCtx->width, myCodecCtx->height,
153
- myFrame->linesize[0]);
154
+ myFrame.getLineSize(0));
155
} else if(myCodecCtx->pix_fmt == stAV::PIX_FMT::GRAY16) {
156
setColorModel(StImage::ImgColor_GRAY);
157
- changePlane(0).initWrapper(StImagePlane::ImgGray16, myFrame->data[0],
158
+ changePlane(0).initWrapper(StImagePlane::ImgGray16, myFrame.getPlane(0),
159
myCodecCtx->width, myCodecCtx->height,
160
- myFrame->linesize[0]);
161
+ myFrame.getLineSize(0));
162
+ } else if(myCodecCtx->pix_fmt == stAV::PIX_FMT::RGB48) {
163
+ setColorModel(StImage::ImgColor_RGB);
164
+ changePlane(0).initWrapper(StImagePlane::ImgRGB48, myFrame.getPlane(0),
165
+ myCodecCtx->width, myCodecCtx->height,
166
+ myFrame.getLineSize(0));
167
+ } else if(myCodecCtx->pix_fmt == stAV::PIX_FMT::RGBA64) {
168
+ setColorModel(StImage::ImgColor_RGBA);
169
+ changePlane(0).initWrapper(StImagePlane::ImgRGBA64, myFrame.getPlane(0),
170
+ myCodecCtx->width, myCodecCtx->height,
171
+ myFrame.getLineSize(0));
172
} else if(stAV::isFormatYUVPlanar(myCodecCtx, aDimsYUV)) {
173
#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(52, 29, 0))
174
if(myCodecCtx->color_range == AVCOL_RANGE_JPEG) {
175
176
aPlaneFrmt = StImagePlane::ImgGray16;
177
}
178
179
- changePlane(0).initWrapper(aPlaneFrmt, myFrame->data[0],
180
- size_t(aDimsYUV.widthY), size_t(aDimsYUV.heightY), myFrame->linesize[0]);
181
- changePlane(1).initWrapper(aPlaneFrmt, myFrame->data[1],
182
- size_t(aDimsYUV.widthU), size_t(aDimsYUV.heightU), myFrame->linesize[1]);
183
- changePlane(2).initWrapper(aPlaneFrmt, myFrame->data[2],
184
- size_t(aDimsYUV.widthV), size_t(aDimsYUV.heightV), myFrame->linesize[2]);
185
+ changePlane(0).initWrapper(aPlaneFrmt, myFrame.getPlane(0),
186
+ size_t(aDimsYUV.widthY), size_t(aDimsYUV.heightY), myFrame.getLineSize(0));
187
+ changePlane(1).initWrapper(aPlaneFrmt, myFrame.getPlane(1),
188
+ size_t(aDimsYUV.widthU), size_t(aDimsYUV.heightU), myFrame.getLineSize(1));
189
+ changePlane(2).initWrapper(aPlaneFrmt, myFrame.getPlane(2),
190
+ size_t(aDimsYUV.widthV), size_t(aDimsYUV.heightV), myFrame.getLineSize(2));
191
} else {
192
///ST_DEBUG_LOG("StAVImage, perform conversion from Pixel format '" + avcodec_get_pix_fmt_name(myCodecCtx->pix_fmt) + "' to RGB");
193
// initialize software scaler/converter
194
195
rgbLinesize[0] = (int )changePlane(0).getSizeRowBytes();
196
197
sws_scale(pToRgbCtx,
198
- myFrame->data, myFrame->linesize,
199
+ myFrame.Frame->data, myFrame.Frame->linesize,
200
0, myCodecCtx->height,
201
sview-15_10.tar.gz/StShared/StCondition.cpp -> sview-15_11.tar.gz/StShared/StCondition.cpp
Changed
110
1
2
/**
3
- * Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
* See accompanying file license-boost.txt or copy at
8
9
#endif
10
11
#include <StThreads/StCondition.h>
12
-#include <StThreads/StTimer.h> // for ST_HAVE_MONOTONIC_CLOCK
13
+#include <StThreads/StTimer.h>
14
+
15
+namespace {
16
+
17
+#ifndef _WIN32
18
+ /**
19
+ * clock_gettime() wrapper.
20
+ */
21
+ inline void stGetRealTime(struct timespec& theTime) {
22
+ #if defined(__APPLE__)
23
+ struct timeval aTime;
24
+ gettimeofday(&aTime, NULL);
25
+ theTime.tv_sec = aTime.tv_sec;
26
+ theTime.tv_nsec = aTime.tv_usec * 1000;
27
+ #else
28
+ clock_gettime(CLOCK_REALTIME, &theTime);
29
+ #endif
30
+ }
31
+#endif
32
+
33
+}
34
35
StCondition::StCondition()
36
#ifdef _WIN32
37
38
bool isSignalled = true;
39
pthread_mutex_lock(&myMutex);
40
if(!myFlag) {
41
- StTimer::stTimeCounter_t aNow;
42
- struct timespec aTimeout;
43
- StTimer::fillCounter(aNow);
44
- size_t aSeconds = (theTimeMilliseconds / 1000);
45
- size_t aMicroseconds = (theTimeMilliseconds - aSeconds * 1000) * 1000;
46
- #if defined(ST_HAVE_MONOTONIC_CLOCK)
47
- aTimeout.tv_sec = aNow.tv_sec + (time_t )aSeconds;
48
- aTimeout.tv_nsec = aNow.tv_nsec + (long )aMicroseconds * 1000;
49
- #else
50
- aTimeout.tv_sec = aNow.tv_sec + (time_t )aSeconds;
51
- aTimeout.tv_nsec = aNow.tv_usec * 1000 + (long )aMicroseconds * 1000;
52
- #endif
53
+ struct timespec aNow;
54
+ struct timespec aTimeout;
55
+ stGetRealTime(aNow);
56
+ aTimeout.tv_sec = (theTimeMilliseconds / 1000);
57
+ aTimeout.tv_nsec = (theTimeMilliseconds - aTimeout.tv_sec * 1000) * 1000000;
58
+ if(aTimeout.tv_nsec > 1000000000) {
59
+ aTimeout.tv_sec += 1;
60
+ aTimeout.tv_nsec -= 1000000000;
61
+ }
62
+ aTimeout.tv_sec += aNow.tv_sec;
63
+ aTimeout.tv_nsec += aNow.tv_nsec;
64
isSignalled = (pthread_cond_timedwait(&myCond, &myMutex, &aTimeout) != ETIMEDOUT);
65
}
66
pthread_mutex_unlock(&myMutex);
67
68
bool isSignalled = true;
69
pthread_mutex_lock(&myMutex);
70
if(!myFlag) {
71
- StTimer::stTimeCounter_t aNow;
72
- struct timespec aTimeout;
73
- StTimer::fillCounter(aNow);
74
- // TODO (Kirill Gavrilov) which values must be here and need we this block here?
75
- #if defined(ST_HAVE_MONOTONIC_CLOCK)
76
- aTimeout.tv_sec = aNow.tv_sec;
77
- aTimeout.tv_nsec = aNow.tv_nsec + 100;
78
- #else
79
+ struct timespec aNow;
80
+ struct timespec aTimeout;
81
+ stGetRealTime(aNow);
82
aTimeout.tv_sec = aNow.tv_sec;
83
- aTimeout.tv_nsec = aNow.tv_usec * 1000 + 100;
84
- #endif
85
+ aTimeout.tv_nsec = aNow.tv_nsec + 100;
86
isSignalled = (pthread_cond_timedwait(&myCond, &myMutex, &aTimeout) != ETIMEDOUT);
87
}
88
pthread_mutex_unlock(&myMutex);
89
90
pthread_mutex_lock(&myMutex);
91
bool wasSignalled = myFlag;
92
if(!myFlag) {
93
- StTimer::stTimeCounter_t aNow;
94
- struct timespec aTimeout;
95
- StTimer::fillCounter(aNow);
96
- #if defined(ST_HAVE_MONOTONIC_CLOCK)
97
- aTimeout.tv_sec = aNow.tv_sec;
98
- aTimeout.tv_nsec = aNow.tv_nsec + 100;
99
- #else
100
+ struct timespec aNow;
101
+ struct timespec aTimeout;
102
+ stGetRealTime(aNow);
103
aTimeout.tv_sec = aNow.tv_sec;
104
- aTimeout.tv_nsec = aNow.tv_usec * 1000 + 100;
105
- #endif
106
+ aTimeout.tv_nsec = aNow.tv_nsec + 100;
107
wasSignalled = (pthread_cond_timedwait(&myCond, &myMutex, &aTimeout) != ETIMEDOUT);
108
}
109
myFlag = false;
110
sview-15_10.tar.gz/StShared/StFileNode2.cpp -> sview-15_11.tar.gz/StShared/StFileNode2.cpp
Changed
10
1
2
}
3
return false;
4
#elif defined(__ANDROID__)
5
- bool ST_NOT_IMPLEMENTED_FOR_ANDROID = true;
6
+ //bool ST_NOT_IMPLEMENTED_FOR_ANDROID = true;
7
return false;
8
#elif defined(__linux__)
9
if(!StMessageBox::initGlobals()) {
10
sview-15_10.tar.gz/StShared/StGLTexture.cpp -> sview-15_11.tar.gz/StShared/StGLTexture.cpp
Changed
87
1
2
theInternalFormat = GL_RGBA8;
3
#endif
4
return true;
5
+ case StImagePlane::ImgRGBA64:
6
+ #if defined(GL_ES_VERSION_2_0)
7
+ theInternalFormat = GL_RGBA;
8
+ #else
9
+ theInternalFormat = GL_RGBA16;
10
+ #endif
11
+ return true;
12
case StImagePlane::ImgRGB:
13
case StImagePlane::ImgBGR:
14
case StImagePlane::ImgRGB32:
15
16
theInternalFormat = GL_RGB8;
17
#endif
18
return true;
19
+ case StImagePlane::ImgRGB48:
20
+ #if defined(GL_ES_VERSION_2_0)
21
+ theInternalFormat = GL_RGB;
22
+ #else
23
+ theInternalFormat = GL_RGB16;
24
+ #endif
25
+ return true;
26
case StImagePlane::ImgGrayF:
27
#if defined(GL_ES_VERSION_2_0)
28
theInternalFormat = GL_ALPHA;
29
30
return true;
31
#endif
32
}
33
+ case StImagePlane::ImgRGB48: {
34
+ thePixelFormat = GL_RGB;
35
+ theDataType = GL_UNSIGNED_SHORT;
36
+ return true;
37
+ }
38
case StImagePlane::ImgRGBA:
39
case StImagePlane::ImgRGB32: {
40
thePixelFormat = GL_RGBA;
41
theDataType = GL_UNSIGNED_BYTE;
42
return true;
43
}
44
+ case StImagePlane::ImgRGBA64: {
45
+ thePixelFormat = GL_RGBA;
46
+ theDataType = GL_UNSIGNED_SHORT;
47
+ return true;
48
+ }
49
case StImagePlane::ImgBGRA:
50
case StImagePlane::ImgBGR32: {
51
#if defined(GL_ES_VERSION_2_0)
52
53
54
GLint anInternalFormat = myTextFormat;
55
#if defined(GL_ES_VERSION_2_0)
56
- // sized formats are not supported here
57
- if(anInternalFormat == GL_RGBA8) {
58
- anInternalFormat = GL_RGBA;
59
- } else if(anInternalFormat == GL_RGB8) {
60
- anInternalFormat = GL_RGB;
61
- } else if(anInternalFormat == GL_ALPHA8) {
62
- anInternalFormat = GL_ALPHA;
63
- }
64
+ //if(!theCtx.isGlGreaterEqual(3, 0)) {
65
+ // sized formats are not supported here
66
+ anInternalFormat = theDataFormat;
67
+ //}
68
#endif
69
70
if(myTarget == GL_TEXTURE_CUBE_MAP) {
71
72
GLenum anErr = theCtx.core20fwd->glGetError();
73
if(anErr != GL_NO_ERROR) {
74
ST_ERROR_LOG("Creation texture with size (" + mySizeX + " x "+ mySizeY
75
- + " @" + formatInternalFormat(anInternalFormat) + " with data " + formatInternalFormat(theDataFormat) + ") FAILED: " + theCtx.stglErrorToString(anErr) + "!");
76
+ + " @" + formatInternalFormat(myTextFormat) + " with data " + formatInternalFormat(theDataFormat) + ") FAILED: " + theCtx.stglErrorToString(anErr) + "!");
77
release(theCtx);
78
return false;
79
}
80
#ifdef ST_DEBUG_TEXTURES
81
ST_DEBUG_LOG("Created StGLTexture " + mySizeX + " x "+ mySizeY
82
- + " (format " + formatInternalFormat(anInternalFormat) + ')');
83
+ + " (format " + formatInternalFormat(myTextFormat) + ')');
84
#endif
85
86
#else
87
sview-15_10.tar.gz/StShared/StGLTextureData.cpp -> sview-15_11.tar.gz/StShared/StGLTextureData.cpp
Changed
201
1
2
}
3
4
void StGLTextureData::reset() {
5
+ myDataPair.nullify();
6
myDataL.nullify();
7
myDataR.nullify();
8
if(myDataPtr != NULL) {
9
10
return thePlane.getSizeX() / theCoeffX == thePlane.getSizeY() / theCoeffY;
11
}
12
13
+void StGLTextureData::copyProps(const StImage& theDataL,
14
+ const StImage& theDataR) {
15
+ myDataPair.setColorModel(theDataL.getColorModel());
16
+ myDataPair.setColorScale(theDataL.getColorScale());
17
+ myDataPair.setPixelRatio(theDataL.getPixelRatio());
18
+ myDataL.setColorModel(theDataL.getColorModel());
19
+ myDataL.setColorScale(theDataL.getColorScale());
20
+ myDataL.setPixelRatio(theDataL.getPixelRatio());
21
+ myDataR.setColorModel(theDataR.isNull() ? theDataL.getColorModel() : theDataR.getColorModel());
22
+ myDataR.setColorScale(theDataR.isNull() ? theDataL.getColorScale() : theDataR.getColorScale());
23
+ myDataR.setPixelRatio(theDataR.isNull() ? theDataL.getPixelRatio() : theDataR.getPixelRatio());
24
+}
25
+
26
+inline bool canCopyReference(const StImage& theData) {
27
+ if(theData.isNull()) {
28
+ return true;
29
+ }
30
+
31
+ return !theData.getBufferCounter().isNull()
32
+ && theData.isTopDown();
33
+}
34
+
35
void StGLTextureData::updateData(const StImage& theDataL,
36
const StImage& theDataR,
37
const StHandle<StStereoParams>& theStParams,
38
39
myStParams = theStParams;
40
myPts = thePts;
41
mySrcFormat = theFormat != StFormat_AUTO ? theFormat : StFormat_Mono;
42
- myCubemapFormat = theCubemap;
43
44
// reset fill texture state
45
myFillRows = myFillFromRow = 0;
46
47
+ if(canCopyReference(theDataL)
48
+ && canCopyReference(theDataR)) {
49
+ bool toCopy = false;
50
+ switch(mySrcFormat) {
51
+ case StFormat_SideBySide_LR:
52
+ case StFormat_SideBySide_RL: {
53
+ reset();
54
+ copyProps(theDataL, theDataR);
55
+ StImage& aDataL = (mySrcFormat == StFormat_SideBySide_LR)
56
+ ? myDataL : myDataR;
57
+ StImage& aDataR = (mySrcFormat == StFormat_SideBySide_LR)
58
+ ? myDataR : myDataL;
59
+ myDataPair.initReference(theDataL);
60
+ for(size_t aPlaneId = 0; aPlaneId < 4; ++aPlaneId) {
61
+ const StImagePlane& aFromPlane = myDataPair.getPlane(aPlaneId);
62
+ if(aFromPlane.isNull()) {
63
+ continue;
64
+ }
65
+ const size_t aSizeX = aFromPlane.getSizeX() / 2;
66
+ aDataL.changePlane(aPlaneId).initWrapper(aFromPlane.getFormat(),
67
+ aFromPlane.accessData(0, 0),
68
+ aSizeX, aFromPlane.getSizeY(),
69
+ aFromPlane.getSizeRowBytes());
70
+ aDataR.changePlane(aPlaneId).initWrapper(aFromPlane.getFormat(),
71
+ aFromPlane.accessData(0, aSizeX),
72
+ aSizeX, aFromPlane.getSizeY(),
73
+ aFromPlane.getSizeRowBytes());
74
+ }
75
+ break;
76
+ }
77
+ case StFormat_TopBottom_LR:
78
+ case StFormat_TopBottom_RL: {
79
+ reset();
80
+ copyProps(theDataL, theDataR);
81
+ StImage& aDataL = (mySrcFormat == StFormat_TopBottom_LR)
82
+ ? myDataL : myDataR;
83
+ StImage& aDataR = (mySrcFormat == StFormat_TopBottom_LR)
84
+ ? myDataR : myDataL;
85
+ myDataPair.initReference(theDataL);
86
+ for(size_t aPlaneId = 0; aPlaneId < 4; ++aPlaneId) {
87
+ const StImagePlane& aFromPlane = myDataPair.getPlane(aPlaneId);
88
+ if(aFromPlane.isNull()) {
89
+ continue;
90
+ }
91
+ const size_t aSizeY = aFromPlane.getSizeY() / 2;
92
+ aDataL.changePlane(aPlaneId).initWrapper(aFromPlane.getFormat(),
93
+ aFromPlane.accessData(0, 0),
94
+ aFromPlane.getSizeX(), aSizeY,
95
+ aFromPlane.getSizeRowBytes());
96
+ aDataR.changePlane(aPlaneId).initWrapper(aFromPlane.getFormat(),
97
+ aFromPlane.accessData(aSizeY, 0),
98
+ aFromPlane.getSizeX(), aSizeY,
99
+ aFromPlane.getSizeRowBytes());
100
+ }
101
+ break;
102
+ }
103
+ case StFormat_Rows: {
104
+ reset();
105
+ copyProps(theDataL, theDataR);
106
+ myDataL.setPixelRatio(theDataL.getPixelRatio() * 0.5f);
107
+ myDataR.setPixelRatio(theDataL.getPixelRatio() * 0.5f);
108
+ StImage& aDataL = myDataL;
109
+ StImage& aDataR = myDataR;
110
+ myDataPair.initReference(theDataL);
111
+ for(size_t aPlaneId = 0; aPlaneId < 4; ++aPlaneId) {
112
+ const StImagePlane& aFromPlane = myDataPair.getPlane(aPlaneId);
113
+ if(aFromPlane.isNull()) {
114
+ continue;
115
+ }
116
+ const size_t aSizeY = aFromPlane.getSizeY() / 2;
117
+ aDataL.changePlane(aPlaneId).initWrapper(aFromPlane.getFormat(),
118
+ aFromPlane.accessData(0, 0),
119
+ aFromPlane.getSizeX(), aSizeY,
120
+ aFromPlane.getSizeRowBytes() * 2);
121
+ aDataR.changePlane(aPlaneId).initWrapper(aFromPlane.getFormat(),
122
+ aFromPlane.accessData(1, 0),
123
+ aFromPlane.getSizeX(), aSizeY,
124
+ aFromPlane.getSizeRowBytes() * 2);
125
+ }
126
+ break;
127
+ }
128
+ case StFormat_Columns:
129
+ case StFormat_Tiled4x: {
130
+ toCopy = true;
131
+ break;
132
+ }
133
+ case StFormat_Mono:
134
+ case StFormat_SeparateFrames:
135
+ case StFormat_FrameSequence:
136
+ case StFormat_AnaglyphRedCyan:
137
+ case StFormat_AnaglyphGreenMagenta:
138
+ case StFormat_AnaglyphYellowBlue:
139
+ case StFormat_AUTO: {
140
+ reset();
141
+ copyProps(theDataL, theDataR);
142
+ myDataL.initReference(theDataL);
143
+ myDataR.initReference(theDataR);
144
+ break;
145
+ }
146
+ case StFormat_NB: {
147
+ reset();
148
+ return;
149
+ }
150
+ }
151
+
152
+ if(!toCopy) {
153
+ validateCubemap(theCubemap);
154
+ return;
155
+ }
156
+ }
157
+
158
+ myDataPair.setBufferCounter(NULL);
159
+ myDataL.setBufferCounter(NULL);
160
+ myDataR.setBufferCounter(NULL);
161
+
162
// reallocate buffer if needed
163
const size_t aNewSizeBytes = computeBufferSize(theDataL) + computeBufferSize(theDataR);
164
if(aNewSizeBytes == 0) {
165
// invalid data
166
+ myDataPair.nullify();
167
myDataL.nullify();
168
myDataR.nullify();
169
+ myCubemapFormat = StCubemap_OFF;
170
return;
171
}
172
173
reAllocate(aNewSizeBytes);
174
- myDataL.setColorModel(theDataL.getColorModel());
175
- myDataL.setColorScale(theDataL.getColorScale());
176
- myDataR.setColorModel(theDataR.isNull() ? theDataL.getColorModel() : theDataR.getColorModel());
177
- myDataR.setColorScale(theDataR.isNull() ? theDataL.getColorScale() : theDataR.getColorScale());
178
- myDataL.setPixelRatio(theDataL.getPixelRatio());
179
- myDataR.setPixelRatio(theDataL.getPixelRatio());
180
+ copyProps(theDataL, theDataR);
181
182
switch(mySrcFormat) {
183
case StFormat_SideBySide_LR:
184
185
break;
186
}
187
}
188
- if(myCubemapFormat == StCubemap_Packed) {
189
- size_t aCoeffs[2] = {0, 0};
190
- if(!myDataL.isNull()) {
191
- for(size_t aPlaneId = 0; aPlaneId < 4; ++aPlaneId) {
192
- const StImagePlane& aPlane = myDataL.getPlane(aPlaneId);
193
- if(!checkCubeMap(aPlane, aCoeffs[0], aCoeffs[1])) {
194
- myCubemapFormat = StCubemap_OFF;
195
- break;
196
- }
197
+ validateCubemap(theCubemap);
198
+}
199
+
200
+void StGLTextureData::validateCubemap(const StCubemap theCubemap) {
201
sview-15_10.tar.gz/StShared/StGLTextureQueue.cpp -> sview-15_11.tar.gz/StShared/StGLTextureQueue.cpp
Changed
11
1
2
// reset queue
3
myQueueSize = 0;
4
myDataBack = myDataFront;
5
+ if(myDataSnap != NULL) {
6
+ myDataSnap->resetStParams();
7
+ }
8
myDataSnap = NULL;
9
mySwapFBCount = 0;
10
myIsReadyToSwap = false; // invalidate currently uploaded image in back buffer
11
sview-15_10.tar.gz/StShared/StImage.cpp -> sview-15_11.tar.gz/StShared/StImage.cpp
Changed
86
1
2
//
3
}
4
5
-bool StImage::initCopy(const StImage& theCopy) {
6
+bool StImage::initCopy(const StImage& theCopy,
7
+ const bool theIsCompact) {
8
nullify();
9
setColorModel(theCopy.getColorModel());
10
setColorScale(theCopy.getColorScale());
11
+ myPAR = theCopy.myPAR;
12
for(size_t aPlaneId = 0; aPlaneId < 4; ++aPlaneId) {
13
const StImagePlane& aFromPlane = theCopy.getPlane(aPlaneId);
14
if(aFromPlane.isNull()) {
15
continue;
16
}
17
- if(!changePlane(aPlaneId).initCopy(aFromPlane)) {
18
+ if(!changePlane(aPlaneId).initCopy(aFromPlane, theIsCompact)) {
19
return false;
20
}
21
}
22
23
nullify();
24
setColorModel(theCopy.getColorModel());
25
setColorScale(theCopy.getColorScale());
26
+ myPAR = theCopy.myPAR;
27
for(size_t aPlaneId = 0; aPlaneId < 4; ++aPlaneId) {
28
const StImagePlane& aFromPlane = theCopy.getPlane(aPlaneId);
29
if(aFromPlane.isNull()) {
30
31
return true;
32
}
33
34
+bool StImage::initReference(const StImage& theCopy) {
35
+ nullify();
36
+ if( theCopy.myBufCounter.isNull()
37
+ || !initWrapper(theCopy)) {
38
+ return false;
39
+ }
40
+
41
+ theCopy.myBufCounter->createReference(myBufCounter);
42
+ return true;
43
+}
44
+
45
+bool StImage::initReference(const StImage& theCopy,
46
+ const StHandle<StBufferCounter>& theRef) {
47
+ nullify();
48
+ if( theRef.isNull()
49
+ || !initWrapper(theCopy)) {
50
+ return false;
51
+ }
52
+
53
+ theRef->createReference(myBufCounter);
54
+ return true;
55
+}
56
+
57
bool StImage::initTrashLimited(const StImage& theRef,
58
const size_t theSizeX,
59
const size_t theSizeY) {
60
61
return true;
62
}
63
64
-bool StImage::fill(const StImage& theCopy) {
65
+bool StImage::fill(const StImage& theCopy,
66
+ const bool theIsCompact) {
67
if(getColorModel() != theCopy.getColorModel()) {
68
- return initCopy(theCopy);
69
+ return initCopy(theCopy, theIsCompact);
70
}
71
for(size_t aPlaneId = 0; aPlaneId < 4; ++aPlaneId) {
72
- if(!changePlane(aPlaneId).fill(theCopy.getPlane(aPlaneId))) {
73
+ if(!changePlane(aPlaneId).fill(theCopy.getPlane(aPlaneId), theIsCompact)) {
74
nullify();
75
return false;
76
}
77
78
myPlanes[1].nullify();
79
myPlanes[2].nullify();
80
myPlanes[3].nullify();
81
+ if(!myBufCounter.isNull()) {
82
+ myBufCounter->releaseReference();
83
+ }
84
myPAR = 1.0f;
85
}
86
sview-15_10.tar.gz/StShared/StImageFile.cpp -> sview-15_11.tar.gz/StShared/StImageFile.cpp
Changed
29
1
2
#include <StFile/StFileNode.h>
3
#include <StFile/StMIME.h>
4
5
+#include <StStrings/StLogger.h>
6
+
7
StImageFile::StImageFile()
8
: mySrcFormat(StFormat_AUTO) {
9
//
10
11
}
12
return StHandle<StImageFile>();
13
}
14
+
15
+StImageFileCounter::~StImageFileCounter() {}
16
+
17
+void StImageFileCounter::createReference(StHandle<StBufferCounter>& theOther) const {
18
+ StHandle<StImageFileCounter> anImgFileRef = StHandle<StImageFileCounter>::downcast(theOther);
19
+ if(anImgFileRef.isNull()) {
20
+ anImgFileRef = new StImageFileCounter();
21
+ theOther = anImgFileRef;
22
+ }
23
+ anImgFileRef->myImageFile = myImageFile;
24
+}
25
+
26
+void StImageFileCounter::releaseReference() {
27
+ myImageFile.nullify();
28
+}
29
sview-15_10.tar.gz/StShared/StImagePlane.cpp -> sview-15_11.tar.gz/StShared/StImagePlane.cpp
Changed
96
1
2
/**
3
- * Copyright © 2010-2013 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2010-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
* See accompanying file license-boost.txt or copy at
8
9
case ImgBGR: return "ImgBGR";
10
case ImgRGB32: return "ImgRGB32";
11
case ImgBGR32: return "ImgBGR32";
12
+ case ImgRGB48: return "ImgRGB48";
13
case ImgRGBA: return "ImgRGBA";
14
case ImgBGRA: return "ImgBGRA";
15
+ case ImgRGBA64: return "ImgRGBA64";
16
case ImgGrayF: return "ImgGrayF";
17
case ImgRGBF: return "ImgRGBF";
18
case ImgBGRF: return "ImgBGRF";
19
20
case ImgBGRA:
21
mySizeBPP = 4;
22
break;
23
+ case ImgRGBA64:
24
+ mySizeBPP = 8;
25
+ break;
26
case ImgRGB32:
27
case ImgBGR32:
28
mySizeBPP = 4;
29
break;
30
+ case ImgRGB48:
31
+ mySizeBPP = 6;
32
+ break;
33
case ImgRGB:
34
case ImgBGR:
35
mySizeBPP = 3;
36
37
return true;
38
}
39
40
-bool StImagePlane::initCopy(const StImagePlane& theCopy) {
41
- if(initTrash(theCopy.getFormat(), theCopy.getSizeX(), theCopy.getSizeY(), theCopy.getSizeRowBytes())) {
42
+bool StImagePlane::initCopy(const StImagePlane& theCopy,
43
+ const bool theIsCompact) {
44
+ if(!initTrash(theCopy.myImgFormat, theCopy.mySizeX, theCopy.mySizeY, theIsCompact ? 0 : theCopy.mySizeRowBytes)) {
45
+ return false;
46
+ }
47
+
48
+ if(mySizeRowBytes == theCopy.mySizeRowBytes) {
49
stMemCpy(changeData(), theCopy.getData(), theCopy.getSizeBytes());
50
return true;
51
}
52
- return false;
53
+
54
+ const size_t aCopyRowBytes = stMin(mySizeRowBytes, theCopy.mySizeRowBytes);
55
+ for(size_t aRow = 0; aRow < mySizeY; ++aRow) {
56
+ stMemCpy(changeData(aRow, 0), theCopy.getData(aRow, 0), aCopyRowBytes);
57
+ }
58
+ return true;
59
}
60
61
bool StImagePlane::initWrapper(const StImagePlane& theCopy) {
62
- return initWrapper(theCopy.getFormat(), theCopy.myDataPtr,
63
- theCopy.getSizeX(), theCopy.getSizeY(), theCopy.getSizeRowBytes());
64
+ if(!initWrapper(theCopy.myImgFormat, theCopy.myDataPtr,
65
+ theCopy.mySizeX, theCopy.mySizeY, theCopy.mySizeRowBytes)) {
66
+ return false;
67
+ }
68
+ myIsTopBottom = theCopy.myIsTopBottom;
69
+ return true;
70
}
71
72
bool StImagePlane::initSideBySide(const StImagePlane& theImageL,
73
74
return true;
75
}
76
77
-bool StImagePlane::fill(const StImagePlane& theCopy) {
78
+bool StImagePlane::fill(const StImagePlane& theCopy,
79
+ const bool theIsCompact) {
80
if(getSizeY() != theCopy.getSizeY()
81
|| getSizeRowBytes() != theCopy.getSizeRowBytes()
82
|| getFormat() != theCopy.getFormat()) {
83
- return initCopy(theCopy);
84
+ return initCopy(theCopy, theIsCompact);
85
}
86
+
87
+ const size_t aCopyRowBytes = stMin(mySizeRowBytes, theCopy.mySizeRowBytes);
88
for(size_t row = 0; row < theCopy.getSizeY(); ++row) {
89
stMemCpy(changeData(row, 0),
90
theCopy.getData(row, 0),
91
- theCopy.getSizeRowBytes());
92
+ aCopyRowBytes);
93
}
94
return true;
95
}
96
sview-15_10.tar.gz/StShared/StPlayList.cpp -> sview-15_11.tar.gz/StShared/StPlayList.cpp
Changed
30
1
2
/**
3
- * Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
* See accompanying file license-boost.txt or copy at
8
9
return (myCurrent != NULL) ? myCurrent->getPosition() : 0;
10
}
11
12
+StPlayList::CurrentPosition StPlayList::getCurrentPosition() const {
13
+ StMutexAuto anAutoLock(myMutex);
14
+ if(myCurrent == NULL) {
15
+ return CurrentPosition_NONE;
16
+ } else if(myCurrent == myFirst) {
17
+ if(myCurrent == myLast) {
18
+ return CurrentPosition_Single;
19
+ }
20
+ return CurrentPosition_First;
21
+ } else if(myCurrent == myLast) {
22
+ return CurrentPosition_Last;
23
+ }
24
+ return CurrentPosition_Middle;
25
+}
26
+
27
StString StPlayList::getCurrentTitle() const {
28
StMutexAuto anAutoLock(myMutex);
29
return (myCurrent != NULL) ? myCurrent->getTitle() : StString();
30
sview-15_10.tar.gz/StShared/StShared.cbp -> sview-15_11.tar.gz/StShared/StShared.cbp
Changed
96
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/StShared" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME)" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME)" prefix_auto="1" extension_auto="1" />
7
- <Option working_dir="../bin/$(TARGET_NAME)" />
8
- <Option object_output="obj/$(TARGET_NAME)/" />
9
- <Option type="3" />
10
- <Option compiler="gcc" />
11
- <Option createStaticLib="1" />
12
- <Compiler>
13
- <Add option="-O3" />
14
- <Add option="-std=c++0x" />
15
- <Add option="-Wall" />
16
- <Add option="-g" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_SHARED_DLL" />
22
- <Add option="-D__MSVCRT_VERSION__=0x0601" />
23
- <Add option="-DST_HAVE_STCONFIG" />
24
- </Compiler>
25
- <Linker>
26
- <Add library="opengl32" />
27
- <Add library="user32" />
28
- <Add library="gdi32" />
29
- <Add library="Advapi32" />
30
- <Add library="Comdlg32" />
31
- <Add library="Shell32" />
32
- <Add library="Ole32.lib" />
33
- <Add library="Version" />
34
- <Add library="Wsock32" />
35
- </Linker>
36
- </Target>
37
<Target title="WIN_vc_x86">
38
<Option output="../bin/$(TARGET_NAME)/StShared" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME).a" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME).def" prefix_auto="1" extension_auto="1" />
39
<Option working_dir="../bin/$(TARGET_NAME)" />
40
41
<Add library="Wsock32" />
42
</Linker>
43
</Target>
44
- <Target title="WIN_vc_x86_DEBUG">
45
+ <Target title="WIN_vc_AMD64_DEBUG">
46
<Option output="../bin/$(TARGET_NAME)/StShared" imp_lib="../lib/$(TARGET_NAME)/$(TARGET_OUTPUT_BASENAME).a" def_file="$(TARGET_OUTPUT_DIR)$(TARGET_OUTPUT_BASENAME).def" prefix_auto="1" extension_auto="1" />
47
<Option working_dir="../bin/$(TARGET_NAME)" />
48
<Option object_output="obj/$(TARGET_NAME)/" />
49
<Option type="3" />
50
- <Option compiler="msvc10" />
51
+ <Option compiler="windows_sdk_x86_64" />
52
<Option createStaticLib="1" />
53
<Compiler>
54
<Add option="/MDd" />
55
56
<Unit filename="StFTLibrary.cpp" />
57
<Unit filename="StFileNode.cpp" />
58
<Unit filename="StFileNode2.cpp">
59
- <Option target="WIN_gcc_x86" />
60
<Option target="WIN_vc_x86" />
61
- <Option target="WIN_vc_x86_DEBUG" />
62
+ <Option target="WIN_vc_AMD64_DEBUG" />
63
<Option target="WIN_vc_AMD64" />
64
<Option target="LINUX_gcc" />
65
<Option target="LINUX_gcc_DEBUG" />
66
67
<Unit filename="StProcess2.cpp" />
68
<Unit filename="StRawFile.cpp" />
69
<Unit filename="StRegisterImpl.cpp">
70
- <Option target="WIN_gcc_x86" />
71
<Option target="WIN_vc_x86" />
72
- <Option target="WIN_vc_x86_DEBUG" />
73
+ <Option target="WIN_vc_AMD64_DEBUG" />
74
<Option target="WIN_vc_AMD64" />
75
</Unit>
76
<Unit filename="StResourceManager.cpp" />
77
78
<Unit filename="stAV.cpp" />
79
<Unit filename="stConsole.cpp" />
80
<Unit filename="stUtfTools.cpp" />
81
+ <Unit filename="../include/StAV/StAVBufferPool.h" />
82
<Unit filename="../include/StAV/StAVFrame.h" />
83
<Unit filename="../include/StAV/StAVImage.h" />
84
<Unit filename="../include/StAV/StAVPacket.h" />
85
86
<Unit filename="../include/stconfig.conf" />
87
<Unit filename="StShared.rc">
88
<Option compilerVar="WINDRES" />
89
- <Option target="WIN_gcc_x86" />
90
<Option target="WIN_vc_x86" />
91
- <Option target="WIN_vc_x86_DEBUG" />
92
+ <Option target="WIN_vc_AMD64_DEBUG" />
93
<Option target="WIN_vc_AMD64" />
94
</Unit>
95
<Extensions>
96
sview-15_10.tar.gz/StShared/stAV.cpp -> sview-15_11.tar.gz/StShared/stAV.cpp
Changed
47
1
2
const PixelFormat stAV::PIX_FMT::YUV410P = ST_AV_GETPIXFMT("yuv410p");
3
const PixelFormat stAV::PIX_FMT::YUV411P = ST_AV_GETPIXFMT("yuv411p");
4
const PixelFormat stAV::PIX_FMT::YUV440P = ST_AV_GETPIXFMT("yuv440p");
5
+const PixelFormat stAV::PIX_FMT::NV12 = ST_AV_GETPIXFMT("nv12");
6
const PixelFormat stAV::PIX_FMT::YUV420P9 = ST_AV_GETPIXFMT("yuv420p9");
7
const PixelFormat stAV::PIX_FMT::YUV422P9 = ST_AV_GETPIXFMT("yuv422p9");
8
const PixelFormat stAV::PIX_FMT::YUV444P9 = ST_AV_GETPIXFMT("yuv444p9");
9
10
const PixelFormat stAV::PIX_FMT::YUVJ440P = ST_AV_GETPIXFMT("yuvj440p");
11
const PixelFormat stAV::PIX_FMT::RGB24 = ST_AV_GETPIXFMT("rgb24");
12
const PixelFormat stAV::PIX_FMT::BGR24 = ST_AV_GETPIXFMT("bgr24");
13
+const PixelFormat stAV::PIX_FMT::RGB48 = ST_AV_GETPIXFMT("rgb48");
14
+const PixelFormat stAV::PIX_FMT::BGR48 = ST_AV_GETPIXFMT("bgr48");
15
+const PixelFormat stAV::PIX_FMT::RGBA64 = ST_AV_GETPIXFMT("rgba64");
16
+const PixelFormat stAV::PIX_FMT::BGRA64 = ST_AV_GETPIXFMT("bgra64");
17
+const PixelFormat stAV::PIX_FMT::DXVA2_VLD = ST_AV_GETPIXFMT("dxva2_vld");
18
19
// TODO (Kirill Gavrilov#9) remove this stuff
20
namespace {
21
22
return stCString("rgb24");
23
} else if(theFrmt == stAV::PIX_FMT::BGR24) {
24
return stCString("bgr24");
25
+ } else if(theFrmt == stAV::PIX_FMT::NV12) {
26
+ return stCString("nv12");
27
} else {
28
return stCString("unknown");
29
}
30
31
return true;
32
}
33
34
-bool stAV::meta::readTag(AVFrame* theFrame,
35
- const StCString& theKey,
36
- StString& theValue) {
37
+stAV::meta::Dict* stAV::meta::getFrameMetadata(AVFrame* theFrame) {
38
#if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(54, 38, 100)) && !defined(ST_LIBAV_FORK)
39
- return readTag(av_frame_get_metadata(theFrame), theKey, theValue);
40
+ return av_frame_get_metadata(theFrame);
41
#else
42
- return false;
43
+ return NULL;
44
#endif
45
}
46
47
sview-15_10.tar.gz/StTests/StTestGlBand.cpp -> sview-15_11.tar.gz/StTests/StTestGlBand.cpp
Changed
10
1
2
st::cout << stostream_text("RGB Frame to Frame ") << theFrameSizeX << stostream_text(" x ") << theFrameSizeY << stostream_text(" (RAM)\n");
3
myTimer.restart();
4
for(size_t anIter = 0; anIter < TEST_ITERATIONS; ++anIter) {
5
- if(!anImgPlaneDst.fill(anImgPlaneSrc)) {
6
+ if(!anImgPlaneDst.fill(anImgPlaneSrc, false)) {
7
st::cout << stostream_text("Fail to fill the image plane...\n");
8
return;
9
}
10
sview-15_10.tar.gz/StTests/StTests.cbp -> sview-15_11.tar.gz/StTests/StTests.cbp
Changed
61
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/StTests" prefix_auto="1" extension_auto="1" />
7
- <Option working_dir="../bin/$(TARGET_NAME)/" />
8
- <Option object_output="obj/$(TARGET_NAME)/" />
9
- <Option type="1" />
10
- <Option compiler="gcc" />
11
- <Option parameters="demo.jps" />
12
- <Compiler>
13
- <Add option="-O3" />
14
- <Add option="-std=c++0x" />
15
- <Add option="-Wall" />
16
- <Add option="-g" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add library="opengl32" />
25
- <Add library="gdi32" />
26
- <Add library="user32" />
27
- <Add library="kernel32" />
28
- <Add library="Comdlg32" />
29
- <Add library="Version" />
30
- </Linker>
31
- </Target>
32
<Target title="WIN_vc_x86">
33
<Option output="../bin/$(TARGET_NAME)/StTests" prefix_auto="1" extension_auto="1" />
34
<Option working_dir="../bin/$(TARGET_NAME)/" />
35
36
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /manifest "..\dpiAware.manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";1' />
37
</ExtraCommands>
38
</Target>
39
- <Target title="WIN_vc_x86_DEBUG">
40
+ <Target title="WIN_vc_AMD64_DEBUG">
41
<Option output="../bin/$(TARGET_NAME)/StTests" prefix_auto="1" extension_auto="1" />
42
<Option working_dir="../bin/$(TARGET_NAME)/" />
43
<Option object_output="obj/$(TARGET_NAME)/" />
44
<Option type="1" />
45
- <Option compiler="msvc10" />
46
+ <Option compiler="windows_sdk_x86_64" />
47
<Option parameters="demo.jps" />
48
<Compiler>
49
<Add option="/MDd" />
50
51
<Option target="MAC_gcc_DEBUG" />
52
</Unit>
53
<Unit filename="main.cpp">
54
- <Option target="WIN_gcc_x86" />
55
<Option target="WIN_vc_x86" />
56
- <Option target="WIN_vc_x86_DEBUG" />
57
+ <Option target="WIN_vc_AMD64_DEBUG" />
58
<Option target="WIN_vc_AMD64" />
59
<Option target="LINUX_gcc" />
60
<Option target="LINUX_gcc_DEBUG" />
61
sview-15_10.tar.gz/distribution/build.iss -> sview-15_11.tar.gz/distribution/build.iss
Changed
9
1
2
Source: {#SVIEW_DISTR_PATH_AMD64}\StCore.dll; DestDir: {app}\amd64; Flags: 64bit ignoreversion; Components: StCore; Check: IsWin64
3
Source: {#SVIEW_DISTR_PATH_x86}\StDiagnostics.dll; DestDir: {app}; Flags: 32bit ignoreversion; Components: StCore
4
Source: {#SVIEW_DISTR_PATH_AMD64}\StDiagnostics.dll; DestDir: {app}\amd64; Flags: 64bit ignoreversion; Components: StCore; Check: IsWin64
5
-Source: {#SVIEW_DISTR_PATH_x86}\shaders\StGLWidgets\*; DestDir: {app}\shaders\StGLWidgets; Flags: 32bit ignoreversion; Components: StCore
6
Source: {#SVIEW_DISTR_PATH_x86}\lang\Korean\language.lng; DestDir: {app}\lang\Korean; Flags: 32bit ignoreversion; Components: StCore
7
Source: {#SVIEW_DISTR_PATH_x86}\lang\ChineseS\language.lng; DestDir: {app}\lang\ChineseS; Flags: 32bit ignoreversion; Components: StCore
8
Source: {#SVIEW_DISTR_PATH_x86}\lang\Czech\language.lng; DestDir: {app}\lang\Czech; Flags: 32bit ignoreversion; Components: StCore
9
sview-15_10.tar.gz/distribution/buildDebSrc.sh -> sview-15_11.tar.gz/distribution/buildDebSrc.sh
Changed
14
1
2
cp -f -r ../sview $aDebSrcRoot/
3
cp -f -r ../textures $aDebSrcRoot/
4
cp -f ../Makefile $aDebSrcRoot/
5
-cp -f ../README $aDebSrcRoot/
6
-cp -f ../LICENSE $aDebSrcRoot/
7
+cp -f ../README.md $aDebSrcRoot/
8
+cp -f ../README.md $aDebSrcRoot/README
9
+cp -f ../LICENSE.md $aDebSrcRoot/
10
+cp -f ../LICENSE.md $aDebSrcRoot/LICENSE
11
cp -f ../license*.txt $aDebSrcRoot/
12
13
mkdir -p $aDebSrcRoot/3rdparty/include
14
sview-15_10.tar.gz/distribution/buildDebSrc_ppa.sh -> sview-15_11.tar.gz/distribution/buildDebSrc_ppa.sh
Changed
11
1
2
# Ubuntu 14.04 LTS (Trusty Tahr)
3
# Ubuntu 15.04 (Vivid Vervet)
4
# Ubuntu 15.10 (Wily Werewolf)
5
-#aDistribs=("trusty" "vivid" "wily")
6
-aDistribs=("trusty" "vivid")
7
+aDistribs=("trusty" "vivid" "wily")
8
9
# Debian
10
#aDistribs=("stable" "unstable" "testing-proposed-updates" "experimental")
11
sview-15_10.tar.gz/distribution/media/sView_SetupMac.png -> sview-15_11.tar.gz/distribution/media/sView_SetupMac.png
Changed
sview-15_11.tar.gz/docs/INSTALL.md
Added
115
1
2
+## I. Installing 3rd-parties
3
+
4
+sView requires several 3rd-party components for building:
5
+* C/C++ compiler (g++, MSVC 2010+)
6
+* Code::Blocks (http://www.codeblocks.org)
7
+* FFmpeg (http://www.ffmpeg.org)
8
+* OpenAL soft (http://kcat.strangesoft.net/openal.html)
9
+* libwebp, optional (https://developers.google.com/speed/webp/download)
10
+* GTK2+, Linux only (http://www.gtk.org)
11
+* libconfig++, Linux and Android (http://www.hyperrealm.com/libconfig)
12
+* libxpm, Linux only
13
+
14
+On Debian/Ubuntu you might use the following command to install all dependencies at once:
15
+
16
+~~~~~
17
+sudo apt-get install \
18
+ g++ \
19
+ libgtk2.0-dev \
20
+ libopenal-dev \
21
+ libgl1-mesa-dev \
22
+ libavcodec-dev libavdevice-dev libavformat-dev libavutil-dev libswscale-dev \
23
+ libwebp-dev \
24
+ libconfig++-dev libconfig-dev \
25
+ libxpm-dev \
26
+ codeblocks
27
+~~~~~
28
+
29
+The similar command for RPM-based distributives:
30
+
31
+~~~~~
32
+yum install gcc gcc-c++ \
33
+ gtk+-devel gtk2-devel \
34
+ mesa-libGLU-devel glew-devel \
35
+ openal-devel \
36
+ libconfig-devel
37
+
38
+rpm -Uvh http://download1.rpmfusion.org/free/fedora/rpmfusion-free-release-stable.noarch.rpm
39
+yum install ffmpeg-devel
40
+~~~~~
41
+
42
+On Windows and Mac OS X please refer to official documentation for each project.
43
+Notice that DevIL and FreeImage libraries are optional and need not for building sView
44
+(libraries are loaded dynamically if available).
45
+
46
+## II. Makefile on Linux
47
+
48
+Current Makefile has been written only for DEB/RPM source packages
49
+and lacks configuration flexibility (means there NO any ./configure and so on).
50
+
51
+All you need is to install dependencies and to execute traditional commands:
52
+
53
+~~~~~
54
+ make && make install
55
+~~~~~
56
+
57
+## III. Code::Blocks
58
+
59
+Code::Blocks is an official way for building and development of sView.
60
+There are several building targets depending on platform
61
+(Mac OS X, Linux, Windows) and debugging possibilities:
62
+* `WIN_vc_x86`, 32-bit target using Visual Studio compiler
63
+* `WIN_vc_AMD64_DEBUG`,64-bit target with debugging options
64
+* `WIN_vc_AMD64`, 64-bit target using Visual Studio compiler
65
+* `LINUX_gcc`, Linux target, g++ compiler
66
+* `LINUX_gcc_DEBUG`, Linux target with debugging options
67
+* `MAC_gcc`, Mac OS X target, g++ compatible compiler
68
+* `MAC_gcc_DEBUG`, Mac OS X target with debugging options
69
+
70
+Notice that the following compilers should be configured within Code::Blocks:
71
+* `gcc`, configured to g++ or compatible compiler (on systems other than Windows)
72
+* `msvc10`, configured to Visual Studio 2010+ compiler, PSDK and DXSDK
73
+* `windows_sdk_x86_64` (copy of msvc10) configured to 64-bit libraries and compiler toolchain
74
+
75
+3rd-parties should be either configured as Code::Blocks global compiler options
76
+or placed into "3rdparty" folder.
77
+
78
+## IV. Building options
79
+
80
+Several preprocessor directives control building options.
81
+Notice that by default "include/stconfig.conf" file is used to override these options
82
+(this file will be used only when ST_HAVE_STCONFIG is defined).
83
+
84
+* `ST_HAVE_WEBP` - should be defined to activate libwebp usage
85
+ (notice that since next releases of FFmpeg might have built-in support for webp/webpll image files)
86
+* `ST_HAVE_MONGOOSE` - should be defined to activate built-in web UI for remote Movie Player control
87
+* `ST_DEBUG` - should be defined to activate debugging log output
88
+* `ST_DEBUG_LOG_TO_FILE` - specifies file name or full path to duplicate debug log output
89
+
90
+## V. Distribution scripts
91
+
92
+Several script were written to automate distribution routines.
93
+All them were placed in "distribution" folder.
94
+
95
+* `build.bat`, batch script for Windows. Performs re-building of **WIN_vc_x86** and **WIN_vc_AMD64** targets
96
+ using Code::Blocks and pack result binaries using InnoSetup script.
97
+ Notice that all dependencies should be available (including InnoSetup),
98
+ and DLLs should be placed into **bin/WIN_vc_x86** and **bin/WIN_vc_AMD64** folders.
99
+* `buildDebSrc.sh`, bash script for Linux to pack sources into Debian source package.
100
+* `buildMac.sh`, bash script to pack binaries from **bin/MAC_gcc** folder into DMG image.
101
+ 3rd-party libraries should be already located in "bin/MAC_gcc_DEBUG/sView.app/Contents/Frameworks/"
102
+ folder with correct search path (refer to `bind_frameworks.sh` auxiliary script).
103
+
104
+~~~~~
105
+su
106
+yum install rpm-build
107
+
108
+mkdir -p ${HOME}/workspace/redhat/{RPMS,SRPMS,SPECS,SOURCES,BUILD}
109
+echo "%_topdir ${HOME}/workspace/redhat" > ${HOME}/.rpmmacros
110
+
111
+wget https://launchpad.net/~sview/+archive/stable/+files/sview_12.05-1%7Eprecise.tar.gz
112
+mv sview_12.05-1~precise.tar.gz $HOME/workspace/redhat/SOURCES/sview_12.05-1.tar.gz
113
+rpmbuild -ba distribution/sView.rpm.spec
114
+~~~~~
115
sview-15_11.tar.gz/include/StAV/StAVBufferPool.h
Added
106
1
2
+/**
3
+ * Copyright © 2015 Kirill Gavrilov <kirill@sview.ru>
4
+ *
5
+ * Distributed under the Boost Software License, Version 1.0.
6
+ * See accompanying file license-boost.txt or copy at
7
+ * http://www.boost.org/LICENSE_1_0.txt
8
+ */
9
+
10
+#ifndef __StAVBufferPool_h_
11
+#define __StAVBufferPool_h_
12
+
13
+#include <StAV/stAV.h>
14
+
15
+struct AVBufferPool;
16
+struct AVBufferRef;
17
+
18
+/**
19
+ * This is just a wrapper over AVBufferPool structure.
20
+ */
21
+class StAVBufferPool {
22
+
23
+ public:
24
+
25
+ /**
26
+ * Empty constructor
27
+ */
28
+ ST_LOCAL StAVBufferPool()
29
+ : myPool(NULL),
30
+ myBufferSize(0) {
31
+ //
32
+ }
33
+
34
+ /**
35
+ * Destructor
36
+ */
37
+ ST_LOCAL ~StAVBufferPool() {
38
+ release();
39
+ }
40
+
41
+ /**
42
+ * Release the pool (reference-counted buffer will be released when needed).
43
+ */
44
+ ST_LOCAL void release() {
45
+ #if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
46
+ if(myPool != NULL) {
47
+ av_buffer_pool_uninit(&myPool);
48
+ myPool = NULL;
49
+ myBufferSize = 0;
50
+ }
51
+ #endif
52
+ }
53
+
54
+ /**
55
+ * (Re-)initialize the pool.
56
+ */
57
+ ST_LOCAL bool init(const int theBufferSize) {
58
+ if(myBufferSize == theBufferSize) {
59
+ return true;
60
+ }
61
+
62
+ release();
63
+ if(theBufferSize == 0) {
64
+ return true;
65
+ }
66
+
67
+ #if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
68
+ myPool = av_buffer_pool_init(theBufferSize, NULL);
69
+ myBufferSize = theBufferSize;
70
+ return myPool != NULL;
71
+ #else
72
+ return false;
73
+ #endif
74
+ }
75
+
76
+ /**
77
+ * Return buffer size within the pool.
78
+ */
79
+ int getBufferSize() const {
80
+ return myBufferSize;
81
+ }
82
+
83
+ /**
84
+ * Get new buffer from the pool.
85
+ */
86
+ ST_LOCAL AVBufferRef* getBuffer() {
87
+ #if(LIBAVCODEC_VERSION_INT >= AV_VERSION_INT(55, 45, 101))
88
+ return av_buffer_pool_get(myPool);
89
+ #else
90
+ return NULL;
91
+ #endif
92
+ }
93
+
94
+ private:
95
+
96
+ StAVBufferPool(const StAVBufferPool& theCopy);
97
+
98
+ private:
99
+
100
+ AVBufferPool* myPool;
101
+ int myBufferSize;
102
+
103
+};
104
+
105
+#endif // __StAVBufferPool_h_
106
sview-15_10.tar.gz/include/StAV/StAVFrame.h -> sview-15_11.tar.gz/include/StAV/StAVFrame.h
Changed
20
1
2
/**
3
- * Copyright © 2013 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
* See accompanying file license-boost.txt or copy at
8
9
ST_CPPEXPORT ~StAVFrame();
10
11
/**
12
+ * Return true if frame does not contain any data.
13
+ */
14
+ ST_LOCAL bool isEmpty() const { return Frame->format == -1; } // AV_PIX_FMT_NONE
15
+
16
+ /**
17
* Reset frame to default state (empty).
18
*/
19
ST_CPPEXPORT void reset();
20
sview-15_10.tar.gz/include/StAV/StAVImage.h -> sview-15_11.tar.gz/include/StAV/StAVImage.h
Changed
91
1
2
/**
3
- * Copyright © 2011-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
* See accompanying file license-boost.txt or copy at
8
9
#define __StAVImage_h_
10
11
#include <StImage/StImageFile.h>
12
+#include <StAV/StAVFrame.h>
13
14
struct AVInputFormat;
15
struct AVFormatContext;
16
struct AVCodecContext;
17
struct AVCodec;
18
-struct AVFrame;
19
20
// define StHandle template specialization
21
class StAVImage;
22
ST_DEFINE_HANDLE(StAVImage, StImageFile);
23
24
+class StAVFrameCounter;
25
+ST_DEFINE_HANDLE(StAVFrameCounter, StBufferCounter);
26
+
27
/**
28
* This class implements image load/save operation using libav* libraries.
29
*/
30
31
32
ST_LOCAL static int getAVPixelFormat(const StImage& theImage);
33
34
+ /**
35
+ * Close currently opened image context and release memory.
36
+ */
37
+ ST_LOCAL void closeAvCtx();
38
+
39
private:
40
41
AVInputFormat* myImageFormat; //!< image format
42
AVFormatContext* myFormatCtx; //!< file context
43
AVCodecContext* myCodecCtx; //!< codec context
44
AVCodec* myCodec; //!< codec
45
- AVFrame* myFrame;
46
+ StAVFrame myFrame;
47
+
48
+};
49
+
50
+/**
51
+ * Pass reference-counted AVFrame (e.g. AVBuffer) into StImage without data copying.
52
+ */
53
+class StAVFrameCounter : public StBufferCounter {
54
+
55
+ public:
56
+
57
+ /**
58
+ * Default constructor.
59
+ */
60
+ ST_CPPEXPORT StAVFrameCounter();
61
+
62
+ /**
63
+ * Create the new reference (e.g. increment counter).
64
+ * If theOther has the same type, than the ref counter will be reused.
65
+ * Otherwise then new counter will be allocated.
66
+ */
67
+ ST_CPPEXPORT virtual void createReference(StHandle<StBufferCounter>& theOther) const;
68
+
69
+ /**
70
+ * Release current reference.
71
+ */
72
+ ST_CPPEXPORT virtual void releaseReference();
73
+
74
+ /**
75
+ * Release reference counter.
76
+ */
77
+ ST_CPPEXPORT virtual ~StAVFrameCounter();
78
+
79
+ /**
80
+ * Initialize a proxy reference.
81
+ */
82
+ ST_CPPEXPORT void moveReferenceFrom(AVFrame* theFrame);
83
+
84
+ private:
85
+
86
+ AVFrame* myFrame; //!< frame
87
+ bool myIsProxy; //!< proxy reference to be moved, not copied
88
89
};
90
91
sview-15_10.tar.gz/include/StAV/stAV.h -> sview-15_11.tar.gz/include/StAV/stAV.h
Changed
137
1
2
ST_SHARED_CPPEXPORT PixelFormat YUV410P; //!< planar YUV 4:1:0, 9bpp, (1 Cr & Cb sample per 4x4 Y samples)
3
ST_SHARED_CPPEXPORT PixelFormat YUV411P; //!< planar YUV 4:1:1, 12bpp, (1 Cr & Cb sample per 4x1 Y samples)
4
ST_SHARED_CPPEXPORT PixelFormat YUV440P; //!< planar YUV 4:4:0 (1 Cr & Cb sample per 1x2 Y samples)
5
+ ST_SHARED_CPPEXPORT PixelFormat NV12; //!< YUV420, Y plane + interleaved UV plane oh half width and height
6
// wide planar YUV formats (9,10,14,16 bits stored in 16 bits)
7
ST_SHARED_CPPEXPORT PixelFormat YUV420P9;
8
ST_SHARED_CPPEXPORT PixelFormat YUV422P9;
9
10
// RGB formats
11
ST_SHARED_CPPEXPORT PixelFormat RGB24; //!< packed RGB 8:8:8, 24bpp, RGBRGB...
12
ST_SHARED_CPPEXPORT PixelFormat BGR24; //!< packed RGB 8:8:8, 24bpp, BGRBGR...
13
+ ST_SHARED_CPPEXPORT PixelFormat RGB48;
14
+ ST_SHARED_CPPEXPORT PixelFormat BGR48;
15
ST_SHARED_CPPEXPORT PixelFormat RGBA32;
16
ST_SHARED_CPPEXPORT PixelFormat BGRA32;
17
+ ST_SHARED_CPPEXPORT PixelFormat RGBA64;
18
+ ST_SHARED_CPPEXPORT PixelFormat BGRA64;
19
+ // HWAccel formats
20
+ ST_SHARED_CPPEXPORT PixelFormat DXVA2_VLD;
21
22
ST_CPPEXPORT StCString getString(const PixelFormat theFrmt);
23
}
24
25
#endif
26
27
/**
28
+ * Check is stream represents attached picture (e.g. NOT a video stream).
29
+ */
30
+ inline bool isAttachedPicture(const AVStream* theStream) {
31
+ if(theStream == NULL) {
32
+ return false;
33
+ }
34
+
35
+ #if(LIBAVFORMAT_VERSION_INT >= AV_VERSION_INT(54, 2, 100))
36
+ return (theStream->disposition & AV_DISPOSITION_ATTACHED_PIC) != 0;
37
+ #else
38
+ return false;
39
+ #endif
40
+ }
41
+
42
+ /**
43
* Audio functions
44
*/
45
namespace audio {
46
47
#endif
48
49
/**
50
- * Alias to av_dict_get.
51
+ * Alias for av_frame_get_metadata().
52
+ */
53
+ ST_CPPEXPORT Dict* getFrameMetadata(AVFrame* theFrame);
54
+
55
+ /**
56
+ * Alias for av_dict_get().
57
*/
58
ST_CPPEXPORT Tag* findTag(Dict* theDict,
59
const char* theKey,
60
61
const StCString& theKey,
62
StString& theValue);
63
64
+ /**
65
+ * Read tag from Format Context metadata.
66
+ */
67
inline bool readTag(AVFormatContext* theFormatCtx,
68
const StCString& theKey,
69
StString& theValue) {
70
return readTag(theFormatCtx->metadata, theKey, theValue);
71
}
72
73
+ /**
74
+ * Read tag from Stream metadata.
75
+ */
76
inline bool readTag(AVStream* theStream,
77
const StCString& theKey,
78
StString& theValue) {
79
return readTag(theStream->metadata, theKey, theValue);
80
}
81
82
- ST_CPPEXPORT bool readTag(AVFrame* theFrame,
83
- const StCString& theKey,
84
- StString& theValue);
85
+ /**
86
+ * Read tag from Frame metadata.
87
+ */
88
+ inline bool readTag(AVFrame* theFrame,
89
+ const StCString& theKey,
90
+ StString& theValue) {
91
+ return readTag(getFrameMetadata(theFrame), theKey, theValue);
92
+ }
93
94
}
95
96
97
/**
98
* Convert stereo3d enumeration from sView to FFmpeg definition.
99
*/
100
- ST_LOCAL inline AVStereo3DType stereo3dStToAv(const StFormat theType) {
101
+ ST_LOCAL inline AVStereo3DType stereo3dStToAv(const StFormat theType,
102
+ bool& theIsReversed) {
103
+ theIsReversed = false;
104
switch(theType) {
105
default:
106
- case StFormat_AUTO: return (AVStereo3DType )-1;
107
- case StFormat_Mono: return AV_STEREO3D_2D;
108
+ case StFormat_AUTO:
109
+ return (AVStereo3DType )-1;
110
+ case StFormat_Mono:
111
+ return AV_STEREO3D_2D;
112
+ case StFormat_SideBySide_RL:
113
+ theIsReversed = true;
114
+ return AV_STEREO3D_SIDEBYSIDE;
115
case StFormat_SideBySide_LR:
116
- case StFormat_SideBySide_RL: return AV_STEREO3D_SIDEBYSIDE;
117
+ return AV_STEREO3D_SIDEBYSIDE;
118
+ case StFormat_TopBottom_RL:
119
+ theIsReversed = true;
120
+ return AV_STEREO3D_TOPBOTTOM;
121
case StFormat_TopBottom_LR:
122
- case StFormat_TopBottom_RL: return AV_STEREO3D_TOPBOTTOM;
123
- case StFormat_Rows: return AV_STEREO3D_LINES;
124
- case StFormat_Columns: return AV_STEREO3D_COLUMNS;
125
+ return AV_STEREO3D_TOPBOTTOM;
126
+ case StFormat_Rows:
127
+ return AV_STEREO3D_LINES;
128
+ case StFormat_Columns:
129
+ return AV_STEREO3D_COLUMNS;
130
//case StFormat_SeparateFrames:
131
- case StFormat_FrameSequence: return AV_STEREO3D_FRAMESEQUENCE;
132
+ case StFormat_FrameSequence:
133
+ return AV_STEREO3D_FRAMESEQUENCE;
134
//case StFormat_AnaglyphRedCyan:
135
//case StFormat_AnaglyphGreenMagenta:
136
//case StFormat_AnaglyphYellowBlue:
137
sview-15_10.tar.gz/include/StCore/StAndroidGlue.h -> sview-15_11.tar.gz/include/StCore/StAndroidGlue.h
Changed
46
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2014-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#if defined(__ANDROID__)
25
26
*/
27
static StCString getCommandIdName(StAndroidGlue::CommandId theCmd);
28
29
+ /**
30
+ * Retrieve path using android.os.Environment.getExternalStoragePublicDirectory().
31
+ */
32
+ static StString getStoragePath(JNIEnv* theJEnv,
33
+ const char* theType);
34
+
35
public: //! @name interface to implement
36
37
/**
38
39
StAndroidPollSource myInputPollSource;
40
41
StMutex myFetchLock; //!< fetch data lock
42
+ StString myStAppClass; //!< application class name (e.g. image, video)
43
StString myDndPath; //!< intent data string
44
StString myCreatePath; //!< intent data string used to open this activity
45
StQuaternion<double> myQuaternion; //!< device orientation
46
sview-15_10.tar.gz/include/StCore/StApplication.h -> sview-15_11.tar.gz/include/StCore/StApplication.h
Changed
55
1
2
/**
3
- * Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
5
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
6
*
7
- * StCore library is free software: you can redistribute it and/or modify
8
- * it under the terms of the GNU Lesser General Public License as published by
9
- * the Free Software Foundation, either version 3 of the License, or
10
- * (at your option) any later version.
11
- *
12
- * StCore library is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15
- * See the GNU General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU Lesser General Public
18
- * License along with this library.
19
- * If not, see <http://www.gnu.org/licenses/>.
20
+ * Distributed under the Boost Software License, Version 1.0.
21
+ * See accompanying file license-boost.txt or copy at
22
+ * http://www.boost.org/LICENSE_1_0.txt
23
*/
24
25
#ifndef __StApplication_h_
26
27
#include <StSlots/StAction.h>
28
29
#include <map>
30
+#include <string>
31
32
class StEventsBuffer;
33
class StSettings;
34
35
*/
36
ST_LOCAL const std::map< int, StHandle<StAction> >& getActions() const { return myActions; }
37
38
+ /**
39
+ * Find action ID for specified Action Name.
40
+ */
41
+ ST_CPPEXPORT int getActionIdFromName(const StString& theActionName) const;
42
+
43
protected:
44
45
/**
46
47
StHandle<StOpenInfo> myOpenFileInfo; //!< file to open
48
std::map< int, StHandle<StAction> >
49
myActions; //!< ID -> Action map
50
+ std::map< std::string, int >
51
+ myActionLookup; //!< lookup map ActionName -> ActionID
52
std::map< unsigned int, StHandle<StAction> >
53
myKeyActions; //!< Hot Key -> Action map
54
StHandle<StEventsBuffer>
55
sview-15_10.tar.gz/include/StCore/StEDIDParser.h -> sview-15_11.tar.gz/include/StCore/StEDIDParser.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2010-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StEDIDParser_h_
25
sview-15_10.tar.gz/include/StCore/StEvent.h -> sview-15_11.tar.gz/include/StCore/StEvent.h
Changed
36
1
2
/**
3
- * Copyright © 2013 Kirill Gavrilov <kirill@sview.ru>
4
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
5
+ * Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru>
6
*
7
- * StCore library is free software: you can redistribute it and/or modify
8
- * it under the terms of the GNU Lesser General Public License as published by
9
- * the Free Software Foundation, either version 3 of the License, or
10
- * (at your option) any later version.
11
- *
12
- * StCore library is distributed in the hope that it will be useful,
13
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
14
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
15
- * See the GNU General Public License for more details.
16
- *
17
- * You should have received a copy of the GNU Lesser General Public
18
- * License along with this library.
19
- * If not, see <http://www.gnu.org/licenses/>.
20
+ * Distributed under the Boost Software License, Version 1.0.
21
+ * See accompanying file license-boost.txt or copy at
22
+ * http://www.boost.org/LICENSE_1_0.txt
23
*/
24
25
#ifndef __StEvent_h_
26
27
28
StEventType Type; //!< event type
29
double Time; //!< time in seconds when event was registered
30
- const char* File; //!< file path
31
+ const char** Files; //!< file paths
32
+ uint32_t NbFiles;//!< number of files
33
34
};
35
36
sview-15_10.tar.gz/include/StCore/StKeysState.h -> sview-15_11.tar.gz/include/StCore/StKeysState.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StKeysState_h_
25
sview-15_10.tar.gz/include/StCore/StMonitor.h -> sview-15_11.tar.gz/include/StCore/StMonitor.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StMonitor_h_
25
sview-15_10.tar.gz/include/StCore/StNativeWin_t.h -> sview-15_11.tar.gz/include/StCore/StNativeWin_t.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StNativeWin_t_h_
25
sview-15_10.tar.gz/include/StCore/StOpenInfo.h -> sview-15_11.tar.gz/include/StCore/StOpenInfo.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2009-2011 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StOpenInfo_h_
25
sview-15_10.tar.gz/include/StCore/StSearchMonitors.h -> sview-15_11.tar.gz/include/StCore/StSearchMonitors.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StSearchMonitors_h_
25
sview-15_10.tar.gz/include/StCore/StVirtualKeys.h -> sview-15_11.tar.gz/include/StCore/StVirtualKeys.h
Changed
34
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StVirtualKey_h_
25
26
ST_VK_COMMA = 0xBC, // 188 = VK_OEM_COMMA | ',' any country
27
ST_VK_OEM_MINUS = 0xBD, // 189 = VK_OEM_MINUS | '-' any country
28
ST_VK_PERIOD = 0xBE, // 190 = VK_OEM_PERIOD | '.' any country
29
- ///ST_VK_OEM_2 = 0xBF, // 191 = VK_OEM_2 | '/?' for US
30
+ ST_VK_SLASH = 0xBF, // 191 = VK_OEM_2 | '/?' for US
31
///ST_VK_OEM_3 = 0xC0, // 192 = VK_OEM_3 | '`~' for US*
32
33
ST_VK_BRACKETLEFT = 0xDB, // 219 = VK_OEM_4 | '[{' for US
34
sview-15_10.tar.gz/include/StCore/StWinErrorCodes.h -> sview-15_11.tar.gz/include/StCore/StWinErrorCodes.h
Changed
25
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2009 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StWinErrorCodes_h_
25
sview-15_10.tar.gz/include/StCore/StWindow.h -> sview-15_11.tar.gz/include/StCore/StWindow.h
Changed
34
1
2
/**
3
+ * StCore, window system independent C++ toolkit for writing OpenGL applications.
4
* Copyright © 2007-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
- * StCore library is free software: you can redistribute it and/or modify
7
- * it under the terms of the GNU Lesser General Public License as published by
8
- * the Free Software Foundation, either version 3 of the License, or
9
- * (at your option) any later version.
10
- *
11
- * StCore library is distributed in the hope that it will be useful,
12
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
13
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14
- * See the GNU General Public License for more details.
15
- *
16
- * You should have received a copy of the GNU Lesser General Public
17
- * License along with this library.
18
- * If not, see <http://www.gnu.org/licenses/>.
19
+ * Distributed under the Boost Software License, Version 1.0.
20
+ * See accompanying file license-boost.txt or copy at
21
+ * http://www.boost.org/LICENSE_1_0.txt
22
*/
23
24
#ifndef __StWindow_h_
25
26
StWinSlave_splitOff, //!< do not split the window
27
StWinSlave_splitHorizontal, //!< split window horizontally
28
StWinSlave_splitVertical, //!< split window vertically
29
+ StWinSlave_splitVertHdmi720, //!< split window vertically (2x 1280x720 + 30 pixels between)
30
+ StWinSlave_splitVertHdmi1080 //!< split window vertically (2x 1920x1080 + 45 pixels between)
31
};
32
33
/**
34
sview-15_10.tar.gz/include/StGL/StPlayList.h -> sview-15_11.tar.gz/include/StGL/StPlayList.h
Changed
50
1
2
/**
3
- * Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
* See accompanying file license-boost.txt or copy at
8
9
public:
10
11
/**
12
+ * Enumeration identifying position of current item in the playlist.
13
+ */
14
+ enum CurrentPosition {
15
+ CurrentPosition_NONE, //!< empty list
16
+ CurrentPosition_Single, //!< single item
17
+ CurrentPosition_First, //!< first in the list
18
+ CurrentPosition_Last, //!< last in the list
19
+ CurrentPosition_Middle, //!< somewhere in the list
20
+ };
21
+
22
+ public:
23
+
24
+ /**
25
* Main constructor.
26
*/
27
ST_CPPEXPORT StPlayList(const int theRecursionDeep,
28
29
ST_CPPEXPORT size_t getCurrentId() const;
30
31
/**
32
+ * Return item index for the current position in playlist
33
+ * and flags if it is last or first
34
+ */
35
+ ST_CPPEXPORT StPlayList::CurrentPosition getCurrentPosition() const;
36
+
37
+ /**
38
* Return title for the current position in playlist.
39
* Will be empty string if playlist is empty.
40
*/
41
42
return myItemsCount;
43
}
44
45
- inline bool isEmpty() const {
46
+ ST_LOCAL bool isEmpty() const {
47
StMutexAuto anAutoLock(myMutex);
48
return myFirst == NULL;
49
}
50
sview-15_10.tar.gz/include/StGLStereo/StGLTextureData.h -> sview-15_11.tar.gz/include/StGLStereo/StGLTextureData.h
Changed
42
1
2
return myStParams;
3
}
4
5
- inline void resetStParams() {
6
+ ST_LOCAL void resetStParams() {
7
myStParams.nullify();
8
+ if(!myDataPair.getBufferCounter().isNull()
9
+ || !myDataL.getBufferCounter().isNull()
10
+ || !myDataR.getBufferCounter().isNull()) {
11
+ reset();
12
+ }
13
}
14
15
/**
16
17
18
private:
19
20
-
21
ST_LOCAL bool reAllocate(const size_t theSizeBytes);
22
23
+ ST_LOCAL void copyProps(const StImage& theDataL,
24
+ const StImage& theDataR);
25
+
26
+ /**
27
+ * Validate and setup packed cubemap flag.
28
+ */
29
+ ST_LOCAL void validateCubemap(const StCubemap theCubemap);
30
+
31
/**
32
* Fill the texture plane.
33
*/
34
35
36
GLubyte* myDataPtr; //!< data for left and right views
37
size_t myDataSizeBytes; //!< allocated data size in bytes
38
+ StImage myDataPair;
39
StImage myDataL;
40
StImage myDataR;
41
42
sview-15_10.tar.gz/include/StGLWidgets/StGLAssignHotKey.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLAssignHotKey.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLButton.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLButton.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLCheckbox.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLCheckbox.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLCheckboxTextured.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLCheckboxTextured.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLCombobox.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLCombobox.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLCorner.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLCorner.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009, 2011 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLDescription.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLDescription.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLFpsLabel.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLFpsLabel.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLImageProgram.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLImageProgram.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2010-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLImageRegion.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLImageRegion.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2010-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLMenu.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLMenu.h
Changed
25
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
ST_CPPEXPORT virtual void stglResize();
9
ST_CPPEXPORT virtual bool stglInit();
10
ST_CPPEXPORT virtual void stglDraw(unsigned int theView);
11
+ ST_CPPEXPORT virtual bool doKeyDown(const StKeyEvent& theEvent);
12
ST_CPPEXPORT virtual bool tryUnClick(const StPointD_t& theCursorZo, const int& theMouseBtn, bool& theIsItemUnclicked);
13
14
inline bool isRootMenu() const {
15
return myIsRootMenu;
16
}
17
18
- void setContextual(const bool theValue) {
19
- myIsContextual = theValue;
20
- }
21
+ ST_CPPEXPORT void setContextual(const bool theValue);
22
23
inline bool isActive() const {
24
return myIsActive;
25
sview-15_10.tar.gz/include/StGLWidgets/StGLMenuCheckbox.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLMenuCheckbox.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLMenuItem.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLMenuItem.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLMenuProgram.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLMenuProgram.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLMenuRadioButton.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLMenuRadioButton.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLMessageBox.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLMessageBox.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLMsgStack.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLMsgStack.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLOpenFile.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLOpenFile.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLPlayList.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLPlayList.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLRadioButton.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLRadioButton.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLRadioButtonFloat32.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLRadioButtonFloat32.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLRadioButtonTextured.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLRadioButtonTextured.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLRangeFieldFloat32.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLRangeFieldFloat32.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLRootWidget.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLRootWidget.h
Changed
42
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
template<> inline void StArray<StGLNamedTexture>::sort() {}
9
typedef StArray<StGLNamedTexture> StGLTextureArray;
10
class StGLMenuProgram;
11
+class StGLTextProgram;
12
+class StGLTextBorderProgram;
13
14
/**
15
* Full OpenGL-window widget, must be ROOT for other widgets.
16
17
ST_LOCAL StGLMenuProgram& getMenuProgram() { return *myMenuProgram; }
18
19
/**
20
+ * Get shared text program instance.
21
+ */
22
+ ST_LOCAL StGLTextProgram& getTextProgram() { return *myTextProgram; }
23
+
24
+ /**
25
+ * Get shared text border program instance.
26
+ */
27
+ ST_LOCAL StGLTextBorderProgram& getTextBorderProgram() { return *myTextBorderProgram; }
28
+
29
+ /**
30
* Return color of standard element.
31
*/
32
ST_LOCAL const StGLVec4& getColorForElement(const StGLRootWidget::Color theElement) const { return myColors[theElement]; }
33
34
StHandle<StGLTextureArray> myCheckboxIcon;
35
StHandle<StGLTextureArray> myRadioIcon;
36
StHandle<StGLMenuProgram> myMenuProgram;
37
+ StHandle<StGLTextProgram> myTextProgram;
38
+ StHandle<StGLTextBorderProgram> myTextBorderProgram;
39
40
bool myIsMobile; //!< flag indicating mobile device
41
StMarginsI myMarginsPx; //!< active area margins in pixels
42
sview-15_10.tar.gz/include/StGLWidgets/StGLScrollArea.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLScrollArea.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2013-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLShare.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLShare.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLSubtitles.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLSubtitles.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2010-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLSwitchTextured.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLSwitchTextured.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2011-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLTable.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLTable.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2014-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLTextArea.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLTextArea.h
Changed
29
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
#include <StGLWidgets/StGLShare.h>
9
#include <StGLWidgets/StGLWidget.h>
10
11
+class StGLTextProgram;
12
+class StGLTextBorderProgram;
13
+
14
/**
15
* Class implements basic text rendering widget.
16
*/
17
18
StGLVertexBuffer myBorderIVertBuf;
19
StGLVertexBuffer myBorderOVertBuf;
20
21
- class StTextProgram;
22
- class StBorderProgram;
23
- StGLShare<StTextProgram> myTextProgram;
24
- StGLShare<StBorderProgram> myBorderProgram;
25
-
26
protected:
27
28
StHandle<StGLFont> myFont; //!< used font
29
sview-15_11.tar.gz/include/StGLWidgets/StGLTextBorderProgram.h
Added
81
1
2
+/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
+ *
6
+ * Distributed under the Boost Software License, Version 1.0.
7
+ * See accompanying file license-boost.txt or copy at
8
+ * http://www.boost.org/LICENSE_1_0.txt
9
+ */
10
+
11
+#ifndef __StGLTextBorderProgram_h_
12
+#define __StGLTextBorderProgram_h_
13
+
14
+#include <StGL/StGLProgram.h>
15
+#include <StGL/StGLVec.h>
16
+
17
+class StGLMatrix;
18
+
19
+/**
20
+ * GLSL program for rendering border around 2D text.
21
+ */
22
+class StGLTextBorderProgram : public StGLProgram {
23
+
24
+ public:
25
+
26
+ /**
27
+ * Empty constructor.
28
+ */
29
+ ST_CPPEXPORT StGLTextBorderProgram();
30
+
31
+ /**
32
+ * Destructor.
33
+ */
34
+ ST_CPPEXPORT virtual ~StGLTextBorderProgram();
35
+
36
+ /**
37
+ * Return location of vertex attribute defining position.
38
+ */
39
+ ST_LOCAL StGLVarLocation getVVertexLoc() const { return StGLVarLocation(0); }
40
+
41
+ /**
42
+ * Setup projection matrix.
43
+ * @param theCtx active GL context
44
+ * @param theProjMat projection matrix
45
+ */
46
+ ST_CPPEXPORT void setProjMat(StGLContext& theCtx,
47
+ const StGLMatrix& theProjMat);
48
+
49
+ /**
50
+ * Setup model-view matrix.
51
+ * @param theCtx active GL context
52
+ * @param theModelMat model-view matrix
53
+ */
54
+ ST_CPPEXPORT void setModelMat(StGLContext& theCtx,
55
+ const StGLMatrix& theModelMat);
56
+
57
+ /**
58
+ * Setup text color.
59
+ * @param theCtx active GL context
60
+ * @param theColor color
61
+ */
62
+ ST_CPPEXPORT void setColor(StGLContext& theCtx,
63
+ const StGLVec4& theColor);
64
+
65
+ /**
66
+ * Initialize program.
67
+ * @param theCtx active GL context
68
+ * @return true if no error
69
+ */
70
+ ST_CPPEXPORT virtual bool init(StGLContext& theCtx);
71
+
72
+ private:
73
+
74
+ StGLVarLocation myUniformProjMat; //!< location of uniform variable of projection matrix
75
+ StGLVarLocation myUniformModelMat; //!< location of uniform variable of model view matrix
76
+ StGLVarLocation myUniformColor; //!< location of uniform variable of color value
77
+
78
+};
79
+
80
+#endif // __StGLTextBorderProgram_h_
81
sview-15_11.tar.gz/include/StGLWidgets/StGLTextProgram.h
Added
88
1
2
+/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
+ *
6
+ * Distributed under the Boost Software License, Version 1.0.
7
+ * See accompanying file license-boost.txt or copy at
8
+ * http://www.boost.org/LICENSE_1_0.txt
9
+ */
10
+
11
+#ifndef __StGLTextProgram_h_
12
+#define __StGLTextProgram_h_
13
+
14
+#include <StGL/StGLProgram.h>
15
+#include <StGL/StGLVec.h>
16
+
17
+class StGLMatrix;
18
+
19
+/**
20
+ * GLSL program for rendering textured text.
21
+ * Font texture is expected to be in alpha format
22
+ * (either GL_ALPHA8 or GL_R8 when StGLContext::arbTexRG is available).
23
+ */
24
+class StGLTextProgram : public StGLProgram {
25
+
26
+ public:
27
+
28
+ /**
29
+ * Empty constructor.
30
+ */
31
+ ST_CPPEXPORT StGLTextProgram();
32
+
33
+ /**
34
+ * Destructor.
35
+ */
36
+ ST_CPPEXPORT virtual ~StGLTextProgram();
37
+
38
+ /**
39
+ * Return vertex position attribute location.
40
+ */
41
+ ST_LOCAL StGLVarLocation getVVertexLoc() const { return StGLVarLocation(0); }
42
+
43
+ /**
44
+ * Return vertex texture coordinates attribute location.
45
+ */
46
+ ST_LOCAL StGLVarLocation getVTexCoordLoc() const { return StGLVarLocation(1); }
47
+
48
+ /**
49
+ * Setup projection matrix.
50
+ * @param theCtx active GL context
51
+ * @param theProjMat projection matrix
52
+ */
53
+ ST_CPPEXPORT void setProjMat(StGLContext& theCtx,
54
+ const StGLMatrix& theProjMat);
55
+
56
+ /**
57
+ * Setup model-view matrix.
58
+ * @param theCtx active GL context
59
+ * @param theModelMat model-view matrix
60
+ */
61
+ ST_CPPEXPORT void setModelMat(StGLContext& theCtx,
62
+ const StGLMatrix& theModelMat);
63
+
64
+ /**
65
+ * Setup text color.
66
+ * @param theCtx active GL context
67
+ * @param theColor color
68
+ */
69
+ ST_CPPEXPORT void setColor(StGLContext& theCtx,
70
+ const StGLVec4& theColor);
71
+
72
+ /**
73
+ * Initialize program.
74
+ * @param theCtx active GL context
75
+ * @return true if no error
76
+ */
77
+ ST_CPPEXPORT virtual bool init(StGLContext& theCtx);
78
+
79
+ private:
80
+
81
+ StGLVarLocation myUniformProjMat; //!< location of uniform variable of projection matrix
82
+ StGLVarLocation myUniformModelMat; //!< location of uniform variable of model view matrix
83
+ StGLVarLocation myUniformColor; //!< location of uniform variable of color value
84
+
85
+};
86
+
87
+#endif // __StGLTextProgram_h_
88
sview-15_10.tar.gz/include/StGLWidgets/StGLTextureButton.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLTextureButton.h
Changed
24
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
8
ST_CPPEXPORT virtual ~StGLTextureButton();
9
10
/**
11
+ * Return scale factor to be applied to the widget opacity, 1.0 by default.
12
+ */
13
+ ST_LOCAL float getOpacityScale() const { return myOpacityScale; }
14
+
15
+ /**
16
+ * Setup scale factor to be applied to the widget opacity.
17
+ */
18
+ ST_LOCAL void setOpacityScale(const float theValue) { myOpacityScale = theValue; }
19
+
20
+ /**
21
* Setup color for alpha texture.
22
*/
23
ST_LOCAL void setColor(const StGLVec4& theColor) {
24
sview-15_10.tar.gz/include/StGLWidgets/StGLWidget.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLWidget.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StGLWidgetList.h -> sview-15_11.tar.gz/include/StGLWidgets/StGLWidgetList.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2009-2013 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StGLWidgets/StSubQueue.h -> sview-15_11.tar.gz/include/StGLWidgets/StSubQueue.h
Changed
7
1
2
/**
3
+ * StGLWidgets, small C++ toolkit for writing GUI using OpenGL.
4
* Copyright © 2010-2014 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
sview-15_10.tar.gz/include/StImage/StImage.h -> sview-15_11.tar.gz/include/StImage/StImage.h
Changed
132
1
2
/**
3
- * Copyright © 2010-2013 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2010-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
* See accompanying file license-boost.txt or copy at
8
9
10
#include "StImagePlane.h"
11
12
+/**
13
+ * Interface to share arbitrary memory buffer using reference counter.
14
+ */
15
+class StBufferCounter {
16
+
17
+ public:
18
+
19
+ /**
20
+ * Empty constructor.
21
+ */
22
+ StBufferCounter() {}
23
+
24
+ /**
25
+ * Create the new reference (e.g. increment counter).
26
+ * If theOther has the same type, than the ref counter will be reused.
27
+ * Otherwise then new counter will be allocated.
28
+ */
29
+ virtual void createReference(StHandle<StBufferCounter>& theOther) const = 0;
30
+
31
+ /**
32
+ * Release current reference.
33
+ */
34
+ virtual void releaseReference() = 0;
35
+
36
+ /**
37
+ * Destructor.
38
+ */
39
+ virtual ~StBufferCounter() {}
40
+
41
+};
42
+
43
+/**
44
+ * Class defining 2D image consisting from one or more color planes.
45
+ */
46
class StImage {
47
48
public: //! @name enumerations
49
50
/**
51
* Initialize as copy (data will be copied!).
52
*/
53
- ST_CPPEXPORT bool initCopy(const StImage& theCopy);
54
+ ST_CPPEXPORT bool initCopy(const StImage& theCopy,
55
+ const bool theIsCompact);
56
57
/**
58
* Initialize as wrapper (data will not be copied).
59
60
ST_CPPEXPORT bool initWrapper(const StImage& theCopy);
61
62
/**
63
+ * Initialize as reference to the shared buffer.
64
+ */
65
+ ST_CPPEXPORT bool initReference(const StImage& theCopy);
66
+
67
+ /**
68
+ * Initialize as reference to the shared buffer.
69
+ */
70
+ ST_CPPEXPORT bool initReference(const StImage& theCopy,
71
+ const StHandle<StBufferCounter>& theRef);
72
+
73
+ /**
74
* Initialize as wrapper of input data in RGB format
75
* or tries to convert data to RGB.
76
*/
77
78
const int theSeparationDx,
79
const int theSeparationDy);
80
81
- ST_CPPEXPORT bool fill(const StImage& theCopy);
82
+ ST_CPPEXPORT bool fill(const StImage& theCopy,
83
+ const bool theIsCompact);
84
85
/**
86
* Advanced initializer for further scaling - creates an image from specified one with:
87
88
}
89
90
/**
91
+ * Return true if rows are packed in top-bottom order.
92
+ */
93
+ ST_LOCAL bool isTopDown() const {
94
+ return myPlanes[0].isTopDown();
95
+ }
96
+
97
+ /**
98
* @return image width in pixels.
99
*/
100
inline size_t getSizeX() const {
101
102
*/
103
ST_CPPEXPORT bool isNull() const;
104
105
+ /**
106
+ * Release all color planes and reference counter.
107
+ */
108
ST_CPPEXPORT void nullify();
109
110
+ /**
111
+ * Return reference counter for shared memory buffer.
112
+ */
113
+ ST_LOCAL const StHandle<StBufferCounter>& getBufferCounter() const { return myBufCounter; }
114
+
115
+ /**
116
+ * Dangerous method to assign reference counter for shared memory buffer.
117
+ */
118
+ ST_LOCAL void setBufferCounter(const StHandle<StBufferCounter>& theCounter) { myBufCounter = theCounter; }
119
+
120
protected:
121
122
ST_LOCAL inline StString getDescription() const {
123
124
GLfloat myPAR; //!< pixel aspect ratio
125
ImgColorModel myColorModel; //!< color model (RGB/YUV...)
126
ImgColorScale myColorScale; //!< color scale (range)
127
+ StHandle<StBufferCounter>
128
+ myBufCounter; //!< reference counter for shared memory buffer
129
130
};
131
132
sview-15_10.tar.gz/include/StImage/StImageFile.h -> sview-15_11.tar.gz/include/StImage/StImageFile.h
Changed
110
1
2
#define __StImageFile_h_
3
4
#include <StTemplates/StHandle.h>
5
+#include <StStrings/StDictionary.h>
6
#include <StGLStereo/StFormatEnum.h>
7
8
#include "StImage.h"
9
10
class StImageFile;
11
ST_DEFINE_HANDLE(StImageFile, StImage);
12
13
+class StImageFileCounter;
14
+ST_DEFINE_HANDLE(StImageFileCounter, StBufferCounter);
15
+
16
+/**
17
+ * Interface extending StImage with load/save capabilities.
18
+ */
19
class StImageFile : public StImage {
20
21
public:
22
23
/**
24
* @return the error description occured on load/save operations.
25
*/
26
- inline const StString& getState() const {
27
+ ST_LOCAL const StString& getState() const {
28
return myStateDescr;
29
}
30
31
- inline StString& changeState() {
32
+ ST_LOCAL StString& changeState() {
33
return myStateDescr;
34
}
35
36
- inline void setState(const StString& theDescr = StString()) {
37
+ ST_LOCAL void setState(const StString& theDescr = StString()) {
38
myStateDescr = theDescr;
39
}
40
41
+ /**
42
+ * Return metadata associated with image.
43
+ */
44
+ ST_LOCAL const StDictionary& getMetadata() const {
45
+ return myMetadata;
46
+ }
47
+
48
+ /**
49
+ * Assign new metadata.
50
+ */
51
+ ST_LOCAL void setMetadata(const StDictionary& theDict) {
52
+ myMetadata = theDict;
53
+ }
54
+
55
ST_LOCAL StFormat getFormat() const {
56
return mySrcFormat;
57
}
58
59
60
protected:
61
62
- StString myStateDescr;
63
- StFormat mySrcFormat;
64
+ StDictionary myMetadata;
65
+ StString myStateDescr;
66
+ StFormat mySrcFormat;
67
+
68
+};
69
+
70
+/**
71
+ * Define reference-counted StImageFile buffer for StImage.
72
+ */
73
+class StImageFileCounter : public StBufferCounter {
74
+
75
+ public:
76
+
77
+ /**
78
+ * Empty constructor.
79
+ */
80
+ ST_LOCAL StImageFileCounter() {}
81
+
82
+ /**
83
+ * Main constructor.
84
+ */
85
+ ST_LOCAL StImageFileCounter(const StHandle<StImage>& theImage) : myImageFile(theImage) {}
86
+
87
+ /**
88
+ * Create the new reference (e.g. increment counter).
89
+ * If theOther has the same type, than the ref counter will be reused.
90
+ * Otherwise then new counter will be allocated.
91
+ */
92
+ ST_CPPEXPORT virtual void createReference(StHandle<StBufferCounter>& theOther) const;
93
+
94
+ /**
95
+ * Release current reference.
96
+ */
97
+ ST_CPPEXPORT virtual void releaseReference();
98
+
99
+ /**
100
+ * Release reference counter.
101
+ */
102
+ ST_CPPEXPORT virtual ~StImageFileCounter();
103
+
104
+ private:
105
+
106
+ StHandle<StImage> myImageFile;
107
108
};
109
110
sview-15_10.tar.gz/include/StImage/StImagePlane.h -> sview-15_11.tar.gz/include/StImage/StImagePlane.h
Changed
54
1
2
/**
3
- * Copyright © 2010-2013 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2010-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
* See accompanying file license-boost.txt or copy at
8
9
ImgBGR, //!< same as RGB but with different components order
10
ImgRGB32, //!< 4 bytes packed RGB image plane (1 byte is dummy)
11
ImgBGR32, //!< same as RGB but with different components order
12
+ ImgRGB48, //!< 6 bytes packed RGB image plane
13
ImgRGBA, //!< 4 bytes packed RGBA image plane
14
ImgBGRA, //!< same as RGBA but with different components order
15
+ ImgRGBA64, //!< 8 bytes packed RGBA image plane
16
ImgGrayF, //!< 1 float (4-bytes) per pixel (1-component plane)
17
ImgRGBF, //!< 3 floats (12-bytes) RGB image plane
18
ImgBGRF, //!< same as RGBF but with different components order
19
20
return &myDataPtr[mySizeRowBytes * theRow + mySizeBPP * theCol];
21
}
22
23
+ /**
24
+ * @return data pointer to requested position.
25
+ */
26
+ inline GLubyte* accessData(const size_t theRow = 0, const size_t theCol = 0) const {
27
+ ST_DEBUG_ASSERT((myDataPtr != NULL) && (theRow < mySizeY) && (theCol < mySizeX));
28
+ return &myDataPtr[mySizeRowBytes * theRow + mySizeBPP * theCol];
29
+ }
30
+
31
inline GLubyte getFirstByte(const size_t theRow, const size_t theCol) const {
32
return *getData(theRow, theCol);
33
}
34
35
/**
36
* Initialize as copy (data will be copied!).
37
*/
38
- ST_CPPEXPORT bool initCopy(const StImagePlane& theCopy);
39
+ ST_CPPEXPORT bool initCopy(const StImagePlane& theCopy,
40
+ const bool theIsCompact);
41
42
/**
43
* Initialize as wrapper (data will not be copied).
44
45
const int theSeparationDy = 0,
46
const int theValue = 0);
47
48
- ST_CPPEXPORT bool fill(const StImagePlane& theCopy);
49
+ ST_CPPEXPORT bool fill(const StImagePlane& theCopy,
50
+ const bool theIsCompact);
51
52
/**
53
* Smart method to correctly deallocate image plane.
54
sview-15_10.tar.gz/include/StThreads/StCondition.h -> sview-15_11.tar.gz/include/StThreads/StCondition.h
Changed
8
1
2
/**
3
- * Copyright © 2009-2014 Kirill Gavrilov <kirill@sview.ru>
4
+ * Copyright © 2009-2015 Kirill Gavrilov <kirill@sview.ru>
5
*
6
* Distributed under the Boost Software License, Version 1.0.
7
* See accompanying file license-boost.txt or copy at
8
sview-15_10.tar.gz/include/StThreads/StResourceManager.h -> sview-15_11.tar.gz/include/StThreads/StResourceManager.h
Changed
27
1
2
* The list of standard folders.
3
*/
4
enum FolderId {
5
+ FolderId_SdCard,
6
FolderId_Downloads,
7
FolderId_Pictures,
8
+ FolderId_Photos,
9
FolderId_Music,
10
FolderId_Videos,
11
FolderId_NB
12
13
}
14
15
/**
16
+ * Assign folder.
17
+ */
18
+ ST_LOCAL void setFolder(const FolderId theId,
19
+ const StString& thePath) {
20
+ myFolders[theId] = thePath;
21
+ }
22
+
23
+ /**
24
* Folder containing user-specific application data.
25
*/
26
ST_LOCAL const StString& getUserDataFolder() const {
27
sview-15_11.tar.gz/license-CC-BY-4.0.txt
Added
201
1
2
+Attribution 4.0 International
3
+
4
+=======================================================================
5
+
6
+Creative Commons Corporation ("Creative Commons") is not a law firm and
7
+does not provide legal services or legal advice. Distribution of
8
+Creative Commons public licenses does not create a lawyer-client or
9
+other relationship. Creative Commons makes its licenses and related
10
+information available on an "as-is" basis. Creative Commons gives no
11
+warranties regarding its licenses, any material licensed under their
12
+terms and conditions, or any related information. Creative Commons
13
+disclaims all liability for damages resulting from their use to the
14
+fullest extent possible.
15
+
16
+Using Creative Commons Public Licenses
17
+
18
+Creative Commons public licenses provide a standard set of terms and
19
+conditions that creators and other rights holders may use to share
20
+original works of authorship and other material subject to copyright
21
+and certain other rights specified in the public license below. The
22
+following considerations are for informational purposes only, are not
23
+exhaustive, and do not form part of our licenses.
24
+
25
+ Considerations for licensors: Our public licenses are
26
+ intended for use by those authorized to give the public
27
+ permission to use material in ways otherwise restricted by
28
+ copyright and certain other rights. Our licenses are
29
+ irrevocable. Licensors should read and understand the terms
30
+ and conditions of the license they choose before applying it.
31
+ Licensors should also secure all rights necessary before
32
+ applying our licenses so that the public can reuse the
33
+ material as expected. Licensors should clearly mark any
34
+ material not subject to the license. This includes other CC-
35
+ licensed material, or material used under an exception or
36
+ limitation to copyright. More considerations for licensors:
37
+ wiki.creativecommons.org/Considerations_for_licensors
38
+
39
+ Considerations for the public: By using one of our public
40
+ licenses, a licensor grants the public permission to use the
41
+ licensed material under specified terms and conditions. If
42
+ the licensor's permission is not necessary for any reason--for
43
+ example, because of any applicable exception or limitation to
44
+ copyright--then that use is not regulated by the license. Our
45
+ licenses grant only permissions under copyright and certain
46
+ other rights that a licensor has authority to grant. Use of
47
+ the licensed material may still be restricted for other
48
+ reasons, including because others have copyright or other
49
+ rights in the material. A licensor may make special requests,
50
+ such as asking that all changes be marked or described.
51
+ Although not required by our licenses, you are encouraged to
52
+ respect those requests where reasonable. More_considerations
53
+ for the public:
54
+ wiki.creativecommons.org/Considerations_for_licensees
55
+
56
+=======================================================================
57
+
58
+Creative Commons Attribution 4.0 International Public License
59
+
60
+By exercising the Licensed Rights (defined below), You accept and agree
61
+to be bound by the terms and conditions of this Creative Commons
62
+Attribution 4.0 International Public License ("Public License"). To the
63
+extent this Public License may be interpreted as a contract, You are
64
+granted the Licensed Rights in consideration of Your acceptance of
65
+these terms and conditions, and the Licensor grants You such rights in
66
+consideration of benefits the Licensor receives from making the
67
+Licensed Material available under these terms and conditions.
68
+
69
+
70
+Section 1 -- Definitions.
71
+
72
+ a. Adapted Material means material subject to Copyright and Similar
73
+ Rights that is derived from or based upon the Licensed Material
74
+ and in which the Licensed Material is translated, altered,
75
+ arranged, transformed, or otherwise modified in a manner requiring
76
+ permission under the Copyright and Similar Rights held by the
77
+ Licensor. For purposes of this Public License, where the Licensed
78
+ Material is a musical work, performance, or sound recording,
79
+ Adapted Material is always produced where the Licensed Material is
80
+ synched in timed relation with a moving image.
81
+
82
+ b. Adapter's License means the license You apply to Your Copyright
83
+ and Similar Rights in Your contributions to Adapted Material in
84
+ accordance with the terms and conditions of this Public License.
85
+
86
+ c. Copyright and Similar Rights means copyright and/or similar rights
87
+ closely related to copyright including, without limitation,
88
+ performance, broadcast, sound recording, and Sui Generis Database
89
+ Rights, without regard to how the rights are labeled or
90
+ categorized. For purposes of this Public License, the rights
91
+ specified in Section 2(b)(1)-(2) are not Copyright and Similar
92
+ Rights.
93
+
94
+ d. Effective Technological Measures means those measures that, in the
95
+ absence of proper authority, may not be circumvented under laws
96
+ fulfilling obligations under Article 11 of the WIPO Copyright
97
+ Treaty adopted on December 20, 1996, and/or similar international
98
+ agreements.
99
+
100
+ e. Exceptions and Limitations means fair use, fair dealing, and/or
101
+ any other exception or limitation to Copyright and Similar Rights
102
+ that applies to Your use of the Licensed Material.
103
+
104
+ f. Licensed Material means the artistic or literary work, database,
105
+ or other material to which the Licensor applied this Public
106
+ License.
107
+
108
+ g. Licensed Rights means the rights granted to You subject to the
109
+ terms and conditions of this Public License, which are limited to
110
+ all Copyright and Similar Rights that apply to Your use of the
111
+ Licensed Material and that the Licensor has authority to license.
112
+
113
+ h. Licensor means the individual(s) or entity(ies) granting rights
114
+ under this Public License.
115
+
116
+ i. Share means to provide material to the public by any means or
117
+ process that requires permission under the Licensed Rights, such
118
+ as reproduction, public display, public performance, distribution,
119
+ dissemination, communication, or importation, and to make material
120
+ available to the public including in ways that members of the
121
+ public may access the material from a place and at a time
122
+ individually chosen by them.
123
+
124
+ j. Sui Generis Database Rights means rights other than copyright
125
+ resulting from Directive 96/9/EC of the European Parliament and of
126
+ the Council of 11 March 1996 on the legal protection of databases,
127
+ as amended and/or succeeded, as well as other essentially
128
+ equivalent rights anywhere in the world.
129
+
130
+ k. You means the individual or entity exercising the Licensed Rights
131
+ under this Public License. Your has a corresponding meaning.
132
+
133
+
134
+Section 2 -- Scope.
135
+
136
+ a. License grant.
137
+
138
+ 1. Subject to the terms and conditions of this Public License,
139
+ the Licensor hereby grants You a worldwide, royalty-free,
140
+ non-sublicensable, non-exclusive, irrevocable license to
141
+ exercise the Licensed Rights in the Licensed Material to:
142
+
143
+ a. reproduce and Share the Licensed Material, in whole or
144
+ in part; and
145
+
146
+ b. produce, reproduce, and Share Adapted Material.
147
+
148
+ 2. Exceptions and Limitations. For the avoidance of doubt, where
149
+ Exceptions and Limitations apply to Your use, this Public
150
+ License does not apply, and You do not need to comply with
151
+ its terms and conditions.
152
+
153
+ 3. Term. The term of this Public License is specified in Section
154
+ 6(a).
155
+
156
+ 4. Media and formats; technical modifications allowed. The
157
+ Licensor authorizes You to exercise the Licensed Rights in
158
+ all media and formats whether now known or hereafter created,
159
+ and to make technical modifications necessary to do so. The
160
+ Licensor waives and/or agrees not to assert any right or
161
+ authority to forbid You from making technical modifications
162
+ necessary to exercise the Licensed Rights, including
163
+ technical modifications necessary to circumvent Effective
164
+ Technological Measures. For purposes of this Public License,
165
+ simply making modifications authorized by this Section 2(a)
166
+ (4) never produces Adapted Material.
167
+
168
+ 5. Downstream recipients.
169
+
170
+ a. Offer from the Licensor -- Licensed Material. Every
171
+ recipient of the Licensed Material automatically
172
+ receives an offer from the Licensor to exercise the
173
+ Licensed Rights under the terms and conditions of this
174
+ Public License.
175
+
176
+ b. No downstream restrictions. You may not offer or impose
177
+ any additional or different terms or conditions on, or
178
+ apply any Effective Technological Measures to, the
179
+ Licensed Material if doing so restricts exercise of the
180
+ Licensed Rights by any recipient of the Licensed
181
+ Material.
182
+
183
+ 6. No endorsement. Nothing in this Public License constitutes or
184
+ may be construed as permission to assert or imply that You
185
+ are, or that Your use of the Licensed Material is, connected
186
+ with, or sponsored, endorsed, or granted official status by,
187
+ the Licensor or others designated to receive attribution as
188
+ provided in Section 3(a)(1)(A)(i).
189
+
190
+ b. Other rights.
191
+
192
+ 1. Moral rights, such as the right of integrity, are not
193
+ licensed under this Public License, nor are publicity,
194
+ privacy, and/or other similar personality rights; however, to
195
+ the extent possible, the Licensor waives and/or agrees not to
196
+ assert any such rights held by the Licensor to the limited
197
+ extent necessary to allow You to exercise the Licensed
198
+ Rights, but not otherwise.
199
+
200
+ 2. Patent and trademark rights are not licensed under this
201
sview-15_10.tar.gz/sview/AndroidManifest.xml -> sview-15_11.tar.gz/sview/AndroidManifest.xml
Changed
109
1
2
<?xml version="1.0" encoding="utf-8"?>
3
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
4
package="com.sview"
5
- android:versionCode="8"
6
- android:versionName="15.10">
7
+ android:versionCode="10"
8
+ android:versionName="15.11">
9
<application android:label="@string/app_name"
10
android:hasCode="true"
11
android:icon="@drawable/ic_launcher">
12
- <!-- <uses-library android:name="com.lge.real3d"
13
- android:required="false" />
14
- <uses-library android:name="jp.co.sharp.android.stereo3dlcd"
15
- android:required="false" /> -->
16
- <!-- Image Viewer -->
17
- <activity android:name="com.sview.StImageActivity"
18
- android:label="@string/app_image_name"
19
- android:launchMode="singleTask"
20
- android:configChanges="orientation|keyboardHidden|screenSize"
21
- android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
22
- <!-- android:documentLaunchMode="always" - available since Android 5.0 -->
23
- <!-- Tell NativeActivity the name of or .so -->
24
- <meta-data android:name="android.app.lib_name" android:value="sview" />
25
- <intent-filter>
26
- <action android:name="android.intent.action.VIEW" />
27
- <category android:name="android.intent.category.DEFAULT" />
28
- <category android:name="android.intent.category.BROWSABLE" />
29
- <data android:mimeType="application/vnd.google.panorama360+jpg"/>
30
- <data android:mimeType="image/*"/>
31
- </intent-filter>
32
- <intent-filter>
33
- <action android:name="android.intent.action.VIEW" />
34
-
35
- <category android:name="android.intent.category.DEFAULT" />
36
- <category android:name="android.intent.category.BROWSABLE" />
37
-
38
- <data android:scheme="" />
39
- <data android:scheme="file" />
40
- <data android:scheme="ftp" />
41
- <data android:scheme="content" />
42
- <data android:scheme="http" />
43
- <data android:scheme="https" />
44
- <data android:host="*" />
45
-
46
- <data android:pathPattern=".*\\.mpo" />
47
- <data android:pathPattern=".*\\.jps" />
48
- <data android:pathPattern=".*\\.pns" />
49
- <data android:pathPattern=".*\\.webp" />
50
- </intent-filter>
51
- </activity>
52
<!-- Movie Player -->
53
<activity android:name="com.sview.StMovieActivity"
54
android:label="@string/app_movie_name"
55
56
<data android:pathPattern=".*\\.WMA" />
57
</intent-filter>
58
</activity>
59
+ <!-- Image Viewer -->
60
+ <activity android:name="com.sview.StImageActivity"
61
+ android:label="@string/app_image_name"
62
+ android:launchMode="singleTask"
63
+ android:configChanges="orientation|keyboardHidden|screenSize"
64
+ android:theme="@android:style/Theme.NoTitleBar.Fullscreen">
65
+ <!-- android:documentLaunchMode="always" - available since Android 5.0 -->
66
+ <!-- Tell NativeActivity the name of or .so -->
67
+ <meta-data android:name="android.app.lib_name" android:value="sview" />
68
+ <intent-filter>
69
+ <action android:name="android.intent.action.MAIN" />
70
+ <category android:name="android.intent.category.LAUNCHER" />
71
+ </intent-filter>
72
+ <intent-filter>
73
+ <action android:name="android.intent.action.VIEW" />
74
+ <category android:name="android.intent.category.DEFAULT" />
75
+ <category android:name="android.intent.category.BROWSABLE" />
76
+ <data android:mimeType="application/vnd.google.panorama360+jpg"/>
77
+ <data android:mimeType="image/*"/>
78
+ </intent-filter>
79
+ <intent-filter>
80
+ <action android:name="android.intent.action.VIEW" />
81
+
82
+ <category android:name="android.intent.category.DEFAULT" />
83
+ <category android:name="android.intent.category.BROWSABLE" />
84
+
85
+ <data android:scheme="" />
86
+ <data android:scheme="file" />
87
+ <data android:scheme="ftp" />
88
+ <data android:scheme="content" />
89
+ <data android:scheme="http" />
90
+ <data android:scheme="https" />
91
+ <data android:host="*" />
92
+
93
+ <data android:pathPattern=".*\\.mpo" />
94
+ <data android:pathPattern=".*\\.jps" />
95
+ <data android:pathPattern=".*\\.pns" />
96
+ <data android:pathPattern=".*\\.webp" />
97
+ </intent-filter>
98
+ </activity>
99
<!-- <activity android:name="com.sview.MainActivity" android:label="@string/app_name" android:configChanges="orientation|keyboardHidden"><intent-filter><action android:name="android.intent.action.MAIN" /><category android:name="android.intent.category.LAUNCHER" /></intent-filter></activity> -->
100
</application>
101
102
<uses-sdk android:minSdkVersion="15" />
103
<uses-feature android:glEsVersion="0x00020000"/>
104
<uses-permission android:name="android.permission.INTERNET" />
105
- <uses-permission android:name="android.permission.READ_PHONE_STATE" />
106
- <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
107
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
108
</manifest>
109
sview-15_10.tar.gz/sview/StMultiApp.cpp -> sview-15_11.tar.gz/sview/StMultiApp.cpp
Changed
108
1
2
+ "Usage: sView [options] - file\n"
3
+ "Available options:\n"
4
" --fullscreen Open fullscreen\n"
5
+ " --toShowMenu=off Hide main menu\n"
6
+ " --toShowTopbar=off Hide top toolbar\n"
7
+ " --monitorId=ID open window on specified monitor\n"
8
+ " --windowLeft=L window left position\n"
9
+ " --windowTop=T window top position\n"
10
+ " --windowWidth=W window width position\n"
11
+ " --windowHeight=H window height position\n"
12
" --slideshow Start slideshow\n"
13
" --last Open last file\n"
14
" --paused Open file in paused state\n"
15
16
+ st::formatToString(StFormat_Rows) + ", "
17
+ st::formatToString(StFormat_FrameSequence) + "\n"
18
+ " --left=PATH Specify source for left view\n"
19
- " --right=PATH Specify source for right view\n";
20
+ " --right=PATH Specify source for right view\n"
21
+ " --webuiCmdPort=PORT Use http://localhost:PORT for remote control (see --invokeAction).\n"
22
+ " --invokeAction=ACT Invoke action on http://localhost:PORT.\n"
23
+ " play - play/pause\n"
24
+ " mute - mute/unmute audio\n"
25
+ " vol?VOLUME - specify volume in percents\n"
26
+ " prev,next - play previous/next item in playlist\n"
27
+ " fastbwd,fastfwd - seek backward/forward\n"
28
+ " quit - close the program\n"
29
+ " current?title - print title of currently played item\n"
30
+ " fullscreen - switch fullscreen/windowed.\n"
31
+ " The full list also includes actions having hot-keys";
32
return anAboutString;
33
}
34
35
36
return NULL;
37
}
38
39
+ // command interface
40
const StArgumentsMap anArgs = anInfo->getArgumentsMap();
41
+ StArgument anArgCmd = anArgs["invokeAction"];
42
+ StArgument anArgCmd2 = anArgs["action"];
43
+ StString anAction;
44
+ if(anArgCmd2.isValid()) {
45
+ anAction = anArgCmd2.getValue();
46
+ }
47
+ if(anArgCmd.isValid()) {
48
+ anAction = anArgCmd.getValue();
49
+ }
50
+ if(!anAction.isEmpty()) {
51
+ StString anActLow = anAction;
52
+ anActLow.toLowerCase();
53
+ if(anActLow == "play"
54
+ || anActLow == "pause") {
55
+ anAction = "play_pause";
56
+ } else if(anActLow == "stop") {
57
+ anAction = "stop";
58
+ } else if(anActLow == "mute") {
59
+ anAction = "mute";
60
+ } else if(anActLow == "next"
61
+ || anActLow == "nextitem") {
62
+ anAction = "next";
63
+ } else if(anActLow == "prev"
64
+ || anActLow == "previous"
65
+ || anActLow == "previtem") {
66
+ anAction = "prev";
67
+ } else if(anActLow == "currentid") {
68
+ anAction = "current?id";
69
+ } else if(anActLow == "currenttitle") {
70
+ anAction = "current?title";
71
+ } else if(anAction.isContains('?')) {
72
+ anAction = anAction;
73
+ } else if(anActLow == "fastbwd") {
74
+ anAction = "action?DoSeekLeft";
75
+ } else if(anActLow == "fastfwd") {
76
+ anAction = "action?DoSeekRight";
77
+ } else if(anActLow == "quit"
78
+ || anActLow == "exit") {
79
+ anAction = "action?DoQuit";
80
+ } else if(anActLow == "mono") {
81
+ anAction = "action?DoSrcMono";
82
+ } else if(anActLow == "overunder") {
83
+ anAction = "action?DoSrcOverUnder";
84
+ } else if(anActLow == "sidebyside") {
85
+ anAction = "action?DoSrcSideBySide";
86
+ } else if(anActLow == "fullscreen") {
87
+ anAction = "action?DoFullscreen";
88
+ } else {
89
+ anAction = StString("action?") + anAction;
90
+ }
91
+ }
92
+ if(!anAction.isEmpty()) {
93
+ StArgument anArgCmdPort = anArgs["webuiCmdPort"];
94
+ StString aPort = "8080";
95
+ if(anArgCmdPort.isValid()) {
96
+ aPort = anArgCmdPort.getValue();
97
+ }
98
+ StString anUrl = StString("http://localhost:") + aPort + "/" + anAction;
99
+ StString aResponse = StRawFile::readTextFile(anUrl);
100
+ st::cout << aResponse << "\n";
101
+ return NULL;
102
+ }
103
+
104
+ // select application
105
const StString ARGUMENT_DRAWER = "in";
106
StArgument anArgDrawer = anArgs[ARGUMENT_DRAWER];
107
if(anArgDrawer.isValid()) {
108
sview-15_10.tar.gz/sview/jni/main.cpp -> sview-15_11.tar.gz/sview/jni/main.cpp
Changed
65
1
2
}
3
4
/**
5
+ * Determine StApplication class from file extension.
6
+ */
7
+ ST_LOCAL static StString getStAppClassFromExtension(const StString& theExtension) {
8
+ const StMIMEList aMimeImg(ST_IMAGE_PLUGIN_MIME_CHAR);
9
+ for(size_t aMimeIter = 0; aMimeIter < aMimeImg.size(); ++aMimeIter) {
10
+ if(theExtension.isEqualsIgnoreCase(aMimeImg[aMimeIter].getExtension())) {
11
+ return "image";
12
+ }
13
+ }
14
+ return "video";
15
+ }
16
+
17
+ /**
18
* Choose and instantiate StApplication.
19
*/
20
ST_LOCAL virtual void createApplication() override {
21
22
myDndPath.clear();
23
24
StHandle<StResourceManager> aResMgr = new StResourceManager(myActivity->assetManager);
25
+ aResMgr->setFolder(StResourceManager::FolderId_SdCard,
26
+ getStoragePath(myThJniEnv, "sdcard"));
27
+ aResMgr->setFolder(StResourceManager::FolderId_Downloads,
28
+ getStoragePath(myThJniEnv, "Download"));
29
+ aResMgr->setFolder(StResourceManager::FolderId_Pictures,
30
+ getStoragePath(myThJniEnv, "Pictures"));
31
+ aResMgr->setFolder(StResourceManager::FolderId_Photos,
32
+ getStoragePath(myThJniEnv, "DCIM"));
33
+ aResMgr->setFolder(StResourceManager::FolderId_Music,
34
+ getStoragePath(myThJniEnv, "Music"));
35
+ aResMgr->setFolder(StResourceManager::FolderId_Videos,
36
+ getStoragePath(myThJniEnv, "Movies"));
37
+
38
+ if(myStAppClass.isEmpty()) {
39
+ myStAppClass = getStAppClassFromExtension(aFileExtension);
40
+ }
41
42
- const StMIMEList aMimeImg(ST_IMAGE_PLUGIN_MIME_CHAR);
43
- for(size_t aMimeIter = 0; aMimeIter < aMimeImg.size(); ++aMimeIter) {
44
- if(aFileExtension.isEqualsIgnoreCase(aMimeImg[aMimeIter].getExtension())) {
45
- StArgumentsMap anArgs = anInfo->getArgumentsMap();
46
- if(anInfo->isEmpty()) {
47
- anArgs.set(StDictEntry("last", "true"));
48
- }
49
- anArgs.set(StDictEntry("toSaveRecent","true"));
50
- anInfo->setArgumentsMap(anArgs);
51
- myApp = new StImageViewer(aResMgr, this, anInfo);
52
- return;
53
+ if(myStAppClass == "image") {
54
+ StArgumentsMap anArgs = anInfo->getArgumentsMap();
55
+ if(anInfo->isEmpty()) {
56
+ anArgs.set(StDictEntry("last", "true"));
57
}
58
+ anArgs.set(StDictEntry("toSaveRecent","true"));
59
+ anInfo->setArgumentsMap(anArgs);
60
+ myApp = new StImageViewer(aResMgr, this, anInfo);
61
+ return;
62
}
63
64
if(anInfo->isEmpty()) {
65
sview-15_10.tar.gz/sview/src/com/sview/StActivity.java -> sview-15_11.tar.gz/sview/src/com/sview/StActivity.java
Changed
15
1
2
//region Methods to be called from C++ level
3
4
/**
5
+ * Virtual method defining StApplication class.
6
+ */
7
+ public String getStAppClass() {
8
+ return null;
9
+ }
10
+
11
+ /**
12
* Method is called when StAndroidGlue has been created (BEFORE starting application thread!)
13
* or during destruction.
14
*/
15
sview-15_10.tar.gz/sview/src/com/sview/StImageActivity.java -> sview-15_11.tar.gz/sview/src/com/sview/StImageActivity.java
Changed
16
1
2
public class StImageActivity extends StActivity {
3
4
/**
5
+ * Virtual method defining StApplication class.
6
+ */
7
+ @Override
8
+ public String getStAppClass() {
9
+ return "image";
10
+ }
11
+
12
+ /**
13
* Create activity.
14
*/
15
@Override
16
sview-15_10.tar.gz/sview/src/com/sview/StMovieActivity.java -> sview-15_11.tar.gz/sview/src/com/sview/StMovieActivity.java
Changed
16
1
2
public class StMovieActivity extends StActivity {
3
4
/**
5
+ * Virtual method defining StApplication class.
6
+ */
7
+ @Override
8
+ public String getStAppClass() {
9
+ return "video";
10
+ }
11
+
12
+ /**
13
* Create activity.
14
*/
15
@Override
16
sview-15_10.tar.gz/sview/sview.cbp -> sview-15_11.tar.gz/sview/sview.cbp
Changed
70
1
2
<Option pch_mode="2" />
3
<Option compiler="gcc" />
4
<Build>
5
- <Target title="WIN_gcc_x86">
6
- <Option output="../bin/$(TARGET_NAME)/sView" prefix_auto="1" extension_auto="1" />
7
- <Option working_dir="../bin/$(TARGET_NAME)/" />
8
- <Option object_output="obj/$(TARGET_NAME)/" />
9
- <Option type="1" />
10
- <Option compiler="gcc" />
11
- <Option parameters="demo.jps" />
12
- <Compiler>
13
- <Add option="-O3" />
14
- <Add option="-std=c++0x" />
15
- <Add option="-Wall" />
16
- <Add option="-g" />
17
- <Add option="-mmmx" />
18
- <Add option="-msse" />
19
- <Add option="-DUNICODE" />
20
- <Add option="-DST_DEBUG" />
21
- <Add option="-DST_HAVE_STCONFIG" />
22
- </Compiler>
23
- <Linker>
24
- <Add library="gdi32" />
25
- <Add library="user32" />
26
- <Add library="kernel32" />
27
- <Add library="Comdlg32" />
28
- <Add library="Version" />
29
- </Linker>
30
- </Target>
31
<Target title="WIN_vc_x86">
32
<Option output="../bin/$(TARGET_NAME)/sView" prefix_auto="1" extension_auto="1" />
33
<Option working_dir="../bin/$(TARGET_NAME)/" />
34
35
<Add after='mt.exe /nologo /manifest "$(TARGET_OUTPUT_FILE).manifest" /manifest "..\dpiAware.manifest" /outputresource:"$(TARGET_OUTPUT_FILE)";1' />
36
</ExtraCommands>
37
</Target>
38
- <Target title="WIN_vc_x86_DEBUG">
39
+ <Target title="WIN_vc_AMD64_DEBUG">
40
<Option output="../bin/$(TARGET_NAME)/sView" prefix_auto="1" extension_auto="1" />
41
<Option working_dir="../bin/$(TARGET_NAME)/" />
42
<Option object_output="obj/$(TARGET_NAME)/" />
43
<Option type="1" />
44
- <Option compiler="msvc10" />
45
+ <Option compiler="windows_sdk_x86_64" />
46
<Option parameters="demo.jps" />
47
<Compiler>
48
<Add option="/MDd" />
49
50
<Unit filename="StMultiApp.cpp" />
51
<Unit filename="StMultiApp.h" />
52
<Unit filename="main.cpp">
53
- <Option target="WIN_gcc_x86" />
54
<Option target="WIN_vc_x86" />
55
- <Option target="WIN_vc_x86_DEBUG" />
56
+ <Option target="WIN_vc_AMD64_DEBUG" />
57
<Option target="WIN_vc_AMD64" />
58
<Option target="LINUX_gcc" />
59
<Option target="LINUX_gcc_DEBUG" />
60
61
<Option compilerVar="WINDRES" />
62
<Option target="WIN_vc_x86" />
63
<Option target="WIN_vc_AMD64" />
64
- <Option target="WIN_gcc_x86" />
65
- <Option target="WIN_vc_x86_DEBUG" />
66
+ <Option target="WIN_vc_AMD64_DEBUG" />
67
</Unit>
68
<Extensions>
69
<code_completion />
70
sview-15_10.tar.gz/textures/menuAuto128.png -> sview-15_11.tar.gz/textures/menuAuto128.png
Changed
sview-15_10.tar.gz/textures/menuAuto144.png -> sview-15_11.tar.gz/textures/menuAuto144.png
Changed
sview-15_10.tar.gz/textures/menuAuto16.png -> sview-15_11.tar.gz/textures/menuAuto16.png
Changed
sview-15_10.tar.gz/textures/menuAuto192.png -> sview-15_11.tar.gz/textures/menuAuto192.png
Changed
sview-15_10.tar.gz/textures/menuAuto24.png -> sview-15_11.tar.gz/textures/menuAuto24.png
Changed
sview-15_10.tar.gz/textures/menuAuto256.png -> sview-15_11.tar.gz/textures/menuAuto256.png
Changed
sview-15_10.tar.gz/textures/menuAuto32.png -> sview-15_11.tar.gz/textures/menuAuto32.png
Changed
sview-15_10.tar.gz/textures/menuAuto48.png -> sview-15_11.tar.gz/textures/menuAuto48.png
Changed
sview-15_10.tar.gz/textures/menuAuto64.png -> sview-15_11.tar.gz/textures/menuAuto64.png
Changed
sview-15_10.tar.gz/textures/menuAuto72.png -> sview-15_11.tar.gz/textures/menuAuto72.png
Changed
sview-15_10.tar.gz/textures/menuAuto96.png -> sview-15_11.tar.gz/textures/menuAuto96.png
Changed
sview-15_10.tar.gz/textures/menuDual128.png -> sview-15_11.tar.gz/textures/menuDual128.png
Changed
sview-15_10.tar.gz/textures/menuDual144.png -> sview-15_11.tar.gz/textures/menuDual144.png
Changed
sview-15_10.tar.gz/textures/menuDual16.png -> sview-15_11.tar.gz/textures/menuDual16.png
Changed
sview-15_10.tar.gz/textures/menuDual192.png -> sview-15_11.tar.gz/textures/menuDual192.png
Changed
sview-15_10.tar.gz/textures/menuDual24.png -> sview-15_11.tar.gz/textures/menuDual24.png
Changed
sview-15_10.tar.gz/textures/menuDual256.png -> sview-15_11.tar.gz/textures/menuDual256.png
Changed
sview-15_10.tar.gz/textures/menuDual32.png -> sview-15_11.tar.gz/textures/menuDual32.png
Changed
sview-15_10.tar.gz/textures/menuDual48.png -> sview-15_11.tar.gz/textures/menuDual48.png
Changed
sview-15_10.tar.gz/textures/menuDual64.png -> sview-15_11.tar.gz/textures/menuDual64.png
Changed
sview-15_10.tar.gz/textures/menuDual72.png -> sview-15_11.tar.gz/textures/menuDual72.png
Changed
sview-15_10.tar.gz/textures/menuDual96.png -> sview-15_11.tar.gz/textures/menuDual96.png
Changed
sview-15_10.tar.gz/textures/menuFrameSeqLR128.png -> sview-15_11.tar.gz/textures/menuFrameSeqLR128.png
Changed
sview-15_10.tar.gz/textures/menuFrameSeqLR144.png -> sview-15_11.tar.gz/textures/menuFrameSeqLR144.png
Changed
sview-15_10.tar.gz/textures/menuFrameSeqLR16.png -> sview-15_11.tar.gz/textures/menuFrameSeqLR16.png
Changed
sview-15_10.tar.gz/textures/menuFrameSeqLR192.png -> sview-15_11.tar.gz/textures/menuFrameSeqLR192.png
Changed
sview-15_10.tar.gz/textures/menuFrameSeqLR24.png -> sview-15_11.tar.gz/textures/menuFrameSeqLR24.png
Changed
sview-15_10.tar.gz/textures/menuFrameSeqLR256.png -> sview-15_11.tar.gz/textures/menuFrameSeqLR256.png
Changed
sview-15_10.tar.gz/textures/menuFrameSeqLR32.png -> sview-15_11.tar.gz/textures/menuFrameSeqLR32.png
Changed
sview-15_10.tar.gz/textures/menuFrameSeqLR48.png -> sview-15_11.tar.gz/textures/menuFrameSeqLR48.png
Changed
sview-15_10.tar.gz/textures/menuFrameSeqLR64.png -> sview-15_11.tar.gz/textures/menuFrameSeqLR64.png
Changed
sview-15_10.tar.gz/textures/menuFrameSeqLR72.png -> sview-15_11.tar.gz/textures/menuFrameSeqLR72.png
Changed
sview-15_10.tar.gz/textures/menuFrameSeqLR96.png -> sview-15_11.tar.gz/textures/menuFrameSeqLR96.png
Changed
sview-15_10.tar.gz/textures/menuMono128.png -> sview-15_11.tar.gz/textures/menuMono128.png
Changed
sview-15_10.tar.gz/textures/menuMono144.png -> sview-15_11.tar.gz/textures/menuMono144.png
Changed
sview-15_10.tar.gz/textures/menuMono16.png -> sview-15_11.tar.gz/textures/menuMono16.png
Changed
sview-15_10.tar.gz/textures/menuMono192.png -> sview-15_11.tar.gz/textures/menuMono192.png
Changed
sview-15_10.tar.gz/textures/menuMono24.png -> sview-15_11.tar.gz/textures/menuMono24.png
Changed
sview-15_10.tar.gz/textures/menuMono256.png -> sview-15_11.tar.gz/textures/menuMono256.png
Changed
sview-15_10.tar.gz/textures/menuMono32.png -> sview-15_11.tar.gz/textures/menuMono32.png
Changed
sview-15_10.tar.gz/textures/menuMono48.png -> sview-15_11.tar.gz/textures/menuMono48.png
Changed
sview-15_10.tar.gz/textures/menuMono64.png -> sview-15_11.tar.gz/textures/menuMono64.png
Changed
sview-15_10.tar.gz/textures/menuMono72.png -> sview-15_11.tar.gz/textures/menuMono72.png
Changed
sview-15_10.tar.gz/textures/menuMono96.png -> sview-15_11.tar.gz/textures/menuMono96.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderLR128.png -> sview-15_11.tar.gz/textures/menuOverUnderLR128.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderLR144.png -> sview-15_11.tar.gz/textures/menuOverUnderLR144.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderLR16.png -> sview-15_11.tar.gz/textures/menuOverUnderLR16.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderLR192.png -> sview-15_11.tar.gz/textures/menuOverUnderLR192.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderLR24.png -> sview-15_11.tar.gz/textures/menuOverUnderLR24.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderLR256.png -> sview-15_11.tar.gz/textures/menuOverUnderLR256.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderLR32.png -> sview-15_11.tar.gz/textures/menuOverUnderLR32.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderLR48.png -> sview-15_11.tar.gz/textures/menuOverUnderLR48.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderLR64.png -> sview-15_11.tar.gz/textures/menuOverUnderLR64.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderLR72.png -> sview-15_11.tar.gz/textures/menuOverUnderLR72.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderLR96.png -> sview-15_11.tar.gz/textures/menuOverUnderLR96.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderRL128.png -> sview-15_11.tar.gz/textures/menuOverUnderRL128.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderRL144.png -> sview-15_11.tar.gz/textures/menuOverUnderRL144.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderRL16.png -> sview-15_11.tar.gz/textures/menuOverUnderRL16.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderRL192.png -> sview-15_11.tar.gz/textures/menuOverUnderRL192.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderRL24.png -> sview-15_11.tar.gz/textures/menuOverUnderRL24.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderRL256.png -> sview-15_11.tar.gz/textures/menuOverUnderRL256.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderRL32.png -> sview-15_11.tar.gz/textures/menuOverUnderRL32.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderRL48.png -> sview-15_11.tar.gz/textures/menuOverUnderRL48.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderRL64.png -> sview-15_11.tar.gz/textures/menuOverUnderRL64.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderRL72.png -> sview-15_11.tar.gz/textures/menuOverUnderRL72.png
Changed
sview-15_10.tar.gz/textures/menuOverUnderRL96.png -> sview-15_11.tar.gz/textures/menuOverUnderRL96.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_10_128.png -> sview-15_11.tar.gz/textures/menuRatio16_10_128.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_10_144.png -> sview-15_11.tar.gz/textures/menuRatio16_10_144.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_10_16.png -> sview-15_11.tar.gz/textures/menuRatio16_10_16.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_10_192.png -> sview-15_11.tar.gz/textures/menuRatio16_10_192.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_10_24.png -> sview-15_11.tar.gz/textures/menuRatio16_10_24.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_10_256.png -> sview-15_11.tar.gz/textures/menuRatio16_10_256.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_10_32.png -> sview-15_11.tar.gz/textures/menuRatio16_10_32.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_10_48.png -> sview-15_11.tar.gz/textures/menuRatio16_10_48.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_10_64.png -> sview-15_11.tar.gz/textures/menuRatio16_10_64.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_10_72.png -> sview-15_11.tar.gz/textures/menuRatio16_10_72.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_10_96.png -> sview-15_11.tar.gz/textures/menuRatio16_10_96.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_9_128.png -> sview-15_11.tar.gz/textures/menuRatio16_9_128.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_9_144.png -> sview-15_11.tar.gz/textures/menuRatio16_9_144.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_9_16.png -> sview-15_11.tar.gz/textures/menuRatio16_9_16.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_9_192.png -> sview-15_11.tar.gz/textures/menuRatio16_9_192.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_9_24.png -> sview-15_11.tar.gz/textures/menuRatio16_9_24.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_9_256.png -> sview-15_11.tar.gz/textures/menuRatio16_9_256.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_9_32.png -> sview-15_11.tar.gz/textures/menuRatio16_9_32.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_9_48.png -> sview-15_11.tar.gz/textures/menuRatio16_9_48.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_9_64.png -> sview-15_11.tar.gz/textures/menuRatio16_9_64.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_9_72.png -> sview-15_11.tar.gz/textures/menuRatio16_9_72.png
Changed
sview-15_10.tar.gz/textures/menuRatio16_9_96.png -> sview-15_11.tar.gz/textures/menuRatio16_9_96.png
Changed
sview-15_10.tar.gz/textures/menuRatio1_1_128.png -> sview-15_11.tar.gz/textures/menuRatio1_1_128.png
Changed
sview-15_10.tar.gz/textures/menuRatio1_1_144.png -> sview-15_11.tar.gz/textures/menuRatio1_1_144.png
Changed
sview-15_10.tar.gz/textures/menuRatio1_1_16.png -> sview-15_11.tar.gz/textures/menuRatio1_1_16.png
Changed
sview-15_10.tar.gz/textures/menuRatio1_1_192.png -> sview-15_11.tar.gz/textures/menuRatio1_1_192.png
Changed
sview-15_10.tar.gz/textures/menuRatio1_1_24.png -> sview-15_11.tar.gz/textures/menuRatio1_1_24.png
Changed
sview-15_10.tar.gz/textures/menuRatio1_1_256.png -> sview-15_11.tar.gz/textures/menuRatio1_1_256.png
Changed
sview-15_10.tar.gz/textures/menuRatio1_1_32.png -> sview-15_11.tar.gz/textures/menuRatio1_1_32.png
Changed
sview-15_10.tar.gz/textures/menuRatio1_1_48.png -> sview-15_11.tar.gz/textures/menuRatio1_1_48.png
Changed
sview-15_10.tar.gz/textures/menuRatio1_1_64.png -> sview-15_11.tar.gz/textures/menuRatio1_1_64.png
Changed
sview-15_10.tar.gz/textures/menuRatio1_1_72.png -> sview-15_11.tar.gz/textures/menuRatio1_1_72.png
Changed
sview-15_10.tar.gz/textures/menuRatio1_1_96.png -> sview-15_11.tar.gz/textures/menuRatio1_1_96.png
Changed
sview-15_10.tar.gz/textures/menuRatio2_1_128.png -> sview-15_11.tar.gz/textures/menuRatio2_1_128.png
Changed
sview-15_10.tar.gz/textures/menuRatio2_1_144.png -> sview-15_11.tar.gz/textures/menuRatio2_1_144.png
Changed
sview-15_10.tar.gz/textures/menuRatio2_1_16.png -> sview-15_11.tar.gz/textures/menuRatio2_1_16.png
Changed
sview-15_10.tar.gz/textures/menuRatio2_1_192.png -> sview-15_11.tar.gz/textures/menuRatio2_1_192.png
Changed
sview-15_10.tar.gz/textures/menuRatio2_1_24.png -> sview-15_11.tar.gz/textures/menuRatio2_1_24.png
Changed
sview-15_10.tar.gz/textures/menuRatio2_1_256.png -> sview-15_11.tar.gz/textures/menuRatio2_1_256.png
Changed
sview-15_10.tar.gz/textures/menuRatio2_1_32.png -> sview-15_11.tar.gz/textures/menuRatio2_1_32.png
Changed
sview-15_10.tar.gz/textures/menuRatio2_1_48.png -> sview-15_11.tar.gz/textures/menuRatio2_1_48.png
Changed
sview-15_10.tar.gz/textures/menuRatio2_1_64.png -> sview-15_11.tar.gz/textures/menuRatio2_1_64.png
Changed
sview-15_10.tar.gz/textures/menuRatio2_1_72.png -> sview-15_11.tar.gz/textures/menuRatio2_1_72.png
Changed
sview-15_10.tar.gz/textures/menuRatio2_1_96.png -> sview-15_11.tar.gz/textures/menuRatio2_1_96.png
Changed
sview-15_10.tar.gz/textures/menuRatio4_3_128.png -> sview-15_11.tar.gz/textures/menuRatio4_3_128.png
Changed
sview-15_10.tar.gz/textures/menuRatio4_3_144.png -> sview-15_11.tar.gz/textures/menuRatio4_3_144.png
Changed
sview-15_10.tar.gz/textures/menuRatio4_3_16.png -> sview-15_11.tar.gz/textures/menuRatio4_3_16.png
Changed
sview-15_10.tar.gz/textures/menuRatio4_3_192.png -> sview-15_11.tar.gz/textures/menuRatio4_3_192.png
Changed
sview-15_10.tar.gz/textures/menuRatio4_3_24.png -> sview-15_11.tar.gz/textures/menuRatio4_3_24.png
Changed
sview-15_10.tar.gz/textures/menuRatio4_3_256.png -> sview-15_11.tar.gz/textures/menuRatio4_3_256.png
Changed
sview-15_10.tar.gz/textures/menuRatio4_3_32.png -> sview-15_11.tar.gz/textures/menuRatio4_3_32.png
Changed
sview-15_10.tar.gz/textures/menuRatio4_3_48.png -> sview-15_11.tar.gz/textures/menuRatio4_3_48.png
Changed
sview-15_10.tar.gz/textures/menuRatio4_3_64.png -> sview-15_11.tar.gz/textures/menuRatio4_3_64.png
Changed
sview-15_10.tar.gz/textures/menuRatio4_3_72.png -> sview-15_11.tar.gz/textures/menuRatio4_3_72.png
Changed
sview-15_10.tar.gz/textures/menuRatio4_3_96.png -> sview-15_11.tar.gz/textures/menuRatio4_3_96.png
Changed
sview-15_10.tar.gz/textures/menuRatio5_4_128.png -> sview-15_11.tar.gz/textures/menuRatio5_4_128.png
Changed
sview-15_10.tar.gz/textures/menuRatio5_4_144.png -> sview-15_11.tar.gz/textures/menuRatio5_4_144.png
Changed
sview-15_10.tar.gz/textures/menuRatio5_4_16.png -> sview-15_11.tar.gz/textures/menuRatio5_4_16.png
Changed
sview-15_10.tar.gz/textures/menuRatio5_4_192.png -> sview-15_11.tar.gz/textures/menuRatio5_4_192.png
Changed
sview-15_10.tar.gz/textures/menuRatio5_4_24.png -> sview-15_11.tar.gz/textures/menuRatio5_4_24.png
Changed
sview-15_10.tar.gz/textures/menuRatio5_4_256.png -> sview-15_11.tar.gz/textures/menuRatio5_4_256.png
Changed
sview-15_10.tar.gz/textures/menuRatio5_4_32.png -> sview-15_11.tar.gz/textures/menuRatio5_4_32.png
Changed
sview-15_10.tar.gz/textures/menuRatio5_4_48.png -> sview-15_11.tar.gz/textures/menuRatio5_4_48.png
Changed
sview-15_10.tar.gz/textures/menuRatio5_4_64.png -> sview-15_11.tar.gz/textures/menuRatio5_4_64.png
Changed
sview-15_10.tar.gz/textures/menuRatio5_4_72.png -> sview-15_11.tar.gz/textures/menuRatio5_4_72.png
Changed
sview-15_10.tar.gz/textures/menuRatio5_4_96.png -> sview-15_11.tar.gz/textures/menuRatio5_4_96.png
Changed
sview-15_10.tar.gz/textures/menuRowLR128.png -> sview-15_11.tar.gz/textures/menuRowLR128.png
Changed
sview-15_10.tar.gz/textures/menuRowLR144.png -> sview-15_11.tar.gz/textures/menuRowLR144.png
Changed
sview-15_10.tar.gz/textures/menuRowLR16.png -> sview-15_11.tar.gz/textures/menuRowLR16.png
Changed
sview-15_10.tar.gz/textures/menuRowLR192.png -> sview-15_11.tar.gz/textures/menuRowLR192.png
Changed
sview-15_10.tar.gz/textures/menuRowLR24.png -> sview-15_11.tar.gz/textures/menuRowLR24.png
Changed
sview-15_10.tar.gz/textures/menuRowLR256.png -> sview-15_11.tar.gz/textures/menuRowLR256.png
Changed
sview-15_10.tar.gz/textures/menuRowLR32.png -> sview-15_11.tar.gz/textures/menuRowLR32.png
Changed
sview-15_10.tar.gz/textures/menuRowLR48.png -> sview-15_11.tar.gz/textures/menuRowLR48.png
Changed
sview-15_10.tar.gz/textures/menuRowLR64.png -> sview-15_11.tar.gz/textures/menuRowLR64.png
Changed
sview-15_10.tar.gz/textures/menuRowLR72.png -> sview-15_11.tar.gz/textures/menuRowLR72.png
Changed
sview-15_10.tar.gz/textures/menuRowLR96.png -> sview-15_11.tar.gz/textures/menuRowLR96.png
Changed
sview-15_10.tar.gz/textures/menuRowRL128.png -> sview-15_11.tar.gz/textures/menuRowRL128.png
Changed
sview-15_10.tar.gz/textures/menuRowRL144.png -> sview-15_11.tar.gz/textures/menuRowRL144.png
Changed
sview-15_10.tar.gz/textures/menuRowRL16.png -> sview-15_11.tar.gz/textures/menuRowRL16.png
Changed
sview-15_10.tar.gz/textures/menuRowRL192.png -> sview-15_11.tar.gz/textures/menuRowRL192.png
Changed
sview-15_10.tar.gz/textures/menuRowRL24.png -> sview-15_11.tar.gz/textures/menuRowRL24.png
Changed
sview-15_10.tar.gz/textures/menuRowRL256.png -> sview-15_11.tar.gz/textures/menuRowRL256.png
Changed
sview-15_10.tar.gz/textures/menuRowRL32.png -> sview-15_11.tar.gz/textures/menuRowRL32.png
Changed
sview-15_10.tar.gz/textures/menuRowRL48.png -> sview-15_11.tar.gz/textures/menuRowRL48.png
Changed
sview-15_10.tar.gz/textures/menuRowRL64.png -> sview-15_11.tar.gz/textures/menuRowRL64.png
Changed
sview-15_10.tar.gz/textures/menuRowRL72.png -> sview-15_11.tar.gz/textures/menuRowRL72.png
Changed
sview-15_10.tar.gz/textures/menuRowRL96.png -> sview-15_11.tar.gz/textures/menuRowRL96.png
Changed
sview-15_10.tar.gz/textures/menuSbsLR128.png -> sview-15_11.tar.gz/textures/menuSbsLR128.png
Changed
sview-15_10.tar.gz/textures/menuSbsLR144.png -> sview-15_11.tar.gz/textures/menuSbsLR144.png
Changed
sview-15_10.tar.gz/textures/menuSbsLR16.png -> sview-15_11.tar.gz/textures/menuSbsLR16.png
Changed
sview-15_10.tar.gz/textures/menuSbsLR192.png -> sview-15_11.tar.gz/textures/menuSbsLR192.png
Changed
sview-15_10.tar.gz/textures/menuSbsLR24.png -> sview-15_11.tar.gz/textures/menuSbsLR24.png
Changed
sview-15_10.tar.gz/textures/menuSbsLR256.png -> sview-15_11.tar.gz/textures/menuSbsLR256.png
Changed
sview-15_10.tar.gz/textures/menuSbsLR32.png -> sview-15_11.tar.gz/textures/menuSbsLR32.png
Changed
sview-15_10.tar.gz/textures/menuSbsLR48.png -> sview-15_11.tar.gz/textures/menuSbsLR48.png
Changed
sview-15_10.tar.gz/textures/menuSbsLR64.png -> sview-15_11.tar.gz/textures/menuSbsLR64.png
Changed
sview-15_10.tar.gz/textures/menuSbsLR72.png -> sview-15_11.tar.gz/textures/menuSbsLR72.png
Changed
sview-15_10.tar.gz/textures/menuSbsLR96.png -> sview-15_11.tar.gz/textures/menuSbsLR96.png
Changed
sview-15_10.tar.gz/textures/menuSbsRL128.png -> sview-15_11.tar.gz/textures/menuSbsRL128.png
Changed
sview-15_10.tar.gz/textures/menuSbsRL144.png -> sview-15_11.tar.gz/textures/menuSbsRL144.png
Changed
sview-15_10.tar.gz/textures/menuSbsRL16.png -> sview-15_11.tar.gz/textures/menuSbsRL16.png
Changed
sview-15_10.tar.gz/textures/menuSbsRL192.png -> sview-15_11.tar.gz/textures/menuSbsRL192.png
Changed
sview-15_10.tar.gz/textures/menuSbsRL24.png -> sview-15_11.tar.gz/textures/menuSbsRL24.png
Changed
sview-15_10.tar.gz/textures/menuSbsRL256.png -> sview-15_11.tar.gz/textures/menuSbsRL256.png
Changed
sview-15_10.tar.gz/textures/menuSbsRL32.png -> sview-15_11.tar.gz/textures/menuSbsRL32.png
Changed
sview-15_10.tar.gz/textures/menuSbsRL48.png -> sview-15_11.tar.gz/textures/menuSbsRL48.png
Changed
sview-15_10.tar.gz/textures/menuSbsRL64.png -> sview-15_11.tar.gz/textures/menuSbsRL64.png
Changed
sview-15_10.tar.gz/textures/menuSbsRL72.png -> sview-15_11.tar.gz/textures/menuSbsRL72.png
Changed
sview-15_10.tar.gz/textures/menuSbsRL96.png -> sview-15_11.tar.gz/textures/menuSbsRL96.png
Changed
sview-15_10.tar.gz/textures/menuTiledLR128.png -> sview-15_11.tar.gz/textures/menuTiledLR128.png
Changed
sview-15_10.tar.gz/textures/menuTiledLR144.png -> sview-15_11.tar.gz/textures/menuTiledLR144.png
Changed
sview-15_10.tar.gz/textures/menuTiledLR16.png -> sview-15_11.tar.gz/textures/menuTiledLR16.png
Changed
sview-15_10.tar.gz/textures/menuTiledLR192.png -> sview-15_11.tar.gz/textures/menuTiledLR192.png
Changed
sview-15_10.tar.gz/textures/menuTiledLR24.png -> sview-15_11.tar.gz/textures/menuTiledLR24.png
Changed
sview-15_10.tar.gz/textures/menuTiledLR256.png -> sview-15_11.tar.gz/textures/menuTiledLR256.png
Changed
sview-15_10.tar.gz/textures/menuTiledLR32.png -> sview-15_11.tar.gz/textures/menuTiledLR32.png
Changed
sview-15_10.tar.gz/textures/menuTiledLR48.png -> sview-15_11.tar.gz/textures/menuTiledLR48.png
Changed
sview-15_10.tar.gz/textures/menuTiledLR64.png -> sview-15_11.tar.gz/textures/menuTiledLR64.png
Changed
sview-15_10.tar.gz/textures/menuTiledLR72.png -> sview-15_11.tar.gz/textures/menuTiledLR72.png
Changed
sview-15_10.tar.gz/textures/menuTiledLR96.png -> sview-15_11.tar.gz/textures/menuTiledLR96.png
Changed
sview-15_11.tar.gz/texturesSrc/export.sh
Added
19
1
2
+#!/bin/bash
3
+# Auxiliary script to export SVG images into grayscale PNG image.
4
+
5
+anSvgName=$1
6
+aPngName=$2
7
+if [ "$aPngName" == "" ]; then aPngName=$1; fi
8
+if [ ! -f "$anSvgName" ]; then anSvgName=${anSvgName}.svg; fi
9
+
10
+aSizeList=(16 24 32 48 64 72 96 128 144 192 256)
11
+for aSize in "${aSizeList[@]}"
12
+do
13
+ rm -f "${aPngName}${aSize}.png"
14
+
15
+ inkscape --file "$anSvgName" --export-area-page --export-height ${aSize} --export-png "${aPngName}${aSize}.tmp.png"
16
+ ffmpeg -i "${aPngName}${aSize}.tmp.png" -pix_fmt gray "${aPngName}${aSize}.png"
17
+ rm -f "${aPngName}${aSize}.tmp.png"
18
+done
19
sview-15_10.tar.gz/texturesSrc/menuRatio.svg -> sview-15_11.tar.gz/texturesSrc/menuRatio.svg
Changed
201
1
2
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
3
xmlns:svg="http://www.w3.org/2000/svg"
4
xmlns="http://www.w3.org/2000/svg"
5
- xmlns:xlink="http://www.w3.org/1999/xlink"
6
xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"
7
xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape"
8
width="16"
9
height="16"
10
id="svg2"
11
version="1.1"
12
- inkscape:version="0.48.3.1 r9886"
13
+ inkscape:version="0.91 r13725"
14
sodipodi:docname="menuRatio.svg"
15
inkscape:export-filename="menuRatio1_1_16.png"
16
inkscape:export-xdpi="90"
17
inkscape:export-ydpi="90">
18
<defs
19
- id="defs4">
20
- <linearGradient
21
- id="linearGradient4713">
22
- <stop
23
- id="stop4715"
24
- offset="0"
25
- style="stop-color:#000000;stop-opacity:0;" />
26
- <stop
27
- style="stop-color:#000000;stop-opacity:0;"
28
- offset="0.46642813"
29
- id="stop4717" />
30
- <stop
31
- id="stop4719"
32
- offset="0.47303236"
33
- style="stop-color:#000000;stop-opacity:1;" />
34
- <stop
35
- id="stop4721"
36
- offset="1"
37
- style="stop-color:#000000;stop-opacity:1;" />
38
- </linearGradient>
39
- <linearGradient
40
- id="linearGradient4634">
41
- <stop
42
- style="stop-color:#000000;stop-opacity:1;"
43
- offset="0"
44
- id="stop4636" />
45
- <stop
46
- id="stop4642"
47
- offset="0.46642813"
48
- style="stop-color:#000000;stop-opacity:1;" />
49
- <stop
50
- style="stop-color:#000000;stop-opacity:0;"
51
- offset="0.47303236"
52
- id="stop4644" />
53
- <stop
54
- style="stop-color:#000000;stop-opacity:0;"
55
- offset="1"
56
- id="stop4638" />
57
- </linearGradient>
58
- <linearGradient
59
- inkscape:collect="always"
60
- xlink:href="#linearGradient4634"
61
- id="linearGradient4640"
62
- x1="10.176364"
63
- y1="7.4030485"
64
- x2="14.850094"
65
- y2="7.4030485"
66
- gradientUnits="userSpaceOnUse" />
67
- <linearGradient
68
- inkscape:collect="always"
69
- xlink:href="#linearGradient4634-3"
70
- id="linearGradient4640-7"
71
- x1="10.176364"
72
- y1="7.4030485"
73
- x2="14.850094"
74
- y2="7.4030485"
75
- gradientUnits="userSpaceOnUse" />
76
- <linearGradient
77
- id="linearGradient4634-3">
78
- <stop
79
- style="stop-color:#000000;stop-opacity:1;"
80
- offset="0"
81
- id="stop4636-4" />
82
- <stop
83
- id="stop4642-5"
84
- offset="0.46642813"
85
- style="stop-color:#000000;stop-opacity:1;" />
86
- <stop
87
- style="stop-color:#000000;stop-opacity:0;"
88
- offset="0.47303236"
89
- id="stop4644-5" />
90
- <stop
91
- style="stop-color:#000000;stop-opacity:0;"
92
- offset="1"
93
- id="stop4638-7" />
94
- </linearGradient>
95
- <linearGradient
96
- inkscape:collect="always"
97
- xlink:href="#linearGradient4634-3"
98
- id="linearGradient4662"
99
- x1="10.176364"
100
- y1="7.4030485"
101
- x2="14.850094"
102
- y2="7.4030485"
103
- gradientUnits="userSpaceOnUse" />
104
- <linearGradient
105
- id="linearGradient4664">
106
- <stop
107
- style="stop-color:#000000;stop-opacity:1;"
108
- offset="0"
109
- id="stop4666" />
110
- <stop
111
- id="stop4668"
112
- offset="0.46642813"
113
- style="stop-color:#000000;stop-opacity:1;" />
114
- <stop
115
- style="stop-color:#000000;stop-opacity:0;"
116
- offset="0.47303236"
117
- id="stop4670" />
118
- <stop
119
- style="stop-color:#000000;stop-opacity:0;"
120
- offset="1"
121
- id="stop4672" />
122
- </linearGradient>
123
- <linearGradient
124
- gradientTransform="translate(-10.601134,6.9138058)"
125
- y2="7.4030485"
126
- x2="14.850094"
127
- y1="7.4030485"
128
- x1="10.176364"
129
- gradientUnits="userSpaceOnUse"
130
- id="linearGradient4676"
131
- xlink:href="#linearGradient4713"
132
- inkscape:collect="always" />
133
- <linearGradient
134
- gradientTransform="translate(-9.1593698,6.9138058)"
135
- y2="7.4030485"
136
- x2="14.850094"
137
- y1="7.4030485"
138
- x1="10.176364"
139
- gradientUnits="userSpaceOnUse"
140
- id="linearGradient4676-8"
141
- xlink:href="#linearGradient4713-2"
142
- inkscape:collect="always" />
143
- <linearGradient
144
- id="linearGradient4713-2">
145
- <stop
146
- id="stop4715-9"
147
- offset="0"
148
- style="stop-color:#000000;stop-opacity:0;" />
149
- <stop
150
- style="stop-color:#000000;stop-opacity:0;"
151
- offset="0.46642813"
152
- id="stop4717-9" />
153
- <stop
154
- id="stop4719-2"
155
- offset="0.47303236"
156
- style="stop-color:#000000;stop-opacity:1;" />
157
- <stop
158
- id="stop4721-1"
159
- offset="1"
160
- style="stop-color:#000000;stop-opacity:1;" />
161
- </linearGradient>
162
- <linearGradient
163
- gradientTransform="translate(-9.1593698,6.9138058)"
164
- y2="7.4030485"
165
- x2="14.850094"
166
- y1="7.4030485"
167
- x1="10.176364"
168
- gradientUnits="userSpaceOnUse"
169
- id="linearGradient4757"
170
- xlink:href="#linearGradient4713-2"
171
- inkscape:collect="always" />
172
- <linearGradient
173
- id="linearGradient4759">
174
- <stop
175
- id="stop4761"
176
- offset="0"
177
- style="stop-color:#000000;stop-opacity:0;" />
178
- <stop
179
- style="stop-color:#000000;stop-opacity:0;"
180
- offset="0.46642813"
181
- id="stop4763" />
182
- <stop
183
- id="stop4765"
184
- offset="0.47303236"
185
- style="stop-color:#000000;stop-opacity:1;" />
186
- <stop
187
- id="stop4767"
188
- offset="1"
189
- style="stop-color:#000000;stop-opacity:1;" />
190
- </linearGradient>
191
- <linearGradient
192
- y2="7.4030485"
193
- x2="14.850094"
194
- y1="7.4030485"
195
- x1="10.176364"
196
- gradientTransform="translate(-7.0215298,3.6524912)"
197
- gradientUnits="userSpaceOnUse"
198
- id="linearGradient4771"
199
- xlink:href="#linearGradient4713-2"
200
- inkscape:collect="always" />
201
sview-15_10.tar.gz/texturesSrc/menuSrcFormat.svg -> sview-15_11.tar.gz/texturesSrc/menuSrcFormat.svg
Changed
201
1
2
height="16"
3
id="svg2"
4
version="1.1"
5
- inkscape:version="0.48.5 r10040"
6
+ inkscape:version="0.91 r13725"
7
sodipodi:docname="menuSrcFormat.svg"
8
inkscape:export-filename="/home/menuSbsLR16.png"
9
inkscape:export-xdpi="90"
10
11
style="stop-color:#000000;stop-opacity:1;" />
12
</linearGradient>
13
<linearGradient
14
- id="linearGradient4634">
15
- <stop
16
- style="stop-color:#000000;stop-opacity:1;"
17
- offset="0"
18
- id="stop4636" />
19
- <stop
20
- id="stop4642"
21
- offset="0.46642813"
22
- style="stop-color:#000000;stop-opacity:1;" />
23
- <stop
24
- style="stop-color:#000000;stop-opacity:0;"
25
- offset="0.47303236"
26
- id="stop4644" />
27
- <stop
28
- style="stop-color:#000000;stop-opacity:0;"
29
- offset="1"
30
- id="stop4638" />
31
- </linearGradient>
32
- <linearGradient
33
- inkscape:collect="always"
34
- xlink:href="#linearGradient4634"
35
- id="linearGradient4640"
36
- x1="10.176364"
37
- y1="7.4030485"
38
- x2="14.850094"
39
- y2="7.4030485"
40
- gradientUnits="userSpaceOnUse" />
41
- <linearGradient
42
- inkscape:collect="always"
43
- xlink:href="#linearGradient4634-3"
44
- id="linearGradient4640-7"
45
- x1="10.176364"
46
- y1="7.4030485"
47
- x2="14.850094"
48
- y2="7.4030485"
49
- gradientUnits="userSpaceOnUse" />
50
- <linearGradient
51
- id="linearGradient4634-3">
52
- <stop
53
- style="stop-color:#000000;stop-opacity:1;"
54
- offset="0"
55
- id="stop4636-4" />
56
- <stop
57
- id="stop4642-5"
58
- offset="0.46642813"
59
- style="stop-color:#000000;stop-opacity:1;" />
60
- <stop
61
- style="stop-color:#000000;stop-opacity:0;"
62
- offset="0.47303236"
63
- id="stop4644-5" />
64
- <stop
65
- style="stop-color:#000000;stop-opacity:0;"
66
- offset="1"
67
- id="stop4638-7" />
68
- </linearGradient>
69
- <linearGradient
70
- inkscape:collect="always"
71
- xlink:href="#linearGradient4634-3"
72
- id="linearGradient4662"
73
- x1="10.176364"
74
- y1="7.4030485"
75
- x2="14.850094"
76
- y2="7.4030485"
77
- gradientUnits="userSpaceOnUse" />
78
- <linearGradient
79
- id="linearGradient4664">
80
- <stop
81
- style="stop-color:#000000;stop-opacity:1;"
82
- offset="0"
83
- id="stop4666" />
84
- <stop
85
- id="stop4668"
86
- offset="0.46642813"
87
- style="stop-color:#000000;stop-opacity:1;" />
88
- <stop
89
- style="stop-color:#000000;stop-opacity:0;"
90
- offset="0.47303236"
91
- id="stop4670" />
92
- <stop
93
- style="stop-color:#000000;stop-opacity:0;"
94
- offset="1"
95
- id="stop4672" />
96
- </linearGradient>
97
- <linearGradient
98
- gradientTransform="translate(-10.601134,6.9138058)"
99
+ gradientTransform="matrix(1.126643,0,0,0.8875926,-11.954742,5.9491429)"
100
y2="7.4030485"
101
x2="14.850094"
102
y1="7.4030485"
103
104
xlink:href="#linearGradient4713"
105
inkscape:collect="always" />
106
<linearGradient
107
- gradientTransform="translate(-9.1593698,6.9138058)"
108
- y2="7.4030485"
109
- x2="14.850094"
110
- y1="7.4030485"
111
- x1="10.176364"
112
- gradientUnits="userSpaceOnUse"
113
- id="linearGradient4676-8"
114
- xlink:href="#linearGradient4713-2"
115
- inkscape:collect="always" />
116
- <linearGradient
117
id="linearGradient4713-2">
118
<stop
119
id="stop4715-9"
120
121
style="stop-color:#000000;stop-opacity:1;" />
122
</linearGradient>
123
<linearGradient
124
- gradientTransform="translate(-9.1593698,6.9138058)"
125
- y2="7.4030485"
126
- x2="14.850094"
127
- y1="7.4030485"
128
- x1="10.176364"
129
- gradientUnits="userSpaceOnUse"
130
- id="linearGradient4757"
131
- xlink:href="#linearGradient4713-2"
132
- inkscape:collect="always" />
133
- <linearGradient
134
- id="linearGradient4759">
135
- <stop
136
- id="stop4761"
137
- offset="0"
138
- style="stop-color:#000000;stop-opacity:0;" />
139
- <stop
140
- style="stop-color:#000000;stop-opacity:0;"
141
- offset="0.46642813"
142
- id="stop4763" />
143
- <stop
144
- id="stop4765"
145
- offset="0.47303236"
146
- style="stop-color:#000000;stop-opacity:1;" />
147
- <stop
148
- id="stop4767"
149
- offset="1"
150
- style="stop-color:#000000;stop-opacity:1;" />
151
- </linearGradient>
152
- <linearGradient
153
y2="7.4030485"
154
x2="14.850094"
155
y1="7.4030485"
156
x1="10.176364"
157
- gradientTransform="translate(-7.0215298,3.6524912)"
158
+ gradientTransform="translate(-7.0215298,2.8075088)"
159
gradientUnits="userSpaceOnUse"
160
id="linearGradient4771"
161
xlink:href="#linearGradient4713-2"
162
163
pagecolor="#ffffff"
164
bordercolor="#666666"
165
borderopacity="1.0"
166
- inkscape:pageopacity="0.0"
167
+ inkscape:pageopacity="0"
168
inkscape:pageshadow="2"
169
- inkscape:zoom="31.999999"
170
- inkscape:cx="8.3167614"
171
- inkscape:cy="6.1548109"
172
+ inkscape:zoom="7.9999998"
173
+ inkscape:cx="22.787657"
174
+ inkscape:cy="22.468716"
175
inkscape:document-units="px"
176
- inkscape:current-layer="layer8"
177
+ inkscape:current-layer="layer3"
178
showgrid="false"
179
- inkscape:window-width="1920"
180
- inkscape:window-height="1004"
181
- inkscape:window-x="-9"
182
- inkscape:window-y="-9"
183
- inkscape:window-maximized="1"
184
+ inkscape:window-width="2410"
185
+ inkscape:window-height="1233"
186
+ inkscape:window-x="90"
187
+ inkscape:window-y="28"
188
+ inkscape:window-maximized="0"
189
inkscape:snap-grids="true" />
190
<metadata
191
id="metadata7">
192
193
<dc:format>image/svg+xml</dc:format>
194
<dc:type
195
rdf:resource="http://purl.org/dc/dcmitype/StillImage" />
196
- <dc:title />
197
+ <dc:title></dc:title>
198
</cc:Work>
199
</rdf:RDF>
200
</metadata>
201