示例#1
0
EditNoteDialogue::EditNoteDialogue(MisliWindow *misliWindow_) :
    linkMenu(this),
    chooseNFMenu(tr("NoteFile"),&linkMenu),
    actionChooseTextFile(tr("Text file"),&linkMenu),
    actionChoosePicture(tr("Picure"),&linkMenu),
    actionSystemCallNote(tr("System call note (beta)"),&linkMenu),
    actionWebPageNote(tr("Web page note"),&linkMenu),
    ui(new Ui::EditNoteDialogue)
{
    ui->setupUi(this);
    misliWindow = misliWindow_;
    addAction(ui->actionEscape);

    linkMenu.addMenu(&chooseNFMenu);
    linkMenu.addAction(&actionChoosePicture);
    linkMenu.addAction(&actionChooseTextFile);
    linkMenu.addAction(&actionSystemCallNote);
    linkMenu.addAction(&actionWebPageNote);

    connect(ui->okButton,SIGNAL(clicked()),this,SLOT(inputDone()));
    connect(&chooseNFMenu,SIGNAL(aboutToShow()),this,SLOT(updateChooseNFMenu()));
    connect(ui->makeLinkButton,SIGNAL(clicked()),this,SLOT(showLinkMenu()));
    connect(&chooseNFMenu,SIGNAL(triggered(QAction*)),this,SLOT(makeLinkNote(QAction*)));
    connect(&actionChoosePicture,SIGNAL(triggered()),this,SLOT(choosePicture()));
    connect(&actionChooseTextFile,SIGNAL(triggered()),this,SLOT(chooseTextFile()));
    connect(&actionSystemCallNote,SIGNAL(triggered()),this,SLOT(setSystemCallPrefix()));
    //Set the web page note template
    connect(&actionWebPageNote,&QAction::triggered,[&](){
        ui->textEdit->setText("define_web_page_note:\nurl=\nname="+ui->textEdit->toPlainText());
        ui->textEdit->setFocus();
        ui->textEdit->moveCursor (QTextCursor::End);
    });
}
// 这个文件是捕捉模式,也就是有计时功能的
BlockAreaCatch::BlockAreaCatch(int level, QWidget* parent)
    :QWidget(parent)
{
    myLevel = level;
    if (myLevel == 1) {
        int index = 1;
        while(index < 88) {
            if (index != 3 && index != 6 && index != 9 && index != 25 && index != 26) {
                level1.push_back(index);
            }
            ++index;
        }
        myRow = 3;
        myColumn = 6;
        counter = 500; // 设置的时间间隔是100,也就是0.1s,所以这里500是50秒
    }
    else if (myLevel == 2) {
        int index = 1;
        while(index < 142) {
            if (index != 122 && index != 132 && index != 134 && index != 135 && index != 136 && index != 137) {
                level2.push_back(index);
            }
            ++index;
        }
        myRow = 4;
        myColumn = 7;
        counter = 650;  // 65 秒
    }
    else {
        int index = 88;
        srand(time(0));
        int luck = std::rand()%30;  // 减少稀有神奇宝贝的出现概率
        if (luck == 1) {  // 有梦幻
            while(index < 152) {
                if (index != 134 && index != 135 && index != 136 && index != 137 && index != 142 && index != 144 && index != 145 && index != 146 && index != 150) {
                    level3.push_back(index);
                }
                ++index;
            }
        }
        else if (luck == 2) {  // 有超梦
            while(index < 152) {
                if (index != 134 && index != 135 && index != 136 && index != 137 && index != 142 && index != 144 && index != 145 && index != 146 && index != 151) {
                    level3.push_back(index);
                }
                ++index;
            }
        }
        else if (luck >= 3 && luck <= 5){  // 有三只鸟
            while(index < 152) {
                if (index != 134 && index != 135 && index != 136 && index != 137 && index != 142 && index != 150 && index != 151) {
                    level3.push_back(index);
                }
                ++index;
            }
        }
        else if (luck >= 6 && luck <= 10) {  // 有伊布三种形态,3D龙,化石翼龙
            while(index < 152) {
                if (index != 144 && index != 145 && index != 146 && index != 150 && index != 151) {
                    level3.push_back(index);
                }
                ++index;
            }
        }
        else {
            while(index < 152) {
                if (index != 134 && index != 135 && index != 136 && index != 137 && index != 142 && index != 144 && index != 145 && index != 146 && index != 150 && index != 151) {
                    level3.push_back(index);
                }
                ++index;
            }
        }
        myRow = 5;
        myColumn = 8;
        counter = 800;  // 80 秒
    }

    mygame = new fun(myRow, myColumn);
    choosePicture();
    set_block_area();
    oneReady = 0;
    positionReady.x = 0;
    positionReady.y = 0;
    myLevel = level;
}