GLXWorkstation.st
author Jan Vrany <jan.vrany@fit.cvut.cz>
Wed, 06 Sep 2017 10:04:18 +0200
branchjv
changeset 8180 25149dfd68e0
parent 7657 75bf1ca54216
child 7829 12f0d02f567f
child 8181 7cd36eb4b09c
permissions -rw-r--r--
Build files: removed a bunch of make rules for long-dead unsupported systems ...in order to unify and simplify the build. If a need to support this ancient systems arose, these hacks may ni longer be needed (due to new versions of tools) or the hacks would have to be written again (better) or retrieved from SCM (worse). Time will show.
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
48194c26a46c Initial revision
claus
parents:
diff changeset
     1
"
614
1b1c0d7c9266 documentation
Claus Gittinger <cg@exept.de>
parents: 554
diff changeset
     2
 COPYRIGHT (c) 1993 by Claus Gittinger
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
     3
	      All Rights Reserved
0
48194c26a46c Initial revision
claus
parents:
diff changeset
     4
48194c26a46c Initial revision
claus
parents:
diff changeset
     5
 This software is furnished under a license and may be used
48194c26a46c Initial revision
claus
parents:
diff changeset
     6
 only in accordance with the terms of that license and with the
48194c26a46c Initial revision
claus
parents:
diff changeset
     7
 inclusion of the above copyright notice.   This software may not
48194c26a46c Initial revision
claus
parents:
diff changeset
     8
 be provided or otherwise made available to, or used by, any
48194c26a46c Initial revision
claus
parents:
diff changeset
     9
 other person.  No title to or ownership of the software is
48194c26a46c Initial revision
claus
parents:
diff changeset
    10
 hereby transferred.
48194c26a46c Initial revision
claus
parents:
diff changeset
    11
"
3214
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
    12
"{ Package: 'stx:libview' }"
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
    13
7656
e39deb3fb1ac #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6978
diff changeset
    14
"{ NameSpace: Smalltalk }"
e39deb3fb1ac #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6978
diff changeset
    15
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    16
XWorkstation subclass:#GLXWorkstation
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
    17
	instanceVariableNames:'activeWindow hasStereoExtension glOK'
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
    18
	classVariableNames:'ForceGL'
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
    19
	poolDictionaries:''
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
    20
	category:'Interface-Graphics'
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
    21
!
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
    22
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
    23
!GLXWorkstation primitiveDefinitions!
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    24
%{
6617
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    25
#include "stxOSDefs.h"
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    26
24
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
    27
/*
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
    28
 * on SGI, this class is compiled with -DGLX, while
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
    29
 * for simulation (using vogl), this is compiled with -DVGL
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
    30
 *
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
    31
 * New note: starting to support openGL (tm) (compile with -DOPENGL)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
    32
 * or its simulation (compile with -DMESA)
24
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
    33
 */
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
    34
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    35
/*
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
    36
 * SAD, SAD:
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
    37
 *    on SGI, the GL library seems to come in different versions,
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
    38
 *    some include the functions below, others dont.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
    39
 *    To avoid getting undefined symbol errors when linking, these
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
    40
 *    functions are not included by default.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
    41
 *
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
    42
 * enable the #define below (or compile with -DFULL_GLX) to enable
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
    43
 * the following:
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
    44
 *
46
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
    45
 *    blendcolor getgconfig getmultisample leftbuffer rightbuffer monobuffer
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
    46
 *    msalpha msmask mspattern mssize multisample stereobuffer
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
    47
 *    t3s t3i t3f t3d t4s t4i t4f t4d tlutbind zbsize
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
    48
 *
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
    49
 * these are not available on all gl's
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
    50
 */
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
    51
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
    52
#ifdef GLX
46
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
    53
/* #define FULL_GLX */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
    54
#endif
46
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
    55
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
    56
/*
554
34cc776bcc0f compilable with String/Object definition
Claus Gittinger <cg@exept.de>
parents: 553
diff changeset
    57
 * this is stupid, GLX type-defs String, which is also defined here ...
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
    58
 * ... and xlib defines True and False
554
34cc776bcc0f compilable with String/Object definition
Claus Gittinger <cg@exept.de>
parents: 553
diff changeset
    59
 * It might be a better idea, to completely separate GLX stuff from ST/X
0
48194c26a46c Initial revision
claus
parents:
diff changeset
    60
 */
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    61
#ifdef String
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    62
# undef String
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    63
#endif
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    64
#define String GLX_String
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    65
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    66
#ifdef Object
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    67
# undef Object
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    68
#endif
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    69
#define Object GLX_Object
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    70
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    71
#undef True
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    72
#undef False
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    73
2768
57079243282f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2449
diff changeset
    74
#ifdef Time
57079243282f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2449
diff changeset
    75
# undef Time
57079243282f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2449
diff changeset
    76
#endif
57079243282f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2449
diff changeset
    77
#define Time X_Time
57079243282f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2449
diff changeset
    78
2422
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
    79
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    80
#ifdef __VMS__
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    81
# include "vms_Xnames.h"
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
    82
#endif
24
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
    83
6617
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    84
#ifdef __arm__
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    85
// # define _POSIX_C_SOURCE
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    86
#endif
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    87
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    88
#ifndef _STDIO_H_INCLUDED_
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    89
# include <stdio.h>
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    90
# define _STDIO_H_INCLUDED_
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    91
#endif
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    92
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    93
#ifdef __arm__
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    94
# ifndef _SYS_TYPES_H_INCLUDED_
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    95
#  include <sys/types.h>
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    96
#  define _SYS_TYPES_H_INCLUDED_
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    97
# endif
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    98
# ifndef _SYS_SIGNAL_H_INCLUDED_
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
    99
#  include <sys/signal.h>
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   100
#  define _SYS_SIGNAL_H_INCLUDED_
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   101
# endif
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   102
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   103
#endif
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   104
6254
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
   105
#ifdef __osx__
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
   106
# include <sys/signal.h>
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
   107
# define DYNAMICALLY_LOADABLE
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
   108
#endif
168
claus
parents: 159
diff changeset
   109
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   110
#ifndef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   111
# ifdef MESA
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   112
#  define OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   113
# endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   114
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   115
6978
5b28db37852a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6617
diff changeset
   116
#ifdef OPENGL   /* SGI or other's OPENGL library */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   117
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   118
# include "GL/gl.h"
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   119
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   120
# ifdef MESA    /* GNU MESA openGL simulation */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   121
#  include "GL/xmesa.h"
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   122
#  define OPENGLCONTEXT                         XMesaContext
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   123
#  define GLXMAKECURRENT(dpy, draw, con)        XMesaMakeCurrent(con)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   124
# else
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   125
   /* not yet known what else to include */
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   126
#  define OPENGLCONTEXT GLXContext
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   127
#  define GLXMAKECURRENT(dpy, draw, con)        glxMakeCurrent(dpy, draw, con)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   128
# endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   129
24
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
   130
#else
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   131
6978
5b28db37852a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6617
diff changeset
   132
# ifdef GLX     /* SGI's native GL library */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   133
#  include <gl/glws.h>
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   134
#  include <gl/sphere.h>
6978
5b28db37852a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6617
diff changeset
   135
# else          /* VOGL GL subset simulation */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   136
#  undef memset
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   137
#  include <vogl.h>
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   138
#  undef move
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   139
#  include <X11/Xlib.h>
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   140
# endif
24
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
   141
#endif
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   142
185
claus
parents: 169
diff changeset
   143
/*
claus
parents: 169
diff changeset
   144
 * XSGIStereo extension - if available
claus
parents: 169
diff changeset
   145
 */
claus
parents: 169
diff changeset
   146
#ifdef XSGIStereo
claus
parents: 169
diff changeset
   147
# include <X11/extensions/SGIStereo.h>
claus
parents: 169
diff changeset
   148
#endif
claus
parents: 169
diff changeset
   149
35
f1a194c18429 *** empty log message ***
claus
parents: 30
diff changeset
   150
#ifndef NULL
58
721460c8fd3a *** empty log message ***
claus
parents: 54
diff changeset
   151
# define NULL (char *)0         /* sigh */
35
f1a194c18429 *** empty log message ***
claus
parents: 30
diff changeset
   152
#endif
f1a194c18429 *** empty log message ***
claus
parents: 30
diff changeset
   153
2422
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
   154
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   155
typedef enum {
48194c26a46c Initial revision
claus
parents:
diff changeset
   156
    GLXcolorIndexSingleBuffer,
48194c26a46c Initial revision
claus
parents:
diff changeset
   157
    GLXcolorIndexDoubleBuffer,
48194c26a46c Initial revision
claus
parents:
diff changeset
   158
    GLXrgbSingleBuffer,
48194c26a46c Initial revision
claus
parents:
diff changeset
   159
    GLXrgbDoubleBuffer
48194c26a46c Initial revision
claus
parents:
diff changeset
   160
} GLXWindowType;
48194c26a46c Initial revision
claus
parents:
diff changeset
   161
333
4724e009f3f1 use register saving macro
Claus Gittinger <cg@exept.de>
parents: 315
diff changeset
   162
# define ENTERGLX     __BEGIN_PROTECT_REGISTERS__
4724e009f3f1 use register saving macro
Claus Gittinger <cg@exept.de>
parents: 315
diff changeset
   163
# define LEAVEGLX     __END_PROTECT_REGISTERS__
134
claus
parents: 127
diff changeset
   164
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
   165
/*
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
   166
 * stupid again - from now on, we need ST/X's String again
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
   167
 */
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   168
#undef String
969
61724c5ab6a5 care for Object definition
Claus Gittinger <cg@exept.de>
parents: 962
diff changeset
   169
#ifdef __DEF_String
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
   170
# define String __DEF_String
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
   171
#endif
969
61724c5ab6a5 care for Object definition
Claus Gittinger <cg@exept.de>
parents: 962
diff changeset
   172
#undef Object
61724c5ab6a5 care for Object definition
Claus Gittinger <cg@exept.de>
parents: 962
diff changeset
   173
#ifdef __DEF_Object
61724c5ab6a5 care for Object definition
Claus Gittinger <cg@exept.de>
parents: 962
diff changeset
   174
# define Object __DEF_Object
61724c5ab6a5 care for Object definition
Claus Gittinger <cg@exept.de>
parents: 962
diff changeset
   175
#endif
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   176
48194c26a46c Initial revision
claus
parents:
diff changeset
   177
/*
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   178
 * mhmh - openGL has its separate gl-context,
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   179
 * which is distinct (?) from the windowID.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   180
 * We dont want to add another instvar to View - do we ?
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   181
 */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   182
#if defined(OPENGL)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   183
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   184
# ifndef MAX_OPENGL_VIEWS
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   185
#  define MAX_OPENGL_VIEWS      50
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   186
# endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   187
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   188
struct windowIDToGLContextMapping {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   189
	Window          win;
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   190
	OPENGLCONTEXT   con;
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   191
};
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   192
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   193
static struct windowIDToGLContextMapping windowIDToGLContextMapping[MAX_OPENGL_VIEWS];
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   194
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   195
static OPENGLCONTEXT
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   196
__glxWindowIdToGLContext(xId)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   197
	Window xId;
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   198
{
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   199
	int i;
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   200
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   201
	for (i=0; i<MAX_OPENGL_VIEWS; i++) {
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   202
	    if (windowIDToGLContextMapping[i].win == xId) {
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   203
		return windowIDToGLContextMapping[i].con;
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   204
	    }
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   205
	}
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   206
	return (OPENGLCONTEXT) 0;
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   207
}
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   208
157
claus
parents: 151
diff changeset
   209
/*
claus
parents: 151
diff changeset
   210
 * set the GLXWindow for followup drawing
claus
parents: 151
diff changeset
   211
 */
212
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
   212
#define SETWIN(aGLXWindowId)                            \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   213
    {                                                   \
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   214
	OPENGLCONTEXT context;                          \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   215
							\
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   216
	if (_INST(activeWindow) != aGLXWindowId) {      \
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   217
	    if (! ISCONNECTED ) {                       \
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   218
		RETURN (false);                         \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   219
	    }                                           \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   220
	    if (! __isExternalAddress(aGLXWindowId)) {  \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   221
		RETURN (false);                         \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   222
	    }                                           \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   223
	    context = (OPENGLCONTEXT) __glxWindowIdToGLContext(_WindowVal(aGLXWindowId));       \
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   224
	    if (! context) {                            \
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   225
		RETURN (false);                         \
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   226
	    }                                           \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   227
	    GLXMAKECURRENT(myDpy, _WindowVal(aGLXWindowId), context ); \
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   228
	    _INST(activeWindow) = aGLXWindowId;         \
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   229
	    __STORE(self, aGLXWindowId);                \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   230
	} else {                                        \
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   231
	    if (aGLXWindowId == nil) {                  \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   232
		RETURN (false);                         \
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   233
	    }                                           \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   234
	}                                               \
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   235
    }
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   236
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   237
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   238
#else /* old GL */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   239
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   240
/*
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   241
 * set the GLXWindow for followup drawing
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   242
 */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   243
#define SETWIN(aGLXWindowId)                            \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   244
    {                                                   \
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   245
	if (_INST(activeWindow) != aGLXWindowId) {      \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   246
	    if (! ISCONNECTED ) {                       \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   247
		RETURN (false);                         \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   248
	    }                                           \
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   249
	    if (! __isExternalAddress(aGLXWindowId)) {  \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   250
		RETURN (false);                         \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   251
	    }                                           \
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   252
	    if (GLXwinset(myDpy, _WindowVal(aGLXWindowId)) < 0) { \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   253
		RETURN (false);                         \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   254
	    }                                           \
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   255
	    _INST(activeWindow) = aGLXWindowId;         \
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   256
	    __STORE(self, aGLXWindowId);                \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   257
	} else {                                        \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   258
	    if (aGLXWindowId == nil) {                  \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   259
		RETURN (false);                         \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   260
	    }                                           \
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   261
	}                                               \
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   262
    }
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   263
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   264
#endif /* old GL */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   265
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   266
/*
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   267
 * some defines - tired of typing ...
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   268
 * most of these macros/functions extract values from smalltalk objects or
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   269
 * put/pack them into corresponding c variables.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   270
 *
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   271
 */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   272
#ifdef OPENGL
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   273
# define Boolean        int
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   274
# define TRUE           1
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   275
# define FALSE          0
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   276
# define Coord          float
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   277
# define Icoord         int
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   278
# define Scoord         int
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   279
# define Colorindex     int
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   280
# define Linestyle      int
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   281
# define Offset         int
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   282
# define Angle          int
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   283
# define Screencoord    int
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   284
#endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   285
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   286
#define myDpy              (Display *)(__MKCP(_INST(displayId)))
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   287
#define ISCONNECTED        (_INST(displayId) != nil)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   288
#define _WindowVal(o)      (Window)(__MKCP(o))
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   289
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   290
#define __MKBOOLEAN(b)     ((b==FALSE) ? false : true)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   291
#define _booleanVal(b)     ((b==false) ? (Boolean)FALSE : (Boolean)TRUE)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   292
#define _coordVal(c)       ((__isFloat(c)) ? (Coord)(_floatVal(c))  : (Coord)(__intVal(c)))
185
claus
parents: 169
diff changeset
   293
#define _icoordVal(c)      ((Icoord)(__intVal(c)))
claus
parents: 169
diff changeset
   294
#define _scoordVal(c)      ((Scoord)(__intVal(c)))
claus
parents: 169
diff changeset
   295
#define _screencoordVal(c) ((Screencoord)(__intVal(c)))
claus
parents: 169
diff changeset
   296
#define _colorindexVal(c)  ((Colorindex)(__intVal(c)))
claus
parents: 169
diff changeset
   297
#define _linestyleVal(l)   ((Linestyle)(__intVal(l)))
claus
parents: 169
diff changeset
   298
#define _shortVal(l)       ((short)(__intVal(l)))
claus
parents: 169
diff changeset
   299
#define _longVal(l)        ((long)(__intVal(l)))
claus
parents: 169
diff changeset
   300
#define _deviceVal(l)      ((Device)(__intVal(l)))
claus
parents: 169
diff changeset
   301
#define _tagVal(l)         ((Tag)(__intVal(l)))
969
61724c5ab6a5 care for Object definition
Claus Gittinger <cg@exept.de>
parents: 962
diff changeset
   302
#define _objectVal(l)      ((GLX_Object)(__intVal(l)))
185
claus
parents: 169
diff changeset
   303
#define _offsetVal(l)      ((Offset)(__intVal(l)))
claus
parents: 169
diff changeset
   304
#define _rgbVal(l)         ((RGBvalue)(__intVal(l)))
claus
parents: 169
diff changeset
   305
#define _angleVal(c)       ((Angle)(__intVal(c)))
157
claus
parents: 151
diff changeset
   306
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   307
/*
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   308
 * check for and fetch a boolean from ST-arg into C-dst
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   309
 * ST-object must be true or false. Return from method if invalid.
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   310
 */
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   311
#define _BOOLEAN_(arg, dst)             \
30
claus
parents: 29
diff changeset
   312
    if (arg==true)                      \
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   313
	dst = (Boolean)TRUE;            \
30
claus
parents: 29
diff changeset
   314
    else if (arg==false)                \
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   315
	dst = (Boolean)FALSE;           \
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   316
    else { RETURN(false); }
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   317
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   318
/*
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   319
 * check for and fetch a coord from ST-arg into C-dst
157
claus
parents: 151
diff changeset
   320
 * ST-object must be Float, SmallInteger or Fraction.
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   321
 * Return from method if invalid.
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   322
 */
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   323
#define _COORD_(arg, dst)               \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   324
    if (__isFloat(arg))                 \
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   325
	dst = (Coord)(_floatVal(arg));  \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   326
    else if (__isSmallInteger(arg))     \
185
claus
parents: 169
diff changeset
   327
	dst = (Coord)(__intVal(arg));    \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   328
    else if (__isFraction(arg)          \
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   329
	  && __isSmallInteger(_FractionInstPtr(arg)->f_numerator)       \
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   330
	  && __isSmallInteger(_FractionInstPtr(arg)->f_denominator)) {  \
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   331
	float n, d;                                                     \
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   332
									\
185
claus
parents: 169
diff changeset
   333
	n = (float)(__intVal(_FractionInstPtr(arg)->f_numerator));       \
claus
parents: 169
diff changeset
   334
	d = (float)(__intVal(_FractionInstPtr(arg)->f_denominator));     \
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   335
	dst = (Coord)(n / d);                                           \
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   336
    } else { RETURN(false); }
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   337
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   338
/*
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   339
 * check for and fetch an icoord from ST-arg into C-dst
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   340
 * ST-object must be SmallInteger. Return from method if invalid.
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   341
 */
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   342
#define _ICOORD_(arg, dst)              \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   343
    if (__isSmallInteger(arg))          \
185
claus
parents: 169
diff changeset
   344
      dst = (Icoord)(__intVal(arg));     \
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   345
    else { RETURN(false); }
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   346
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   347
/*
157
claus
parents: 151
diff changeset
   348
 * check for and fetch an scoord from ST-arg into C-dst
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   349
 * ST-object must be SmallInteger. Return from method if invalid.
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   350
 */
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   351
#define _SCOORD_(arg, dst)              \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   352
    if (__isSmallInteger(arg))          \
185
claus
parents: 169
diff changeset
   353
      dst = (Scoord)(__intVal(arg));     \
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   354
    else { RETURN(false); }
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   355
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   356
#define _SCREENCOORD_(arg, dst)          \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   357
    if (__isSmallInteger(arg))           \
185
claus
parents: 169
diff changeset
   358
      dst = (Screencoord)(__intVal(arg)); \
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   359
    else { RETURN(false); }
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   360
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   361
#define _COLORINDEX_(arg, dst)           \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   362
    if (__isSmallInteger(arg))           \
185
claus
parents: 169
diff changeset
   363
      dst = (Colorindex)(__intVal(arg));  \
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   364
    else { RETURN(false); }
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   365
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   366
#define _ANGLE_(arg, dst)               \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   367
    if (__isSmallInteger(arg))          \
185
claus
parents: 169
diff changeset
   368
	dst = (Angle)(__intVal(arg));    \
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   369
    else { RETURN(false); }
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   370
48194c26a46c Initial revision
claus
parents:
diff changeset
   371
#define _FLOAT_(arg, dst)               \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   372
    if (__isFloat(arg))                 \
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   373
	dst = (float)(_floatVal(arg));  \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   374
    else if (__isSmallInteger(arg))     \
185
claus
parents: 169
diff changeset
   375
	dst = (float)(__intVal(arg));    \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   376
    else if (__isFraction(arg)          \
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   377
	  && __isSmallInteger(_FractionInstPtr(arg)->f_numerator)       \
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   378
	  && __isSmallInteger(_FractionInstPtr(arg)->f_denominator)) {  \
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   379
	float n, d;                                                     \
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   380
									\
185
claus
parents: 169
diff changeset
   381
	n = (float)(__intVal(_FractionInstPtr(arg)->f_numerator));       \
claus
parents: 169
diff changeset
   382
	d = (float)(__intVal(_FractionInstPtr(arg)->f_denominator));     \
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   383
	dst = (float)(n / d);                                           \
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   384
    } else { RETURN(false); }
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   385
48194c26a46c Initial revision
claus
parents:
diff changeset
   386
#define _INT_(arg, dst)                 \
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   387
    if (__isSmallInteger(arg))          \
185
claus
parents: 169
diff changeset
   388
	dst = (int)(__intVal(arg));      \
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   389
    else { RETURN(false); }
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   390
30
claus
parents: 29
diff changeset
   391
#define _indexedArea(object)            \
claus
parents: 29
diff changeset
   392
    (((char *) (_InstPtr(object)))      \
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   393
	+ OHDR_SIZE                     \
185
claus
parents: 169
diff changeset
   394
	+ (__intVal(_ClassInstPtr(__qClass(object))->c_ninstvars)) * sizeof(OBJ))
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   395
%}
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   396
! !
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   397
168
claus
parents: 159
diff changeset
   398
!GLXWorkstation primitiveVariables!
claus
parents: 159
diff changeset
   399
%{
claus
parents: 159
diff changeset
   400
/*
claus
parents: 159
diff changeset
   401
 * remembered info from private error handler
claus
parents: 159
diff changeset
   402
 */
4164
390662205891 #resourceIdOfLastError return ExternalAddress as in XWorkstation
Stefan Vogel <sv@exept.de>
parents: 3743
diff changeset
   403
static char lastErrorMsg[128] = "";
390662205891 #resourceIdOfLastError return ExternalAddress as in XWorkstation
Stefan Vogel <sv@exept.de>
parents: 3743
diff changeset
   404
static unsigned INT lastRequestCode = 0;
390662205891 #resourceIdOfLastError return ExternalAddress as in XWorkstation
Stefan Vogel <sv@exept.de>
parents: 3743
diff changeset
   405
static unsigned INT lastMinorCode = 0;
390662205891 #resourceIdOfLastError return ExternalAddress as in XWorkstation
Stefan Vogel <sv@exept.de>
parents: 3743
diff changeset
   406
static unsigned INT lastResource = 0;
168
claus
parents: 159
diff changeset
   407
claus
parents: 159
diff changeset
   408
%}
claus
parents: 159
diff changeset
   409
! !
claus
parents: 159
diff changeset
   410
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
   411
!GLXWorkstation primitiveFunctions!
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
   412
%{
151
claus
parents: 134
diff changeset
   413
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   414
#ifdef DYNAMICALLY_LOADABLE
168
claus
parents: 159
diff changeset
   415
/*
claus
parents: 159
diff changeset
   416
 * catch X-errors and forward as errorInterrupt:#DisplayError,
4251
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
   417
 * (which itself invokes my handler and optionally raises an exception)
168
claus
parents: 159
diff changeset
   418
 * the implementation below is somewhat wrong: it will
claus
parents: 159
diff changeset
   419
 * report all errors for Display, even though there could be
claus
parents: 159
diff changeset
   420
 * more than one display connection. (being fixed, new errorInterrupt mechanism
claus
parents: 159
diff changeset
   421
 * allows passing an additional argument, which is the displayID ...)
claus
parents: 159
diff changeset
   422
 *
4251
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
   423
 * this duplicates the functionality as found in XWorkstation;
168
claus
parents: 159
diff changeset
   424
 * the reason is to allow dynamic loading systems to load this module
claus
parents: 159
diff changeset
   425
 * before XWorkstation (which was not possible otherwise, due to unresolved
claus
parents: 159
diff changeset
   426
 * external references while loading this one)
claus
parents: 159
diff changeset
   427
 */
claus
parents: 159
diff changeset
   428
static
claus
parents: 159
diff changeset
   429
__XErrorHandler__(dpy, event)
claus
parents: 159
diff changeset
   430
    Display *dpy;
claus
parents: 159
diff changeset
   431
    XErrorEvent *event;
claus
parents: 159
diff changeset
   432
{
claus
parents: 159
diff changeset
   433
    XGetErrorText(dpy, event->error_code, lastErrorMsg, 80);
claus
parents: 159
diff changeset
   434
    if (lastErrorMsg[0] == '\0') {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   435
	sprintf(lastErrorMsg, "code: %d", event->error_code);
168
claus
parents: 159
diff changeset
   436
    }
claus
parents: 159
diff changeset
   437
    lastRequestCode = event->request_code;
claus
parents: 159
diff changeset
   438
    lastMinorCode = event->minor_code;
claus
parents: 159
diff changeset
   439
    lastResource = event->resourceid;
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   440
    if ((event->error_code == BadWindow) && (lastRequestCode == 4) && (lastMinorCode == 0)) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   441
	/*
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   442
	 * this is a BadWindow error for X_DestroyWindow.
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   443
	 * ignore it here, since it results from the GC freeing windows
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   444
	 * in non bottom-up window order.
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   445
	 */
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   446
	return 0;
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   447
    }
168
claus
parents: 159
diff changeset
   448
218
10072d9beba5 can now turn off Xlib error messages from the errorHandler
Claus Gittinger <cg@exept.de>
parents: 216
diff changeset
   449
    if (@global(ErrorPrinting) == true) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   450
	console_fprintf(stderr, "GLXWORKSTAT: x-error caught maj=%d (0x%x) min=%d (0x%x) resource=%x\n",
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   451
			event->request_code, event->request_code,
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   452
			event->minor_code, event->minor_code, event->resourceid);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   453
	console_fprintf(stderr, "GLXWORKSTAT: x-error message is [%d] '%s'\n", event->error_code, lastErrorMsg);
218
10072d9beba5 can now turn off Xlib error messages from the errorHandler
Claus Gittinger <cg@exept.de>
parents: 216
diff changeset
   454
    }
168
claus
parents: 159
diff changeset
   455
207
9124817bbb03 use new c-pointer wrapper macros (based on externalAddress)
Claus Gittinger <cg@exept.de>
parents: 206
diff changeset
   456
    __errorInterruptWithIDAndParameter__(@symbol(DisplayError), __MKOBJ(dpy));
168
claus
parents: 159
diff changeset
   457
    return 0;
claus
parents: 159
diff changeset
   458
}
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   459
#else
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   460
extern __XErrorHandler__();
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
   461
#endif
168
claus
parents: 159
diff changeset
   462
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   463
/*
151
claus
parents: 134
diff changeset
   464
 * begin moved from GLXsupport.c
claus
parents: 134
diff changeset
   465
 */
claus
parents: 134
diff changeset
   466
claus
parents: 134
diff changeset
   467
/*
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   468
 * This provides a helper function "GLXCreateWindow", which does
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   469
 * all the necessary magic to create an X window suitable for GL drawing
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   470
 * to take place within. See the definition of GLXCreateWindow for a
151
claus
parents: 134
diff changeset
   471
 * description of how to call it.
claus
parents: 134
diff changeset
   472
 *
claus
parents: 134
diff changeset
   473
 * claus: I really had no time to look into all this,
claus
parents: 134
diff changeset
   474
 * this file has been just copied from a 4Dgifts demo ..
claus
parents: 134
diff changeset
   475
 * (will need more than a day to show more ...)
claus
parents: 134
diff changeset
   476
 */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   477
#if !defined(OPENGL)
151
claus
parents: 134
diff changeset
   478
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   479
# include        <X11/Xlib.h>
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   480
# include        <X11/Xutil.h>
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   481
# ifndef VGL
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   482
#  include        <gl/glws.h>
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   483
# endif
6617
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   484
# ifndef _SIGNAL_H_INCLUDED_
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   485
#  include        <signal.h>
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   486
# endif
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   487
# include        <setjmp.h>
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   488
# include        "stcIntern.h"
151
claus
parents: 134
diff changeset
   489
claus
parents: 134
diff changeset
   490
/*
claus
parents: 134
diff changeset
   491
 * glxhelper.h:
claus
parents: 134
diff changeset
   492
 *
claus
parents: 134
diff changeset
   493
 *   List of drawing modes supported by GLXCreateWindow (in glxhelper.c).
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   494
 * More than this are possible with mixed model, but this is just an
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   495
 * example.  You can either expand this list (and the corresponding code in
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   496
 * GLXCreateWindow) or call the mixed model calls yourself, using
151
claus
parents: 134
diff changeset
   497
 * GLXCreateWindow as an example.
claus
parents: 134
diff changeset
   498
 */
claus
parents: 134
diff changeset
   499
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   500
static char *
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   501
typeToName[] = {
151
claus
parents: 134
diff changeset
   502
    "color index single buffer",
claus
parents: 134
diff changeset
   503
    "color index double buffer",
claus
parents: 134
diff changeset
   504
    "rgb single buffer",
claus
parents: 134
diff changeset
   505
    "rgb double buffer",
claus
parents: 134
diff changeset
   506
};
claus
parents: 134
diff changeset
   507
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   508
#endif /* GLX || VGL */
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   509
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   510
#if defined(GLX) && !defined(VGL)
151
claus
parents: 134
diff changeset
   511
/*
claus
parents: 134
diff changeset
   512
 * Dorky little helper function used to build up a GLXconfig array.
claus
parents: 134
diff changeset
   513
 */
claus
parents: 134
diff changeset
   514
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   515
static void
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   516
set_entry (GLXconfig* ptr, int b, int m, int a)
151
claus
parents: 134
diff changeset
   517
{
claus
parents: 134
diff changeset
   518
    ptr->buffer = b;
claus
parents: 134
diff changeset
   519
    ptr->mode = m;
claus
parents: 134
diff changeset
   520
    ptr->arg = a;
claus
parents: 134
diff changeset
   521
}
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   522
#endif /* GLX & not VGL */
151
claus
parents: 134
diff changeset
   523
4711
1d1cfd1951e1 Fix on Solaris
Stefan Vogel <sv@exept.de>
parents: 4251
diff changeset
   524
static stx_jmp_buf errorReturn;
151
claus
parents: 134
diff changeset
   525
claus
parents: 134
diff changeset
   526
static void
claus
parents: 134
diff changeset
   527
glAbort() {
6002
3773c70bed6a change setjmp to stx_setjmp
Stefan Vogel <sv@exept.de>
parents: 5479
diff changeset
   528
    stx_longjmp(errorReturn, 1);
151
claus
parents: 134
diff changeset
   529
}
claus
parents: 134
diff changeset
   530
claus
parents: 134
diff changeset
   531
