/*
 * Class:     cbccore_low_Create
 * Method:    create_spot
 * Signature: ()V
 */
JNIEXPORT void JNICALL Java_cbccore_low_Create_create_1spot(JNIEnv *env, jobject obj)
{
#ifdef CBC
    create_spot();
#else
    printf("Java_cbccore_low_Create_create_1spot stub\n");
#endif
}
void FORTE_iCreateDemo::executeEvent(int pa_nEIID) {
    QO() = QI();
    switch (pa_nEIID) {
    case scm_nEventINITID:
        if(true == QI()) {
            //TODO: add code for INIT event! or delete event
        }
        sendOutputEvent(scm_nEventINITOID);
        break;
    case scm_nEventSpotID:
        if(true == QI()) {
            create_spot();
        }
        sendOutputEvent(scm_nEventSpotOID);
        break;
    case scm_nEventCoverID:
        if(true == QI()) {
            create_cover();
        }
        sendOutputEvent(scm_nEventCoverOID);
        break;
    case scm_nEventDemoID:
        if(true == QI()) {
            create_demo(D());
        }
        sendOutputEvent(scm_nEventDemoOID);
        break;
    case scm_nEventCoverDockID:
        if(true == QI()) {
            create_cover_dock();
        }
        sendOutputEvent(scm_nEventCoverDockOID);
        break;
    case scm_nEventSendScriptID:
        if(true == QI()) {
//TODO: Delete create.h does not support adding code for SendScript event!
        }
        sendOutputEvent(scm_nEventSendScriptOID);
        break;
    }
}
Exemple #3
0
int mouse_doing(void)
{
    m_event mevent;
    fd_set input_fd;
    int fd;
    char c,victory = -1;
    int w=0;
    int who,n,flag1 = 1;;
    u32_t color = 0x00ffffff;
    int mx = 521;
    int my = 384;
    bzero(&board,sizeof(board));
    fd = open("/dev/input/mice",O_RDWR|O_NONBLOCK);
    if(fd < 0)
    {
        perror("open");
        exit(1);
    }
    draw_cursor(mx ,my);
    while(1)
    {
        FD_ZERO(&input_fd);
        FD_SET(client_sock,&input_fd);
        FD_SET(fd,&input_fd);
        if((select(fd+1,&input_fd,NULL,NULL,NULL)) < 0)
        {
            perror("select error");
            continue;
        }
        if((FD_ISSET(fd,&input_fd))&&(get_m_info(fd,&mevent)>0))
        {
            restore_shape(mx,my);
            mx += mevent.dx;
            my += mevent.dy;

            mx = ((mx >= 0)? mx:0);
            my = ((my >= 0)? my:0);
            if(mx >= (fb_v.w-C_WIDTH))
                mx = (fb_v.w-C_WIDTH);
            if(my >= (fb_v.h-C_HEIGHT))
                my = (fb_v.h-C_HEIGHT);

            switch(mevent.button)
            {
                case 1: 
                       if(flag1 == 1)
                       {
                            if((mx > 335)&&(mx < 1235)&&(my >55)&&(my < 775))
                            {
                                if( !check(mx,my) )
                                {
                                    color = ~color;
                                    who = create_spot(mx,my,color,w);
                                    save_shape(mx,my);
                                    chess_count(mx,my,who);
                                    victory = check_all();
                                    server_len = sizeof(server);
                                    n = sendto(client_sock, buffer, 12, 0, (struct sockaddr *)&server, server_len);
                                    flag1 = 0;
                                    w++;
                                }
                            }
                        }
                        break;
                case 2: break;
                case 4: break;
                default :break;
            }
            draw_cursor(mx,my);
        }
        usleep(1000);
        if(FD_ISSET(client_sock,&input_fd))
        {
            restore_shape(mx,my);
            server_len = sizeof(server);
            n = recvfrom(client_sock, buffer, BUFFER_SIZE, 0, (struct sockaddr *)&server, &server_len);
            mx = (p->x)*30 + 350;
            my = (p->y)*30 +70;
            if( !check(mx,my) )
            {
                color = ~color;
                who = create_spot(mx,my,color,w);
                save_shape(mx,my);
                chess_count(mx,my,who);
                victory = check_all();
                w++;
            }
            flag1 = 1;
            draw_cursor(mx,my);
        }
        if( victory == 1)
        {
            printf("play%d won!\n",who);
            printf("continue ? y/n\n");
            scanf("%c",&c);
            getchar();
            if( c=='n')
                break;
           else
            {
                create_scr_fb();
                print_board(350,70,0x008b6914);
                victory = -1;
                w=0;
                color = 0x00ffffff;
                mx = 521;
                my = 384;
                flag1 = 1;
                bzero(&board,sizeof(board)); 
                draw_cursor(mx,my);
            }
        }
     }
     close(fd); 
     return 0;
}