2 #include <OpenGl_tgl_all.hxx>
9 #include <OpenGl_cmn_varargs.hxx>
10 #include <OpenGl_telem_attri.hxx>
11 #include <OpenGl_tsm.hxx>
12 #include <OpenGl_telem.hxx>
13 #include <OpenGl_telem_inquire.hxx>
15 static TStatus InteriorColourDisplay( TSM_ELEM_DATA, Tint, cmn_key* );
16 static TStatus InteriorColourAdd( TSM_ELEM_DATA, Tint, cmn_key* );
17 static TStatus InteriorColourDelete( TSM_ELEM_DATA, Tint, cmn_key* );
18 static TStatus InteriorColourPrint( TSM_ELEM_DATA, Tint, cmn_key* );
19 static TStatus InteriorColourInquire( TSM_ELEM_DATA, Tint, cmn_key* );
21 static TStatus (*MtdTbl[])( TSM_ELEM_DATA, Tint, cmn_key* ) =
24 InteriorColourDisplay,
33 TelInteriorColourInitClass( TelType *el )
35 *el = TelInteriorColour;
40 InteriorColourAdd( TSM_ELEM_DATA d, Tint n, cmn_key *k )
42 tel_colour data = new TEL_COLOUR();
44 //cmn_memreserve( data, 1, 0 );
48 *data = *(tel_colour)(k[0]->data.pdata);
50 ((tsm_elem_data)(d.pdata))->pdata = data;
57 InteriorColourDisplay( TSM_ELEM_DATA data, Tint n, cmn_key *k )
62 d = (tel_colour)data.pdata;
64 key.id = TelInteriorColour;
66 TsmSetAttri( 1, &key );
73 InteriorColourDelete( TSM_ELEM_DATA data, Tint n, cmn_key *k )
75 //cmn_freemem( data.pdata );
85 InteriorColourPrint( TSM_ELEM_DATA data, Tint n, cmn_key *k )
89 p = (tel_colour)data.pdata;
91 fprintf( stdout, "TelInteriorColour. R = %g, G = %g, B = %g\n",
92 p->rgb[0], p->rgb[1], p->rgb[2] );
93 fprintf( stdout, "\n" );
100 InteriorColourInquire( TSM_ELEM_DATA data, Tint n, cmn_key *k )
105 col = (tel_colour)data.pdata;
107 for( i = 0; i < n; i++ )
111 case INQ_GET_SIZE_ID:
113 k[i]->data.ldata = sizeof( Tint );
116 case INQ_GET_CONTENT_ID:
121 c = (tel_inq_content)k[i]->data.pdata;
124 w->gnl_colour = *col;