Files
sibo-playground/code/SIBOSDK/oopdemo/o_hello.c
2026-07-06 18:01:36 +01:00

53 lines
1.3 KiB
C

/*
O_HELLO
*/
#include <hwimman.g>
#include <hello.g>
#include <hello.rsg>
GLREF_D WSERV_SPEC *wserv_channel;
GLREF_D VOID *w_am;
GLDEF_C VOID main(VOID)
{
IN_HWIMMAN app;
IN_WSERV ws;
p_linklib(0);
app.flags=/*FLG_APPMAN_FULLSCREEN|*/FLG_APPMAN_RSCFILE|FLG_APPMAN_CLEAN|
FLG_APPMAN_SRSCFILE/*|FLG_APPMAN_IPCS|FLG_APPMAN_LINKING*/;
app.wserv_cat=p_getlibh(CAT_HELLO_HELLO);
ws.com_cat=p_getlibh(CAT_HELLO_HWIM);
app.wserv_class=C_HELLOWS;
ws.com_class=C_COMMAN;
p_send4(p_new(CAT_HELLO_HWIM,C_HWIMMAN),O_AM_INIT,&app,&ws);
}
#pragma METHOD_CALL
METHOD VOID hellows_ws_dyn_init(PR_HELLOWS *self)
{
self->wserv.cli=f_new(CAT_HELLO_HELLO,C_HELLOBW);
p_send2(self->wserv.cli,O_WN_INIT);
}
METHOD VOID hellobw_wn_init(PR_HELLOBW *self)
{
W_WINDATA wd;
wd.extent.tl.x=0;
wd.extent.tl.y=0;
wd.extent.width=wserv_channel->conn.info.pixels.x;
wd.extent.height=wserv_channel->conn.info.pixels.y;
p_send5(self,O_WN_CONNECT,NULL,W_WIN_EXTENT,&wd);
p_send3(self,O_WN_VISIBLE,WV_INITVIS);
p_send3(self,O_WN_EMPHASISE,TRUE);
}
METHOD VOID hellobw_wn_draw(PR_HELLOBW *self)
{
p_supersend2(self,O_WN_DRAW);
gPrintText(50,50,"Hello World",11);
}