summaryrefslogtreecommitdiff
path: root/src/OpenGl/OpenGl_vind.cxx
blob: 74f09625902781142d69681b7c9a6f71e349d8ee (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
/***********************************************************************

FONCTION :
----------
File OpenGl_vind :


REMARQUES:
---------- 


HISTORIQUE DES MODIFICATIONS   :
--------------------------------
xx-xx-xx : xxx ; Creation.
20-02-96 : FMN ; Suppression code inutile:
01-04-96 : CAL ; Integration MINSK portage WNT
05-01-98 : FMN ; Suppression WNT inutile

************************************************************************/

/*----------------------------------------------------------------------*/
/*
* Includes
*/

#include <OpenGl_tgl_all.hxx>

#include <stddef.h>
#include <stdio.h>

#include <OpenGl_cmn_varargs.hxx>
#include <OpenGl_tsm.hxx>
#include <OpenGl_telem.hxx>
#include <OpenGl_telem_view.hxx>
#include <OpenGl_telem_inquire.hxx>
#include <OpenGl_telem_attri.hxx>

/*----------------------------------------------------------------------*/
/*
* Fonctions statiques
*/

static  TStatus  ViewIndexDisplay( TSM_ELEM_DATA, Tint, cmn_key* );
static  TStatus  ViewIndexAdd( TSM_ELEM_DATA, Tint, cmn_key* );
static  TStatus  ViewIndexPrint( TSM_ELEM_DATA, Tint, cmn_key* );
static  TStatus  ViewIndexInquire( TSM_ELEM_DATA, Tint, cmn_key* );

static  TStatus  (*MtdTbl[])( TSM_ELEM_DATA, Tint, cmn_key* ) =
{
  ViewIndexDisplay,             /* PickTraverse */
    ViewIndexDisplay,
    ViewIndexAdd,
    0,             /* Delete */
    ViewIndexPrint,
    ViewIndexInquire
};

/*----------------------------------------------------------------------*/

MtblPtr
TelViewIndexInitClass( TelType *el )
{
  *el = TelViewIndex;
  return MtdTbl;
}

/*----------------------------------------------------------------------*/

static  TStatus
ViewIndexAdd( TSM_ELEM_DATA d, Tint n, cmn_key *k )
{
  ((tsm_elem_data)(d.pdata))->ldata = k[0]->data.ldata;

  return TSuccess;
}

/*----------------------------------------------------------------------*/

static  TStatus
ViewIndexDisplay( TSM_ELEM_DATA data, Tint n, cmn_key *k )
{
  CMN_KEY   kk;

  kk.id = TelViewIndex;
  kk.data.ldata = data.ldata;
  TsmSetAttri( 1, &kk );
  if( k[0]->id == TOn )
    TelSetViewIndex( TglActiveWs, data.ldata );
  return  TSuccess;
}

/*----------------------------------------------------------------------*/

static  TStatus
ViewIndexPrint( TSM_ELEM_DATA data, Tint n, cmn_key *k )
{
  fprintf( stdout, "TelViewIndex. Value = %d\n", data.ldata);
  fprintf( stdout, "\n" );

  return TSuccess;
}

/*----------------------------------------------------------------------*/

static TStatus
ViewIndexInquire( TSM_ELEM_DATA data, Tint n, cmn_key *k )
{
  Tint i;

  for( i = 0; i < n; i++ )
  {
    switch( k[i]->id )
    {
    case INQ_GET_SIZE_ID:
      {
        k[i]->data.ldata = sizeof( Tint );
        break;
      }
    case INQ_GET_CONTENT_ID:
      {
        TEL_INQ_CONTENT *c;
        Teldata         *w;

        c = (TEL_INQ_CONTENT*)(k[i]->data.pdata);
        w = c->data;
        c->act_size = 0;
        w->idata = data.ldata;
        break;
      }
    }
  }

  return TSuccess;
}
/*----------------------------------------------------------------------*/