/*
claus
parents: 134
diff changeset
   532
 * GLXCreateWindow(dpy, parent, x, y, w, h, boderWidth, type)
claus
parents: 134
diff changeset
   533
 *
claus
parents: 134
diff changeset
   534
 * Return value is the X window id of the newly created window.
claus
parents: 134
diff changeset
   535
 *
claus
parents: 134
diff changeset
   536
 * Arguments are:
claus
parents: 134
diff changeset
   537
 *      dpy             The X "Display*" returned by XOpenDisplay
claus
parents: 134
diff changeset
   538
 *      parent          The parent of the newly created window,
claus
parents: 134
diff changeset
   539
 *                      a typical value for this is
claus
parents: 134
diff changeset
   540
 *                      RootWindow(dpy, DefaultScreen(dpy))
claus
parents: 134
diff changeset
   541
 *      x,y             The location of the window to be created,
claus
parents: 134
diff changeset
   542
 *                      y coordinate is measured from the top down.
claus
parents: 134
diff changeset
   543
 *      w,h             size of the new window
claus
parents: 134
diff changeset
   544
 *      borderWidth     the X border size for this window, should probably
claus
parents: 134
diff changeset
   545
 *                      be zero.
claus
parents: 134
diff changeset
   546
 *      type            the GLXWindowType (see glxhelper.h) desribing the
claus
parents: 134
diff changeset
   547
 *                      typer of GL drawing to be done in this window
claus
parents: 134
diff changeset
   548
 */
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   549
Window
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   550
__GLXCreateWindow(dpy, parent, x, y, w, h, borderWidth, type)
151
claus
parents: 134
diff changeset
   551
    Display* dpy;
claus
parents: 134
diff changeset
   552
    Window parent;
claus
parents: 134
diff changeset
   553
    GLXWindowType type;
claus
parents: 134
diff changeset
   554
{
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   555
#if !defined(OPENGL)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   556
# ifndef VGL
151
claus
parents: 134
diff changeset
   557
    GLXconfig params[50];
claus
parents: 134
diff changeset
   558
    GLXconfig* next;
claus
parents: 134
diff changeset
   559
    GLXconfig* retconfig;
claus
parents: 134
diff changeset
   560
    Colormap cmap = DefaultColormap(dpy, DefaultScreen(dpy));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   561
# endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   562
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   563
    Visual visual;
151
claus
parents: 134
diff changeset
   564
    XVisualInfo *vis;
claus
parents: 134
diff changeset
   565
    XVisualInfo template;
claus
parents: 134
diff changeset
   566
    XColor white;
claus
parents: 134
diff changeset
   567
    XSetWindowAttributes cwa;
claus
parents: 134
diff changeset
   568
    XWindowAttributes   pwa;
claus
parents: 134
diff changeset
   569
    int scr, i, nret;
claus
parents: 134
diff changeset
   570
    Window win;
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   571
#ifdef HAS_SIGACTION
6617
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   572
    struct sigaction oldSigSegv, newSigSegv;
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   573
#else
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   574
    void *oldSigSegv;
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   575
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   576
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   577
#if !defined(OPENGL)
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
   578
    __catchExit(1);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   579
#endif
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
   580
6002
3773c70bed6a change setjmp to stx_setjmp
Stefan Vogel <sv@exept.de>
parents: 5479
diff changeset
   581
    if (stx_setjmp(errorReturn)) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   582
	console_fprintf(stderr, "hard error in GL - return\n");
6617
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   583
#ifdef SIGSEGV
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   584
# ifdef HAS_SIGACTION
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   585
	sigaction(SIGSEGV, &oldSigSegv, 0);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   586
# else
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   587
	signal(SIGSEGV, oldSigSegv);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   588
# endif
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   589
#endif
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   590
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   591
#if !defined(OPENGL)
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   592
	__catchExit(0);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   593
#endif
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   594
	return 0;
151
claus
parents: 134
diff changeset
   595
    }
claus
parents: 134
diff changeset
   596
    __CONT__
claus
parents: 134
diff changeset
   597
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   598
    if (w <= 0) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   599
	console_fprintf(stderr, "GL: bad width: %d\n", w);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   600
	w = 1;
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   601
    }
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   602
    if (h <= 0) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   603
	console_fprintf(stderr, "GL: bad height: %d\n", h);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   604
	h = 1;
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   605
    }
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   606
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   607
#if !defined(OPENGL)
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   608
# ifdef VGL
151
claus
parents: 134
diff changeset
   609
    /*
claus
parents: 134
diff changeset
   610
     * I know what VGL supports; its somewhat unclean to hard code it here
claus
parents: 134
diff changeset
   611
     */
claus
parents: 134
diff changeset
   612
    switch (type) {
claus
parents: 134
diff changeset
   613
      case GLXcolorIndexSingleBuffer:
claus
parents: 134
diff changeset
   614
      case GLXcolorIndexDoubleBuffer:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   615
	break;
151
claus
parents: 134
diff changeset
   616
claus
parents: 134
diff changeset
   617
      case GLXrgbSingleBuffer:
claus
parents: 134
diff changeset
   618
      case GLXrgbDoubleBuffer:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   619
	console_fprintf(stderr, "Sorry, VGL can't support %s type of windows\n", typeToName[type]);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   620
	__catchExit(0);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   621
	return 0;
151
claus
parents: 134
diff changeset
   622
    }
claus
parents: 134
diff changeset
   623
claus
parents: 134
diff changeset
   624
    scr = DefaultScreen(dpy);
claus
parents: 134
diff changeset
   625
    visual.visualid = CopyFromParent;
claus
parents: 134
diff changeset
   626
    cwa.border_pixel = 0;  /* Even if we don't use it, it must be something */
claus
parents: 134
diff changeset
   627
    win = XCreateWindow(dpy, parent, x, y, w, h,
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   628
			     borderWidth, DisplayPlanes(dpy, scr),
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   629
			     InputOutput, &visual,
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   630
			     CWBorderPixel, &cwa);
151
claus
parents: 134
diff changeset
   631
claus
parents: 134
diff changeset
   632
    /*
389
4e08ad24670a oops - use sigaction if available when catching gl errors
Claus Gittinger <cg@exept.de>
parents: 350
diff changeset
   633
     * on some, seg-violations occur in the GL, if too many
151
claus
parents: 134
diff changeset
   634
     * views are created ... just to make certain, we catch those
claus
parents: 134
diff changeset
   635
     * in GL too.
claus
parents: 134
diff changeset
   636
     */
6617
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   637
#  ifdef SIGSEGV
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   638
#   ifdef HAS_SIGACTION
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   639
    sigaction(SIGSEGV, (struct sigaction *)0, &oldSigSegv);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   640
    newSigSegv = oldSigSegv;
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   641
    newSigSegv.sa_handler = glAbort;
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   642
    sigaction(SIGSEGV, &newSigSegv, (struct sigaction *)0);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   643
#   else
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   644
    oldSigSegv = signal(SIGSEGV, glAbort);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   645
#   endif
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   646
#  endif
6617
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   647
151
claus
parents: 134
diff changeset
   648
    i = GLXlink(dpy, win);
6617
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   649
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   650
#  ifdef SIGSEGV
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   651
#   ifdef HAS_SIGACTION
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   652
    sigaction(SIGSEGV, &oldSigSegv, (struct sigaction *)0);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   653
#   else
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   654
    signal(SIGSEGV, oldSigSegv);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   655
#   endif
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   656
#  endif
151
claus
parents: 134
diff changeset
   657
claus
parents: 134
diff changeset
   658
    if (i < 0) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   659
	console_fprintf(stderr, "GLXlink returned %d\n", i);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   660
	__catchExit(0);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   661
	return 0;
151
claus
parents: 134
diff changeset
   662
    }
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   663
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   664
# else /* not VGL */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   665
151
claus
parents: 134
diff changeset
   666
    /*
claus
parents: 134
diff changeset
   667
     * This builds an array in "params" that describes for GLXgetconfig(3G)
claus
parents: 134
diff changeset
   668
     * the type of GL drawing that will be done.
claus
parents: 134
diff changeset
   669
     */
claus
parents: 134
diff changeset
   670
    next = params;
claus
parents: 134
diff changeset
   671
    switch (type) {
claus
parents: 134
diff changeset
   672
      case GLXcolorIndexSingleBuffer:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   673
	set_entry(next++, GLX_NORMAL, GLX_RGB, FALSE);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   674
	set_entry(next++, GLX_NORMAL, GLX_DOUBLE, FALSE);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   675
	break;
151
claus
parents: 134
diff changeset
   676
      case GLXcolorIndexDoubleBuffer:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   677
	set_entry(next++, GLX_NORMAL, GLX_RGB, FALSE);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   678
	set_entry(next++, GLX_NORMAL, GLX_DOUBLE, TRUE);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   679
	break;
151
claus
parents: 134
diff changeset
   680
      case GLXrgbSingleBuffer:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   681
	set_entry(next++, GLX_NORMAL, GLX_RGB, TRUE);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   682
	set_entry(next++, GLX_NORMAL, GLX_DOUBLE, FALSE);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   683
	break;
151
claus
parents: 134
diff changeset
   684
      case GLXrgbDoubleBuffer:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   685
	set_entry(next++, GLX_NORMAL, GLX_RGB, TRUE);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   686
	set_entry(next++, GLX_NORMAL, GLX_DOUBLE, TRUE);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   687
	break;
151
claus
parents: 134
diff changeset
   688
    }
claus
parents: 134
diff changeset
   689
    set_entry(next, 0, 0, 0); /* The input to GLXgetconfig is null terminated */
claus
parents: 134
diff changeset
   690
claus
parents: 134
diff changeset
   691
    /*
claus
parents: 134
diff changeset
   692
     * Get configuration data for a window based on above parameters
claus
parents: 134
diff changeset
   693
     * First we have to find out which screen the parent window is on,
claus
parents: 134
diff changeset
   694
     * then we can call GXLgetconfig()
claus
parents: 134
diff changeset
   695
     */
claus
parents: 134
diff changeset
   696
    XGetWindowAttributes(dpy, parent, &pwa);
claus
parents: 134
diff changeset
   697
    retconfig = GLXgetconfig(dpy, XScreenNumberOfScreen(pwa.screen), params);
claus
parents: 134
diff changeset
   698
    if (retconfig == 0) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   699
	console_fprintf(stderr, "Sorry, can't support %s type of windows\n", typeToName[type]);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   700
	__catchExit(0);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   701
	return 0;
151
claus
parents: 134
diff changeset
   702
    }
claus
parents: 134
diff changeset
   703
claus
parents: 134
diff changeset
   704
    /*
claus
parents: 134
diff changeset
   705
     * Scan through config info, pulling info needed to create a window
claus
parents: 134
diff changeset
   706
     * that supports the rendering mode.
claus
parents: 134
diff changeset
   707
     */
claus
parents: 134
diff changeset
   708
    for (next = retconfig; next->buffer; next++) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   709
	unsigned long buffer = next->buffer;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   710
	unsigned long mode = next->mode;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   711
	unsigned long value = next->arg;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   712
	switch (mode) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   713
	  case GLX_COLORMAP:
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   714
	    if (buffer == GLX_NORMAL) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   715
		cmap = value;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   716
	    }
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   717
	    break;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   718
	  case GLX_VISUAL:
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   719
	    if (buffer == GLX_NORMAL) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   720
		template.visualid = value;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   721
		template.screen = DefaultScreen(dpy);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   722
		vis = XGetVisualInfo(dpy, VisualScreenMask|VisualIDMask,
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   723
					  &template, &nret);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   724
	    }
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   725
	    break;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   726
	}
151
claus
parents: 134
diff changeset
   727
    }
claus
parents: 134
diff changeset
   728
claus
parents: 134
diff changeset
   729
    /*
claus
parents: 134
diff changeset
   730
     * Create the window
claus
parents: 134
diff changeset
   731
     */
claus
parents: 134
diff changeset
   732
    cwa.colormap = cmap;
claus
parents: 134
diff changeset
   733
    cwa.border_pixel = 0;  /* Even if we don't use it, it must be something */
claus
parents: 134
diff changeset
   734
    win = XCreateWindow(dpy, parent, x, y, w, h,
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   735
			     borderWidth, vis->depth, InputOutput, vis->visual,
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   736
			     CWColormap|CWBorderPixel, &cwa);
151
claus
parents: 134
diff changeset
   737
claus
parents: 134
diff changeset
   738
    /*
claus
parents: 134
diff changeset
   739
     * Rescan configuration info and find window slot that getconfig
claus
parents: 134
diff changeset
   740
     * provided.  Fill it in with the window we just created.
claus
parents: 134
diff changeset
   741
     */
claus
parents: 134
diff changeset
   742
    for (next = retconfig; next->buffer; next++) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   743
	if ((next->buffer == GLX_NORMAL) && (next->mode == GLX_WINDOW)) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   744
	    next->arg = win;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   745
	    break;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   746
	}
151
claus
parents: 134
diff changeset
   747
    }
claus
parents: 134
diff changeset
   748
claus
parents: 134
diff changeset
   749
    /*
claus
parents: 134
diff changeset
   750
     * Now "retconfig" contains all the information the GL needs to
claus
parents: 134
diff changeset
   751
     * configure the window and its own internal state.
claus
parents: 134
diff changeset
   752
     */
claus
parents: 134
diff changeset
   753
    /*
389
4e08ad24670a oops - use sigaction if available when catching gl errors
Claus Gittinger <cg@exept.de>
parents: 350
diff changeset
   754
     * on iris, seg-violations occur in the GL, if too many
151
claus
parents: 134
diff changeset
   755
     * views are created ...
claus
parents: 134
diff changeset
   756
     */
6617
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   757
#  ifdef SIGSEGV
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   758
#   ifdef HAS_SIGACTION
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   759
    sigaction(SIGSEGV, (struct sigaction *)0, &oldSigSegv);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   760
    newSigSegv = oldSigSegv;
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   761
    newSigSegv.sa_handler = glAbort;
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   762
    sigaction(SIGSEGV, &newSigSegv, (struct sigaction *)0);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   763
#   else
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   764
    oldSigSegv = signal(SIGSEGV, glAbort);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   765
#   endif
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   766
#  endif
6617
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   767
151
claus
parents: 134
diff changeset
   768
    i = GLXlink(dpy, retconfig);
6617
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   769
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   770
#  ifdef SIGSEGV
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   771
#   ifdef HAS_SIGACTION
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   772
    sigaction(SIGSEGV, &oldSigSegv, (struct sigaction *)0);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   773
#   else
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   774
    signal(SIGSEGV, oldSigSegv);
2af71b6a7e46 compilable on systems without SIGSEGV
Claus Gittinger <cg@exept.de>
parents: 6254
diff changeset
   775
#   endif
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   776
#  endif
151
claus
parents: 134
diff changeset
   777
claus
parents: 134
diff changeset
   778
    if (i < 0) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   779
	console_fprintf(stderr, "GLXlink returned %d\n", i);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   780
	__catchExit(0);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   781
	return 0;
151
claus
parents: 134
diff changeset
   782
    }
claus
parents: 134
diff changeset
   783
claus
parents: 134
diff changeset
   784
    /*
claus
parents: 134
diff changeset
   785
     * The GL sets its own X error handlers, which exits - this is not what we want
claus
parents: 134
diff changeset
   786
     */
claus
parents: 134
diff changeset
   787
    XSetErrorHandler(__XErrorHandler__);
1899
de1eb2a3318e *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1882
diff changeset
   788
# endif /* not VGL */
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
   789
    __catchExit(0);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   790
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   791
#else /* OPENGL | MESA */
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   792
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   793
    scr = DefaultScreen(dpy);
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   794
    visual.visualid = CopyFromParent;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   795
    cwa.border_pixel = 0;  /* Even if we don't use it, it must be something */
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   796
    win = XCreateWindow(dpy, parent, x, y, w, h,
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   797
			     borderWidth, DisplayPlanes(dpy, scr),
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   798
			     InputOutput, &visual,
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   799
			     CWBorderPixel, &cwa);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   800
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   801
    vis = XGetVisualInfo(dpy, VisualScreenMask|VisualIDMask, &visual, &nret);
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   802
    console_fprintf(stderr, "vis is %x\n", vis);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   803
#endif /* GLX || VGL */
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   804
151
claus
parents: 134
diff changeset
   805
    return win;
claus
parents: 134
diff changeset
   806
}
claus
parents: 134
diff changeset
   807
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   808
__GLXUnlinkWindow(dpy, win)
151
claus
parents: 134
diff changeset
   809
    Display* dpy;
claus
parents: 134
diff changeset
   810
    Window win;
claus
parents: 134
diff changeset
   811
{
claus
parents: 134
diff changeset
   812
    /*
claus
parents: 134
diff changeset
   813
     * only needed for VGL - GLX does it automatically
claus
parents: 134
diff changeset
   814
     */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   815
#ifdef VGL
151
claus
parents: 134
diff changeset
   816
    GLXunlink(dpy, win);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
   817
#endif
151
claus
parents: 134
diff changeset
   818
}
claus
parents: 134
diff changeset
   819
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   820
/*
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   821
 * helper for rotation - calls rot()
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   822
 */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   823
OBJ
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   824
__glx_doRotate(angle, axis)
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   825
    OBJ angle;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   826
    char axis;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   827
{
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   828
    float f_angle;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   829
35
f1a194c18429 *** empty log message ***
claus
parents: 30
diff changeset
   830
    if (__isFloat(angle)) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   831
	f_angle = (float)(_floatVal(angle));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   832
	if (f_angle != 0.0) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   833
#ifdef OPENGL
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   834
#else
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   835
	    rot(f_angle, axis);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   836
#endif
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   837
	}
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   838
	return (true);
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   839
    }
35
f1a194c18429 *** empty log message ***
claus
parents: 30
diff changeset
   840
    if (__isFraction(angle)
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   841
     && __isSmallInteger(_FractionInstPtr(angle)->f_numerator)
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   842
     && __isSmallInteger(_FractionInstPtr(angle)->f_denominator)) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   843
	float n, d;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   844
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   845
	n = (float)(__intVal(_FractionInstPtr(angle)->f_numerator));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   846
	d = (float)(__intVal(_FractionInstPtr(angle)->f_denominator));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   847
	f_angle = n / d;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   848
	if (f_angle != 0.0) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   849
#ifdef OPENGL
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   850
#else
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   851
	    rot(f_angle, axis);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   852
#endif
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   853
	}
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   854
	return (true);
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   855
    }
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
   856
    if (__isSmallInteger(angle)) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   857
	f_angle = (float)(__intVal(angle));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   858
	if (f_angle != 0.0) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   859
#ifdef OPENGL
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   860
#else
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   861
	    rot(f_angle, axis);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   862
#endif
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   863
	}
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   864
	return (true);
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   865
    }
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   866
    return false;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   867
}
0
48194c26a46c Initial revision
claus
parents:
diff changeset
   868
24
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
   869
/*
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   870
 * fetch integers from an st-array (elements must be smallIntegers)
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   871
 */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   872
long *
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   873
__glx_getLongsFromInto(obj, vec, count)
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   874
   OBJ obj;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   875
   long *vec;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   876
{
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   877
    OBJ cls, o;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   878
    int nByte, i, ninstVars, nInstBytes;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   879
    char *pElem;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   880
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   881
    if (! _isNonNilObject(obj)) return (long *)NULL;
134
claus
parents: 127
diff changeset
   882
    cls = __qClass(obj);
185
claus
parents: 169
diff changeset
   883
    ninstVars = __intVal(_ClassInstPtr(cls)->c_ninstvars);
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   884
    nInstBytes = OHDR_SIZE + ninstVars * sizeof(OBJ);
134
claus
parents: 127
diff changeset
   885
    nByte = __qSize(obj) - nInstBytes;
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   886
    pElem = (char *)(_InstPtr(obj)) + nInstBytes;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   887
    if (nByte < (count * sizeof(OBJ))) return (long *)NULL;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   888
    for (i=0; i<count; i++) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   889
	o = *(OBJ *)pElem;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   890
	if (! __isSmallInteger(o)) return (long *)NULL;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   891
	vec[i] = (long)__intVal(o);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   892
	pElem += sizeof(OBJ);
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   893
    }
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   894
    return vec;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   895
}
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   896
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   897
/*
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   898
 * fetch shorts from an st-array (elements must be smallIntegers)
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   899
 */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   900
short *
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   901
__glx_getShortsFromInto(obj, vec, count)
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   902
   OBJ obj;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   903
   short *vec;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   904
{
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   905
    OBJ cls, o;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   906
    int nByte, i, ninstVars, nInstBytes;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   907
    char *pElem;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   908
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   909
    if (! _isNonNilObject(obj)) return (short *)NULL;
134
claus
parents: 127
diff changeset
   910
    cls = __qClass(obj);
185
claus
parents: 169
diff changeset
   911
    ninstVars = __intVal(_ClassInstPtr(cls)->c_ninstvars);
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   912
    nInstBytes = OHDR_SIZE + ninstVars * sizeof(OBJ);
134
claus
parents: 127
diff changeset
   913
    nByte = __qSize(obj) - nInstBytes;
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   914
    pElem = (char *)(_InstPtr(obj)) + nInstBytes;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   915
    if (nByte < (count * sizeof(OBJ))) return (short *)NULL;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   916
    for (i=0; i<count; i++) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   917
	o = *(OBJ *)pElem;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   918
	if (! __isSmallInteger(o)) return (short *)NULL;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   919
	vec[i] = (short)__intVal(o);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   920
	pElem += sizeof(OBJ);
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   921
    }
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   922
    return vec;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   923
}
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   924
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   925
/*
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   926
 * fetch floats from an st-object into a c-float array
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   927
 * which may be a floatArray, doubleArray or array-of-something,
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   928
 * where something may be a float, fraction or smallInteger,
24
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
   929
 */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   930
float *
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
   931
__glx_getFloatsFromInto(obj, vec, count)
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   932
   OBJ obj;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   933
   float *vec;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   934
{
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   935
    OBJ cls;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   936
    int nByte;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   937
    OBJ o;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   938
    int i, ninstVars, nInstBytes;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   939
    char *pElem;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   940
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   941
    if (! _isNonNilObject(obj)) return (float *)0;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   942
134
claus
parents: 127
diff changeset
   943
    cls = __qClass(obj);
185
claus
parents: 169
diff changeset
   944
    ninstVars = __intVal(_ClassInstPtr(cls)->c_ninstvars);
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   945
    nInstBytes = OHDR_SIZE + ninstVars * sizeof(OBJ);
134
claus
parents: 127
diff changeset
   946
    nByte = __qSize(obj) - nInstBytes;
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   947
    pElem = (char *)(_InstPtr(obj)) + nInstBytes;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   948
185
claus
parents: 169
diff changeset
   949
    switch (__intVal(_ClassInstPtr(cls)->c_flags) & ARRAYMASK) {
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   950
      case FLOATARRAY:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   951
	/*
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   952
	 * best speed for float array
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   953
	 * - the data is already as we want it
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   954
	 */
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   955
	if (nByte < (count * sizeof(float))) return (float *)0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   956
	return (float *)pElem;
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   957
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   958
      case DOUBLEARRAY:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   959
	/*
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   960
	 * for double array, have to copy-and-cast
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   961
	 */
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   962
	if (nByte < (count * sizeof(double))) return (float *)0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   963
	for (i=0; i<count; i++) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   964
	    vec[i] = *((double *)pElem);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   965
	    pElem += sizeof(double);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   966
	}
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   967
	return vec;
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   968
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   969
      case POINTERARRAY:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   970
	/*
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   971
	 * for other array, have to fetch, check and store
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   972
	 * the elements can be floats, smallintegers or fractions
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   973
	 */
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   974
	if (nByte < (count * sizeof(OBJ))) return (float *)0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   975
	/* get elements one-by-one */
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   976
	for (i=0; i<count; i++) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   977
	    o = *(OBJ *)pElem;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   978
	    if (__isFloat(o)) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   979
		vec[i] = _floatVal(o);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   980
	    } else if (__isSmallInteger(o)) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   981
		vec[i] = (float)(__intVal(o));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   982
	    } else if (__isFraction(o)
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   983
		    && __isSmallInteger(_FractionInstPtr(o)->f_numerator)
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   984
		    && __isSmallInteger(_FractionInstPtr(o)->f_denominator)) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   985
		float n, d;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   986
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   987
		n = (float)(__intVal(_FractionInstPtr(o)->f_numerator));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   988
		d = (float)(__intVal(_FractionInstPtr(o)->f_denominator));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   989
		vec[i] = n / d;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   990
	    } else
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   991
		return 0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   992
	    pElem += sizeof(OBJ);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   993
	}
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
   994
	return vec;
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   995
    }
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   996
    return (float *)0;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   997
}
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
   998
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
   999
/*
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1000
 * fetch doubles from an st-object into a c-double array
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1001
 * which may be a floatArray, doubleArray or array-of-something,
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1002
 * where something may be a float, fraction or smallInteger,
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1003
 */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1004
double *
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1005
__glx_getDoublesFromInto(obj, vec, count)
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1006
   OBJ obj;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1007
   double *vec;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1008
{
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1009
    OBJ cls, o;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1010
    int nByte, i, ninstVars, nInstBytes;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1011
    char *pElem;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1012
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1013
    if (! _isNonNilObject(obj)) return (double *)0;
134
claus
parents: 127
diff changeset
  1014
    cls = __qClass(obj);
185
claus
parents: 169
diff changeset
  1015
    ninstVars = __intVal(_ClassInstPtr(cls)->c_ninstvars);
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1016
    nInstBytes = OHDR_SIZE + ninstVars * sizeof(OBJ);
134
claus
parents: 127
diff changeset
  1017
    nByte = __qSize(obj) - nInstBytes;
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1018
    pElem = (char *)(_InstPtr(obj)) + nInstBytes;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1019
185
claus
parents: 169
diff changeset
  1020
    switch (__intVal(_ClassInstPtr(cls)->c_flags) & ARRAYMASK) {
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1021
      case DOUBLEARRAY:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1022
	/* best speed for double array - the data is already as we want it */
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1023
	if (nByte < (count * sizeof(double))) return (double *)0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1024
	return (double *)pElem;
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1025
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1026
      case FLOATARRAY:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1027
	if (nByte < (count * sizeof(float))) return (double *)0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1028
	for (i=0; i<count; i++) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1029
	    vec[i] = *((float *)pElem);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1030
	    pElem += sizeof(float);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1031
	}
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1032
	return vec;
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1033
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1034
      case POINTERARRAY:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1035
	if (nByte < (count * sizeof(OBJ))) return (double *)0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1036
	/* get elements one-by-one */
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1037
	for (i=0; i<count; i++) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1038
	    o = *(OBJ *)pElem;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1039
	    if (__isFloat(o))
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1040
		vec[i] = _floatVal(o);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1041
	    else if (__isSmallInteger(o))
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1042
		vec[i] = (double)(__intVal(o));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1043
	    else if (__isFraction(o)
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1044
		     && __isSmallInteger(_FractionInstPtr(o)->f_numerator)
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1045
		     && __isSmallInteger(_FractionInstPtr(o)->f_denominator)) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1046
		double n, d;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1047
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1048
		n = (double)(__intVal(_FractionInstPtr(o)->f_numerator));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1049
		d = (double)(__intVal(_FractionInstPtr(o)->f_denominator));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1050
		vec[i] = n / d;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1051
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1052
	    } else
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1053
		return 0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1054
	    pElem += sizeof(OBJ);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1055
	}
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1056
	return vec;
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1057
    }
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1058
    return (double *)0;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1059
}
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1060
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1061
/*
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1062
 * move from a c-float array into an st-object,
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1063
 * the st-object MUST be either a float- or double array
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1064
 */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1065
__glx_putFloatsFromInto(vec, obj, count)
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1066
   OBJ obj;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1067
   float *vec;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1068
{
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1069
    OBJ cls;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1070
    int nByte;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1071
    OBJ o;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1072
    int i, ninstVars, nInstBytes;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1073
    char *pElem;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1074
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1075
    if (! _isNonNilObject(obj)) return 0;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1076
134
claus
parents: 127
diff changeset
  1077
    cls = __qClass(obj);
185
claus
parents: 169
diff changeset
  1078
    ninstVars = __intVal(_ClassInstPtr(cls)->c_ninstvars);
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1079
    nInstBytes = OHDR_SIZE + ninstVars * sizeof(OBJ);
134
claus
parents: 127
diff changeset
  1080
    nByte = __qSize(obj) - nInstBytes;
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1081
    pElem = (char *)(_InstPtr(obj)) + nInstBytes;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1082
185
claus
parents: 169
diff changeset
  1083
    switch (__intVal(_ClassInstPtr(cls)->c_flags) & ARRAYMASK) {
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1084
      case FLOATARRAY:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1085
	if (nByte < (count * sizeof(float))) return 0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1086
	for (i=0; i<count; i++) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1087
	    *(float *)pElem = vec[i];
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1088
	    pElem += sizeof(float);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1089
	}
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1090
	return 1;
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1091
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1092
      case DOUBLEARRAY:
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1093
	if (nByte < (count * sizeof(float))) return 0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1094
	for (i=0; i<count; i++) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1095
	    *(double *)pElem = vec[i];
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1096
	    pElem += sizeof(double);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1097
	}
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1098
	return 1;
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1099
    }
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1100
    /* not implemented for others */
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1101
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1102
    return 0;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1103
}
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1104
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1105
#ifndef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1106
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1107
Matrix *
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1108
__glx_getFloatsFromMatrixInto(obj, mp)
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1109
    OBJ obj;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1110
    Matrix *mp;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1111
{
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1112
    OBJ cls;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1113
    int nByte;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1114
    OBJ o;
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1115
    int ninstVars, nInstBytes;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1116
    char *pElem;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1117
    int x = 0;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1118
    int i,j;
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1119
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1120
    if (! _isNonNilObject(obj)) return (Matrix *)0;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1121
134
claus
parents: 127
diff changeset
  1122
    cls = __qClass(obj);
185
claus
parents: 169
diff changeset
  1123
    ninstVars = __intVal(_ClassInstPtr(cls)->c_ninstvars);
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1124
    nInstBytes = OHDR_SIZE + ninstVars * sizeof(OBJ);
134
claus
parents: 127
diff changeset
  1125
    nByte = __qSize(obj) - nInstBytes;
29
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1126
    pElem = (char *)(_InstPtr(obj)) + nInstBytes;
c218ef0ae2b0 jeffs adds
claus
parents: 24
diff changeset
  1127
185
claus
parents: 169
diff changeset
  1128
    switch (__intVal(_ClassInstPtr(cls)->c_flags) & ARRAYMASK) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1129
	case FLOATARRAY:
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1130
	    /*
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1131
	     * very easy for FLOATARRAY objects - no copying needed
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1132
	     */
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1133
	    if (nByte < (16 * sizeof(float))) return (Matrix *)0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1134
	    return (Matrix *) _FloatArrayInstPtr(obj)->f_element;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1135
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1136
	case DOUBLEARRAY:
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1137
	    /*
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1138
	     * for DOUBLEARRAY objects copy and cast
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1139
	     */
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1140
	    if (nByte < (16 * sizeof(double))) return (Matrix *)0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1141
	    for (i=0; i<4; i++) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1142
		for (j=0; j<4; j++) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1143
		    (*mp)[i][j] = _DoubleArrayInstPtr(obj)->d_element[x];
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1144
		    x++;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1145
		}
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1146
	    }
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1147
	    return mp;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1148
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1149
	case POINTERARRAY:
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1150
	    if (nByte < (16 * sizeof(OBJ))) return (Matrix *)0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1151
	    /*
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1152
	     * get elements one-by-one
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1153
	     */
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1154
	    for (i=0; i<4; i++) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1155
		for (j=0; j<4; j++) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1156
		    o = _ArrayInstPtr(obj)->a_element[x];
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1157
		    if (__isFloat(o)) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1158
			(*mp)[i][j] = _floatVal(o);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1159
		    } else if (__isSmallInteger(o)) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1160
			(*mp)[i][j] = (double)__intVal(o);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1161
		    } else if (__isFraction(o)
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1162
			&& __isSmallInteger(_FractionInstPtr(o)->f_numerator)
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1163
			&& __isSmallInteger(_FractionInstPtr(o)->f_denominator)) {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1164
			double n, d;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1165
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1166
			n = (double)(__intVal(_FractionInstPtr(o)->f_numerator));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1167
			d = (double)(__intVal(_FractionInstPtr(o)->f_denominator));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1168
			(*mp)[i][j] = n / d;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1169
		    } else
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1170
			return (Matrix *)0;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1171
		    x++;
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1172
		}
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1173
	    }
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1174
	    return mp;
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1175
    }
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1176
    return (Matrix *)0;
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1177
}
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  1178
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1179
#endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1180
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1181
float*
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1182
__glx_getFloatsFromFloatArrayInto(obj, fp)
46
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1183
    OBJ obj;
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1184
    float *fp;
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1185
{
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1186
    OBJ cls;
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1187
    int ninstVars;
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1188
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1189
    if (! _isNonNilObject(obj)) return (float *)0;
134
claus
parents: 127
diff changeset
  1190
    cls = __qClass(obj);
350
ade060e42304 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 333
diff changeset
  1191
    if (cls == @global(FloatArray))
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1192
	return _FloatArrayInstPtr(obj)->f_element;
46
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1193
185
claus
parents: 169
diff changeset
  1194
    if ((__intVal(_ClassInstPtr(cls)->c_flags) & ARRAYMASK) == FLOATARRAY) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1195
	ninstVars = __intVal(_ClassInstPtr(cls)->c_ninstvars);
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1196
	return (float *) &(_InstPtr(obj)->i_instvars[ninstVars]);
46
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1197
    }
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1198
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1199
    /*
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1200
     * need more here (i.e. convert from array-of-floats)
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1201
     */
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1202
    return (float *)0;
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1203
}
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1204
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1205
%}
7b331e9012fd *** empty log message ***
claus
parents: 35
diff changeset
  1206
! !
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  1207
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1208
!GLXWorkstation class methodsFor:'documentation'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1209
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1210
copyright
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1211
"
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1212
 COPYRIGHT (c) 1993 by Claus Gittinger
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1213
	      All Rights Reserved
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1214
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1215
 This software is furnished under a license and may be used
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1216
 only in accordance with the terms of that license and with the
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1217
 inclusion of the above copyright notice.   This software may not
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1218
 be provided or otherwise made available to, or used by, any
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1219
 other person.  No title to or ownership of the software is
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1220
 hereby transferred.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1221
"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1222
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1223
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1224
documentation
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1225
"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1226
    this class was originally written as a demo on how an interface to
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1227
    a c graphics library could be implemented. In the mean time, it has become
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1228
    quite complete ...
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1229
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1230
    It provides an interface to either a real GL (on SGI workstations)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1231
    or a simulated VGL (i.e. GL-light; low nicotine).
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1232
    The GL simulation is derived from the PD vogl library, with slight
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1233
    modifictions to support multiple GL views.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1234
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1235
    Most of the hard work was done by Jeff (thanks indeed) ...
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1236
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1237
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1238
    Some notes:
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1239
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1240
    I do not really know what most of these functions do - for more
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1241
    detail, see the GL man pages (on SGI) or the doc provided with VGL.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1242
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1243
    The interface offered here provides a very very low level (i.e one-to-one)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1244
    interface to GL functions. More high-level stuff is required, to make
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1245
    3D drawing be more object-oriented.
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1246
    (see a bit of this in 'clients/IRIS-specials')
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1247
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1248
    Some functions are duplicated, Jeff and I developed those in parallel -
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1249
    for now, both will remain - finally they will be merged and duplicates removed ...
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1250
    (examples are makeobj and makeObject).
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1251
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1252
    Also, in a hurry to implement all those methods, many do no or only
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1253
    limited argument checking - make certain, that you pass the correct
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1254
    arguments.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1255
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1256
    There might be some confusion in the v3[sifd] functions: basically they
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1257
    all do the same, and could be mapped onto one st-method (such as vertex3).
7657
75bf1ca54216 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 7656
diff changeset
  1258
    However, the C-functions expect different argument types - I don't know if
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1259
    one or another of these functions suffers from any performance penalties.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1260
    Therefore, I leave the direct 1-to-1 mapping; GL experts might know more
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1261
    about this (I use v3f in all of my code).
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1262
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1263
    written june 93 by claus
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1264
    VGL stuff dec 93
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1265
    many many additions jan 94 by Jeff McAffer <jeff@is.s.u-tokyo.ac.jp>
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1266
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1267
    Since this is a demo (consider it a free add-on goody) there is
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1268
    *** NO WARRANTY ** for this.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1269
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1270
    Notice: this should be rewritten to use the openGL library functions
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1271
    (actually, to not loose the VGL interface, another OpenGLWorkstation
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1272
     class should be written)
614
1b1c0d7c9266 documentation
Claus Gittinger <cg@exept.de>
parents: 554
diff changeset
  1273
1b1c0d7c9266 documentation
Claus Gittinger <cg@exept.de>
parents: 554
diff changeset
  1274
    [author:]
7657
75bf1ca54216 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 7656
diff changeset
  1275
        Claus Gittinger
75bf1ca54216 #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 7656
diff changeset
  1276
        Jeff McAffer
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1277
"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1278
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1279
168
claus
parents: 159
diff changeset
  1280
!GLXWorkstation class methodsFor:'error handling'!
claus
parents: 159
diff changeset
  1281
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1282
errorStringOfLastError
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1283
%{
4251
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1284
#ifdef DYNAMICALLY_LOADABLE
1065
fdc5b9059d82 removed all COMMA_CON / CON_COMMA uses
Claus Gittinger <cg@exept.de>
parents: 969
diff changeset
  1285
    RETURN ( __MKSTRING(lastErrorMsg) );
4251
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1286
#endif
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1287
%}.
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1288
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1289
    ^ super errorStringOfLastError.
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1290
!
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1291
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1292
minorCodeOfLastError
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1293
%{  /* NOCONTEXT */
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1294
#ifdef DYNAMICALLY_LOADABLE
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1295
    RETURN ( __MKSMALLINT(lastMinorCode) );
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1296
#endif
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1297
%}.
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1298
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1299
    ^ super minorCodeOfLastError.
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1300
!
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1301
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1302
requestCodeOfLastError
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1303
%{  /* NOCONTEXT */
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1304
#ifdef DYNAMICALLY_LOADABLE
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1305
    RETURN ( __MKSMALLINT(lastRequestCode) );
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1306
#endif
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1307
%}.
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1308
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1309
    ^ super requestCodeOfLastError.
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1310
!
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1311
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1312
resourceIdOfLastError
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1313
%{  /* NOCONTEXT */
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1314
#ifdef DYNAMICALLY_LOADABLE
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1315
    if (lastResource != 0) {
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1316
       RETURN ( __MKEXTERNALADDRESS(lastResource) );
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1317
    }
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1318
    RETURN ( nil );
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1319
#endif
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1320
%}.
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1321
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1322
    ^ super resourceIdOfLastError.
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1323
! !
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1324
ae0f46130d9f *** empty log message ***
Stefan Vogel <sv@exept.de>
parents: 4169
diff changeset
  1325
!GLXWorkstation class methodsFor:'misc'!
168
claus
parents: 159
diff changeset
  1326
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1327
forceGL:aBoolean
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1328
    ForceGL := aBoolean.
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1329
    AllScreens notNil ifTrue:[
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1330
	AllScreens do:[:screen | screen initializeScreenProperties]
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1331
    ].
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1332
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1333
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1334
!GLXWorkstation methodsFor:'arcs and circles'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1335
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1336
glxArcX:x y:y radius:radius startang:startang endang:endang in: aGLXWindowId
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1337
    "draw an arc at a given location.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1338
     The x/y/radius args may be floats, fractions or smallIntegers.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1339
     startang and endang must be smallIntegers (10th of a degree)."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1340
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1341
%{  /* NOCONTEXT */
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1342
    Coord c_x, c_y, c_radius;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1343
    Angle a_startang, a_endang;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1344
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1345
    _COORD_(x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1346
    _COORD_(y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1347
    _COORD_(radius, c_radius)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1348
    _ANGLE_(startang, a_startang)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1349
    _ANGLE_(endang, a_endang)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1350
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1351
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1352
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1353
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1354
    arc(c_x, c_y, c_radius, a_startang, a_endang);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1355
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1356
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1357
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1358
    "Modified: 19.3.1996 / 18:43:52 / cg"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1359
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1360
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1361
glxArcfX:x y:y radius:radius startang:startang endang:endang in: aGLXWindowId
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1362
    "draw a filled arc.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1363
     The x/y/radius args may be floats, fractions or smallIntegers.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1364
     startang and endang must be smallIntegers (10th of a degree)."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1365
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1366
%{  /* NOCONTEXT */
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1367
    Coord c_x, c_y, c_radius;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1368
    Angle a_startang, a_endang;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1369
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1370
    _COORD_(x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1371
    _COORD_(y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1372
    _COORD_(radius, c_radius)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1373
    _ANGLE_(startang, a_startang)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1374
    _ANGLE_(endang, a_endang)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1375
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1376
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1377
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1378
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1379
    arcf(c_x, c_y, c_radius, a_startang, a_endang);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1380
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1381
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1382
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1383
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1384
glxArcfiX: x y: y radius: radius startang: startang endang: endang in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1385
    "draw a filled arc.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1386
     All arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1387
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1388
%{  /* NOCONTEXT */
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1389
    Icoord c_x, c_y, c_radius;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1390
    Angle a_startang, a_endang;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1391
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1392
    _ICOORD_(x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1393
    _ICOORD_(y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1394
    _ICOORD_(radius, c_radius)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1395
    _ANGLE_(startang, a_startang);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1396
    _ANGLE_(endang, a_endang)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1397
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1398
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1399
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1400
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1401
    arcfi(c_x, c_y, c_radius, a_startang, a_endang);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1402
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1403
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1404
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1405
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1406
glxArcfsX: x y: y radius: radius startang: startang endang: endang in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1407
    "draw a filled arc.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1408
     All arguments must be (16bit) smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1409
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1410
%{  /* NOCONTEXT */
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1411
    Scoord c_x, c_y, c_radius;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1412
    Angle a_startang, a_endang;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1413
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1414
    _SCOORD_(x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1415
    _SCOORD_(y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1416
    _SCOORD_(radius, c_radius)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1417
    _ANGLE_(startang, a_startang)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1418
    _ANGLE_(endang, a_endang)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1419
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1420
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1421
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1422
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1423
    arcfs(c_x, c_y, c_radius, a_startang, a_endang);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1424
#endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1425
%}
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1426
!
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1427
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1428
glxArciX:x y:y radius:radius startang:startang endang:endang in: aGLXWindowId
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1429
    "draw an (unfilled) arc.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1430
     All arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1431
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1432
%{  /* NOCONTEXT */
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1433
    Icoord c_x, c_y, c_radius;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1434
    Angle a_startang, a_endang;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1435
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1436
    _ICOORD_(x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1437
    _ICOORD_(y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1438
    _ICOORD_(radius, c_radius)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1439
    _ANGLE_(startang, a_startang)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1440
    _ANGLE_(endang, a_endang)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1441
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1442
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1443
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1444
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1445
    arci(c_x, c_y, c_radius, a_startang, a_endang);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1446
#endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1447
%}
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1448
!
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1449
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1450
glxArcsX:x y:y radius:radius startang:startang endang:endang in: aGLXWindowId
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1451
    "draw an (unfilled) arc.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1452
     All arguments must be (16bit) smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1453
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1454
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1455
    Scoord c_x, c_y, c_radius;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1456
    Angle a_startang, a_endang;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1457
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1458
    _SCOORD_(x, c_x)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1459
    _SCOORD_(y, c_y)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1460
    _SCOORD_(radius, c_radius)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1461
    _ANGLE_(startang, a_startang)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1462
    _ANGLE_(endang, a_endang)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1463
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1464
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1465
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1466
#else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1467
    arcs(c_x, c_y, c_radius, a_startang, a_endang);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1468
#endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1469
%}
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1470
!
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1471
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1472
glxCircX:x y:y radius: radius in: aGLXWindowId
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1473
    "draw a circle.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1474
     x/y/radius may be floats, fractions or smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1475
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1476
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1477
    Coord c_x, c_y, c_radius;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1478
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1479
    _COORD_ (x, c_x)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1480
    _COORD_ (y, c_y)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1481
    _COORD_ (radius, c_radius)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1482
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1483
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1484
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1485
#else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1486
    circ(c_x, c_y, c_radius);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1487
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1488
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1489
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1490
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1491
glxCircfX: x y: y radius: radius in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1492
    "draw a filled circle.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1493
     x/y/radius may be floats, fractions or smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1494
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1495
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1496
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1497
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1498
	Coord c_x, c_y, c_radius;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1499
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1500
	_COORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1501
	_COORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1502
	_COORD_ (radius, c_radius)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1503
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1504
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1505
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1506
	circf(c_x, c_y, c_radius);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1507
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1508
    }
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1509
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1510
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1511
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1512
glxCircfiX: x y: y radius: radius in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1513
    "draw a filled circle.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1514
     x/y/radius must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1515
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1516
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1517
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1518
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1519
	Icoord c_x, c_y, c_radius;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1520
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1521
	_ICOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1522
	_ICOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1523
	_ICOORD_ (radius, c_radius)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1524
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1525
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1526
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1527
	circfi(c_x, c_y, c_radius);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1528
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1529
    }
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1530
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1531
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1532
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1533
glxCircfsX: x y: y radius: radius in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1534
    "draw a filled circle.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1535
     x/y/radius must be (16bit) smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1536
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1537
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1538
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1539
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1540
	Scoord c_x, c_y, c_radius;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1541
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1542
	_SCOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1543
	_SCOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1544
	_SCOORD_ (radius, c_radius)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1545
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1546
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1547
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1548
	circfs(c_x, c_y, c_radius);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1549
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1550
    }
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1551
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1552
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1553
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1554
glxCirciX: x y: y radius: radius in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1555
    "draw a circle (unfilled).
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1556
     x/y/radius must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1557
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1558
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1559
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1560
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1561
	Icoord c_x, c_y, c_radius;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1562
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1563
	_ICOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1564
	_ICOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1565
	_ICOORD_ (radius, c_radius)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1566
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1567
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1568
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1569
	circi(c_x, c_y, c_radius);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1570
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1571
    }
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1572
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1573
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1574
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1575
glxCircsX: x y: y radius: radius in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1576
    "draw a circle (unfilled)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1577
     x/y/radius must be (16bit) smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1578
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1579
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1580
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1581
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1582
	Scoord c_x, c_y, c_radius;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1583
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1584
	_SCOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1585
	_SCOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1586
	_SCOORD_ (radius, c_radius)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1587
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1588
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1589
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1590
	circs(c_x, c_y, c_radius);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1591
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1592
    }
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1593
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1594
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1595
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1596
!GLXWorkstation methodsFor:'attribute stack'!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1597
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1598
glxPopattributesIn: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1599
    "pop (and forget) the top entry on the attribute stack"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1600
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1601
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1602
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1603
#ifndef OPENGL
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1604
    popattributes();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1605
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1606
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1607
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1608
    "Modified: 19.3.1996 / 18:42:53 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1609
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1610
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1611
glxPushattributesIn: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1612
    "save the current attributes on the attribute stack"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1613
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1614
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1615
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1616
#ifndef OPENGL
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1617
    pushattributes();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1618
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1619
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1620
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1621
    "Modified: 19.3.1996 / 18:43:04 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1622
! !
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1623
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1624
!GLXWorkstation methodsFor:'character position'!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1625
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1626
glxCmov2X: x y: y in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1627
    "change the character position to a 2D point, as passed in x/y.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1628
     The arguments may be floats, fractions or smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1629
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1630
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1631
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1632
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1633
	Coord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1634
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1635
	_COORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1636
	_COORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1637
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1638
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1639
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1640
	cmov2(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1641
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1642
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1643
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1644
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1645
    "Modified: 22.3.1996 / 18:17:38 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1646
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1647
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1648
glxCmov2iX: x y: y in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1649
    "change the character position to a 2D point, as passed in x/y.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1650
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1651
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1652
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1653
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1654
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1655
	Icoord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1656
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1657
	_ICOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1658
	_ICOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1659
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1660
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1661
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1662
	cmov2i(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1663
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1664
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1665
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1666
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1667
    "Modified: 22.3.1996 / 18:17:43 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1668
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1669
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1670
glxCmov2sX: x y: y in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1671
    "change the character position to a 2D point, as passed in x/y.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1672
     The arguments must be (16bit) smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1673
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1674
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1675
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1676
     {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1677
	 Scoord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1678
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1679
	 _SCOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1680
	 _SCOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1681
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1682
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1683
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1684
	 cmov2s(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1685
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1686
     }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1687
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1688
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1689
    "Modified: 22.3.1996 / 18:17:47 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1690
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1691
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1692
glxCmovX: x y: y z: z in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1693
    "change the character position to a 3D point, as passed in x/y/z.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1694
     The arguments may be floats, fractions or smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1695
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1696
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1697
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1698
     {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1699
	Coord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1700
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1701
	_COORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1702
	_COORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1703
	_COORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1704
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1705
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1706
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1707
	cmov(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1708
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1709
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1710
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1711
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1712
    "Modified: 22.3.1996 / 18:17:22 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1713
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1714
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1715
glxCmoviX: x y: y z: z in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1716
    "change the character position to a 3D point, as passed in x/y/z.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1717
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1718
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1719
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1720
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1721
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1722
	Icoord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1723
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1724
	_ICOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1725
	_ICOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1726
	_ICOORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1727
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1728
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1729
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1730
	cmovi(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1731
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1732
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1733
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1734
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1735
    "Modified: 22.3.1996 / 18:17:55 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1736
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1737
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1738
glxCmovsX: x y: y z: z in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1739
    "change the character position to a 3D point, as passed in x/y/z.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1740
     The arguments must be (16bit) smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1741
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1742
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1743
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1744
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1745
	Scoord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1746
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1747
	_SCOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1748
	_SCOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1749
	_SCOORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1750
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1751
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1752
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  1753
	cmovs(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1754
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1755
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1756
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1757
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1758
    "Modified: 22.3.1996 / 18:17:59 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1759
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1760
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1761
glxGetcposIn: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1762
    "Return the current character position as a point with integer coordinates"
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1763
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1764
    | x y |
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1765
%{
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1766
    short s_x, s_y;
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1767
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1768
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1769
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1770
#else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1771
# ifdef GLX
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1772
    getcpos(&s_x, &s_y);
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1773
    x = __MKSMALLINT(s_x);
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1774
    y = __MKSMALLINT(s_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1775
# endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1776
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1777
%}.
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1778
    ^x @ y
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1779
! !
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  1780
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1781
!GLXWorkstation methodsFor:'clearing'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1782
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1783
glxClearIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1784
    "clear to current color"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1785
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1786
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1787
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1788
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1789
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1790
    clear();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1791
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1792
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1793
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1794
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1795
glxCzclearCval:cval zval:zval in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1796
    "clear to a color (cval) and clear z buffer to zval simultaniously"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1797
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1798
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1799
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1800
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1801
#else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1802
# ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1803
    czclear((ulong)__intVal(cval), __intVal(zval));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1804
# endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1805
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1806
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1807
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1808
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1809
glxZClearIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1810
    "clear z buffer"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1811
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1812
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1813
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1814
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1815
#else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1816
# ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1817
    zclear();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1818
# endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1819
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1820
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1821
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1822
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1823
!GLXWorkstation methodsFor:'color'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1824
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1825
glxColor:index in:aGLXWindowId
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1826
    "set the drawing color;
7656
e39deb3fb1ac #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6978
diff changeset
  1827
     for non gouraud shading, we don't care if the argument is integer or float;
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1828
     otherwise, better results are expected with float values."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1829
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1830
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1831
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1832
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1833
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1834
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1835
    if (__isSmallInteger(index)) {
7656
e39deb3fb1ac #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6978
diff changeset
  1836
        color((Colorindex)(__intVal(index)));
e39deb3fb1ac #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6978
diff changeset
  1837
        RETURN (self);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1838
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1839
    if (__isFloat(index)) {
7656
e39deb3fb1ac #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6978
diff changeset
  1840
        colorf((float)(_floatVal(index)));
e39deb3fb1ac #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6978
diff changeset
  1841
        RETURN (self);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1842
    }
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1843
#endif
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1844
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1845
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1846
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1847
glxColorRed:r green:g blue:b alpha:a in:aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1848
    "set the drawing color, including alpha value.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1849
     The args must be integer values within 0..255"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1850
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1851
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1852
    short s_r, s_g, s_b, s_a;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1853
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1854
    _INT_(r, s_r);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1855
    _INT_(g, s_g);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1856
    _INT_(b, s_b);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1857
    _INT_(a, s_a);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1858
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1859
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1860
    cpack((((((s_a<<8) | s_b) << 8) | s_g) << 8) | s_r);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1861
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1862
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1863
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1864
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1865
glxColorRed:r green:g blue:b in:aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1866
    "set the drawing color.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1867
     The args must be integer values in 0..255"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1868
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1869
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1870
    short s_r, s_g, s_b;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1871
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1872
    _INT_(r, s_r);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1873
    _INT_(g, s_g);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1874
    _INT_(b, s_b);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1875
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1876
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1877
    RGBcolor(s_r, s_g, s_b);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1878
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1879
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1880
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1881
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1882
glxLrgbrangeRmin: rmin gmin: gmin bmin: bmin rmax: rmax gmax: gmax bmax: bmax
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1883
    znear: znear zfar: zfar in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1884
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1885
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1886
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1887
#ifdef GLX
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1888
    lRGBrange(_shortVal(rmin), _shortVal(gmin), _shortVal(bmin),
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  1889
	_shortVal(rmax), _shortVal(gmax), _shortVal(bmax),
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1890
	_longVal(znear), _longVal(zfar));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1891
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1892
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1893
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1894
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1895
glxMapcolorI: i red: red green: green blue: blue in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1896
    "change a color in the color lookup table (i.e. in COLOR_INDEX mode).
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1897
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1898
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1899
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1900
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1901
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1902
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1903
    mapcolor(_colorindexVal(i), _shortVal(red), _shortVal(green), _shortVal(blue));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1904
#endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1905
%}
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1906
!
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1907
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1908
glxTextcolor:tcolor in: aGLXWindowId
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1909
    "change the color used for text drawing"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1910
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1911
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1912
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1913
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1914
    textcolor(_colorindexVal(tcolor));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1915
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1916
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1917
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1918
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1919
!GLXWorkstation methodsFor:'curves'!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1920
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1921
glxCurvebasis: basid in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1922
    "sets the basis type of curves"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1923
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1924
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1925
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1926
#ifdef GLX
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1927
    curvebasis(_shortVal(basid));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1928
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1929
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1930
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1931
    "Modified: 19.3.1996 / 18:47:09 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1932
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1933
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1934
glxCurveit: iterationcount in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1935
    "Iterates the top matrix on the stack as a forward difference
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1936
     matrix, drawing as it goes along."
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1937
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1938
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1939
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1940
#ifdef GLX
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1941
    curveit(_shortVal(iterationcount));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1942
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1943
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1944
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1945
    "Modified: 19.3.1996 / 18:48:57 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1946
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1947
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1948
glxCurveprecision: nsegments in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1949
    "sets the number of line segments that make up a curve segment"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1950
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1951
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1952
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1953
#ifdef GLX
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1954
    curveprecision(_shortVal(nsegments));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  1955
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1956
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1957
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1958
    "Modified: 19.3.1996 / 18:47:43 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1959
! !
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1960
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1961
!GLXWorkstation methodsFor:'double buffering'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1962
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1963
glxBackBufferIn:aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1964
    "switch to back buffer drawing - turning frontbuffer drawing off"
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1965
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1966
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1967
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1968
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1969
#else
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1970
# ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1971
    frontbuffer(FALSE);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1972
# endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1973
    backbuffer(TRUE);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1974
#endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1975
%}
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1976
!
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1977
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1978
glxBackbuffer:b in: aGLXWindowId
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1979
    "turn backBuffer drawing on/off.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1980
     Notice: VGL is not able to draw into both buffers at the same time ...
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1981
	     ... enabling the backbuffer automatically disables frontbuffer drawing
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1982
	     and vice versa. This seems not to be the case with a true GL."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1983
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1984
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1985
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1986
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1987
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1988
    backbuffer(_booleanVal(b));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  1989
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1990
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1991
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  1992
    "Modified: 19.3.1996 / 18:45:05 / cg"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1993
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1994
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1995
glxDoubleBufferIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1996
    "set double buffer mode"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1997
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1998
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  1999
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2000
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2001
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2002
    doublebuffer();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2003
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2004
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2005
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2006
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2007
glxFrontBufferIn:aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2008
    "switch to front buffer drawing - turning backbuffer drawing off"
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2009
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2010
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2011
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2012
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2013
#else
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2014
# ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2015
    backbuffer(FALSE);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2016
# endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2017
    frontbuffer(TRUE);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2018
#endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2019
%}
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2020
!
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2021
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2022
glxFrontbuffer:b in: aGLXWindowId
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2023
    "turn on/off frontbuffer drawing.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2024
     Notice: VGL is not able to draw into both buffers at the same time ...
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2025
	     ... enabling the backbuffer automatically disables frontbuffer drawing
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2026
	     and vice versa. This seems not to be the case with a true GL."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2027
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2028
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2029
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2030
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2031
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2032
    frontbuffer(_booleanVal(b));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2033
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2034
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2035
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2036
    "Modified: 19.3.1996 / 18:45:31 / cg"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2037
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2038
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2039
glxSingleBufferIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2040
    "set single buffer mode"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2041
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2042
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2043
    SETWIN(aGLXWindowId)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2044
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2045
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2046
    singlebuffer();
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2047
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2048
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2049
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2050
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2051
glxSwapBuffersIn:aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2052
    "swap the back and front buffers.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2053
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2054
     To animate things smoothly, draw into the backBuffer while the frontBuffer is
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2055
     displayed and swap them for every frame."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2056
1903
285c7dc06ddb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1899
diff changeset
  2057
%{  /* UNLIMITEDSTACK */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2058
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2059
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2060
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2061
    swapbuffers();
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2062
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2063
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2064
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2065
    "Modified: 19.3.1996 / 18:45:47 / cg"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2066
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2067
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2068
!GLXWorkstation methodsFor:'flat drawing'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2069
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2070
glxBeginClosedLineIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2071
    "start a closed line"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2072
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2073
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2074
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2075
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2076
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2077
    bgnclosedline();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2078
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2079
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2080
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2081
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2082
glxBeginLineIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2083
    "start a line group"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2084
2075
7fc93b8da816 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2074
diff changeset
  2085
%{  /* NOCONTEXT STACK:32000 */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2086
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2087
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2088
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2089
    bgnline();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2090
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2091
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2092
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2093
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2094
glxBeginPointIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2095
    "start a point-group"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2096
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2097
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2098
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2099
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2100
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2101
    bgnpoint();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2102
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2103
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2104
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2105
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2106
glxBeginPolygonIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2107
    "start a polygon"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2108
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2109
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2110
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2111
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2112
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2113
    bgnpolygon();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2114
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2115
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2116
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2117
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2118
glxBeginQuadrilateralStripIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2119
    "start a quadrilateral strip"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2120
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2121
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2122
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2123
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2124
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2125
    bgnqstrip();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2126
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2127
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2128
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2129
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2130
glxBeginTriangleMeshIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2131
    "start a triangle mesh"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2132
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2133
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2134
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2135
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2136
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2137
    bgntmesh();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2138
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2139
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2140
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2141
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2142
glxEndClosedLineIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2143
    "end a closed line"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2144
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2145
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2146
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2147
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2148
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2149
    endclosedline();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2150
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2151
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2152
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2153
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2154
glxEndLineIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2155
    "end a line group"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2156
2075
7fc93b8da816 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2074
diff changeset
  2157
%{  /* NOCONTEXT STACK:32000 */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2158
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2159
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2160
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2161
    endline();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2162
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2163
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2164
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2165
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2166
glxEndPointIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2167
    "end a point group"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2168
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2169
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2170
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2171
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2172
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2173
    endpoint();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2174
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2175
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2176
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2177
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2178
glxEndPolygonIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2179
    "end a polygon"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2180
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2181
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2182
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2183
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2184
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2185
    endpolygon();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2186
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2187
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2188
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2189
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2190
glxEndQuadrilateralStripIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2191
    "end a quadrilateral strip"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2192
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2193
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2194
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2195
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2196
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2197
    endqstrip();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2198
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2199
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2200
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2201
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2202
glxEndTriangleMeshIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2203
    "end a triangle mesh"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2204
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2205
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2206
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2207
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2208
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2209
    endtmesh();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2210
#endif
168
claus
parents: 159
diff changeset
  2211
%}
claus
parents: 159
diff changeset
  2212
! !
claus
parents: 159
diff changeset
  2213
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2214
!GLXWorkstation methodsFor:'graphics position'!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2215
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2216
glxMove2:v in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2217
    "change the graphics position to a 2D point, as passed in vector v"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2218
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2219
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2220
    float vec[2], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2221
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2222
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 2))) RETURN(false);
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2223
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2224
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2225
#else
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2226
    move2((Coord)(c_v[0]), (Coord)(c_v[1]));
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2227
    RETURN (true);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2228
#endif
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2229
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2230
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2231
    "Modified: 22.3.1996 / 18:15:23 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2232
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2233
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2234
glxMove2X: x y: y in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2235
    "change the graphics position to a 2D point, as passed in x/y"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2236
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2237
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2238
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2239
	Coord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2240
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2241
	_COORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2242
	_COORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2243
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2244
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2245
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2246
	move2(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2247
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2248
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2249
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2250
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2251
    "Modified: 22.3.1996 / 18:15:02 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2252
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2253
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2254
glxMove2iX: x y: y in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2255
    "change the graphics position to a 2D point, as passed in x/y.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2256
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2257
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2258
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2259
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2260
	Icoord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2261
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2262
	_ICOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2263
	_ICOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2264
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2265
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2266
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2267
	move2i(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2268
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2269
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2270
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2271
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2272
    "Modified: 22.3.1996 / 18:15:08 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2273
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2274
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2275
glxMove2sX: x y: y in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2276
    "change the graphics position to a 2D point, as passed in x/y.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2277
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2278
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2279
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2280
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2281
	Scoord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2282
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2283
	_SCOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2284
	_SCOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2285
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2286
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2287
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2288
	move2s(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2289
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2290
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2291
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2292
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2293
    "Modified: 22.3.1996 / 18:15:13 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2294
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2295
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2296
glxMove:v in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2297
    "change the graphics position to a 3D point, as passed in vector v"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2298
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2299
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2300
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2301
	float vec[3], *c_v;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2302
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2303
	if (! (c_v = __glx_getFloatsFromInto(v, vec, 3))) RETURN(false);
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2304
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2305
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2306
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2307
	move((Coord)(c_v[0]), (Coord)(c_v[1]), (Coord)(c_v[2]));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2308
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2309
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2310
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2311
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2312
    "Modified: 22.3.1996 / 18:14:29 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2313
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2314
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2315
glxMoveX: x y: y z: z in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2316
    "change the graphics position to a 3D point, as passed in x/y/z"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2317
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2318
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2319
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2320
	Coord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2321
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2322
	_COORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2323
	_COORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2324
	_COORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2325
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2326
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2327
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2328
	move(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2329
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2330
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2331
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2332
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2333
    "Modified: 22.3.1996 / 18:14:38 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2334
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2335
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2336
glxMoveiX: x y: y z: z in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2337
    "change the graphics position to a 3D point, as passed in x/y/z.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2338
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2339
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2340
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2341
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2342
	Icoord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2343
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2344
	_ICOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2345
	_ICOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2346
	_ICOORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2347
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2348
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2349
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2350
	movei(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2351
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2352
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2353
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2354
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2355
    "Modified: 22.3.1996 / 18:14:44 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2356
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2357
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2358
glxMovesX: x y: y z: z in: aGLXWindowId
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2359
    "change the graphics position to a 3D point, as passed in x/y/z.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2360
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2361
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2362
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2363
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2364
	Scoord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2365
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2366
	_SCOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2367
	_SCOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2368
	_SCOORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2369
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2370
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2371
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2372
	moves(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2373
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2374
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2375
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2376
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2377
    "Modified: 22.3.1996 / 18:14:48 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2378
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2379
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2380
glxRmv2:v in: aGLXWindowId
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  2381
    "change the graphics position to a 2D point,
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2382
     the relative distance is passed in vector v"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2383
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2384
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2385
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2386
	float vec[2], *c_v;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2387
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2388
	if (! (c_v = __glx_getFloatsFromInto(v, vec, 2))) RETURN(false);
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2389
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2390
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2391
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2392
	rmv2((Coord)(c_v[0]), (Coord)(c_v[1]));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2393
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2394
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2395
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2396
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2397
    "Modified: 22.3.1996 / 18:15:57 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2398
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2399
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2400
glxRmv2X: x y: y in: aGLXWindowId
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  2401
    "change the graphics position to a 2D point,
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2402
     the relative distance is passed in x/y"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2403
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2404
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2405
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2406
	Coord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2407
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2408
	_COORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2409
	_COORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2410
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2411
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2412
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2413
	rmv2(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2414
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2415
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2416
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2417
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2418
    "Modified: 22.3.1996 / 18:16:42 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2419
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2420
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2421
glxRmv2iX: x y: y in: aGLXWindowId
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  2422
    "change the graphics position to a 2D point,
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2423
     the relative distance is passed in x/y.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2424
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2425
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2426
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2427
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2428
	Icoord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2429
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2430
	_ICOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2431
	_ICOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2432
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2433
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2434
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2435
	rmv2i(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2436
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2437
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2438
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2439
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2440
    "Modified: 22.3.1996 / 18:16:39 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2441
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2442
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2443
glxRmv2sX: x y: y in: aGLXWindowId
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  2444
    "change the graphics position to a 2D point,
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2445
     the relative distance is passed in x/y.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2446
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2447
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2448
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2449
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2450
	Scoord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2451
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2452
	_SCOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2453
	_SCOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2454
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2455
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2456
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2457
	rmv2s(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2458
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2459
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2460
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2461
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2462
    "Modified: 22.3.1996 / 18:16:33 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2463
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2464
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2465
glxRmv:v in: aGLXWindowId
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  2466
    "change the graphics position to a 3D point,
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2467
     the relative distance is passed in vector v"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2468
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2469
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2470
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2471
	float vec[3], *c_v;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2472
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2473
	if (! (c_v = __glx_getFloatsFromInto(v, vec, 3))) RETURN(false);
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2474
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2475
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2476
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2477
	rmv((Coord)(c_v[0]), (Coord)(c_v[1]), (Coord)(c_v[2]));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2478
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2479
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2480
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2481
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2482
    "Modified: 22.3.1996 / 18:16:08 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2483
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2484
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2485
glxRmvX: x y: y z: z in: aGLXWindowId
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  2486
    "change the graphics position to a 3D point,
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2487
     the relative distance is passed in x/y/z"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2488
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2489
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2490
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2491
	Coord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2492
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2493
	_COORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2494
	_COORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2495
	_COORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2496
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2497
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2498
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2499
	rmv(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2500
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2501
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2502
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2503
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2504
    "Modified: 22.3.1996 / 18:16:16 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2505
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2506
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2507
glxRmviX: x y: y z: z in: aGLXWindowId
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  2508
    "change the graphics position to a 3D point,
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2509
     the relative distance is passed in x/y/z.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2510
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2511
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2512
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2513
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2514
	Icoord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2515
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2516
	_ICOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2517
	_ICOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2518
	_ICOORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2519
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2520
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2521
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2522
	rmvi(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2523
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2524
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2525
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2526
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2527
    "Modified: 22.3.1996 / 18:16:21 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2528
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2529
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2530
glxRmvsX: x y: y z: z in: aGLXWindowId
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  2531
    "change the graphics position to a 3D point,
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2532
     the relative distance is passed in x/y/z.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2533
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2534
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2535
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2536
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2537
	Scoord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2538
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2539
	_SCOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2540
	_SCOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2541
	_SCOORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2542
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2543
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2544
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2545
	rmvs(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2546
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2547
    }
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2548
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2549
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2550
    "Modified: 22.3.1996 / 18:16:25 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2551
! !
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2552
168
claus
parents: 159
diff changeset
  2553
!GLXWorkstation methodsFor:'initialization'!
claus
parents: 159
diff changeset
  2554
claus
parents: 159
diff changeset
  2555
initializeFor:aDisplayName
169
claus
parents: 168
diff changeset
  2556
    (super initializeFor:aDisplayName) isNil ifTrue:[^ nil].
168
claus
parents: 159
diff changeset
  2557
%{
claus
parents: 159
diff changeset
  2558
    if (_INST(displayId) != nil) {
185
claus
parents: 169
diff changeset
  2559
	XSetErrorHandler(__XErrorHandler__);
claus
parents: 169
diff changeset
  2560
    }
claus
parents: 169
diff changeset
  2561
%}
claus
parents: 169
diff changeset
  2562
!
claus
parents: 169
diff changeset
  2563
claus
parents: 169
diff changeset
  2564
initializeScreenProperties
claus
parents: 169
diff changeset
  2565
    super initializeScreenProperties.
claus
parents: 169
diff changeset
  2566
212
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  2567
    "/ GL has a 'bug' (or feature ?)
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  2568
    "/ which makes it exit (instead of giving an error return)
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  2569
    "/ if a gl view is opened on a non-gl capable remote display.
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  2570
    "/ we certainly do not want this here.
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  2571
    "/ Since I cannot tell in advance if the remote display is gl capable,
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  2572
    "/ and its too late once we know its not, we simply disallow any remote gl.
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  2573
    "/ Sorry. (I guess, there are some query functions for that available, but I
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  2574
    "/ have no documentation).
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  2575
    "/ Late note: setting the ForceGL classVar overrides above behavior.
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  2576
    "/ it may be set from a startupScript with: 'GLXWorkstation forceGL:true'
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  2577
    "/ however: be careful: only set it to true, if you are certain that remoteGL works
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  2578
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  2579
    (self isTrueGL and:[ForceGL ~~ true]) ifTrue:[
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  2580
	glOK := (displayName = ':0') or:[displayName = ':0.0'].
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  2581
    ] ifFalse:[
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2582
	glOK := true.
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  2583
    ].
212
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  2584
185
claus
parents: 169
diff changeset
  2585
%{
claus
parents: 169
diff changeset
  2586
    Display *dpy = myDpy;
claus
parents: 169
diff changeset
  2587
    int dummy;
claus
parents: 169
diff changeset
  2588
claus
parents: 169
diff changeset
  2589
    if (ISCONNECTED) {
290
f9397ade6677 fix for sgi - need displayName to be set for initScreenProps
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2590
	_INST(hasStereoExtension) = false;
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  2591
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2592
#if defined(XSGIStereo) && defined(GLX)
290
f9397ade6677 fix for sgi - need displayName to be set for initScreenProps
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2593
	if (_INST(glOK) == true) {
212
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  2594
	    if (XQueryExtension(dpy, "SGIFullScreenStereo", &dummy, &dummy, &dummy))
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  2595
		_INST(hasStereoExtension) = true;
290
f9397ade6677 fix for sgi - need displayName to be set for initScreenProps
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2596
	}
f9397ade6677 fix for sgi - need displayName to be set for initScreenProps
Claus Gittinger <cg@exept.de>
parents: 268
diff changeset
  2597
#endif
168
claus
parents: 159
diff changeset
  2598
    }
claus
parents: 159
diff changeset
  2599
%}
claus
parents: 159
diff changeset
  2600
! !
claus
parents: 159
diff changeset
  2601
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2602
!GLXWorkstation methodsFor:'lines'!
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2603
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2604
glxDeflinestyleN: n ls: ls in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2605
    "define a line style"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2606
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2607
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2608
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2609
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2610
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2611
    deflinestyle(_shortVal(n), _linestyleVal(ls));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2612
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2613
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2614
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2615
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2616
glxDraw2:v in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2617
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2618
     to a new 2D position, passed in vector v."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2619
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2620
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2621
    float vec[2], *c_v;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2622
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2623
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 2))) RETURN(false);
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2624
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2625
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2626
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2627
    draw2((Coord)(c_v[0]), (Coord)(c_v[1]));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2628
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2629
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2630
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2631
    "Modified: 22.3.1996 / 18:03:29 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2632
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2633
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2634
glxDraw2X: x y: y in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2635
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2636
     to a new 2D position, passed in x/y."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2637
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2638
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2639
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2640
	Coord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2641
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2642
	_COORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2643
	_COORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2644
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2645
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2646
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2647
	draw2(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2648
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2649
    }
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2650
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2651
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2652
    "Modified: 22.3.1996 / 18:03:50 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2653
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2654
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2655
glxDraw2iX: x y: y in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2656
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2657
     to a new 2D position, passed in x/y."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2658
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2659
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2660
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2661
	Icoord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2662
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2663
	_ICOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2664
	_ICOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2665
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2666
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2667
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2668
	draw2i(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2669
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2670
    }
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2671
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2672
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2673
    "Modified: 22.3.1996 / 18:04:07 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2674
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2675
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2676
glxDraw2sX: x y: y in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2677
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2678
     to a new 2D position, passed in x/y."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2679
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2680
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2681
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2682
	Scoord c_x, c_y;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2683
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2684
	_SCOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2685
	_SCOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2686
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2687
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2688
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2689
	draw2s(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2690
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2691
    }
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2692
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2693
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2694
    "Modified: 22.3.1996 / 18:04:19 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2695
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2696
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2697
glxDraw:v in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2698
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2699
     to a new 3D position, passed in vector v."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2700
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2701
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2702
    float vec[3], *c_v;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2703
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2704
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 3))) RETURN(false);
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2705
    SETWIN(aGLXWindowId)
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2706
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2707
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2708
    draw((Coord)(c_v[0]), (Coord)(c_v[1]), (Coord)(c_v[2]));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2709
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2710
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2711
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2712
    "Modified: 22.3.1996 / 18:04:34 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2713
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2714
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2715
glxDrawX: x y: y z: z in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2716
    "draw a line from the current graphics position
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2717
     to a new 3D position, passed in x/y/z.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2718
     The arguments may be floats, fractions or smallIntegers"
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2719
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2720
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2721
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2722
	Coord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2723
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2724
	_COORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2725
	_COORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2726
	_COORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2727
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2728
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2729
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2730
	draw(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2731
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2732
    }
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2733
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2734
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2735
    "Modified: 22.3.1996 / 18:04:46 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2736
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2737
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2738
glxDrawiX: x y: y z: z in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2739
    "draw a line from the current graphics position
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2740
     to a new 3D position, passed in x/y/z.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2741
     The arguments must be smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2742
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2743
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2744
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2745
	Icoord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2746
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2747
	_ICOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2748
	_ICOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2749
	_ICOORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2750
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2751
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2752
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2753
	drawi(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2754
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2755
    }
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2756
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2757
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2758
    "Modified: 22.3.1996 / 18:04:54 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2759
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2760
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2761
glxDrawsX: x y: y z: z in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2762
    "draw a line from the current graphics position
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2763
     to a new 3D position, passed in x/y/z.
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2764
     The arguments must be (16bit) smallIntegers."
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2765
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2766
%{  /* NOCONTEXT */
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2767
    {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2768
	Scoord c_x, c_y, c_z;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2769
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2770
	_SCOORD_ (x, c_x)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2771
	_SCOORD_ (y, c_y)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2772
	_SCOORD_ (z, c_z)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2773
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2774
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2775
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  2776
	draws(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2777
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2778
    }
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2779
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2780
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2781
    "Modified: 22.3.1996 / 18:05:01 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2782
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2783
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2784
glxLinewidth: n in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2785
    "set the linewidth"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2786
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2787
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2788
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2789
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2790
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2791
    linewidth(_shortVal(n));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2792
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2793
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2794
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2795
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2796
glxLinewidthf: n in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2797
    "set the linewidth"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2798
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2799
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2800
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2801
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2802
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2803
    linewidthf(_floatVal(n));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2804
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2805
    RETURN (true);
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2806
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2807
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2808
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2809
glxRdr2:v in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2810
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2811
     to a new 2D position, passing the relative distance in the vector v."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2812
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2813
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2814
    float vec[2], *c_v;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2815
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2816
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 2))) RETURN(false);
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2817
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2818
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2819
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2820
    rdr2((Coord)(c_v[0]), (Coord)(c_v[1]));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2821
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2822
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2823
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2824
    "Modified: 22.3.1996 / 18:05:54 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2825
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2826
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2827
glxRdr2X: x y: y in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2828
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2829
     to a new 2D position, passing the relative distance in x/y."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2830
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2831
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2832
    Coord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2833
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2834
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2835
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2836
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2837
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2838
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2839
    rdr2(c_x, c_y);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2840
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2841
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2842
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2843
    "Modified: 22.3.1996 / 18:06:20 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2844
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2845
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2846
glxRdr2iX: x y: y in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2847
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2848
     to a new 2D position, passing the relative distance in x/y."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2849
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2850
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2851
    Icoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2852
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2853
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2854
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2855
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2856
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2857
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2858
    rdr2i(c_x, c_y);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2859
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2860
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2861
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2862
    "Modified: 22.3.1996 / 18:06:28 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2863
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2864
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2865
glxRdr2sX: x y: y in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2866
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2867
     to a new 2D position, passing the relative distance in x/y."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2868
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2869
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2870
    Scoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2871
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2872
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2873
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2874
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2875
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2876
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2877
    rdr2s(c_x, c_y);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2878
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2879
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2880
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2881
    "Modified: 22.3.1996 / 18:06:34 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2882
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2883
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2884
glxRdr:v in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2885
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2886
     to a new 3D position, passing the relative distance in the vector v."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2887
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2888
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2889
    float vec[3], *c_v;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2890
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2891
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 3))) RETURN(false);
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2892
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2893
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2894
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2895
    rdr((Coord)(c_v[0]), (Coord)(c_v[1]), (Coord)(c_v[2]));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2896
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2897
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2898
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2899
    "Modified: 22.3.1996 / 18:06:07 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2900
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2901
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2902
glxRdrX: x y: y z: z in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2903
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2904
     to a new 3D position, passing the relative distance in x/y/z."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2905
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2906
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2907
    Coord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2908
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2909
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2910
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2911
    _COORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2912
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2913
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2914
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2915
    rdr(c_x, c_y, c_z);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2916
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2917
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2918
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2919
    "Modified: 22.3.1996 / 18:06:44 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2920
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2921
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2922
glxRdriX: x y: y z: z in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2923
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2924
     to a new 3D position, passing the relative distance in x/y/z."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2925
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2926
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2927
    Icoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2928
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2929
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2930
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2931
    _ICOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2932
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2933
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2934
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2935
    rdri(c_x, c_y, c_z);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2936
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2937
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2938
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2939
    "Modified: 22.3.1996 / 18:06:51 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2940
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2941
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2942
glxRdrsX: x y: y z: z in: aGLXWindowId
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2943
    "draw a line from the current graphics position
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2944
     to a new 3D position, passing the relative distance in x/y/z."
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2945
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2946
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2947
    Scoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2948
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2949
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2950
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2951
    _SCOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2952
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2953
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2954
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2955
    rdrs(c_x, c_y, c_z);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  2956
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2957
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2958
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  2959
    "Modified: 22.3.1996 / 18:06:55 / cg"
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2960
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2961
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2962
glxSetlinestyle: index in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2963
    "set the linestyle"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2964
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2965
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2966
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2967
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2968
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2969
    setlinestyle(_shortVal(index));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2970
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  2971
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2972
! !
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  2973
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2974
!GLXWorkstation methodsFor:'materials & lights'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2975
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2976
glxLmbind:target index:index in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2977
    "select a material, light or lighting model.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2978
     target must be a symbol from: #material, #backMaterial,
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2979
     #light0-light7 or #lightModel."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2980
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2981
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2982
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2983
    short defType;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2984
    short i_index;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2985
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2986
    if (target == @symbol(material))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2987
	defType = MATERIAL;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2988
    else if (target == @symbol(backMaterial))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2989
	defType = BACKMATERIAL;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2990
    else if (target == @symbol(light0))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2991
	defType = LIGHT0;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2992
    else if (target == @symbol(light1))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2993
	defType = LIGHT1;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2994
    else if (target == @symbol(light2))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2995
	defType = LIGHT2;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2996
    else if (target == @symbol(light3))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2997
	defType = LIGHT3;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2998
    else if (target == @symbol(light4))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  2999
	defType = LIGHT4;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3000
    else if (target == @symbol(light5))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3001
	defType = LIGHT5;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3002
    else if (target == @symbol(light6))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3003
	defType = LIGHT6;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3004
    else if (target == @symbol(light7))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3005
	defType = LIGHT7;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3006
    else if (target == @symbol(lightModel))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3007
	defType = LMODEL;
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3008
    else {
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3009
	RETURN (nil);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3010
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3011
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3012
    _INT_ (index, i_index);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3013
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3014
    lmbind(defType, i_index);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3015
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3016
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3017
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3018
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3019
glxLmdef:what index:index np:np props:props in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3020
    "define a material, light source or lighting model;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3021
     what must be one of #material, #light or #lightModel.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3022
     props must be a FloatArray or a subclass of FloatArray"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3023
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3024
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3025
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3026
    short defType;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3027
    short i_index, i_np;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3028
    float *fp;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3029
    OBJ cls;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3030
    int ninstVars, nInstBytes;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3031
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3032
    if (what == @symbol(material))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3033
	defType = DEFMATERIAL;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3034
    else if (what == @symbol(light))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3035
	defType = DEFLIGHT;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3036
    else if (what == @symbol(lightModel))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3037
	defType = DEFLMODEL;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3038
    else {
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3039
	RETURN (nil);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3040
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3041
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3042
    _INT_ (index, i_index);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3043
    _INT_ (np, i_np);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3044
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3045
    if (! _isNonNilObject(props)) fp = NULL;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3046
    else {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3047
	cls = __qClass(props);
350
ade060e42304 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 333
diff changeset
  3048
	if (cls == @global(FloatArray))
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3049
	    fp = _FloatArrayInstPtr(props)->f_element;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3050
	else {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3051
	    if ((__intVal(_ClassInstPtr(cls)->c_flags) & ARRAYMASK) == FLOATARRAY) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3052
		ninstVars = __intVal(_ClassInstPtr(cls)->c_ninstvars);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3053
		fp = (float *) &(_InstPtr(props)->i_instvars[ninstVars]);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3054
	    } else {
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3055
		RETURN (nil);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3056
	    }
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3057
	}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3058
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3059
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3060
    lmdef(defType, i_index, i_np, fp);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3061
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3062
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3063
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3064
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3065
glxTevbind:target index:index in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3066
    "bind a texture environment; target must be 0
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3067
     or the symbol #env0."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3068
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3069
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3070
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3071
    long t;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3072
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3073
    if (__isSmallInteger(target)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3074
	t = __intVal(target);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3075
    } else {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3076
	if (target == @symbol(env0)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3077
	    t = TV_ENV0;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3078
	} else {
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3079
	    RETURN (nil);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3080
	}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3081
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3082
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3083
    tevbind(t, __intVal(index));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3084
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3085
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3086
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3087
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3088
glxTevdef:index np:np props:props in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3089
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3090
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3091
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3092
    const float *fp;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3093
    float fbuff[30];
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3094
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3095
    SETWIN(aGLXWindowId)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3096
    fp = __glx_getFloatsFromFloatArrayInto(props, fbuff);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3097
    tevdef(__intVal(index), __intVal(np), fp);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3098
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3099
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3100
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3101
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3102
glxTexDef2d:index nc:nc width:w height:h bits:image np:np props:props in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3103
    "define a 2D texture. index is the 'name' of the texture;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3104
     nc is the number of components (1-4) per pixel;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3105
     w/h define the size of the texture; bits is a byteArray containing the
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3106
     long-word aligned pixel data; np is the number of props found in
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3107
     the floatArray props. Props must be delimited by a 0.0 entry."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3108
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3109
%{  /* NOCONTEXT */
6254
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3110
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3111
    unsigned char *cp;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3112
    const float *fp;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3113
    OBJ cls;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3114
    float fbuff[30];
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3115
5479
ae6b3ac21920 __isByteArray() to __isByteArrayLike() in primitive code
Stefan Vogel <sv@exept.de>
parents: 4718
diff changeset
  3116
    if (__isByteArrayLike(image)) {
6254
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3117
	cp = _ByteArrayInstPtr(image)->ba_element;
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3118
	fp = __glx_getFloatsFromFloatArrayInto(props, fbuff);
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3119
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3120
	SETWIN(aGLXWindowId)
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3121
	texdef2d(__intVal(index), __intVal(nc), __intVal(w), __intVal(h),
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3122
		 (const unsigned long *)cp, __intVal(np), fp);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3123
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3124
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3125
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3126
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3127
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3128
glxTexDef3d:index nc:nc width:w height:h depth:d bits:image np:np props:props in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3129
    "define a 3D texture. index is the 'name' of the texture;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3130
     nc is the number of components (1-4) per pixel;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3131
     w/h/d define the size of the texture; bits is a byteArray containing the
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3132
     long-word aligned pixel data; np is the number of props found in
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3133
     the floatArray props. Props must be delimited by a 0.0 entry."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3134
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3135
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3136
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3137
    unsigned char *cp;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3138
    const float *fp;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3139
    OBJ cls;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3140
    float fbuff[30];
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3141
5479
ae6b3ac21920 __isByteArray() to __isByteArrayLike() in primitive code
Stefan Vogel <sv@exept.de>
parents: 4718
diff changeset
  3142
    if (__isByteArrayLike(image)) {
6254
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3143
	cp = _ByteArrayInstPtr(image)->ba_element;
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3144
	fp = __glx_getFloatsFromFloatArrayInto(props, fbuff);
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3145
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3146
	SETWIN(aGLXWindowId)
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3147
	texdef3d(__intVal(index), __intVal(nc), __intVal(w), __intVal(h),
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3148
		 __intVal(d),
d55258f138fb *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6002
diff changeset
  3149
		 (const unsigned long *)cp, __intVal(np), fp);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3150
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3151
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3152
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3153
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3154
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3155
glxTexbind:target index:index in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3156
    "bind a texture; target must be an integer or one
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3157
     of the symbols #texture0, #textureDetail or #textureIdle."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3158
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3159
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3160
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3161
    long t;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3162
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3163
    if (__isSmallInteger(target)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3164
	t = __intVal(target);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3165
    } else {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3166
	if (target == @symbol(texture0)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3167
	    t = TX_TEXTURE_0;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3168
	} else if (target == @symbol(textureDetail)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3169
	    t = TX_TEXTURE_DETAIL;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3170
	} else if (target == @symbol(textureIdle)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3171
	    t = TX_TEXTURE_IDLE;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3172
	} else {
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3173
	    RETURN (nil);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3174
	}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3175
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3176
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3177
    texbind(t, __intVal(index));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3178
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3179
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3180
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3181
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3182
!GLXWorkstation methodsFor:'matrix stack'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3183
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3184
glxGetMatrix:arrayOf16Floats in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3185
    "argument must be an array (a matrix) of 16 floats. The current matrix
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3186
     will be stored into that."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3187
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3188
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3189
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3190
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3191
    Matrix matrix;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3192
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3193
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3194
    getmatrix(matrix);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3195
    if (! __glx_putFloatsFromInto(matrix, arrayOf16Floats, 16)) RETURN(false);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3196
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3197
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3198
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3199
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3200
glxLoadMatrix:arrayOf16Floats in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3201
    "argument must be an array(a matrix) of 16 floats. The current matrix
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3202
     will be loaded from that."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3203
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3204
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3205
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3206
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3207
    Matrix matrix;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3208
    Matrix *m;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3209
2814
bf957c990130 avoid warnings
Claus Gittinger <cg@exept.de>
parents: 2768
diff changeset
  3210
    if (! (m = __glx_getFloatsFromMatrixInto(arrayOf16Floats, matrix))) RETURN (false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3211
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3212
    loadmatrix(*m);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3213
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3214
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3215
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3216
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3217
glxMultMatrix:arrayOf16Floats in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3218
    "argument must be an array(a matrix) of 16 floats containing a
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3219
     matrix to multiply into the current matrix."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3220
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3221
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3222
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3223
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3224
    Matrix matrix;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3225
    Matrix *m;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3226
2814
bf957c990130 avoid warnings
Claus Gittinger <cg@exept.de>
parents: 2768
diff changeset
  3227
    if (! (m = __glx_getFloatsFromMatrixInto(arrayOf16Floats, matrix))) RETURN (false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3228
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3229
    multmatrix(*m);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3230
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3231
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3232
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3233
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3234
glxPopmatrixIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3235
    "pop transformation stack"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3236
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3237
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3238
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3239
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3240
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3241
    popmatrix();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3242
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3243
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3244
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3245
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3246
glxPushmatrixIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3247
    "push down transformation stack"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3248
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3249
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3250
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3251
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3252
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3253
    pushmatrix();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3254
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3255
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3256
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3257
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3258
!GLXWorkstation methodsFor:'misc'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3259
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3260
glxGconfigIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3261
    "must be sent after RGBmode, doubleBuffer etc. to have these
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3262
     changes really take effect. See GLX manual.
7656
e39deb3fb1ac #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6978
diff changeset
  3263
     (Actually, it seems to be not allowed - I don't really know)"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3264
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3265
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3266
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3267
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3268
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3269
    gconfig();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3270
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3271
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3272
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3273
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3274
glxMmode:aSymbol in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3275
    "set matrix mode: #single, #viewing, #projection or #texture"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3276
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3277
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3278
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3279
    if (aSymbol == @symbol(single)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3280
	mmode(MSINGLE);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3281
	RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3282
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3283
    if (aSymbol == @symbol(viewing)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3284
	mmode(MVIEWING);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3285
	RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3286
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3287
    if (aSymbol == @symbol(projection)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3288
	mmode(MPROJECTION);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3289
	RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3290
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3291
    if (aSymbol == @symbol(texture)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3292
	mmode(MTEXTURE);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3293
	RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3294
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3295
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3296
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3297
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3298
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3299
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3300
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3301
glxNmode:aSymbol in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3302
    "set normalize mode: #auto, #normalize"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3303
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3304
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3305
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3306
    if (aSymbol == @symbol(auto)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3307
	nmode(NAUTO);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3308
	RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3309
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3310
    if (aSymbol == @symbol(normalize)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3311
	nmode(NNORMALIZE);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3312
	RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3313
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3314
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3315
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3316
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3317
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3318
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3319
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3320
glxRGBmodeIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3321
    "set true color mode (no colormap)"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3322
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3323
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3324
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3325
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3326
    RGBmode();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3327
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3328
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3329
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3330
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3331
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3332
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3333
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3334
!GLXWorkstation methodsFor:'objects'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3335
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3336
glxCallObject:obj in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3337
    "perform the commands of an object (macro)."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3338
2075
7fc93b8da816 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2074
diff changeset
  3339
%{  /* NOCONTEXT STACK:32000 */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3340
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3341
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3342
    if (__isSmallInteger(obj)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3343
	SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3344
	callobj(_objectVal(obj));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3345
	RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3346
    }
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3347
#endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3348
%}.
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3349
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3350
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3351
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3352
glxCloseObjectIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3353
    "end object defnition"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3354
2075
7fc93b8da816 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2074
diff changeset
  3355
%{  /* NOCONTEXT STACK:32000 */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3356
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3357
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3358
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3359
    closeobj();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3360
    RETURN (true);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3361
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3362
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3363
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3364
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3365
glxDeleteObject:obj in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3366
2075
7fc93b8da816 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2074
diff changeset
  3367
%{  /* NOCONTEXT STACK:32000 */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3368
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3369
#else
1882
f1d549a7ed4c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1752
diff changeset
  3370
    if (__isSmallInteger(obj)) {
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3371
	SETWIN(aGLXWindowId)
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3372
	delobj(_objectVal(obj));
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3373
	RETURN (true);
1882
f1d549a7ed4c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1752
diff changeset
  3374
    }
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3375
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3376
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3377
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3378
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3379
glxGenObjectIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3380
    "return a new (free & unused) object id for use
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3381
     with makeObj"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3382
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3383
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3384
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3385
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3386
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  3387
    RETURN (__MKSMALLINT(genobj()));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3388
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3389
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3390
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3391
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3392
glxGetopenobjIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3393
    "return the currently open objects id; -1 if none is open"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3394
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3395
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3396
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3397
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3398
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  3399
    RETURN (__MKSMALLINT(getopenobj()));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3400
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3401
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3402
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3403
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3404
glxIsobj:obj in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3405
    "return true, if obj is a valid object id"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3406
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3407
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3408
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3409
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3410
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  3411
    RETURN (__MKBOOLEAN(isobj(_objectVal(obj))));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3412
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3413
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3414
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3415
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3416
glxMakeObject:id in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3417
    "start object definition -
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3418
     another name conflict"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3419
2075
7fc93b8da816 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2074
diff changeset
  3420
%{  /* NOCONTEXT STACK:32000 */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3421
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3422
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3423
    if (__isSmallInteger(id)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3424
	SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3425
	makeobj(_objectVal(id));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3426
	RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3427
    }
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3428
#endif
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3429
%}.
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3430
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3431
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3432
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3433
!GLXWorkstation methodsFor:'patches & surfaces'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3434
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3435
glxBeginCurveIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3436
    "start a NURBS curve def - in real GL only"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3437
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3438
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3439
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3440
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3441
    bgncurve();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3442
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3443
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3444
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3445
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3446
glxBeginSurfaceIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3447
    "start a NURBS surface def - in real GL only"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3448
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3449
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3450
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3451
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3452
    bgnsurface();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3453
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3454
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3455
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3456
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3457
glxDefBasis:id mat:aMatrix in:aGLXWindowId
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3458
    "define the basis matrix for a patch or curve"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3459
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3460
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3461
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3462
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3463
    Matrix matrix;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3464
    Matrix *m;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3465
2814
bf957c990130 avoid warnings
Claus Gittinger <cg@exept.de>
parents: 2768
diff changeset
  3466
    if (! (m = __glx_getFloatsFromMatrixInto(aMatrix, matrix))) RETURN (false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3467
    if (__isSmallInteger(id)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3468
	SETWIN(aGLXWindowId)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3469
	defbasis((short)(__intVal(id)), *m);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3470
    }
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3471
#endif
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3472
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3473
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3474
    "Modified: 19.3.1996 / 18:52:56 / cg"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3475
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3476
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3477
glxEndCurveIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3478
    "end a NURBS curve def - in real GL only"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3479
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3480
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3481
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3482
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3483
    endcurve();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3484
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3485
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3486
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3487
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3488
glxEndSurfaceIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3489
    "end a NURBS surface def - in real GL only"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3490
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3491
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3492
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3493
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3494
    endsurface();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3495
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3496
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3497
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3498
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3499
glxNurbsSurfaceUKnotCount: uKnotCount uKnot: uKnot
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3500
    vKnotCount: vKnotCount vKnot: vKnot
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3501
    uOffset: uOffset vOffset: vOffset
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3502
    ctlArray: ctlArray
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3503
    uOrder: uOrder vOrder: vOrder
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3504
    type: type in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3505
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3506
    | ctlPoints i |
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3507
    ctlPoints := DoubleArray new: ctlArray size * (ctlArray first size).
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3508
    i := 1.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3509
    ctlArray do: [:point |
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3510
	point do: [:coord |
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3511
	    ctlPoints at: i put: coord.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3512
	    i := i + 1]].
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3513
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3514
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3515
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3516
    char *uKnotElements, *vKnotElements, *ctlElements;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3517
    OBJ cls;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3518
    int ninstVars, nInstBytes;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3519
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3520
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3521
    cls = __qClass(ctlPoints);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3522
    ninstVars = __intVal(_ClassInstPtr(cls)->c_ninstvars);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3523
    nInstBytes = OHDR_SIZE + ninstVars * sizeof(OBJ);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3524
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3525
    ctlElements = (char *)(_InstPtr(ctlPoints)) + nInstBytes;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3526
    uKnotElements = (char *)(_InstPtr(uKnot)) + nInstBytes;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3527
    vKnotElements = (char *)(_InstPtr(vKnot)) + nInstBytes;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3528
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3529
    nurbssurface (
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3530
	__intVal(uKnotCount), (double *)uKnotElements,
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3531
	__intVal(vKnotCount), (double *)vKnotElements,
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3532
	__intVal(uOffset), __intVal(vOffset),
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3533
	(double *)ctlElements,
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3534
	__intVal(uOrder), __intVal(vOrder), __intVal(type));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3535
    RETURN(true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3536
#endif
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3537
%}.
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3538
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3539
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3540
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3541
glxPatchBasisU:u v:v in:aGLXWindowId
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3542
    "set the two basis matrices for a patch"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3543
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3544
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3545
    if (__bothSmallInteger(u, v)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3546
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3547
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3548
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3549
	patchbasis((long)__intVal(u), (long)__intVal(v));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3550
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3551
    }
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3552
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3553
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3554
    "Modified: 19.3.1996 / 18:53:18 / cg"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3555
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3556
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3557
glxPatchCurvesU:u v:v in:aGLXWindowId
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3558
    "set the number of curves to be drawn in each direction on a patch"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3559
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3560
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3561
    if (__bothSmallInteger(u, v)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3562
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3563
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3564
#else
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3565
	patchcurves((long)__intVal(u), (long)__intVal(v));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3566
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3567
    }
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3568
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3569
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3570
    "Modified: 19.3.1996 / 18:53:34 / cg"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3571
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3572
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3573
glxPatchPrecisionU:u v:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3574
    "set the patch precision"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3575
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3576
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3577
    if (__bothSmallInteger(u, v)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3578
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3579
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3580
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3581
	patchprecision((long)__intVal(u), (long)__intVal(v));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3582
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3583
    }
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3584
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3585
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3586
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3587
glxPatchX:arrayOf16XFloats y:arrayOf16YFloats z:arrayOf16ZFloats in:aGLXWindowId
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3588
    "Draws a bicubic patch.
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3589
     arguments must be arrays of 16 floats containing the patch"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3590
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3591
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3592
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3593
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3594
    Matrix matrixX, matrixY, matrixZ;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3595
    Matrix *mX, *mY, *mZ;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3596
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3597
    if (! (mX = __glx_getFloatsFromMatrixInto(arrayOf16XFloats, matrixX)))
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3598
	RETURN (nil);
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3599
    if (! (mY = __glx_getFloatsFromMatrixInto(arrayOf16YFloats, matrixY)))
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3600
	RETURN (nil);
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3601
    if (! (mZ = __glx_getFloatsFromMatrixInto(arrayOf16ZFloats, matrixZ)))
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3602
	RETURN (nil);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3603
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3604
    patch(*mX, *mY, *mZ);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3605
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  3606
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3607
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3608
    "Modified: 19.3.1996 / 18:54:02 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3609
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3610
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3611
glxRpatchX:arrayOf16XFloats y:arrayOf16YFloats z:arrayOf16ZFloats w:arrayOf16WFloats in:aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3612
    "Draws a rational bicubic patch.
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3613
     arguments must be arrays of 16 floats containing the patch"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3614
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3615
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3616
#ifdef OPENGL
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3617
#else
529
0f59bf869e8f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 528
diff changeset
  3618
    Matrix matrixX, matrixY, matrixZ, matrixW;
0f59bf869e8f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 528
diff changeset
  3619
    Matrix *mX, *mY, *mZ, *mW;
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3620
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3621
    if (! (mX = __glx_getFloatsFromMatrixInto(arrayOf16XFloats, matrixX)))
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3622
	RETURN (nil);
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3623
    if (! (mY = __glx_getFloatsFromMatrixInto(arrayOf16YFloats, matrixY)))
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3624
	RETURN (nil);
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3625
    if (! (mZ = __glx_getFloatsFromMatrixInto(arrayOf16ZFloats, matrixZ)))
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3626
	RETURN (nil);
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3627
    if (! (mW = __glx_getFloatsFromMatrixInto(arrayOf16WFloats, matrixW)))
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3628
	RETURN (nil);
529
0f59bf869e8f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 528
diff changeset
  3629
    SETWIN(aGLXWindowId)
0f59bf869e8f *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 528
diff changeset
  3630
    rpatch(*mX, *mY, *mZ, *mW);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3631
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3632
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3633
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3634
    "Modified: 19.3.1996 / 18:54:02 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3635
    "Created: 19.3.1996 / 18:56:34 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3636
! !
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3637
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3638
!GLXWorkstation methodsFor:'pixel copy'!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3639
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3640
glxRectcopyX1: x1 y1: y1 x2: x2 y2: y2 newx: newx newy: newy in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3641
    "copy a rectangular area in the view.
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3642
     For now, this is only supported with a true GL.
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3643
     readsource specifies which plane/buffer is affected by this operation."
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3644
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3645
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3646
#ifdef GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3647
    SETWIN(aGLXWindowId)
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3648
    rectcopy(_screencoordVal(x1), _screencoordVal(y1),
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3649
	     _screencoordVal(x2), _screencoordVal(y2),
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3650
	     _screencoordVal(newx), _screencoordVal(newy));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3651
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3652
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3653
! !
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3654
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3655
!GLXWorkstation methodsFor:'pixel reading'!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3656
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3657
glxReadpixelsTo:dest in:aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3658
    "read pixels from the view.
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3659
     Dest must be an array and gets pixel values assigned,
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3660
     reading n pixels starting at the current x/y coordinate (pixel coordinates).
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3661
     For now, pixel-reading is only supported with a true GL.
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3662
     Caveat: the number of pixels is limited to 256.
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3663
     In double buffer mode, the backBuffer is read."
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3664
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3665
    |n|
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3666
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3667
    n := dest size.
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3668
    n > 256 ifTrue:[^ 0].
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3669
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3670
%{  /* STACK:1024 */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3671
#ifdef GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3672
    Colorindex buffer[256];
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3673
    int i, nRead;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3674
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3675
    if (__isArray(dest)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3676
	SETWIN(aGLXWindowId)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3677
	nRead = readpixels(__intVal(n), buffer);
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3678
	for (i=0; i<nRead;i++) {
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3679
	    __ArrayInstPtr(dest)->a_element[i] = __MKSMALLINT(buffer[i]);
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3680
	}
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3681
	RETURN (__MKSMALLINT(nRead));
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3682
    }
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3683
#endif
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3684
%}.
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3685
    ^ 0
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3686
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3687
    "Modified: 22.3.1996 / 18:08:00 / cg"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3688
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3689
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3690
glxReadsource: src in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3691
    "specify what is read with folowing readPixels requests.
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3692
     For now, pixel-reading is only supported with a true GL"
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3693
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3694
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3695
#ifdef GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3696
    OBJ s = src;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3697
    int what;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3698
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3699
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3700
    if (s == @symbol(auto)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3701
	what = SRC_AUTO;
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3702
    } else if (s == @symbol(front)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3703
	what = SRC_FRONT;
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3704
    } else if (s == @symbol(back)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3705
	what = SRC_BACK;
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3706
    } else if (s == @symbol(zBuffer)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3707
	what = SRC_ZBUFFER;
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3708
    } else if (s == @symbol(frameGrabber)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3709
	what = SRC_FRAMEGRABBER;
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3710
    } else if (s == @symbol(over)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3711
	what = SRC_OVER;
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3712
    } else if (s == @symbol(under)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3713
	what = SRC_UNDER;
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3714
    } else if (s == @symbol(popUp)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3715
	what = SRC_PUP;
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3716
    } else {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3717
	what = _longVal(src);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3718
    }
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3719
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3720
    readsource(what);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3721
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3722
%}
538
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3723
!
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3724
541
226393ef0866 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 538
diff changeset
  3725
glxRectreadX1:x1 y1:y1 x2:x2 y2:y2 h:viewHeight to:dest in:aGLXWindowId
538
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3726
    "read pixels from a rectanglular area.
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3727
     Dest must be an array and gets pixel values assigned,
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3728
     reading n*m pixels.
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3729
     For now, pixel-reading is only supported with a true GL.
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3730
     Caveat: the number of pixels is limited to 256.
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3731
     In double buffer mode, the backBuffer is read."
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3732
541
226393ef0866 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 538
diff changeset
  3733
    |n idx sy1 sy2|
226393ef0866 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 538
diff changeset
  3734
226393ef0866 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 538
diff changeset
  3735
    "/ GLX's y coordinates go bottom to top ...
226393ef0866 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 538
diff changeset
  3736
226393ef0866 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 538
diff changeset
  3737
    sy1 := viewHeight - y1.
226393ef0866 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 538
diff changeset
  3738
    sy2 := viewHeight - y2.
538
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3739
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3740
    n := (x2 - x1 + 1) * (y2 - y1 + 1).
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3741
    n > 256 ifTrue:[^ 0].
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3742
    dest size < n ifTrue:[^ 0].
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3743
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3744
%{  /* STACK:1024 */
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3745
#ifdef GLX
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3746
    Colorindex buffer[256];
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3747
    int i, nRead;
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3748
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3749
    if (__isArray(dest)
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3750
     && __isSmallInteger(x1) && __isSmallInteger(x2)
541
226393ef0866 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 538
diff changeset
  3751
     && __isSmallInteger(sy1) && __isSmallInteger(sy2)
538
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3752
    ) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3753
	SETWIN(aGLXWindowId)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3754
	nRead = rectread(__intVal(x1), __intVal(sy1),
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3755
			  __intVal(x2), __intVal(sy2),
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3756
			  buffer);
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3757
	for (i=0; i<nRead;i++) {
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3758
	    __ArrayInstPtr(dest)->a_element[i] = __MKSMALLINT(buffer[i]);
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3759
	}
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3760
	RETURN (__MKSMALLINT(nRead));
538
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3761
    }
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3762
#endif
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3763
%}.
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3764
    "/
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3765
    "/ ok, this is not a GL - use XWorkstations pixel read method
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3766
    "/ and convert
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3767
    "/
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3768
    idx := 1.
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3769
    y1 to:y2 do:[:y |
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3770
	x1 to:x2 do:[:x |
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3771
	    |pix|
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3772
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3773
	    pix := self vglGetPixelX:x y:y in:aGLXWindowId.
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3774
	    dest at:idx put:pix
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3775
	]
538
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3776
    ].
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3777
    ^ n
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3778
ca6f8b126197 added #rectread
Claus Gittinger <cg@exept.de>
parents: 537
diff changeset
  3779
    "Modified: 22.3.1996 / 18:08:00 / cg"
542
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3780
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3781
!
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3782
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3783
glxXColorToGLColor:pixel
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3784
    "only for VOGL: given a pixel as read from the view,
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3785
     return the corresponding GL color"
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3786
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3787
%{    /* NOCONTEXT */
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3788
#ifdef VGL
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3789
    if (__isSmallInteger(pixel)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3790
	RETURN (__MKSMALLINT(X11_invColor(__intVal(pixel))));
542
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3791
    }
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3792
#endif
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3793
%}.
5e3b0dc0b01a fixed screen read for VGL (return GL color, not X color)
Claus Gittinger <cg@exept.de>
parents: 541
diff changeset
  3794
    ^ pixel
543
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3795
!
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3796
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3797
vglGetPixelX:x y:y in:aGLXWindowId
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3798
    "special for VGL"
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3799
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3800
%{
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3801
#ifdef VGL
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3802
    if (__bothSmallInteger(x, y)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3803
	SETWIN(aGLXWindowId)
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  3804
	RETURN (__MKSMALLINT(X11_getPixel(__intVal(x), __intVal(y))));
543
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3805
    }
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3806
#endif
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3807
%}.
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3808
    ^ 0
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3809
abe110532199 another change for pixelRead - needed to read from backbuffer with VGL
Claus Gittinger <cg@exept.de>
parents: 542
diff changeset
  3810
    "Modified: 22.3.1996 / 18:08:00 / cg"
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3811
! !
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  3812
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3813
!GLXWorkstation methodsFor:'points'!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3814
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3815
glxPnt2X: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3816
    "plot a point in x, y, 0."
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3817
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3818
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3819
    Coord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3820
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3821
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3822
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3823
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3824
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3825
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3826
    pnt2(c_x, c_y);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3827
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3828
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3829
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3830
    "Modified: 19.3.1996 / 18:35:55 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3831
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3832
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3833
glxPnt2iX: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3834
    "plot a point in x, y, 0."
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3835
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3836
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3837
    Icoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3838
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3839
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3840
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3841
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3842
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3843
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3844
    pnt2i(c_x, c_y);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3845
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3846
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3847
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3848
    "Modified: 19.3.1996 / 18:35:59 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3849
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3850
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3851
glxPnt2sX: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3852
    "plot a point in x, y, 0."
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3853
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3854
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3855
    Scoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3856
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3857
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3858
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3859
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3860
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3861
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3862
    pnt2s(c_x, c_y);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3863
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3864
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3865
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3866
    "Modified: 19.3.1996 / 18:36:03 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3867
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3868
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3869
glxPntX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3870
    "plot a point in x, y, z."
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3871
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3872
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3873
    Coord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3874
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3875
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3876
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3877
    _COORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3878
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3879
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3880
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3881
    pnt(c_x, c_y, c_z);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3882
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3883
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3884
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3885
    "Modified: 19.3.1996 / 18:36:08 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3886
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3887
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3888
glxPntiX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3889
    "plot a point in x, y, z."
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3890
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3891
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3892
    Icoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3893
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3894
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3895
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3896
    _ICOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3897
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3898
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3899
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3900
    pnti(c_x, c_y, c_z);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3901
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3902
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3903
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3904
    "Modified: 19.3.1996 / 18:36:14 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3905
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3906
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3907
glxPntsX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3908
    "plot a point in x, y, z."
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3909
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3910
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3911
    Scoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3912
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3913
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3914
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3915
    _SCOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3916
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3917
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3918
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3919
    pnts(c_x, c_y, c_z);
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  3920
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3921
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3922
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3923
    "Modified: 19.3.1996 / 18:36:17 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3924
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3925
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3926
glxPntsize: n in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3927
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3928
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3929
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3930
#ifdef GLX
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3931
    pntsize(_shortVal(n));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3932
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3933
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3934
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3935
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3936
glxPntsizef: n in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3937
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3938
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3939
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3940
#ifdef GLX
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3941
    pntsizef(_floatVal(n));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3942
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3943
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3944
! !
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3945
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3946
!GLXWorkstation methodsFor:'polygons'!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3947
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3948
glxBackface: b in: aGLXWindowId
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3949
    "enable/disable culling of backfacing polygons (suppress its drawing).
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3950
     A polygon is backfacing if it's orientation in *screen* coords is clockwise"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3951
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3952
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3953
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3954
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3955
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3956
    backface(_booleanVal(b));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3957
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3958
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3959
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3960
    "Modified: 19.3.1996 / 18:26:50 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3961
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3962
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3963
glxConcave: b in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3964
    "signal wether or not polygons are concave"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3965
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3966
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3967
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3968
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3969
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3970
    concave(_booleanVal(b));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3971
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3972
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3973
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3974
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3975
glxFrontface: b in: aGLXWindowId
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3976
    "enable/disable culling of frontfacing polygons (suppress its drawing).
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  3977
     A polygon is frontfacing if it's orientation in *screen* coords is
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3978
     anti-clockwise"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3979
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3980
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3981
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3982
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3983
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3984
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3985
    frontface(_booleanVal(b));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3986
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3987
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3988
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3989
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3990
glxPdr2X: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3991
    "add another vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3992
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3993
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3994
    Coord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3995
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3996
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3997
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  3998
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  3999
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4000
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4001
    pdr2(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4002
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4003
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4004
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4005
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4006
glxPdr2iX: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4007
    "add another vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4008
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4009
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4010
    Icoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4011
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4012
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4013
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4014
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4015
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4016
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4017
    pdr2i(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4018
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4019
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4020
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4021
    "Modified: 19.3.1996 / 18:33:28 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4022
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4023
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4024
glxPdr2sX: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4025
    "add another vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4026
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4027
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4028
    Scoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4029
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4030
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4031
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4032
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4033
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4034
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4035
    pdr2s(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4036
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4037
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4038
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4039
    "Modified: 19.3.1996 / 18:34:03 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4040
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4041
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4042
glxPdrX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4043
    "add another vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4044
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4045
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4046
    Coord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4047
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4048
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4049
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4050
    _COORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4051
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4052
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4053
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4054
    pdr(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4055
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4056
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4057
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4058
    "Modified: 19.3.1996 / 18:34:06 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4059
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4060
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4061
glxPdriX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4062
    "add another vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4063
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4064
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4065
    Icoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4066
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4067
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4068
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4069
    _ICOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4070
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4071
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4072
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4073
    pdri(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4074
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4075
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4076
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4077
    "Modified: 19.3.1996 / 18:34:11 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4078
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4079
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4080
glxPdrsX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4081
    "add another vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4082
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4083
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4084
    Scoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4085
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4086
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4087
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4088
    _SCOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4089
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4090
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4091
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4092
    pdrs(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4093
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4094
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4095
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4096
    "Modified: 19.3.1996 / 18:34:14 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4097
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4098
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4099
glxPmv2X: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4100
    "set the start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4101
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4102
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4103
    Coord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4104
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4105
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4106
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4107
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4108
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4109
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4110
    pmv2(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4111
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4112
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4113
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4114
    "Modified: 19.3.1996 / 18:32:45 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4115
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4116
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4117
glxPmv2iX: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4118
    "set the start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4119
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4120
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4121
    Icoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4122
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4123
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4124
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4125
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4126
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4127
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4128
    pmv2i(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4129
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4130
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4131
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4132
    "Modified: 19.3.1996 / 18:32:42 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4133
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4134
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4135
glxPmv2sX: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4136
    "set the start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4137
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4138
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4139
    Scoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4140
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4141
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4142
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4143
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4144
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4145
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4146
    pmv2s(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4147
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4148
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4149
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4150
    "Modified: 19.3.1996 / 18:32:38 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4151
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4152
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4153
glxPmvX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4154
    "set the start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4155
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4156
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4157
    Coord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4158
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4159
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4160
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4161
    _COORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4162
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4163
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4164
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4165
    pmv(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4166
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4167
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4168
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4169
    "Modified: 19.3.1996 / 18:31:52 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4170
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4171
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4172
glxPmviX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4173
    "set the start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4174
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4175
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4176
    Icoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4177
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4178
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4179
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4180
    _ICOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4181
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4182
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4183
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4184
    pmvi(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4185
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4186
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4187
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4188
    "Modified: 19.3.1996 / 18:31:59 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4189
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4190
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4191
glxPmvsX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4192
    "set the start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4193
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4194
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4195
    Scoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4196
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4197
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4198
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4199
    _SCOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4200
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4201
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4202
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4203
    pmvs(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4204
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4205
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4206
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4207
    "Modified: 19.3.1996 / 18:32:03 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4208
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4209
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4210
glxPolymode: mode in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4211
    "Sets the polygon filling mode - only filled (1) or outlined (0)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4212
     are supported"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4213
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4214
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4215
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4216
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4217
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4218
    polymode(_longVal(mode));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4219
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4220
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4221
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4222
    "Modified: 19.3.1996 / 18:29:32 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4223
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4224
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4225
glxRpdr2X: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4226
    "add another relative vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4227
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4228
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4229
    Coord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4230
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4231
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4232
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4233
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4234
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4235
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4236
    rpdr2(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4237
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4238
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4239
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4240
    "Modified: 19.3.1996 / 18:34:31 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4241
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4242
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4243
glxRpdr2iX: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4244
    "add another relative vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4245
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4246
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4247
    Icoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4248
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4249
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4250
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4251
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4252
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4253
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4254
    rpdr2i(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4255
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4256
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4257
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4258
    "Modified: 19.3.1996 / 18:34:36 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4259
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4260
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4261
glxRpdr2sX: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4262
    "add another relative vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4263
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4264
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4265
    Scoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4266
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4267
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4268
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4269
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4270
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4271
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4272
    rpdr2s(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4273
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4274
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4275
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4276
    "Modified: 19.3.1996 / 18:34:40 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4277
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4278
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4279
glxRpdrX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4280
    "add another relative vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4281
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4282
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4283
    Coord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4284
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4285
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4286
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4287
    _COORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4288
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4289
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4290
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4291
    rpdr(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4292
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4293
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4294
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4295
    "Modified: 19.3.1996 / 18:34:48 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4296
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4297
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4298
glxRpdriX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4299
    "add another relative vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4300
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4301
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4302
    Icoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4303
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4304
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4305
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4306
    _ICOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4307
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4308
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4309
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4310
    rpdri(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4311
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4312
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4313
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4314
    "Modified: 19.3.1996 / 18:34:51 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4315
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4316
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4317
glxRpdrsX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4318
    "add another relative vertex to the polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4319
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4320
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4321
    Scoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4322
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4323
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4324
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4325
    _SCOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4326
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4327
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4328
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4329
    rpdrs(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4330
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4331
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4332
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4333
    "Modified: 19.3.1996 / 18:34:55 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4334
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4335
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4336
glxRpmv2X: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4337
    "set the start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4338
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4339
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4340
    Coord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4341
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4342
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4343
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4344
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4345
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4346
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4347
    rpmv2(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4348
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4349
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4350
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4351
    "Modified: 19.3.1996 / 18:37:15 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4352
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4353
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4354
glxRpmv2iX: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4355
    "set the start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4356
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4357
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4358
    Icoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4359
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4360
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4361
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4362
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4363
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4364
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4365
    rpmv2i(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4366
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4367
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4368
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4369
    "Modified: 19.3.1996 / 18:37:20 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4370
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4371
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4372
glxRpmv2sX: x y: y in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4373
    "set the relative start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4374
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4375
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4376
    Scoord c_x, c_y;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4377
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4378
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4379
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4380
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4381
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4382
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4383
    rpmv2s(c_x, c_y);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4384
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4385
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4386
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4387
    "Modified: 19.3.1996 / 18:38:06 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4388
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4389
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4390
glxRpmvX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4391
    "set the relative start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4392
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4393
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4394
    Coord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4395
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4396
    _COORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4397
    _COORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4398
    _COORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4399
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4400
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4401
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4402
    rpmv(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4403
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4404
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4405
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4406
    "Modified: 19.3.1996 / 18:38:03 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4407
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4408
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4409
glxRpmviX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4410
    "set the relative start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4411
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4412
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4413
    Icoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4414
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4415
    _ICOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4416
    _ICOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4417
    _ICOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4418
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4419
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4420
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4421
    rpmvi(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4422
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4423
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4424
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4425
    "Modified: 19.3.1996 / 18:37:53 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4426
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4427
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4428
glxRpmvsX: x y: y z: z in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4429
    "set the relative start position of a polygon"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4430
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4431
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4432
    Scoord c_x, c_y, c_z;
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4433
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4434
    _SCOORD_ (x, c_x)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4435
    _SCOORD_ (y, c_y)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4436
    _SCOORD_ (z, c_z)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4437
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4438
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4439
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4440
    rpmvs(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4441
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4442
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4443
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4444
    "Modified: 19.3.1996 / 18:37:58 / cg"
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4445
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4446
24
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
  4447
!GLXWorkstation methodsFor:'queries'!
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
  4448
159
claus
parents: 158
diff changeset
  4449
glVersion
claus
parents: 158
diff changeset
  4450
    "return a string describing the GL version.
claus
parents: 158
diff changeset
  4451
     For informative use only; portable applications do not depend
claus
parents: 158
diff changeset
  4452
     on the returned string."
claus
parents: 158
diff changeset
  4453
claus
parents: 158
diff changeset
  4454
%{  /* NOCONTEXT */
claus
parents: 158
diff changeset
  4455
#ifdef VGL
1065
fdc5b9059d82 removed all COMMA_CON / CON_COMMA uses
Claus Gittinger <cg@exept.de>
parents: 969
diff changeset
  4456
    RETURN (__MKSTRING("vogl"));
159
claus
parents: 158
diff changeset
  4457
#else
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4458
# ifdef GLX
159
claus
parents: 158
diff changeset
  4459
    char buffer[128];
claus
parents: 158
diff changeset
  4460
212
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  4461
    if (_INST(glOK) == true) {
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  4462
	gversion(buffer);
1065
fdc5b9059d82 removed all COMMA_CON / CON_COMMA uses
Claus Gittinger <cg@exept.de>
parents: 969
diff changeset
  4463
	RETURN (__MKSTRING(buffer));
212
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  4464
    }
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4465
    RETURN (nil);
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4466
# else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4467
    RETURN (nil);
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4468
# endif
159
claus
parents: 158
diff changeset
  4469
#endif
claus
parents: 158
diff changeset
  4470
%}
claus
parents: 158
diff changeset
  4471
claus
parents: 158
diff changeset
  4472
    "
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4473
     Display glVersion
159
claus
parents: 158
diff changeset
  4474
    "
claus
parents: 158
diff changeset
  4475
!
claus
parents: 158
diff changeset
  4476
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4477
glxGetplanesIn: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4478
    "Returns the number if bit planes available on the device."
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4479
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4480
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4481
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4482
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4483
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4484
    RETURN (__MKSMALLINT(getplanes()));
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4485
#endif
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4486
%}.
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4487
    ^ 0
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4488
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4489
    "Modified: 19.3.1996 / 18:50:44 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4490
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4491
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4492
hasStereoExtension
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4493
    "return true, if this workstation supports stereo GL drawing.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4494
     Both the server must support it, and the feature must have been
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4495
     enabled in the smalltalk system, for true to be returned."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4496
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4497
    ^ hasStereoExtension
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4498
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4499
    "
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4500
     Display hasStereoExtension
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4501
    "
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4502
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4503
3214
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4504
isOpenGL
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4505
    "return true, if this is an openGL (as opposed to a GL)"
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4506
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4507
%{  /* NOCONTEXT */
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4508
#ifdef OPENGL
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4509
    RETURN ( true );
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4510
#else
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4511
    RETURN ( false );
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4512
#endif
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4513
%}
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4514
!
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4515
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  4516
isTrueGL
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4517
    "return true, if this is a true GL (as opposed to a simulated VOGL).
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4518
     Returns false for all openGL systems."
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  4519
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  4520
%{  /* NOCONTEXT */
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  4521
#ifdef VGL
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  4522
    RETURN ( false );
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  4523
#else
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4524
# ifdef GLX
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  4525
    RETURN ( true );
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4526
# endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4527
#endif
3214
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4528
%}.
359316f51b9f rel5 migration
Claus Gittinger <cg@exept.de>
parents: 2814
diff changeset
  4529
    ^ false
448
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  4530
!
abcba4fa3fc0 added forceGL (or knowledgable SGI users)
Claus Gittinger <cg@exept.de>
parents: 389
diff changeset
  4531
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4532
maxZValue
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4533
    "return the max. Z value (only valid if z-buffer is supported)"
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4534
%{
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4535
#ifndef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4536
# ifdef GD_ZMAX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4537
    long zMax;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4538
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4539
    if (_INST(glOK) == true) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4540
	zMax = getgdesc(GD_ZMAX);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4541
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4542
	if ((zMax >= _MIN_INT) && (zMax <= _MAX_INT)) {
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  4543
	    RETURN ( __MKSMALLINT(zMax) );
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4544
	}
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  4545
	RETURN ( __MKLARGEINT(zMax) );
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4546
    }
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4547
# endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4548
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4549
%}.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4550
    ^ nil
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4551
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4552
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4553
supportsDoubleBuffer
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4554
    "return true, if this gl workstation supports double buffering.
157
claus
parents: 151
diff changeset
  4555
     For portable applications, always combine this with a query
claus
parents: 151
diff changeset
  4556
     if the display supports GL drawing at all."
24
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
  4557
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
  4558
%{  /* NOCONTEXT */
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4559
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4560
#ifndef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4561
# ifdef VGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4562
    RETURN (true);
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4563
# else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4564
#  ifdef GD_BITS_NORM_DBL_RED
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4565
    if (getgdesc(GD_BITS_NORM_DBL_RED) != 0) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4566
	RETURN ( _INST(glOK) );
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4567
    }
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4568
#  endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4569
# endif
24
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
  4570
#endif
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4571
%}.
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4572
    ^ false
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4573
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4574
    "
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4575
     Display supportsDoubleBuffer
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4576
    "
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4577
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4578
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4579
supportsGLDrawing
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4580
    "return true, if this device supports 3D GL drawing."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4581
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4582
    ^ glOK
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4583
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4584
    "
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4585
     Display supportsGLDrawing
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4586
    "
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  4587
!
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  4588
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  4589
supportsLight
157
claus
parents: 151
diff changeset
  4590
    "return true, if this gl workstation supports light sources
claus
parents: 151
diff changeset
  4591
     (i.e. if its a real GL).
claus
parents: 151
diff changeset
  4592
     For portable applications, always combine this with a query
claus
parents: 151
diff changeset
  4593
     if the display supports GL drawing at all."
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4594
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4595
%{  /* NOCONTEXT */
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  4596
#ifdef GLX
212
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  4597
    RETURN ( _INST(glOK) );
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  4598
#endif
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4599
%}.
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4600
    ^ false
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4601
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4602
    "
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4603
     Display supportsLight
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4604
    "
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4605
!
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4606
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4607
supportsRGB
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4608
    "return true, if this gl workstation supports rgb
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4609
     (in addition to indexed) colors. Actually, we return true
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4610
     for a real GL engine, false for the simulator here.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4611
     For portable applications, always combine this with a query
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4612
     if the display supports GL drawing at all."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4613
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4614
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4615
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4616
    RETURN ( _INST(glOK) );
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4617
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4618
%}.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4619
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4620
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4621
    "
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4622
     Display supportsRGB
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4623
    "
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4624
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4625
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4626
supportsTextures
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4627
    "return true, if this gl workstation supports texture mapping
157
claus
parents: 151
diff changeset
  4628
     (i.e. if its a real GL).
claus
parents: 151
diff changeset
  4629
     For portable applications, always combine this with a query
claus
parents: 151
diff changeset
  4630
     if the display supports GL drawing at all."
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4631
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4632
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4633
#ifndef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4634
# ifdef GD_TEXTURE
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4635
    if (getgdesc(GD_TEXTURE) != 0) {
212
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  4636
	RETURN ( _INST(glOK) );
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4637
    }
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4638
# endif
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4639
#endif
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4640
%}.
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4641
    ^ false
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4642
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4643
    "
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4644
     Display supportsTextures
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4645
    "
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4646
!
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4647
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4648
supportsZBuffer
157
claus
parents: 151
diff changeset
  4649
    "return true, if this gl workstation has z buffer support.
claus
parents: 151
diff changeset
  4650
     For portable applications, always combine this with a query
claus
parents: 151
diff changeset
  4651
     if the display supports GL drawing at all."
claus
parents: 151
diff changeset
  4652
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4653
%{  /* NOCONTEXT */
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4654
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4655
#ifndef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4656
# ifdef GD_BITS_NORM_ZBUFFER
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4657
    if (getgdesc(GD_BITS_NORM_ZBUFFER) != 0) {
212
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  4658
	RETURN ( _INST(glOK) );
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4659
    }
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4660
# endif
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4661
#endif
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4662
%}.
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4663
    ^ false
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4664
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4665
    "
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4666
     Display supportsZBuffer
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  4667
    "
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4668
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4669
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4670
!GLXWorkstation methodsFor:'rectangles'!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4671
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4672
glxRectX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4673
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4674
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4675
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4676
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4677
#else
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4678
    rect(_coordVal(x1), _coordVal(y1), _coordVal(x2), _coordVal(y2));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4679
#endif
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4680
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4681
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4682
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4683
glxRectfX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4684
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4685
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4686
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4687
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4688
#else
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4689
    rectf(_coordVal(x1), _coordVal(y1), _coordVal(x2), _coordVal(y2));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4690
#endif
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4691
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4692
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4693
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4694
glxRectfiX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4695
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4696
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4697
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4698
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4699
#else
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4700
    rectfi(_icoordVal(x1), _icoordVal(y1), _icoordVal(x2), _icoordVal(y2));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4701
#endif
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4702
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4703
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4704
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4705
glxRectfsX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4706
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4707
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4708
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4709
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4710
#else
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4711
    rectfs(_scoordVal(x1), _scoordVal(y1), _scoordVal(x2), _scoordVal(y2));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4712
#endif
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4713
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4714
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4715
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4716
glxRectiX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4717
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4718
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4719
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4720
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4721
#else
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4722
    recti(_icoordVal(x1), _icoordVal(y1), _icoordVal(x2), _icoordVal(y2));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4723
#endif
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4724
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4725
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4726
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4727
glxRectsX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4728
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4729
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4730
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4731
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4732
#else
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4733
    rects(_scoordVal(x1), _scoordVal(y1), _scoordVal(x2), _scoordVal(y2));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4734
#endif
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4735
%}
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4736
! !
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  4737
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4738
!GLXWorkstation methodsFor:'spheres'!
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4739
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4740
glxSphDraw:arrayOf4Floats in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4741
    "argument must be an array(a matrix) of 4 floats containing the
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4742
     sphere - in real GL only"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4743
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4744
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4745
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4746
    float vec[4], *v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4747
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  4748
    if (! (v = __glx_getFloatsFromInto(arrayOf4Floats, vec, 4))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4749
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4750
    sphdraw(v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4751
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4752
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4753
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4754
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4755
glxSphDrawX:x y:y z:z radius:r in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4756
    "arguments must be convertable to floats - in real GL only"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4757
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4758
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4759
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4760
    float vec[4];
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4761
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4762
    _FLOAT_(x, vec[0])
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4763
    _FLOAT_(y, vec[1])
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4764
    _FLOAT_(z, vec[2])
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4765
    _FLOAT_(r, vec[3])
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4766
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4767
    sphdraw(vec);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4768
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4769
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4770
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4771
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4772
glxSphfreeIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4773
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4774
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4775
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4776
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4777
    sphfree();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4778
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4779
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4780
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4781
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4782
glxSphgnpolysIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4783
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4784
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4785
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4786
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  4787
    RETURN (__MKSMALLINT(sphgnpolys()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4788
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4789
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4790
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4791
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4792
glxSphmode: attribute value: value in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4793
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4794
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4795
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4796
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4797
    sphmode(__intVal(attribute), __intVal(value));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4798
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4799
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4800
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4801
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4802
glxSphobj: objid in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4803
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4804
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4805
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4806
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4807
    sphobj(_objectVal(objid));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4808
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4809
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4810
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4811
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4812
glxSphrotmatrix: mat in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4813
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4814
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4815
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4816
    Matrix matrix, *m;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4817
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  4818
    if (! (m = __glx_getFloatsFromMatrixInto(mat, &matrix))) RETURN (false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4819
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4820
    sphrotmatrix(*m);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4821
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4822
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4823
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4824
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4825
!GLXWorkstation methodsFor:'stereo extension'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4826
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4827
glxLeftbuffer: bool in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4828
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4829
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4830
#ifdef FULL_GLX
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4831
    SETWIN(aGLXWindowId)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4832
    leftbuffer(_booleanVal(bool));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4833
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4834
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4835
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4836
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4837
glxMonobufferIn: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4838
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4839
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4840
#ifdef FULL_GLX
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4841
    SETWIN(aGLXWindowId)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4842
    monobuffer();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4843
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4844
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4845
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4846
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4847
glxRightbuffer: bool in: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4848
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4849
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4850
#ifdef FULL_GLX
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4851
    SETWIN(aGLXWindowId)
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4852
    rightbuffer(_booleanVal(bool));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4853
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  4854
%}
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4855
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  4856
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4857
stereoExtensionBuffer:aBufferSymbol for:aWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4858
    "set the current stereo buffer; the argument may be one of:
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4859
	#left        -> STEREO_BUFFER_LEFT
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4860
	#right       -> STEREO_BUFFER_RIGHT
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4861
    "
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4862
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4863
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4864
#if defined(XSGIStereo) && defined(GLX)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4865
    Status status;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4866
    int buffer;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4867
    Window win;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4868
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4869
    if (ISCONNECTED
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4870
     && __isExternalAddress(aWindowId)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4871
	win = _WindowVal(aWindowId);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4872
	if (aBufferSymbol == @symbol(left)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4873
	    buffer = STEREO_BUFFER_LEFT;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4874
	} else {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4875
	    if (aBufferSymbol == @symbol(right)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4876
		buffer = STEREO_BUFFER_RIGHT;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4877
	    } else {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4878
		goto bad;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4879
	    }
212
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  4880
	}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4881
	status = XSGISetStereoBuffer(myDpy, win, buffer);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4882
	RETURN ( status ? true : false);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4883
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4884
  bad: ;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4885
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4886
%}.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4887
    self primitiveFailed
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4888
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4889
    "
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4890
     |t v|
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4891
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4892
     t := StandardSystemView new.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4893
     t extent:300@300.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4894
     v := GLXView origin:0.0@0.0 corner:1.0@1.0 in:t.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4895
     t openAndWait.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4896
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4897
     v device stereoExtensionBuffer:#left for:(v id).
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4898
     (Delay forSeconds:10) wait.
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4899
     v device stereoExtensionBuffer:#right for:(v id).
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4900
    "
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4901
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4902
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4903
stereoExtensionMode:aModeSymbol height:h offset:o for:aWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4904
    "set the current stereo mode; the argument may be one of:
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4905
	nil/false #off -> turn it off
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4906
	#bottom        -> STEREO_BOTTOM
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4907
	#top           -> STEREO_TOP
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4908
    "
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4909
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4910
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4911
#if defined(XSGIStereo) && defined(GLX)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4912
    Status status;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4913
    int mode;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4914
    unsigned short us_h, us_o;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4915
    Window win;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4916
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4917
    if (ISCONNECTED
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4918
     && __bothSmallInteger(h, o)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4919
     && __isExternalAddress(aWindowId)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4920
	win = _WindowVal(aWindowId);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4921
	if ((aModeSymbol == nil)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4922
	 || (aModeSymbol == false)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4923
	 || (aModeSymbol == @symbol(off))) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4924
	    mode = STEREO_OFF;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4925
	} else {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4926
	    if (aModeSymbol == @symbol(bottom)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4927
		mode = STEREO_BOTTOM;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4928
	    } else {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4929
		if (aModeSymbol == @symbol(top)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4930
		    mode = STEREO_TOP;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4931
		} else {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4932
		    goto bad;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4933
		}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4934
	    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4935
	}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4936
	us_h = __intVal(h);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4937
	us_o = __intVal(o);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4938
	status = XSGISetStereoMode(myDpy, win, us_h, us_o, mode);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4939
	RETURN ( status ? true : false);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4940
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4941
  bad: ;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4942
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4943
%}.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4944
    self primitiveFailed
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4945
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4946
    "
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4947
     Display stereoExtensionMode:#top height:492 offset:532 for:(Display rootWindowId).
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4948
     (Delay forSeconds:10) wait.
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4949
     Display stereoExtensionMode:#off height:0 offset:0 for:(Display rootWindowId).
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4950
    "
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4951
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4952
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4953
stereoExtensionModeIn:aWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4954
    "return the current stereo mode for some window"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4955
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4956
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4957
#if defined(XSGIStereo) && defined(GLX)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4958
    int mode;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4959
    Window win;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4960
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4961
    if (ISCONNECTED && __isExternalAddress(aWindowId)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4962
	win = _WindowVal(aWindowId);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4963
	mode = XSGIQueryStereoMode(myDpy, win);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4964
	switch (mode) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4965
	    case STEREO_OFF:
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4966
		RETURN ( @symbol(off) );
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4967
	    case STEREO_BOTTOM:
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4968
		RETURN ( @symbol(bottom) );
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4969
	    case STEREO_TOP:
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4970
		RETURN ( @symbol(top) );
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4971
	}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4972
	RETURN ( @symbol(unsupported) );
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4973
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4974
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4975
%}.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4976
    self primitiveFailed
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4977
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4978
    "
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4979
     |v|
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4980
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4981
     v := StandardSystemView new.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4982
     v extent:300@300.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4983
     v openAndWait.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4984
     v device stereoExtensionModeIn:(v id)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4985
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  4986
     Display stereoExtensionModeIn:Display rootWindowId
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4987
    "
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4988
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4989
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4990
stereoExtensionVersion
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4991
    "return the stereo extensions version as an array consisting of
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4992
     major and minor numbers."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4993
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4994
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4995
#if defined(XSGIStereo) && defined(GLX)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4996
    Status status;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4997
    Display *dpy = myDpy;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4998
    int major, minor;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  4999
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5000
    if (ISCONNECTED) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5001
	status = XSGIStereoQueryVersion(myDpy, &major, &minor);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5002
	if (status == True) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5003
	    RETURN ( __ARRAY_WITH2(__MKSMALLINT(major), __MKSMALLINT(minor)));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5004
	}
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  5005
    }
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  5006
#endif
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  5007
%}.
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5008
    self primitiveFailed
185
claus
parents: 169
diff changeset
  5009
claus
parents: 169
diff changeset
  5010
    "
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5011
     Display stereoExtensionVersion
185
claus
parents: 169
diff changeset
  5012
    "
24
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
  5013
! !
e810b1be068b *** empty log message ***
claus
parents: 20
diff changeset
  5014
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5015
!GLXWorkstation methodsFor:'texture data transfer'!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5016
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5017
glxT2d: v in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5018
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5019
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5020
#ifdef GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5021
    double vec[2], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5022
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5023
    if (! (c_v = __glx_getDoublesFromInto(v, vec, 2))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5024
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5025
    t2d(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5026
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5027
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5028
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5029
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5030
glxT2f: v in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5031
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5032
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5033
#ifdef GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5034
    float vec[2], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5035
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5036
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 2))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5037
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5038
    t2f(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5039
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5040
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5041
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5042
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5043
glxT2i: v in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5044
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5045
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5046
#ifdef GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5047
    long vec[2], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5048
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5049
    if (! (c_v = __glx_getLongsFromInto(v, vec, 2))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5050
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5051
    t2i(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5052
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5053
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5054
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5055
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5056
glxT2s: v in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5057
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5058
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5059
#ifdef GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5060
    short vec[2], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5061
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5062
    if (! (c_v = __glx_getShortsFromInto(v, vec, 2))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5063
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5064
    t2s(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5065
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5066
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5067
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5068
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5069
glxT3d:v in:aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5070
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5071
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5072
#ifdef FULL_GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5073
    double vec[3], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5074
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5075
    if (! (c_v = __glx_getDoublesFromInto(v, vec, 3))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5076
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5077
    t3d(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5078
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5079
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5080
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5081
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5082
glxT3f:v in:aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5083
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5084
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5085
#ifdef FULL_GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5086
    float vec[3], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5087
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5088
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 3))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5089
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5090
    t3f(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5091
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5092
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5093
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5094
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5095
glxT3i:v in:aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5096
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5097
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5098
#ifdef FULL_GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5099
    long vec[3], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5100
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5101
    if (! (c_v = __glx_getLongsFromInto(v, vec, 3))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5102
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5103
    t3i(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5104
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5105
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5106
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5107
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5108
glxT3s:v in:aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5109
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5110
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5111
#ifdef FULL_GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5112
    short vec[3], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5113
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5114
    if (! (c_v = __glx_getShortsFromInto(v, vec, 3))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5115
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5116
    t3s(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5117
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5118
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5119
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5120
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5121
glxT4d: v in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5122
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5123
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5124
#ifdef FULL_GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5125
    double vec[4], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5126
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5127
    if (! (c_v = __glx_getDoublesFromInto(v, vec, 4))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5128
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5129
    t4d(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5130
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5131
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5132
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5133
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5134
glxT4f: v in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5135
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5136
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5137
#ifdef FULL_GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5138
    float vec[4], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5139
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5140
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 4))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5141
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5142
    t4f(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5143
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5144
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5145
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5146
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5147
glxT4i: v in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5148
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5149
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5150
#ifdef FULL_GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5151
    long vec[4], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5152
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5153
    if (! (c_v = __glx_getLongsFromInto(v, vec, 4))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5154
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5155
    t4i(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5156
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5157
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5158
!
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5159
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5160
glxT4s: v in: aGLXWindowId
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5161
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5162
%{  /* NOCONTEXT */
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5163
#ifdef FULL_GLX
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5164
    short vec[4], *c_v;
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5165
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5166
    if (! (c_v = __glx_getShortsFromInto(v, vec, 4))) RETURN(false);
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5167
    SETWIN(aGLXWindowId)
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5168
    t4s(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5169
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5170
%}
537
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5171
! !
56ccc83b3ac7 commentary & category changes
Claus Gittinger <cg@exept.de>
parents: 529
diff changeset
  5172
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5173
!GLXWorkstation methodsFor:'transformations'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5174
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5175
glxRotate:angle axis:axis in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5176
    "rotate the current matrix around the axis given by the axis arg,
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5177
     which must be one of the symbols: #x, #y or #z.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5178
     The angle is in degrees."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5179
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5180
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5181
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5182
    char c_axis;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5183
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5184
    if (axis == @symbol(x))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5185
	c_axis = 'x';
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5186
    else if (axis == @symbol(y))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5187
	c_axis = 'y';
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5188
    else if (axis == @symbol(z))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5189
	c_axis = 'z';
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5190
    else {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5191
	RETURN (false);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5192
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5193
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5194
    SETWIN(aGLXWindowId)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5195
    RETURN ( __glx_doRotate(angle, c_axis) );
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5196
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5197
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5198
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5199
glxRotate:arrayOf3Floats in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5200
    "rotate current matrix, given a 3-element vector (or more).
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5201
     The elements of the array are degrees."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5202
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5203
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5204
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5205
    float vec[3], *v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5206
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5207
    if (! (v = __glx_getFloatsFromInto(arrayOf3Floats, vec, 3))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5208
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5209
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5210
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5211
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5212
    rot(v[0], 'x');
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5213
    rot(v[1], 'y');
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5214
    rot(v[2], 'z');
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5215
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5216
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5217
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5218
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5219
glxRotateI:angle axis:axis in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5220
    "rotate the current matrix around the axis given by the axis arg,
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5221
     which must be one of the symbols: #x, #y or #z.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5222
     The angle is an integer specifying tenths of a degree."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5223
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5224
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5225
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5226
    char c_axis;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5227
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5228
    if (axis == @symbol(x))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5229
	c_axis = 'x';
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5230
    else if (axis == @symbol(y))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5231
	c_axis = 'y';
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5232
    else if (axis == @symbol(z))
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5233
	c_axis = 'z';
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5234
    else {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5235
	RETURN (false);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5236
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5237
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5238
    if (__isSmallInteger(angle)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5239
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5240
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5241
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5242
	rotate(__intVal(angle), c_axis);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5243
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5244
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5245
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5246
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5247
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5248
glxRotateIX:angle in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5249
    "rotate the current matrix on x axis.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5250
     The angle is an integer specifying tenths of a degree."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5251
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5252
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5253
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5254
    if (__isSmallInteger(angle)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5255
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5256
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5257
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5258
	rotate(__intVal(angle), 'x');
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5259
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5260
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5261
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5262
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5263
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5264
glxRotateIX:xAngle y:yAngle z:zAngle in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5265
    "rotate the current matrix on all axes, given individual x, y and z values.
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5266
     The values are smallIntegers specifying tenths of a degree."
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5267
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5268
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5269
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5270
    if (__bothSmallInteger(xAngle, yAngle)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5271
     && __isSmallInteger(zAngle)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5272
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5273
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5274
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5275
	rotate(__intVal(xAngle), 'x');
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5276
	rotate(__intVal(yAngle), 'y');
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5277
	rotate(__intVal(zAngle), 'z');
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5278
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5279
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5280
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5281
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5282
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5283
glxRotateIY:angle in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5284
    "rotate the current matrix on x axis.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5285
     The angle is an integer specifying tenths of a degree."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5286
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5287
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5288
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5289
    if (__isSmallInteger(angle)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5290
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5291
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5292
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5293
	rotate(__intVal(angle), 'y');
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5294
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5295
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5296
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5297
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5298
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5299
glxRotateIZ:angle in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5300
    "rotate the current matrix on x axis.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5301
     The angle is an integer specifying tenths of a degree."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5302
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5303
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5304
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5305
    if (__isSmallInteger(angle)) {
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5306
	SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5307
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5308
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5309
	rotate(__intVal(angle), 'z');
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5310
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5311
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5312
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5313
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5314
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5315
glxRotateX:angle in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5316
    "rotate the current matrix on x axis.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5317
     The angle is in degrees."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5318
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5319
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5320
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5321
    SETWIN(aGLXWindowId)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5322
    RETURN (__glx_doRotate(angle, 'x'));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5323
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5324
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5325
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5326
glxRotateX:xAngle y:yAngle z:zAngle in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5327
    "rotate the current matrix on all axes, given individual x, y and z values.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5328
     The values are in degrees"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5329
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5330
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5331
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5332
    SETWIN(aGLXWindowId)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5333
    if ( __glx_doRotate(xAngle, 'x') == true) {
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5334
	if ( __glx_doRotate(yAngle, 'y') == true) {
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5335
	    RETURN (__glx_doRotate(zAngle, 'z'));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5336
	}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5337
    }
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5338
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5339
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5340
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5341
glxRotateY:angle in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5342
    "rotate the current matrix on y axis.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5343
     The angle is in degrees."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5344
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5345
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5346
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5347
    SETWIN(aGLXWindowId)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5348
    RETURN (__glx_doRotate(angle, 'y'));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5349
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5350
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5351
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5352
glxRotateZ:angle in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5353
    "rotate the current matrix on z axis.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5354
     The angle is in degrees."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5355
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5356
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5357
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5358
    SETWIN(aGLXWindowId)
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5359
    RETURN (__glx_doRotate(angle, 'z'));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5360
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5361
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5362
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5363
glxScale:arrayOf3Floats in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5364
    "scale current matrix, given a 3-element vector"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5365
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5366
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5367
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5368
    float vec[3], *v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5369
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5370
    if (! (v = __glx_getFloatsFromInto(arrayOf3Floats, vec, 3))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5371
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5372
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5373
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5374
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5375
    scale(v[0], v[1], v[2]);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5376
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5377
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5378
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5379
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5380
glxScaleX:x in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5381
    "scale in x direction"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5382
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5383
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5384
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5385
    float f_x;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5386
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5387
    _FLOAT_ (x, f_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5388
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5389
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5390
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5391
    scale(f_x, (float)0, (float)0);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5392
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5393
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5394
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5395
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5396
glxScaleX:x y:y z:z in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5397
    "scale & mirror current matrix, given individual x, y and z values"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5398
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5399
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5400
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5401
    float f_x, f_y, f_z;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5402
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5403
    _FLOAT_ (x, f_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5404
    _FLOAT_ (y, f_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5405
    _FLOAT_ (z, f_z)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5406
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5407
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5408
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5409
    scale(f_x, f_y, f_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5410
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5411
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5412
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5413
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5414
glxScaleY:y in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5415
    "scale in y direction"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5416
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5417
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5418
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5419
    float f_y;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5420
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5421
    _FLOAT_ (y, f_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5422
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5423
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5424
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5425
    scale((float)0, f_y, (float)0);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5426
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5427
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5428
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5429
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5430
glxScaleZ:z in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5431
    "scale in z direction"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5432
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5433
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5434
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5435
    float f_z;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5436
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5437
    _FLOAT_ (z, f_z)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5438
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5439
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5440
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5441
    scale((float)0, (float)0, f_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5442
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5443
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5444
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5445
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5446
glxTranslate:arrayOf3Floats in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5447
    "translate current matrix, given a 3-element vector"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5448
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5449
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5450
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5451
    float vec[3], *v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5452
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5453
    if (! (v = __glx_getFloatsFromInto(arrayOf3Floats, vec, 3))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5454
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5455
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5456
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5457
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5458
    translate((Coord)(v[0]), (Coord)(v[1]), (Coord)(v[2]));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5459
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5460
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5461
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5462
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5463
glxTranslateX:x in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5464
    "translate current matrix on X axis"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5465
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5466
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5467
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5468
    Coord c_x;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5469
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5470
    _COORD_ (x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5471
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5472
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5473
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5474
    translate(c_x, (Coord)0, (Coord)0);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5475
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5476
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5477
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5478
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5479
glxTranslateX:x y:y z:z in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5480
    "translate current matrix, given individual x, y and z values"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5481
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5482
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5483
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5484
    Coord c_x, c_y, c_z;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5485
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5486
    _COORD_ (x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5487
    _COORD_ (y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5488
    _COORD_ (z, c_z)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5489
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5490
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5491
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5492
    translate(c_x, c_y, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5493
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5494
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5495
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5496
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5497
glxTranslateY:y in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5498
    "translate current matrix on Y axis"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5499
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5500
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5501
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5502
    Coord c_y;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5503
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5504
    _COORD_ (y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5505
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5506
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5507
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5508
    translate((Coord)0, c_y, (Coord)0);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5509
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5510
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5511
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5512
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5513
glxTranslateZ:z in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5514
    "translate current matrix on Z axis"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5515
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5516
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5517
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5518
    Coord c_z;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5519
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5520
    _COORD_ (z, c_z)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5521
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5522
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5523
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5524
    translate((Coord)0, (Coord)0, c_z);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5525
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5526
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5527
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5528
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5529
!GLXWorkstation methodsFor:'unspecified rest'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5530
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5531
glxAcbufOp:op value:value in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5532
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5533
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5534
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5535
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5536
    acbuf(__intVal(op), _floatVal(value));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5537
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5538
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5539
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5540
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5541
glxAcsizePlanes: planes in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5542
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5543
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5544
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5545
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5546
    acsize(__intVal(planes));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5547
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5548
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5549
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5550
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5551
glxAfunctionRef: ref func: func in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5552
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5553
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5554
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5555
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5556
    afunction(__intVal(ref), __intVal(func));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5557
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5558
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5559
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5560
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5561
glxBbox2Xmin: xmin ymin: ymin x1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5562
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5563
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5564
    Screencoord c_xmin, c_ymin;
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  5565
    Coord c_x1, c_y1, c_x2, c_y2;
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5566
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5567
    _SCREENCOORD_ (xmin, c_xmin)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5568
    _SCREENCOORD_ (ymin, c_ymin)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5569
    _COORD_ (x1, c_x1)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5570
    _COORD_ (y1, c_y1)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5571
    _COORD_ (x2, c_x2)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5572
    _COORD_ (y2, c_y2)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5573
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5574
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5575
    bbox2(c_xmin, c_ymin, c_x1, c_y1, c_x2, c_y2);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5576
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5577
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5578
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5579
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5580
glxBbox2iXmin: xmin ymin: ymin x1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5581
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5582
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5583
    Screencoord c_xmin, c_ymin;
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  5584
    Icoord c_x1, c_y1, c_x2, c_y2;
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5585
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5586
    _SCREENCOORD_ (xmin, c_xmin)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5587
    _SCREENCOORD_ (ymin, c_ymin)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5588
    _ICOORD_ (x1, c_x1)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5589
    _ICOORD_ (y1, c_y1)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5590
    _ICOORD_ (x2, c_x2)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5591
    _ICOORD_ (y2, c_y2)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5592
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5593
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5594
    bbox2i(c_xmin, c_ymin, c_x1, c_y1, c_x2, c_y2);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5595
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5596
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5597
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5598
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5599
glxBbox2sXmin: xmin ymin: ymin x1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5600
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5601
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5602
    Screencoord c_xmin, c_ymin;
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  5603
    Scoord c_x1, c_y1, c_x2, c_y2;
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5604
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5605
    _SCREENCOORD_ (xmin, c_xmin)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5606
    _SCREENCOORD_ (ymin, c_ymin)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5607
    _SCOORD_ (x1, c_x1)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5608
    _SCOORD_ (y1, c_y1)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5609
    _SCOORD_ (x2, c_x2)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5610
    _SCOORD_ (y2, c_y2)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5611
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5612
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5613
    bbox2s(c_xmin, c_ymin, c_x1, c_y1, c_x2, c_y2);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5614
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5615
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5616
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5617
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5618
glxBeginTrimIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5619
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5620
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5621
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5622
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5623
    bgntrim();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5624
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5625
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5626
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5627
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5628
glxBlankscreen: b in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5629
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5630
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5631
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5632
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5633
    blankscreen(_booleanVal(b));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5634
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5635
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5636
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5637
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5638
glxBlanktime: count in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5639
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5640
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5641
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5642
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5643
    blanktime(__intVal(count));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5644
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5645
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5646
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5647
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5648
glxBlendcolorRed: red green: green blue: blue alpha: alpha in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5649
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5650
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5651
    SETWIN(aGLXWindowId)
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5652
#ifdef FULL_GLX
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  5653
    blendcolor(_floatVal(red), _floatVal(green), _floatVal(blue), _floatVal(alpha));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5654
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5655
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5656
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5657
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5658
glxBlendfunctionSfactr: sfactr dfactr: dfactr in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5659
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5660
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5661
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5662
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5663
    blendfunction(__intVal(sfactr), __intVal(dfactr));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5664
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5665
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5666
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5667
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5668
glxBlinkRate: rate i: i red: red green: green blue: blue in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5669
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5670
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5671
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5672
#ifdef GLX
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  5673
    blink(_shortVal(rate), _colorindexVal(i),
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5674
	  _shortVal(red), _shortVal(green), _shortVal(blue));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5675
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5676
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5677
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5678
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5679
glxBlkqreadData: data n: n in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5680
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5681
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5682
    int rslt = -1;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5683
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5684
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5685
#ifdef GLX
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5686
    rslt = blkqread((short *)_indexedArea(data), __intVal(n));
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5687
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5688
    RETURN (__MKSMALLINT(rslt));
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5689
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5690
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5691
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5692
glxC3f: v in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5693
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5694
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5695
    float vec[3], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5696
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5697
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 3))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5698
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5699
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5700
    c3f(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5701
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5702
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5703
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5704
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5705
glxC3i: v in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5706
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5707
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5708
    long vec[3], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5709
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5710
    if (! (c_v = __glx_getLongsFromInto(v, vec, 3))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5711
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5712
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5713
    c3i(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5714
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5715
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5716
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5717
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5718
glxC3s: v in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5719
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5720
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5721
    short vec[3], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5722
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5723
    if (! (c_v = __glx_getShortsFromInto(v, vec, 3))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5724
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5725
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5726
    c3s(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5727
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5728
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5729
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5730
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5731
glxC4f: v in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5732
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5733
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5734
    float vec[4], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5735
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5736
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 4))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5737
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5738
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5739
    c4f(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5740
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5741
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5742
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5743
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5744
glxC4i: v in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5745
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5746
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5747
    long vec[4], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5748
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5749
    if (! (c_v = __glx_getLongsFromInto(v, vec, 4))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5750
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5751
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5752
    c4i(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5753
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5754
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5755
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5756
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5757
glxC4s: v in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5758
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5759
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5760
    short vec[4], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5761
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5762
    if (! (c_v = __glx_getShortsFromInto(v, vec, 4))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5763
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5764
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5765
    c4s(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5766
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5767
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5768
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5769
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5770
glxClearhitcodeIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5771
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5772
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5773
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5774
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5775
    clearhitcode();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5776
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5777
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5778
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5779
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5780
glxClipplaneIndex: index mode: mode params: params in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5781
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5782
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5783
    float vec[4], *v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5784
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  5785
    if (! (v = __glx_getFloatsFromInto(params, vec, 4))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5786
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5787
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5788
    clipplane(__intVal(index), __intVal(mode), v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5789
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5790
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5791
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5792
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5793
glxCmodeIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5794
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5795
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5796
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5797
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5798
    cmode();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5799
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5800
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5801
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5802
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5803
glxColorfIndex: index in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5804
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5805
    ^self glxColor: index in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5806
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5807
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5808
glxCuroriginN: n xorigin: xorigin yorigin: yorigin in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5809
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5810
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5811
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5812
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5813
    curorigin(_shortVal(n), _shortVal(xorigin), _shortVal(yorigin));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5814
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5815
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5816
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5817
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5818
glxCursoffIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5819
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5820
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5821
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5822
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5823
    cursoff();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5824
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5825
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5826
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5827
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5828
glxCursonIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5829
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5830
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5831
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5832
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5833
    curson();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5834
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5835
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5836
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5837
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5838
glxCurstype: type in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5839
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5840
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5841
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5842
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5843
    curstype(__intVal(type));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5844
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5845
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5846
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5847
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5848
glxCyclemapDuration: duration map: map nxtmap: nxtmap in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5849
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5850
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5851
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5852
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5853
    cyclemap(_shortVal(duration), _shortVal(map), _shortVal(nxtmap));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5854
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5855
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5856
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5857
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5858
glxDefpatternN: n size: size mask: mask in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5859
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5860
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5861
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5862
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5863
    defpattern(_shortVal(n), _shortVal(size), (unsigned short *)_indexedArea(mask));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5864
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5865
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5866
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5867
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5868
glxDeltag: t in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5869
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5870
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5871
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5872
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5873
    deltag(_tagVal(t));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5874
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5875
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5876
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5877
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5878
glxDepthcueMode: mode in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5879
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5880
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5881
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5882
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5883
    depthcue(_booleanVal(mode));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5884
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5885
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5886
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5887
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5888
glxDitherMode: mode in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5889
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5890
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5891
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5892
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5893
    dither(_longVal(mode));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5894
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5895
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5896
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5897
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5898
glxDopup: pup in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5899
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5900
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5901
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5902
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5903
    dopup(_longVal(pup));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5904
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5905
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5906
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5907
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5908
glxDrawmode: mode in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5909
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5910
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5911
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5912
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5913
    drawmode(_longVal(mode));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5914
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5915
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5916
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5917
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5918
glxEditobj: obj in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5919
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5920
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5921
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5922
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5923
    editobj(_objectVal(obj));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5924
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5925
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5926
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5927
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5928
glxEndTrimIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5929
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5930
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5931
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5932
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5933
    endtrim();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5934
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5935
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5936
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5937
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5938
glxEndfullscrnIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5939
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5940
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5941
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5942
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5943
    endfullscrn();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5944
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5945
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5946
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5947
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5948
glxEndpupmodeIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5949
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5950
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5951
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5952
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5953
    endpupmode();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5954
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5955
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5956
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5957
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5958
glxFinishIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5959
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5960
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5961
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5962
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5963
    finish();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5964
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5965
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5966
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5967
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5968
glxFont: fntnum in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5969
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5970
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5971
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5972
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5973
    font(_shortVal(fntnum));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5974
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5975
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5976
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5977
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5978
glxForegroundIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5979
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5980
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5981
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5982
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5983
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5984
    foreground();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5985
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5986
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5987
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5988
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5989
glxFreepup: pup in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5990
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5991
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5992
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5993
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5994
    freepup(_longVal(pup));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5995
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  5996
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5997
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5998
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  5999
glxFudgeXfudge: xfudge yfudge: yfudge in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6000
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6001
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6002
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6003
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6004
    fudge(_longVal(xfudge), _longVal(yfudge));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6005
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6006
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6007
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6008
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6009
glxFullscrnIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6010
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6011
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6012
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6013
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6014
    fullscrn();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6015
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6016
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6017
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6018
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6019
glxGbeginIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6020
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6021
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6022
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6023
#ifdef GLX
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6024
    gbegin();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6025
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6026
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6027
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6028
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6029
glxGentagIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6030
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6031
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6032
    int rslt = -1;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6033
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6034
#ifdef GLX
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6035
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6036
    rslt = gentag();
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6037
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6038
    RETURN (__MKSMALLINT(rslt));
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6039
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6040
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6041
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6042
glxGetbackfaceIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6043
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6044
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6045
    int rslt = -1;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6046
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6047
#ifdef GLX
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6048
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6049
    rslt = getbackface();
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6050
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6051
    RETURN (__MKSMALLINT(rslt));
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6052
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6053
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6054
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6055
glxGetbufferIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6056
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6057
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6058
    int rslt = -1;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6059
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6060
#ifdef GLX
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6061
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6062
    rslt = getbuffer();
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6063
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6064
    RETURN (__MKSMALLINT(rslt));
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6065
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6066
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6067
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6068
glxGetbutton: num in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6069
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6070
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6071
    int rslt = -1;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6072
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6073
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6074
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6075
#else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6076
    rslt = getbutton(_deviceVal(num));
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6077
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6078
    RETURN (__MKSMALLINT(rslt));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6079
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6080
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6081
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6082
glxGetcmmodeIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6083
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6084
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6085
    int rslt = 0;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6086
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6087
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6088
#ifdef GLX
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6089
    rslt = getcmmode();
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6090
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6091
    RETURN (__MKBOOLEAN(rslt));
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6092
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6093
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6094
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6095
glxGetcolorIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6096
    "return the current drawing color"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6097
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6098
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6099
    int rslt = -1;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6100
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6101
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6102
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6103
#else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6104
    rslt = getcolor();
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6105
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6106
    RETURN (__MKSMALLINT(rslt));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6107
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6108
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6109
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6110
glxGetdcmIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6111
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6112
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6113
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6114
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6115
    RETURN (__MKBOOLEAN(getdcm()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6116
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6117
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6118
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6119
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6120
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6121
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6122
glxGetdescenderIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6123
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6124
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6125
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6126
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6127
    RETURN (__MKSMALLINT(getdescender()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6128
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6129
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6130
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6131
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6132
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6133
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6134
glxGetdisplaymodeIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6135
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6136
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6137
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6138
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6139
    RETURN (__MKSMALLINT(getdisplaymode()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6140
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6141
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6142
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6143
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6144
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6145
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6146
glxGetdrawmodeIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6147
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6148
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6149
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6150
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6151
    RETURN (__MKSMALLINT(getdrawmode()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6152
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6153
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6154
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6155
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6156
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6157
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6158
glxGetfontIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6159
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6160
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6161
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6162
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6163
    RETURN (__MKSMALLINT(getfont()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6164
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6165
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6166
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6167
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6168
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6169
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6170
glxGetgconfigBuffer: buffer in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6171
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6172
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6173
#ifdef FULL_GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6174
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6175
    RETURN (__MKSMALLINT(getgconfig(_longVal(buffer))));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6176
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6177
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6178
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6179
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6180
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6181
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6182
glxGetgdescInquiry: inquiry in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6183
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6184
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6185
    int rslt = 0;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6186
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6187
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6188
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6189
#else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6190
    rslt = getgdesc(_longVal(inquiry));
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6191
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6192
    RETURN (__MKSMALLINT(rslt));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6193
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6194
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6195
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6196
glxGetheightIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6197
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6198
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6199
    int rslt = 0;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6200
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6201
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6202
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6203
#else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6204
    rslt = getheight();
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6205
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6206
    RETURN (__MKSMALLINT(rslt));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6207
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6208
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6209
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6210
glxGethitcodeIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6211
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6212
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6213
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6214
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6215
    RETURN (__MKSMALLINT(gethitcode()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6216
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6217
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6218
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6219
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6220
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6221
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6222
glxGetlsbackupIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6223
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6224
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6225
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6226
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6227
    RETURN (__MKBOOLEAN(getlsbackup()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6228
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6229
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6230
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6231
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6232
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6233
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6234
glxGetlsrepeatIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6235
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6236
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6237
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6238
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6239
    RETURN (__MKSMALLINT(getlsrepeat()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6240
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6241
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6242
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6243
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6244
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6245
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6246
glxGetlstyleIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6247
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6248
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6249
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6250
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6251
    RETURN (__MKSMALLINT(getlstyle()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6252
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6253
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6254
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6255
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6256
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6257
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6258
glxGetlwidthIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6259
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6260
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6261
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6262
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6263
    RETURN (__MKSMALLINT(getlwidth()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6264
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6265
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6266
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6267
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6268
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6269
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6270
glxGetmapIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6271
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6272
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6273
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6274
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6275
    RETURN (__MKSMALLINT(getmap()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6276
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6277
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6278
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6279
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6280
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6281
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6282
glxGetmmodeIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6283
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6284
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6285
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6286
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6287
    RETURN (__MKSMALLINT(getmmode()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6288
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6289
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6290
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6291
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6292
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6293
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6294
glxGetmonitorIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6295
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6296
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6297
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6298
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6299
    RETURN (__MKSMALLINT(getmonitor()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6300
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6301
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6302
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6303
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6304
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6305
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6306
glxGetmultisampleIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6307
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6308
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6309
#ifdef FULL_GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6310
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6311
    RETURN (__MKBOOLEAN(getmultisample()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6312
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6313
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6314
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6315
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6316
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6317
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6318
glxGetothermonitorIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6319
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6320
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6321
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6322
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6323
    RETURN (__MKSMALLINT(getothermonitor()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6324
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6325
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6326
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6327
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6328
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6329
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6330
glxGetpatternIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6331
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6332
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6333
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6334
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6335
    RETURN (__MKSMALLINT(getpattern()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6336
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6337
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6338
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6339
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6340
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6341
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6342
glxGetresetlsIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6343
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6344
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6345
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6346
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6347
    RETURN (__MKBOOLEAN(getresetls()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6348
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6349
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6350
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6351
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6352
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6353
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6354
glxGetshadeIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6355
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6356
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6357
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6358
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6359
    RETURN (__MKSMALLINT(getshade()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6360
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6361
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6362
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6363
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6364
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6365
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6366
glxGetsmIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6367
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6368
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6369
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6370
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6371
    RETURN (__MKSMALLINT(getsm()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6372
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6373
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6374
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6375
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6376
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6377
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6378
glxGetvaluator: dev in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6379
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6380
%{  /* NOCONTEXT */
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  6381
#ifndef OPENGL
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6382
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6383
    RETURN (__MKSMALLINT(getvaluator(_deviceVal(dev))));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  6384
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6385
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6386
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6387
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6388
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6389
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6390
glxGetvideo: reg in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6391
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6392
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6393
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6394
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6395
    RETURN (__MKSMALLINT(getvideo(_longVal(reg))));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6396
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6397
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6398
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6399
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6400
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6401
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6402
glxGetwritemaskIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6403
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6404
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6405
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6406
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6407
    RETURN (__MKSMALLINT(getwritemask()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6408
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6409
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6410
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6411
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6412
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6413
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6414
glxGetwscrnIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6415
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6416
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6417
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6418
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6419
    RETURN (__MKSMALLINT(getwscrn()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6420
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6421
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6422
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6423
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6424
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6425
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6426
glxGetzbufferIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6427
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6428
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6429
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6430
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6431
    RETURN (__MKBOOLEAN(getzbuffer()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6432
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6433
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6434
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6435
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6436
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6437
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6438
glxGexitIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6439
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6440
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6441
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6442
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6443
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6444
    gexit();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6445
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6446
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6447
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6448
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6449
glxGflushIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6450
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6451
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6452
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6453
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6454
    gflush();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6455
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6456
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6457
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6458
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6459
glxGinitIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6460
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6461
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6462
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6463
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6464
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6465
    ginit();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6466
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6467
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6468
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6469
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6470
glxGlcompatMode: mode value: value in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6471
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6472
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6473
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6474
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6475
    glcompat(_longVal(mode), _longVal(value));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6476
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6477
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6478
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6479
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6480
glxGresetIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6481
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6482
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6483
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6484
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6485
    greset();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6486
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6487
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6488
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6489
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6490
glxGsyncIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6491
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6492
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6493
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6494
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6495
    gsync();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6496
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6497
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6498
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6499
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6500
glxIconsizeX: x y: y in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6501
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6502
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6503
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6504
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6505
    iconsize(_longVal(x), _longVal(y));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6506
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6507
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6508
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6509
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6510
glxImakebackgroundIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6511
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6512
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6513
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6514
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6515
    imakebackground();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6516
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6517
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6518
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6519
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6520
glxInitnamesIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6521
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6522
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6523
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6524
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6525
    initnames();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6526
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  6527
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6528
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6529
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6530
glxIsqueued: dev in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6531
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6532
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6533
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6534
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6535
    RETURN (__MKBOOLEAN(isqueued(_deviceVal(dev))));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6536
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6537
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6538
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6539
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6540
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6541
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6542
glxIstag: t in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6543
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6544
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6545
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6546
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6547
    RETURN (__MKBOOLEAN(istag(_tagVal(t))));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6548
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6549
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6550
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6551
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6552
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6553
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6554
glxKeepaspectX: x y: y in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6555
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6556
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6557
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6558
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6559
    keepaspect(_longVal(x), _longVal(y));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6560
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6561
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6562
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6563
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6564
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6565
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6566
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6567
glxLinesmoothMode: mode in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6568
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6569
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6570
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6571
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6572
    linesmooth((ulong)__intVal(mode));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6573
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6574
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6575
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6576
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6577
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6578
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6579
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6580
glxLmcolorMode: mode in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6581
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6582
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6583
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6584
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6585
    lmcolor(_longVal(mode));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6586
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6587
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6588
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6589
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6590
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6591
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6592
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6593
glxLoadname: name in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6594
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6595
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6596
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6597
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6598
    loadname(_shortVal(name));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6599
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6600
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6601
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6602
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6603
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6604
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6605
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6606
glxLogicop: opcode in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6607
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6608
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6609
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6610
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6611
    logicop(_longVal(opcode));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6612
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6613
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6614
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6615
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6616
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6617
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6618
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6619
glxLsbackup: b in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6620
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6621
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6622
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6623
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6624
    lsbackup(_booleanVal(b));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6625
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6626
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6627
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6628
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6629
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6630
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6631
2422
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  6632
glxLsetdepthNear:znear far:zfar in: aGLXWindowId
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  6633
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  6634
%{  /* NOCONTEXT */
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  6635
#ifdef GLX
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  6636
    SETWIN(aGLXWindowId)
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  6637
    lsetdepth(_longVal(znear), _longVal(zfar));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6638
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6639
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6640
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6641
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6642
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6643
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6644
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6645
glxLshaderangeLowin: lowin hiwin: hiwin znear: znear zfar: zfar in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6646
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6647
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6648
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6649
    SETWIN(aGLXWindowId)
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  6650
    lshaderange(_colorindexVal(lowin), _colorindexVal(hiwin),
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6651
	_longVal(znear), _longVal(zfar));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6652
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6653
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6654
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6655
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6656
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6657
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6658
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6659
glxLsrepeatFactor: factor in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6660
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6661
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6662
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6663
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6664
    lsrepeat(_longVal(factor));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6665
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6666
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6667
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6668
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6669
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6670
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6671
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6672
glxMaketag: t in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6673
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6674
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6675
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6676
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6677
    maketag(_tagVal(t));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6678
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6679
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6680
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6681
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6682
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6683
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6684
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6685
glxMaxsizeX: x y: y in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6686
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6687
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6688
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6689
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6690
    maxsize(_longVal(x), _longVal(y));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6691
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6692
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6693
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6694
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6695
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6696
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6697
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6698
glxMinsizeX: x y: y in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6699
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6700
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6701
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6702
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6703
    minsize(_longVal(x), _longVal(y));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6704
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6705
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6706
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6707
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6708
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6709
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6710
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6711
glxMsalphaMode: mode in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6712
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6713
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6714
#ifdef FULL_GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6715
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6716
    msalpha(_longVal(mode));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6717
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6718
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6719
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6720
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6721
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6722
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6723
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6724
glxMsmask: mask inverse: inverse in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6725
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6726
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6727
#ifdef FULL_GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6728
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6729
    msmask(_floatVal(mask), _booleanVal(inverse));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6730
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6731
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6732
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6733
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6734
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6735
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6736
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6737
glxMspattern: pattern in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6738
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6739
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6740
#ifdef FULL_GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6741
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6742
    mspattern(_longVal(pattern));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6743
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6744
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6745
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6746
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6747
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6748
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6749
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6750
glxMssizeSamples: samples zsize: zsize ssize: ssize in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6751
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6752
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6753
#ifdef FULL_GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6754
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6755
    mssize(_longVal(samples), _longVal(zsize), _longVal(ssize));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6756
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6757
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6758
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6759
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6760
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6761
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6762
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6763
glxMswapbuffers: fbuf in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6764
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6765
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6766
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6767
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6768
    mswapbuffers(_longVal(fbuf));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6769
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6770
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6771
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6772
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6773
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6774
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6775
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6776
glxMultimapIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6777
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6778
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6779
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6780
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6781
    multimap();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6782
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6783
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6784
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6785
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6786
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6787
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6788
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6789
glxMultisample: bool in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6790
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6791
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6792
#ifdef FULL_GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6793
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6794
    multisample(_booleanVal(bool));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6795
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6796
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6797
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6798
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6799
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6800
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6801
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6802
glxNewpupIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6803
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6804
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6805
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6806
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  6807
    RETURN (__MKSMALLINT(newpup()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6808
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6809
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6810
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6811
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6812
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6813
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6814
glxNewtag: newtg oldtg: oldtg offst: offst in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6815
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6816
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6817
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6818
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6819
    newtag(_tagVal(newtg), _tagVal(oldtg), _offsetVal(offst));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6820
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6821
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6822
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6823
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6824
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6825
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6826
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6827
glxNoborderIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6828
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6829
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6830
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6831
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6832
    noborder();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6833
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6834
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6835
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6836
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6837
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6838
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6839
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6840
glxNoise: v delta: delta in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6841
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6842
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6843
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6844
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6845
    noise(_deviceVal(v), _shortVal(delta));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6846
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6847
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6848
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6849
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6850
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6851
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6852
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6853
glxNoportIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6854
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6855
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6856
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6857
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6858
    noport();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6859
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6860
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6861
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6862
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6863
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6864
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6865
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6866
glxNurbscurveKnotCount: knotCount knotList: knotList
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  6867
    offset: offset ctlArray: ctlArray
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6868
    order: order type: type in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6869
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6870
    | ctlPoints i |
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6871
    ctlPoints := DoubleArray new: ctlArray size * (ctlArray first size).
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6872
    i := 1.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6873
    ctlArray do: [:point |
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  6874
	point do: [:coord |
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6875
	    ctlPoints at: i put: coord.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6876
	    i := i + 1]].
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6877
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6878
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6879
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6880
    char *knotElements, *ctlElements;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6881
    OBJ cls;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6882
    int ninstVars, nInstBytes;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6883
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6884
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6885
    cls = __qClass(ctlPoints);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6886
    ninstVars = __intVal(_ClassInstPtr(cls)->c_ninstvars);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6887
    nInstBytes = OHDR_SIZE + ninstVars * sizeof(OBJ);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6888
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6889
    ctlElements = (char *)(_InstPtr(ctlPoints)) + nInstBytes;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6890
    knotElements = (char *)(_InstPtr(knotList)) + nInstBytes;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6891
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6892
    nurbscurve (
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6893
	_longVal(knotCount), (double *)knotElements,
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  6894
	_longVal(offset), (double *)ctlElements,
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6895
	_longVal(order), _longVal(type));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6896
    RETURN(true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6897
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6898
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6899
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6900
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6901
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6902
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6903
glxObjdeleteTag1: tag1 tag2: tag2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6904
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6905
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6906
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6907
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6908
    objdelete(_tagVal(tag1), _tagVal(tag2));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6909
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6910
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6911
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6912
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6913
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6914
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6915
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6916
glxObjinsert: t in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6917
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6918
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6919
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6920
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6921
    objinsert(_tagVal(t));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6922
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6923
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6924
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6925
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6926
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6927
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6928
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6929
glxObjreplace: t in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6930
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6931
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6932
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6933
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6934
    objreplace(_tagVal(t));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6935
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6936
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6937
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6938
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6939
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6940
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6941
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6942
glxOnemapIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6943
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6944
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6945
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6946
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6947
    onemap();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6948
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6949
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6950
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6951
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6952
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6953
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6954
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6955
glxPagecolor: pcolor in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6956
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6957
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6958
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6959
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6960
    pagecolor(_colorindexVal(pcolor));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6961
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6962
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6963
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6964
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6965
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6966
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6967
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6968
glxPassthroughToken: token in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6969
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6970
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6971
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6972
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6973
    passthrough(_shortVal(token));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6974
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6975
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6976
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6977
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6978
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6979
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6980
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6981
glxPclosIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6982
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6983
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6984
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6985
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6986
    pclos();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6987
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6988
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6989
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6990
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6991
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6992
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6993
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6994
glxPicksizeX: x y: y in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6995
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6996
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6997
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6998
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  6999
    picksize(_shortVal(x), _shortVal(y));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7000
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7001
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7002
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7003
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7004
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7005
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7006
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7007
glxPixmode: mode value: value in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7008
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7009
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7010
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7011
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7012
    pixmode(_longVal(mode), _longVal(value));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7013
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7014
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7015
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7016
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7017
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7018
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7019
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7020
glxPntsmoothMode: mode in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7021
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7022
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7023
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7024
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7025
    pntsmooth((ulong)__intVal(mode));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7026
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7027
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7028
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7029
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7030
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7031
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7032
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7033
glxPolysmoothMode: mode in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7034
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7035
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7036
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7037
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7038
    polysmooth(_longVal(mode));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7039
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7040
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7041
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7042
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7043
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7044
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7045
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7046
glxPopnameIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7047
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7048
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7049
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7050
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7051
    popname();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7052
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7053
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7054
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7055
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7056
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7057
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7058
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7059
glxPrefpositionX1: x1 x2: x2 y1: y1 y2: y2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7060
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7061
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7062
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7063
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7064
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7065
    prefposition(_longVal(x1), _longVal(x2), _longVal(y1), _longVal(y2));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7066
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7067
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7068
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7069
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7070
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7071
glxPrefsizeX: x y: y in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7072
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7073
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7074
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7075
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7076
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7077
    prefsize(_longVal(x), _longVal(y));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7078
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7079
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7080
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7081
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7082
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7083
glxPupmodeIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7084
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7085
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7086
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7087
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7088
    pupmode();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7089
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7090
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7091
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7092
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7093
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7094
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7095
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7096
glxPushname: name In: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7097
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7098
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7099
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7100
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7101
    pushname(_shortVal(name));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7102
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7103
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7104
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7105
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7106
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7107
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7108
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7109
glxQdevice: dev in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7110
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7111
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7112
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7113
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7114
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7115
    qdevice(_deviceVal(dev));
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  7116
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7117
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7118
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7119
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7120
glxQenterDev: dev val: val in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7121
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7122
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7123
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7124
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7125
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7126
    qenter(_deviceVal(dev), _shortVal(val));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7127
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7128
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7129
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7130
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7131
glxQgetfdIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7132
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7133
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7134
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7135
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  7136
    RETURN (__MKSMALLINT(qgetfd()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7137
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7138
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7139
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7140
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7141
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7142
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7143
glxQreadIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7144
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7145
    | dev data |
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  7146
%{
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7147
    short c_data;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7148
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7149
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7150
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7151
#else
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  7152
    dev = __MKSMALLINT(qread(&c_data));
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  7153
    data = __MKSMALLINT(c_data);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7154
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7155
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7156
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7157
    ^ Array with: dev with: data
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7158
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7159
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7160
glxQresetIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7161
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7162
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7163
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7164
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7165
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7166
    qreset();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7167
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7168
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7169
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7170
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7171
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7172
glxQtestIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7173
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7174
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7175
    int rslt = 0;
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7176
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7177
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7178
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7179
#else
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7180
    rslt = qtest();
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7181
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7182
    RETURN (__MKSMALLINT(rslt));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7183
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7184
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7185
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  7186
glxRGBcursorIndex: index red: red green: green blue: blue
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7187
    redm: redm greenm: greenm bluem: bluem in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7188
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7189
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7190
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7191
    SETWIN(aGLXWindowId)
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  7192
    RGBcursor(_shortVal(index),
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  7193
	_shortVal(red), _shortVal(green), _shortVal(blue),
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7194
	_shortVal(redm), _shortVal(greenm), _shortVal(bluem));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7195
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7196
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7197
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7198
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7199
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7200
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7201
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7202
glxRGBwritemaskRed: red green: green blue: blue in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7203
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7204
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7205
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7206
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7207
    RGBwritemask(_shortVal(red), _shortVal(green), _shortVal(blue));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7208
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7209
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7210
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7211
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7212
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7213
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7214
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7215
glxRectzoomX: xfactor y: yfactor in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7216
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7217
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7218
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7219
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7220
    rectzoom(_floatVal(xfactor), _floatVal(yfactor));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7221
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7222
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7223
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7224
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7225
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7226
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7227
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7228
glxResetls: b in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7229
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7230
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7231
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7232
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7233
    resetls(_booleanVal(b));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7234
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7235
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7236
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7237
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7238
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7239
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7240
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7241
glxRingbellIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7242
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7243
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7244
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7245
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7246
    ringbell();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7247
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7248
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7249
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7250
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7251
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7252
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7253
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7254
glxSboxX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7255
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7256
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7257
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7258
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7259
    sbox(_coordVal(x1), _coordVal(y1), _coordVal(x2), _coordVal(y2));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7260
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7261
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7262
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7263
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7264
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7265
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7266
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7267
glxSboxfX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7268
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7269
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7270
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7271
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7272
    sboxf(_coordVal(x1), _coordVal(y1), _coordVal(x2), _coordVal(y2));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7273
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7274
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7275
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7276
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7277
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7278
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7279
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7280
glxSboxfiX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7281
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7282
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7283
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7284
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7285
    sboxfi(_icoordVal(x1), _icoordVal(y1), _icoordVal(x2), _icoordVal(y2));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7286
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7287
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7288
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7289
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7290
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7291
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7292
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7293
glxSboxfsX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7295
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7296
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7297
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7298
    sboxfs(_scoordVal(x1), _scoordVal(y1), _scoordVal(x2), _scoordVal(y2));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7299
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7300
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7301
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7302
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7303
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7304
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7305
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7306
glxSboxiX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7307
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7308
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7309
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7310
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7311
    sboxi(_icoordVal(x1), _icoordVal(y1), _icoordVal(x2), _icoordVal(y2));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7312
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7313
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7314
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7315
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7316
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7317
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7318
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7319
glxSboxsX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7320
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7321
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7322
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7323
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7324
    sboxs(_scoordVal(x1), _scoordVal(y1), _scoordVal(x2), _scoordVal(y2));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7325
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7326
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7327
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7328
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7329
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7330
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7331
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7332
glxSclearSval: sval in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7333
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7334
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7335
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7336
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7337
    sclear((ulong)__intVal(sval));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7338
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7339
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7340
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7341
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7342
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7343
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7344
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7345
glxScrbox: arg in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7346
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7347
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7348
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7349
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7350
    scrbox(_longVal(arg));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7351
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7352
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7353
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7354
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7355
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7356
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7357
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7358
glxScreenspaceIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7359
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7360
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7361
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7362
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7363
    screenspace();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7364
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7365
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7366
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7367
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7368
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7369
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7370
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7371
glxScrmaskLeft: left right: right bottom: bottom top: top in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7372
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7373
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7374
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7375
    SETWIN(aGLXWindowId)
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  7376
    scrmask(_screencoordVal(left), _screencoordVal(right),
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7377
	_screencoordVal(bottom), _screencoordVal(top));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7378
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7379
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7380
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7381
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7382
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7383
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7384
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7385
glxScrnattach: gsnr in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7386
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7387
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7388
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7389
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7390
    scrnattach(_longVal(gsnr));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7391
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7392
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7393
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7394
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7395
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7396
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7397
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7398
glxScrnselect: gsnr in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7399
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7400
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7401
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7402
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7403
    scrnselect(_longVal(gsnr));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7404
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7405
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7406
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7407
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7408
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7409
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7410
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7411
glxSetcursorIndex: index color: color wtn: wtn in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7412
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7413
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7414
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7415
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7416
    setcursor(_shortVal(index), _colorindexVal(color), _colorindexVal(wtn));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7417
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7418
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7419
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7420
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7421
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7422
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7423
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7424
glxSetdblightsMask: mask in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7425
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7426
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7427
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7428
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7429
    setdblights((ulong)__intVal(mask));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7430
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7431
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7432
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7433
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7434
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7435
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7436
2422
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  7437
glxSetdepthNear:znear far:zfar in: aGLXWindowId
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  7438
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  7439
%{  /* NOCONTEXT */
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  7440
#ifdef GLX
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  7441
    SETWIN(aGLXWindowId)
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  7442
    setdepth(_screencoordVal(znear), _screencoordVal(zfar));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7443
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7444
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7445
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7446
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7447
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7448
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7449
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7450
glxSetmap: mapnum in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7451
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7452
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7453
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7454
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7455
    setmap(_shortVal(mapnum));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7456
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7457
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7458
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7459
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7460
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7461
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7462
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7463
glxSetmonitor: mtype in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7464
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7465
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7466
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7467
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7468
    setmonitor(_shortVal(mtype));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7469
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7470
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7471
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7472
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7473
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7474
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7475
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7476
glxSetnurbsproperty: property value: value in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7477
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7478
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7479
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7480
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7481
    setnurbsproperty(_longVal(property), _floatVal(value));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7482
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7483
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7484
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7485
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7486
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7487
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7488
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7489
glxSetpattern: index in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7490
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7491
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7492
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7493
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7494
    setpattern(_shortVal(index));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7495
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7496
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7497
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7498
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7499
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7500
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7501
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7502
glxSetpup: pup entry: entry mode: mode in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7503
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7504
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7505
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7506
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7507
    setpup(_longVal(pup), _longVal(entry), (ulong)__intVal(mode));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7508
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7509
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7510
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7511
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7512
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7513
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7514
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7515
glxSetvaluator: v init: init vmin: vmin vmax: vmax in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7516
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7517
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7518
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7519
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7520
    setvaluator(_deviceVal(v), _shortVal(init), _shortVal(vmin), _shortVal(vmax));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7521
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7522
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7523
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7524
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7525
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7526
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7527
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7528
glxSetvideo: reg value: value in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7529
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7530
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7531
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7532
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7533
    setvideo(_longVal(reg), _longVal(value));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7534
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7535
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7536
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7537
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7538
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7539
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7540
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7541
glxShademodel: model in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7542
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7543
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7544
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7545
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7546
    shademodel(_longVal(model));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7547
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7548
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7549
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7550
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7551
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7552
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7553
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7554
glxShaderangeLowin: lowin hiwin: hiwin z1: z1 z2: z2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7555
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7556
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7557
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7558
    SETWIN(aGLXWindowId)
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  7559
    shaderange(_colorindexVal(lowin), _colorindexVal(hiwin),
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7560
	_screencoordVal(z1), _screencoordVal(z2));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7561
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7562
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7563
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7564
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7565
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7566
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7567
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7568
glxSmoothline: mode in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7569
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7570
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7571
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7572
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7573
    smoothline(_longVal(mode));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7574
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7575
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7576
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7577
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7578
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7579
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7580
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  7581
glxStencilEnable: enable ref: ref func: func mask: mask fail: fail
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7582
    pass: pass zpass: zpass in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7583
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7584
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7585
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7586
    SETWIN(aGLXWindowId)
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  7587
    stencil(_longVal(enable), (ulong)__intVal(ref), _longVal(func),
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7588
	(ulong)__intVal(mask), _longVal(fail), _longVal(pass), _longVal(zpass));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7589
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7590
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7591
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7592
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7593
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7594
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7595
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7596
glxStensize: planes in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7597
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7598
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7599
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7600
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7601
    stensize(_longVal(planes));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7602
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7603
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7604
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7605
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7606
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7607
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7608
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7609
glxStepunitX: x y: y in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7610
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7611
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7612
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7613
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7614
    stepunit(_longVal(x), _longVal(y));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7615
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7616
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7617
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7618
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7619
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7620
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7621
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7622
glxSubpixel: b in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7623
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7624
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7625
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7626
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7627
    subpixel(_booleanVal(b));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7628
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7629
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7630
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7631
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7632
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7633
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7634
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7635
glxSwapinterval: i in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7636
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7637
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7638
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7639
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7640
    swapinterval(_shortVal(i));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7641
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7642
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7643
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7644
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7645
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7646
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7647
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7648
glxSwaptmeshIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7649
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7650
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7651
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7652
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7653
    swaptmesh();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7654
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7655
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7656
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7657
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7658
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7659
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7660
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7661
glxSwinopen: parent in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7662
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7663
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7664
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7665
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7666
    swinopen(_longVal(parent));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7667
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7668
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7669
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7670
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7671
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7672
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7673
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7674
glxSwritemask: mask in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7675
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7676
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7677
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7678
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7679
    swritemask((ulong)__intVal(mask));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7680
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7681
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7682
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7683
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7684
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7685
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7686
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7687
glxTextinitIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7688
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7689
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7690
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7691
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7692
    textinit();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7693
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7694
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7695
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7696
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7697
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7698
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7699
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7700
glxTextportLeft: left right: right bottom: bottom top: top in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7701
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7702
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7703
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7704
    SETWIN(aGLXWindowId)
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  7705
    textport(_screencoordVal(left), _screencoordVal(right),
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7706
	_screencoordVal(bottom), _screencoordVal(top));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7707
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7708
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7709
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7710
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7711
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7712
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7713
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7714
glxTieB: b v1: v1 v2: v2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7715
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7716
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7717
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7718
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7719
    tie(_deviceVal(b), _deviceVal(v1), _deviceVal(v2));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7720
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7721
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7722
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7723
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7724
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7725
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7726
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7727
glxTlutbind: target index: index in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7728
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7729
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7730
#ifdef FULL_GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7731
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7732
    tlutbind(_longVal(target), _longVal(index));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7733
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7734
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7735
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7736
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7737
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7738
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7739
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7740
glxTpoffIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7741
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7742
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7743
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7744
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7745
    tpoff();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7746
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7747
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7748
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7749
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7750
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7751
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7752
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7753
glxTponIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7754
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7755
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7756
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7757
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7758
    tpon();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7759
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7760
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7761
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7762
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7763
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7764
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7765
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7766
glxUnqdevice: dev in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7767
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7768
%{  /* NOCONTEXT */
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7769
    SETWIN(aGLXWindowId)
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7770
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7771
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7772
    unqdevice(_deviceVal(dev));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7773
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7774
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7775
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7776
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7777
glxWmpack: pack in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7778
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7779
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7780
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7781
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7782
    wmpack((ulong)__intVal(pack));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7783
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7784
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7785
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7786
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7787
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7788
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7789
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7790
glxWritemask: wtm in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7791
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7792
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7793
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7794
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7795
    writemask(_colorindexVal(wtm));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7796
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7797
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7798
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7799
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7800
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7801
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7802
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7803
glxXfpt2X: x y: y in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7804
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7805
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7806
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7807
    Coord c_x, c_y;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7808
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7809
    _COORD_ (x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7810
    _COORD_ (y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7811
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7812
    xfpt2(c_x, c_y);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7813
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7814
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7815
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7816
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7817
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7818
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7819
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7820
glxXfpt2iX: x y: y in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7821
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7822
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7823
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7824
    Icoord c_x, c_y;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7825
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7826
    _ICOORD_ (x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7827
    _ICOORD_ (y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7828
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7829
    xfpt2i(c_x, c_y);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7830
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7831
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7832
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7833
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7834
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7835
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7836
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7837
glxXfpt2sX: x y: y in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7838
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7839
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7840
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7841
    Scoord c_x, c_y;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7842
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7843
    _SCOORD_ (x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7844
    _SCOORD_ (y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7845
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7846
    xfpt2s(c_x, c_y);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7847
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7848
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7849
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7850
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7851
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7852
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7853
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7854
glxXfpt4X: x y: y z: z w: w in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7855
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7856
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7857
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7858
    Coord c_x, c_y, c_z, c_w;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7859
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7860
    _COORD_ (x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7861
    _COORD_ (y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7862
    _COORD_ (z, c_z)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7863
    _COORD_ (w, c_w)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7864
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7865
    xfpt4(c_x, c_y, c_z, c_w);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7866
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7867
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7868
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7869
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7870
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7871
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7872
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7873
glxXfpt4iX: x y: y z: z w: w in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7874
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7875
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7876
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7877
    Icoord c_x, c_y, c_z, c_w;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7878
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7879
    _ICOORD_ (x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7880
    _ICOORD_ (y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7881
    _ICOORD_ (z, c_z)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7882
    _ICOORD_ (w, c_w)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7883
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7884
    xfpt4i(c_x, c_y, c_z, c_w);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7885
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7886
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7887
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7888
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7889
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7890
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7891
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7892
glxXfpt4sX: x y: y z: z w: w in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7893
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7894
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7895
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7896
    Scoord c_x, c_y, c_z, c_w;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7897
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7898
    _SCOORD_ (x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7899
    _SCOORD_ (y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7900
    _SCOORD_ (z, c_z)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7901
    _SCOORD_ (w, c_w)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7902
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7903
    xfpt4s(c_x, c_y, c_z, c_w);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7904
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7905
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7906
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7907
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7908
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7909
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7910
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7911
glxXfptX: x y: y z: z in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7912
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7913
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7914
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7915
    Coord c_x, c_y, c_z;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7916
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7917
    _COORD_ (x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7918
    _COORD_ (y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7919
    _COORD_ (z, c_z)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7920
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7921
    xfpt(c_x, c_y, c_z);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7922
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7923
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7924
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7925
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7926
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7927
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7928
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7929
glxXfptiX: x y: y z: z in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7930
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7931
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7932
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7933
    Icoord c_x, c_y, c_z;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7934
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7935
    _ICOORD_ (x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7936
    _ICOORD_ (y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7937
    _ICOORD_ (z, c_z)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7938
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7939
    xfpti(c_x, c_y, c_z);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7940
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7941
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7942
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7943
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7944
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7945
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7946
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7947
glxXfptsX: x y: y z: z in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7948
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7949
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7950
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7951
    Scoord c_x, c_y, c_z;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7952
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7953
    _SCOORD_ (x, c_x)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7954
    _SCOORD_ (y, c_y)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7955
    _SCOORD_ (z, c_z)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7956
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7957
    xfpts(c_x, c_y, c_z);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7958
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7959
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7960
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7961
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7962
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7963
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7964
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7965
!GLXWorkstation methodsFor:'vertex data transfer'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7966
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7967
glxN3f:arrayOf3Floats in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7968
    "argument must be an array of 3 floats containing the
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7969
     current vertex normal - in real GL only"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7970
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7971
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7972
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7973
    float vec[3], *v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7974
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  7975
    if (! (v = __glx_getFloatsFromInto(arrayOf3Floats, vec, 3))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7976
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7977
    n3f(v);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7978
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7979
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7980
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7981
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7982
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7983
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7984
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7985
glxV2d:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7986
    "pass a vertex; v must be a vector with 2 doubles; z is taken as 0"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7987
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7988
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7989
    double vec[2], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7990
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  7991
    if (! (c_v = __glx_getDoublesFromInto(v, vec, 2))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7992
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7993
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7994
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7995
    v2d(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  7996
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7997
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7998
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  7999
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8000
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8001
glxV2f:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8002
    "pass a vertex; v must be a vector with 2 floats; z is taken as 0"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8003
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8004
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8005
    float vec[2], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8006
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8007
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 2))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8008
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8009
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8010
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8011
    v2f(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8012
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8013
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8014
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8015
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8016
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8017
glxV2fX:x y:y in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8018
    "pass a vertex from individual x and y values; z is taken as 0.0"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8019
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8020
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8021
    float vec[2];
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8022
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8023
    _FLOAT_(x, vec[0])
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8024
    _FLOAT_(y, vec[1])
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8025
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8026
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8027
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8028
    v2f(vec);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8029
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8030
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8031
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8032
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8033
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8034
glxV2i:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8035
    "pass a vertex; v must be a vector with 2 longs; z is taken as 0"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8036
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8037
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8038
    long vec[2], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8039
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8040
    if (! (c_v = __glx_getLongsFromInto(v, vec, 2))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8041
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8042
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8043
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8044
    v2i(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8045
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8046
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8047
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8048
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8049
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8050
glxV2s:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8051
    "pass a vertex; v must be a vector with 2 shorts; z is taken as 0"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8052
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8053
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8054
    short vec[2], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8055
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8056
    if (! (c_v = __glx_getShortsFromInto(v, vec, 2))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8057
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8058
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8059
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8060
    v2s(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8061
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8062
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8063
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8064
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8065
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8066
glxV3d:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8067
    "pass a vertex; v must be a 3-element double-vector"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8068
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8069
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8070
    double vec[3], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8071
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8072
    if (! (c_v = __glx_getDoublesFromInto(v, vec, 3))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8073
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8074
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8075
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8076
    v3d(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8077
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8078
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8079
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8080
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8081
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8082
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8083
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8084
glxV3f:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8085
    "pass a vertex; v must be a 3-element float-vector"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8086
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8087
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8088
    float vec[3], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8089
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8090
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 3))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8091
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8092
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8093
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8094
    v3f(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8095
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8096
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8097
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8098
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8099
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8100
glxV3fX:x y:y z:z in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8101
    "pass a vector from individual x, y and z (float) values"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8102
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8103
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8104
    float vec[3];
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8105
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8106
    _FLOAT_(x, vec[0])
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8107
    _FLOAT_(y, vec[1])
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8108
    _FLOAT_(z, vec[2])
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8109
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8110
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8111
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8112
    v3f(vec);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8113
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8114
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8115
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8116
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8117
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8118
glxV3i:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8119
    "pass a vertex; v must be a vector with 3 longs"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8120
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8121
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8122
    long vec[3], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8123
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8124
    if (! (c_v = __glx_getLongsFromInto(v, vec, 3))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8125
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8126
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8127
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8128
    v3i(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8129
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8130
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8131
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8132
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8133
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8134
glxV3s:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8135
    "pass a vertex; v must be a vector with 3 shorts"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8136
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8137
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8138
    short vec[3], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8139
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8140
    if (! (c_v = __glx_getShortsFromInto(v, vec, 3))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8141
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8142
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8143
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8144
    v3s(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8145
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8146
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8147
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8148
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8149
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8150
glxV4d:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8151
    "pass a vertex; v must be a 4-element double-vector,
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8152
     containing x, y, z and w"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8153
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8154
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8155
    double vec[4], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8156
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8157
    if (! (c_v = __glx_getDoublesFromInto(v, vec, 4))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8158
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8159
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8160
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8161
    v4d(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8162
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8163
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8164
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8165
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8166
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8167
glxV4f:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8168
    "pass a vertex; v must be a 4-element float-vector,
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8169
     containing x, y, z and w"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8170
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8171
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8172
    float vec[4], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8173
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8174
    if (! (c_v = __glx_getFloatsFromInto(v, vec, 4))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8175
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8176
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8177
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8178
    v4f(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8179
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8180
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8181
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8182
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8183
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8184
glxV4i:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8185
    "pass a vertex; v must be a 4-element int-vector,
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8186
     containing x, y, z and w"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8187
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8188
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8189
    long vec[4], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8190
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8191
    if (! (c_v = __glx_getLongsFromInto(v, vec, 4))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8192
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8193
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8194
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8195
    v4i(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8196
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8197
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8198
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8199
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8200
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8201
glxV4s:v in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8202
    "pass a vertex; v must be a 4-element short-vector,
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8203
     containing x, y, z and w"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8204
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8205
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8206
    short vec[4], *c_v;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8207
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8208
    if (! (c_v = __glx_getShortsFromInto(v, vec, 4))) RETURN(false);
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8209
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8210
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8211
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8212
    v4s(c_v);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8213
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8214
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8215
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8216
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8217
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8218
glxVOriginIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8219
    "pass a 0.0/0.0/0.0 vector.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8220
     This is the same as v3f:#(0.0 0.0 0.0), but, since its so
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8221
     common, this somewhat faster method has been provided"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8222
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8223
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8224
    static float vec[3] = {0.0, 0.0, 0.0};
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8225
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8226
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8227
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8228
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8229
    v3f(vec);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8230
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8231
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8232
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8233
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8234
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8235
glxVUnitXIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8236
    "pass a 1.0/0.0/0.0 vector.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8237
     This is the same as v3f:#(1.0 0.0 0.0), but, since its so
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8238
     common, this somewhat faster method has been provided"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8239
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8240
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8241
    static float vec[3] = {1.0, 0.0, 0.0};
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8242
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8243
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8244
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8245
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8246
    v3f(vec);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8247
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8248
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8249
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8250
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8251
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8252
glxVUnitYIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8253
    "pass a 0.0/1.0/0.0 vector.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8254
     This is the same as v3f:#(0.0 1.0 0.0), but, since its so
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8255
     common, this somewhat faster method has been provided"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8256
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8257
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8258
    static float vec[3] = {0.0, 1.0, 0.0};
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8259
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8260
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8261
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8262
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8263
    v3f(vec);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8264
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8265
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8266
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8267
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8268
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8269
glxVUnitZIn:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8270
    "pass a 0.0/0.0/1.0 vector.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8271
     This is the same as v3f:#(0.0 0.0 1.0), but, since its so
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8272
     common, this somewhat faster method has been provided"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8273
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8274
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8275
    static float vec[3] = {0.0, 0.0, 1.0};
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8276
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8277
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8278
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8279
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8280
    v3f(vec);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8281
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8282
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8283
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8284
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8285
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8286
!GLXWorkstation methodsFor:'video and planes'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8287
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8288
glxOverlayPlanes: planes in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8289
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8290
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8291
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8292
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8293
    overlay(_longVal(planes));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8294
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8295
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8296
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8297
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8298
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8299
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8300
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8301
glxStereobufferIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8302
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8303
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8304
#ifdef FULL_GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8305
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8306
    stereobuffer();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8307
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8308
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8309
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8310
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8311
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8312
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8313
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8314
glxUnderlay: planes in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8315
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8316
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8317
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8318
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8319
    underlay(_longVal(planes));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8320
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8321
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8322
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8323
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8324
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8325
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8326
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8327
glxVideocmd:cmd in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8328
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8329
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8330
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8331
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8332
    videocmd(_longVal(cmd));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8333
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8334
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8335
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8336
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8337
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8338
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8339
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8340
!GLXWorkstation methodsFor:'viewing'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8341
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8342
glxLookatVx:vx vy:vy vz:vz px:px py:py pz:pz twist:twist in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8343
    "define viewing transformation"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8344
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8345
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8346
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8347
    Coord f_vx, f_vy, f_vz, f_px, f_py, f_pz;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8348
    Angle a_twist;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8349
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8350
    _COORD_ (vx, f_vx)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8351
    _COORD_ (vy, f_vy)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8352
    _COORD_ (vz, f_vz)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8353
    _COORD_ (px, f_px)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8354
    _COORD_ (py, f_py)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8355
    _COORD_ (pz, f_pz)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8356
    _ANGLE_ (twist, a_twist)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8357
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8358
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8359
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8360
    lookat(f_vx, f_vy, f_vz, f_px, f_py, f_pz, a_twist);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8361
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8362
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8363
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8364
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8365
glxOrtho2Left: left right: right bottom: bottom top: top in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8366
    "define 2D orthogonal projection"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8367
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8368
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8369
    float f_left, f_right, f_top, f_bottom;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8370
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8371
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8372
    _FLOAT_(left, f_left)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8373
    _FLOAT_(right, f_right)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8374
    _FLOAT_(bottom, f_bottom)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8375
    _FLOAT_(top, f_top)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8376
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8377
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8378
    ortho2(f_left, f_right, f_bottom, f_top);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8379
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8380
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8381
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8382
2422
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8383
glxOrthoLeft: left right: right bottom: bottom top: top near: znear far: zfar in: aGLXWindowId
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8384
    "define orthogonal projection"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8385
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8386
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8387
    float f_left, f_right, f_bottom, f_top,
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8388
	  f_near, f_far;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8389
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8390
    _FLOAT_(left, f_left)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8391
    _FLOAT_(right, f_right)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8392
    _FLOAT_(bottom, f_bottom)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8393
    _FLOAT_(top, f_top)
2422
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8394
    _FLOAT_(znear, f_near)
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8395
    _FLOAT_(zfar, f_far)
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8396
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8397
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8398
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8399
    ortho(f_left, f_right, f_bottom, f_top, f_near, f_far);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8400
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8401
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8402
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8403
2422
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8404
glxPerspectiveFovy:fovy aspect:aspect near:znear far:zfar in:aGLXWindowId
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8405
    "define perspective projection"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8406
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8407
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8408
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8409
    Angle a_fovy;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8410
    Coord c_near, c_far;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8411
    float f_aspect;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8412
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8413
    _ANGLE_ (fovy, a_fovy)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8414
    _FLOAT_ (aspect, f_aspect)
2422
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8415
    _COORD_ (znear, c_near)
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8416
    _COORD_ (zfar, c_far)
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8417
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8418
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8419
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8420
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8421
    perspective(a_fovy, f_aspect, c_near, c_far);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8422
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8423
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8424
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8425
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8426
glxPolarviewDist: dist azim: azim inc: inc twist: twist in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8427
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8428
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8429
    Coord c_dist;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8430
    Angle a_azim, a_inc, a_twist;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8431
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8432
    _COORD_(dist, c_dist)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8433
    _ANGLE_(azim, a_azim)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8434
    _ANGLE_(inc, a_inc)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8435
    _ANGLE_(twist, a_twist)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8436
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8437
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8438
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8439
    polarview(c_dist, a_azim, a_inc, a_twist);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8440
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8441
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8442
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8443
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8444
glxPopviewportIn: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8445
    "pops the top viewport off the viewport stack"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8446
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8447
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8448
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8449
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8450
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8451
    popviewport();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8452
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8453
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8454
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8455
    "Modified: 19.3.1996 / 18:58:24 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8456
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8457
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8458
glxPushviewportIn: aGLXWindowId
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8459
    "pushes the current viewport on the viewport stack"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8460
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8461
%{  /* NOCONTEXT */
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8462
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8463
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8464
#else
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8465
    pushviewport();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8466
#endif
528
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8467
%}
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8468
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8469
    "Modified: 19.3.1996 / 18:58:02 / cg"
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8470
!
22f4f7388a42 category renames
Claus Gittinger <cg@exept.de>
parents: 524
diff changeset
  8471
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8472
glxReshapeViewPortIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8473
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8474
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8475
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8476
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8477
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8478
    reshapeviewport();
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8479
#endif
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8480
%}
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8481
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8482
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8483
glxViewportLeft:left right:right bottom:bottom top:top in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8484
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8485
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8486
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8487
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8488
#else
4718
11e89d5330e7 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 4711
diff changeset
  8489
    viewport(_screencoordVal(left), _screencoordVal(right),
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8490
	     _screencoordVal(bottom), _screencoordVal(top));
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8491
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8492
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8493
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8494
2422
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8495
glxWindowLeft: left right: right bottom: bottom top: top near: znear far: zfar in: aGLXWindowId
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8496
    "this one was added independently by JEFF - kept for his programs ..."
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8497
2422
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8498
    self glxWindowLeft:left right:right top:top bottom:bottom near:znear far:zfar in:aGLXWindowId
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8499
!
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8500
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8501
glxWindowLeft:left right:right top:top bottom:bottom near:znear far:zfar in:aGLXWindowId
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8502
    "define perspective viewing pyramid"
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8503
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8504
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8505
    Coord c_left, c_right, c_top, c_bot, c_near, c_far;
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8506
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8507
    _COORD_ (left, c_left)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8508
    _COORD_ (right, c_right)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8509
    _COORD_ (top, c_top)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8510
    _COORD_ (bottom, c_bot)
2422
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8511
    _COORD_ (znear, c_near)
6bffcb4c8360 changes for egcs (__new in stdio)
Claus Gittinger <cg@exept.de>
parents: 2075
diff changeset
  8512
    _COORD_ (zfar, c_far)
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8513
    SETWIN(aGLXWindowId)
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8514
#ifdef OPENGL
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8515
#else
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8516
    window(c_left, c_right, c_bot, c_top, c_near, c_far);
1932
6afe07d9c88c *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 1903
diff changeset
  8517
#endif
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8518
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8519
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8520
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8521
!GLXWorkstation methodsFor:'window control'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8522
2045
bd7978df685c resizable GLX views
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
  8523
glxResizedView:aGLXWindowId width:width height:height
2048
03e1a4cd562a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  8524
    "pass down resize info to the GL - this adjusts the viewport.
03e1a4cd562a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  8525
     This only works with VGL or openGL"
03e1a4cd562a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  8526
03e1a4cd562a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2045
diff changeset
  8527
%{  /* NOCONTEXT */
2074
6a63604051a2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2048
diff changeset
  8528
    SETWIN(aGLXWindowId)
6a63604051a2 *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 2048
diff changeset
  8529
#ifdef VGL
2045
bd7978df685c resizable GLX views
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
  8530
    X11_resized(__intVal(width), __intVal(height));
bd7978df685c resizable GLX views
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
  8531
    RETURN (true);
bd7978df685c resizable GLX views
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
  8532
#endif
bd7978df685c resizable GLX views
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
  8533
%}
bd7978df685c resizable GLX views
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
  8534
.
bd7978df685c resizable GLX views
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
  8535
    ^ false
bd7978df685c resizable GLX views
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
  8536
!
bd7978df685c resizable GLX views
Claus Gittinger <cg@exept.de>
parents: 1932
diff changeset
  8537
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8538
glxWinclose:gwid in:aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8539
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8540
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8541
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8542
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8543
    winclose(_longVal(gwid));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8544
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8545
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8546
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8547
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8548
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8549
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8550
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8551
glxWinconstraintsIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8552
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8553
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8554
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8555
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8556
    winconstraints();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8557
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8558
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8559
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8560
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8561
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8562
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8563
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8564
glxWindepth: gwid in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8565
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8566
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8567
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8568
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  8569
    RETURN (__MKSMALLINT(windepth(_longVal(gwid))));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8570
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8571
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8572
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8573
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8574
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8575
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8576
glxWingetIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8577
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8578
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8579
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8580
    SETWIN(aGLXWindowId)
315
2abc494f0c45 _-macros replaced by __-macros
Claus Gittinger <cg@exept.de>
parents: 294
diff changeset
  8581
    RETURN (__MKSMALLINT(winget()));
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8582
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8583
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8584
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8585
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8586
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8587
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8588
glxWinmoveX: x y: y in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8589
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8590
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8591
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8592
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8593
    winmove(_longVal(x), _longVal(y));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8594
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8595
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8596
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8597
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8598
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8599
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8600
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8601
glxWinpopIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8602
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8603
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8604
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8605
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8606
    winpop();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8607
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8608
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8609
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8610
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8611
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8612
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8613
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8614
glxWinpositionX1: x1 y1: y1 x2: x2 y2: y2 in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8615
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8616
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8617
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8618
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8619
    winposition(_longVal(x1), _longVal(y1), _longVal(x2), _longVal(y2));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8620
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8621
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8622
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8623
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8624
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8625
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8626
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8627
glxWinpushIn: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8628
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8629
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8630
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8631
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8632
    winpush();
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8633
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8634
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8635
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8636
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8637
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8638
!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8639
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8640
glxWinset: gwid in: aGLXWindowId
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8641
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8642
%{  /* NOCONTEXT */
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8643
#ifdef GLX
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8644
    SETWIN(aGLXWindowId)
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8645
    winset(_longVal(gwid));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8646
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8647
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8648
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8649
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8650
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8651
! !
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8652
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  8653
!GLXWorkstation methodsFor:'window creation'!
48194c26a46c Initial revision
claus
parents:
diff changeset
  8654
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  8655
createGLXWindowFor:aView left:xpos top:ypos width:wwidth height:wheight type:glxType
157
claus
parents: 151
diff changeset
  8656
    |ext wsuperView wsuperViewId windowId|
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  8657
212
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  8658
    glOK ifFalse:[^ nil].
fc4c2afefff1 on IRIX5: no remote GL (to avoid exit in gl)
Claus Gittinger <cg@exept.de>
parents: 207
diff changeset
  8659
793
8fbee58d45c1 care for non-view superView
Claus Gittinger <cg@exept.de>
parents: 614
diff changeset
  8660
    wsuperView := aView superView view.
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  8661
    wsuperView notNil ifTrue:[
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8662
	wsuperViewId := wsuperView id
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  8663
    ].
48194c26a46c Initial revision
claus
parents:
diff changeset
  8664
524
577c0d1cb144 stacks again
Claus Gittinger <cg@exept.de>
parents: 448
diff changeset
  8665
%{  /* CALLSSTACK: 20000 */
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  8666
    Display *dpy = myDpy;
185
claus
parents: 169
diff changeset
  8667
    int screen = __intVal(_INST(screen));
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  8668
    Window newWindow, parentWindow;
12
9f0995fac1fa *** empty log message ***
claus
parents: 5
diff changeset
  8669
    int t;
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  8670
97
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
  8671
    if (__isSmallInteger(xpos) && __isSmallInteger(ypos)
dd6116883ac0 *** empty log message ***
claus
parents: 89
diff changeset
  8672
     && __isSmallInteger(wwidth) && __isSmallInteger(wheight)) {
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8673
	if (__isExternalAddress(wsuperViewId)) {
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8674
	    parentWindow = _WindowVal(wsuperViewId);
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8675
	} else {
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8676
	    parentWindow = RootWindow(dpy, screen);
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8677
	}
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8678
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8679
	if (glxType == @symbol(colorIndexSingleBuffer))
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8680
	    t = GLXcolorIndexSingleBuffer;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8681
	else if (glxType == @symbol(colorIndexDoubleBuffer))
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8682
	    t = GLXcolorIndexDoubleBuffer;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8683
	else if (glxType == @symbol(rgbSingleBuffer))
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8684
	    t = GLXrgbSingleBuffer;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8685
	else if (glxType == @symbol(rgbDoubleBuffer))
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8686
	    t = GLXrgbDoubleBuffer;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8687
	else {
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8688
	    RETURN ( nil );
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8689
	}
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8690
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8691
	ENTERGLX;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8692
	newWindow = __GLXCreateWindow(dpy, parentWindow,
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8693
				    __intVal(xpos), __intVal(ypos),
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8694
				    __intVal(wwidth), __intVal(wheight),
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8695
				    0, t);
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8696
	LEAVEGLX;
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8697
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8698
	if (! newWindow) {
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8699
	    RETURN ( nil );
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8700
	}
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8701
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8702
	windowId = __MKOBJ(newWindow);
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  8703
    }
206
4284b80bebdf changed to use ExternalAddress handles for all Window, Font,
Claus Gittinger <cg@exept.de>
parents: 190
diff changeset
  8704
%}.
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  8705
    windowId notNil ifTrue:[
962
9c2a114a2bc5 simply suppress those BadWindow-destroy messages (sigh)
Claus Gittinger <cg@exept.de>
parents: 913
diff changeset
  8706
	self addKnownView:aView withId:windowId.
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  8707
    ].
48194c26a46c Initial revision
claus
parents:
diff changeset
  8708
    ^ windowId
20
ab35d92b9a4b *** empty log message ***
claus
parents: 19
diff changeset
  8709
!
ab35d92b9a4b *** empty log message ***
claus
parents: 19
diff changeset
  8710
ab35d92b9a4b *** empty log message ***
claus
parents: 19
diff changeset
  8711
unlinkGLXView:aGLXWindowId
ab35d92b9a4b *** empty log message ***
claus
parents: 19
diff changeset
  8712
    "remove X/GLX link"
524
577c0d1cb144 stacks again
Claus Gittinger <cg@exept.de>
parents: 448
diff changeset
  8713
577c0d1cb144 stacks again
Claus Gittinger <cg@exept.de>
parents: 448
diff changeset
  8714
%{  /* CALLSSTACK: 20000 */
206
4284b80bebdf changed to use ExternalAddress handles for all Window, Font,
Claus Gittinger <cg@exept.de>
parents: 190
diff changeset
  8715
    if (__isExternalAddress(aGLXWindowId)) {
134
claus
parents: 127
diff changeset
  8716
	ENTERGLX;
553
616145ac342d first steps towards openGL support
Claus Gittinger <cg@exept.de>
parents: 543
diff changeset
  8717
	__GLXUnlinkWindow(myDpy, _WindowVal(aGLXWindowId));
134
claus
parents: 127
diff changeset
  8718
	LEAVEGLX;
claus
parents: 127
diff changeset
  8719
    }
20
ab35d92b9a4b *** empty log message ***
claus
parents: 19
diff changeset
  8720
%}
0
48194c26a46c Initial revision
claus
parents:
diff changeset
  8721
! !
48194c26a46c Initial revision
claus
parents:
diff changeset
  8722
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8723
!GLXWorkstation methodsFor:'zbuffer'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8724
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8725
glxZbsize: planes in: aGLXWindowId
127
98b0725782bd *** empty log message ***
claus
parents: 97
diff changeset
  8726
98b0725782bd *** empty log message ***
claus
parents: 97
diff changeset
  8727
%{  /* NOCONTEXT */
98b0725782bd *** empty log message ***
claus
parents: 97
diff changeset
  8728
#ifdef FULL_GLX
98b0725782bd *** empty log message ***
claus
parents: 97
diff changeset
  8729
    SETWIN(aGLXWindowId)
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8730
    zbsize(_longVal(planes));
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8731
    RETURN (true);
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8732
#endif
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8733
%}
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8734
.
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8735
    ^ false
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8736
!
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8737
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8738
glxZbuffer:aBoolean in:aGLXWindowId
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8739
    "enable/disable z-buffer operation"
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8740
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8741
%{  /* NOCONTEXT */
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8742
#ifdef GLX
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8743
    SETWIN(aGLXWindowId)
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8744
    zbuffer(aBoolean == false ? FALSE : TRUE);
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8745
    RETURN (true);
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8746
#endif
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8747
%}
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8748
.
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8749
    ^ false
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8750
!
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8751
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8752
glxZdraw: b in: aGLXWindowId
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8753
    "enable/disable drawing into the z-buffer"
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8754
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8755
%{  /* NOCONTEXT */
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8756
#ifdef GLX
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8757
    SETWIN(aGLXWindowId)
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8758
    zdraw(_booleanVal(b));
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8759
    RETURN (true);
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8760
#endif
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8761
%}
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8762
.
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8763
    ^ false
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8764
!
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8765
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8766
glxZfunction: func in: aGLXWindowId
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8767
    "set the z-buffer comparison function.
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8768
     func may be either the numeric value or a symbol (preferred)"
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8769
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8770
%{  /* NOCONTEXT */
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8771
#ifdef GLX
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8772
    long f;
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8773
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8774
    SETWIN(aGLXWindowId)
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8775
    if (func == @symbol(NEVER))
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
  8776
	f = ZF_NEVER;
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8777
    else if (func == @symbol(LESS))
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
  8778
	f = ZF_LESS;
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8779
    else if (func == @symbol(EQUAL))
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
  8780
	f = ZF_EQUAL;
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8781
    else if (func == @symbol(LEQUAL))
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
  8782
	f = ZF_LEQUAL;
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8783
    else if (func == @symbol(GREATER))
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
  8784
	f = ZF_GREATER;
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8785
    else if (func == @symbol(NOTEQUAL))
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
  8786
	f = ZF_NOTEQUAL;
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8787
    else if (func == @symbol(GEQUAL))
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
  8788
	f = ZF_GEQUAL;
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8789
    else if (func == @symbol(ALWAYS))
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
  8790
	f = ZF_ALWAYS;
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8791
    else
77
da4678fae5c8 *** empty log message ***
claus
parents: 71
diff changeset
  8792
	f = _longVal(func);
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8793
    zfunction(f);
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8794
    RETURN (true);
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8795
#endif
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8796
%}
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8797
.
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8798
    ^ false
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8799
!
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8800
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8801
glxZsource: src in: aGLXWindowId
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8802
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8803
%{  /* NOCONTEXT */
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8804
#ifdef GLX
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8805
    SETWIN(aGLXWindowId)
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8806
    zsource(_longVal(src));
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8807
    RETURN (true);
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8808
#endif
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8809
%}
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8810
.
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8811
    ^ false
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8812
!
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8813
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8814
glxZwritemask: mask in: aGLXWindowId
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8815
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8816
%{  /* NOCONTEXT */
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8817
#ifdef GLX
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8818
    SETWIN(aGLXWindowId)
185
claus
parents: 169
diff changeset
  8819
    zwritemask((ulong)__intVal(mask));
64
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8820
    RETURN (true);
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8821
#endif
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8822
%}
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8823
.
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8824
    ^ false
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8825
! !
b401612eb99c more interfaces
claus
parents: 58
diff changeset
  8826
294
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8827
!GLXWorkstation class methodsFor:'documentation'!
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8828
47e41e6b7b88 checkin from browser
Claus Gittinger <cg@exept.de>
parents: 290
diff changeset
  8829
version
6978
5b28db37852a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6617
diff changeset
  8830
    ^ '$Header$'
5479
ae6b3ac21920 __isByteArray() to __isByteArrayLike() in primitive code
Stefan Vogel <sv@exept.de>
parents: 4718
diff changeset
  8831
!
ae6b3ac21920 __isByteArray() to __isByteArrayLike() in primitive code
Stefan Vogel <sv@exept.de>
parents: 4718
diff changeset
  8832
ae6b3ac21920 __isByteArray() to __isByteArrayLike() in primitive code
Stefan Vogel <sv@exept.de>
parents: 4718
diff changeset
  8833
version_CVS
6978
5b28db37852a *** empty log message ***
Claus Gittinger <cg@exept.de>
parents: 6617
diff changeset
  8834
    ^ '$Header$'
89
ea2bf46eb669 *** empty log message ***
claus
parents: 82
diff changeset
  8835
! !
7656
e39deb3fb1ac #DOCUMENTATION by cg
Claus Gittinger <cg@exept.de>
parents: 6978
diff changeset
  8836