Пример #1
0
BibLaTeXItemCollection BibFile::getDocuments() const
{
	BibLaTeXItemCollection documents;

	QFile bibFile(m_filePath);

	if (!bibFile.open(QIODevice::ReadOnly))
		return documents;

	QTextStream in(&bibFile);

	QString content = in.readAll();

	for (QString bibEntry : findEntries(content))
	{
		// TODO: These need to be processed at least string
		if (bibEntry == "preamble" || bibEntry == "string" || bibEntry == "comment" )
			continue;
		documents.append(parseEntry(bibEntry));
	}
	return documents;
}
Пример #2
0
void ABCentralWidget::setupTabWidget()
{
    tabWidget = new QTabWidget( this );

    QWidget *input = new QWidget( tabWidget );
    QGridLayout *grid1 = new QGridLayout( input, 2, 5, 5, 5 );

    QLabel *liTitle = new QLabel( trUtf8("标签 &t"), input );
    liTitle->resize( liTitle->sizeHint() );
    grid1->addWidget( liTitle, 0, 0 );

    QLabel *liPackageName = new QLabel( trUtf8("文件名 &p"), input );
    liPackageName->resize( liPackageName->sizeHint() );
    grid1->addWidget( liPackageName, 0, 1 );

    QLabel *liSize = new QLabel( trUtf8("大小 &z"), input );
    liSize->resize( liSize->sizeHint() );
    grid1->addWidget( liSize, 0, 2 );

    QLabel *liFtpSite = new QLabel( trUtf8("Ftp站点 &e"), input );
    liFtpSite->resize( liFtpSite->sizeHint() );
    grid1->addWidget( liFtpSite, 0, 3 );

    add = new QPushButton( trUtf8("添加 &d"), input );
    add->resize( add->sizeHint() );
    grid1->addWidget( add, 0, 4 );
    connect( add, SIGNAL( clicked() ), this, SLOT( addEntry() ) );

    iTitle = new QLineEdit( input );
    iTitle->resize( iTitle->sizeHint() );
    grid1->addWidget( iTitle, 1, 0 );
    liTitle->setBuddy( iTitle );

    iPackageName = new QLineEdit( input );
    iPackageName->resize( iPackageName->sizeHint() );
    grid1->addWidget( iPackageName, 1, 1 );
    liPackageName->setBuddy( iPackageName );

    iSize = new QLineEdit( input );
    iSize->resize( iSize->sizeHint() );
    grid1->addWidget( iSize, 1, 2 );
    liSize->setBuddy( iSize );

    iFtpSite = new QLineEdit( input );
    iFtpSite->resize( iFtpSite->sizeHint() );
    grid1->addWidget( iFtpSite, 1, 3 );
    liFtpSite->setBuddy( iFtpSite );

    change = new QPushButton( trUtf8("更改 &c"), input );
    change->resize( change->sizeHint() );
    grid1->addWidget( change, 1, 4 );
    connect( change, SIGNAL( clicked() ), this, SLOT( changeEntry() ) );

    tabWidget->addTab( input, trUtf8("添加与更改 &a") );

    // --------------------------------------

    QWidget *search = new QWidget( this );
    QGridLayout *grid2 = new QGridLayout( search, 2, 5, 5, 5 );

    cTitle = new QCheckBox( trUtf8("标签 &t"), search );
    cTitle->resize( cTitle->sizeHint() );
    grid2->addWidget( cTitle, 0, 0 );
    connect( cTitle, SIGNAL( clicked() ), this, SLOT( toggleTitle() ) );

    cPackageName = new QCheckBox(  trUtf8("文件名 &p"), search );
    cPackageName->resize( cPackageName->sizeHint() );
    grid2->addWidget( cPackageName, 0, 1 );
    connect( cPackageName, SIGNAL( clicked() ), this, SLOT( togglePackageName() ) );

    cSize = new QCheckBox(trUtf8("大小 &z"), search );
    cSize->resize( cSize->sizeHint() );
    grid2->addWidget( cSize, 0, 2 );
    connect( cSize, SIGNAL( clicked() ), this, SLOT( toggleSize() ) );

    cFtpSite = new QCheckBox( trUtf8("Ftp站点 &e"), search );
    cFtpSite->resize( cFtpSite->sizeHint() );
    grid2->addWidget( cFtpSite, 0, 3 );
    connect( cFtpSite, SIGNAL( clicked() ), this, SLOT( toggleFtpSite() ) );

    sTitle = new QLineEdit( search );
    sTitle->resize( sTitle->sizeHint() );
    grid2->addWidget( sTitle, 1, 0 );

    sPackageName = new QLineEdit( search );
    sPackageName->resize( sPackageName->sizeHint() );
    grid2->addWidget( sPackageName, 1, 1 );

    sSize = new QLineEdit( search );
    sSize->resize( sSize->sizeHint() );
    grid2->addWidget( sSize, 1, 2 );

    sFtpSite = new QLineEdit( search );
    sFtpSite->resize( sFtpSite->sizeHint() );
    grid2->addWidget( sFtpSite, 1, 3 );

    find = new QPushButton( trUtf8("查找 &i"), search );
    find->resize( find->sizeHint() );
    grid2->addWidget( find, 1, 4 );
    connect( find, SIGNAL( clicked() ), this, SLOT( findEntries() ) );

    cTitle->setChecked( TRUE );
    sTitle->setEnabled( TRUE );
    sPackageName->setEnabled( FALSE );
    sSize->setEnabled( FALSE );
    sFtpSite->setEnabled( FALSE );

    tabWidget->addTab( search, trUtf8("搜索 &s") );

    mainGrid->addWidget( tabWidget, 0, 0 );
}
Пример #3
0
void findAccs(int numAccs, unsigned type, struct gbRelease* release,
              struct hash* accTbl)
/* Get list of accessions to copy.  */ 
{
int accCount = 0;
int native3Versions, xeno3Versions, native2Versions, xeno2Versions;
int native2ModDates, xeno2ModDates, nativeNew, xenoNew, xenoRest;
struct numRange versions;
struct numRange modDates;

/* breakdown of types to extract is just hard coded for now */
native3Versions = (int)(numAccs*0.15);     /* 15% with 3 versions */
xeno3Versions = (int)(numAccs*0.05);       /* 5% with 3 versions */
native2Versions = (int)(numAccs*0.15);     /* 15% with 2 versions */
xeno2Versions = (int)(numAccs*0.05);       /* 5% with 2 versions */
native2ModDates = (int)(numAccs*0.10);     /* 10% with moddate change */
xeno2ModDates = (int)(numAccs*0.05);       /* 5% with moddate change */
nativeNew = (int)(numAccs*0.10);           /* 10% new */
xenoNew = (int)(numAccs*0.10);             /* 10% new */
xenoRest = (int)(numAccs*0.5);             /* 5% rest */

versions.minNum = 3;
versions.maxNum = 100;
findEntries(native3Versions, type, release, &versions, NULL,
            FE_FULL|FE_DAILY, GB_NATIVE,
            accTbl, &accCount);
findEntries(xeno3Versions, type, release, &versions, NULL,
            FE_FULL|FE_DAILY, GB_XENO,
            accTbl, &accCount);

versions.minNum = 2;
versions.maxNum = 2;
findEntries(native2Versions, type, release, &versions, NULL,
            FE_FULL|FE_DAILY, GB_NATIVE,
            accTbl, &accCount);
findEntries(xeno2Versions, type, release, &versions, NULL, 
            FE_FULL|FE_DAILY, GB_XENO,
            accTbl, &accCount);

modDates.minNum = 2;
modDates.maxNum = 100;
findEntries(native2ModDates, type, release, NULL, &modDates, 
            FE_FULL|FE_DAILY, GB_NATIVE,
            accTbl, &accCount);
findEntries(xeno2ModDates, type, release, NULL, &modDates, 
            FE_FULL|FE_DAILY, GB_XENO,
            accTbl, &accCount);

findEntries(nativeNew, type, release, NULL, NULL, 
            FE_DAILY, GB_NATIVE,
            accTbl, &accCount);
findEntries(xenoNew, type, release, NULL, NULL, 
            FE_DAILY, GB_XENO,
            accTbl, &accCount);

/* get the rest */
findEntries(xenoRest, type, release, NULL, NULL,
            FE_FULL|FE_DAILY, GB_NATIVE,
            accTbl, &accCount);
findEntries(numAccs-accCount, type, release, NULL, NULL, 
            FE_FULL|FE_DAILY, GB_XENO,
            accTbl, &accCount);
}
Пример #4
0
void ABCentralWidget::setupTabWidget()
{
    tabWidget = new QTabWidget( this );

    QWidget *input = new QWidget( tabWidget );
    QGridLayout *grid1 = new QGridLayout( input, 2, 5, 5, 5 );

    QLabel *liFirstName = new QLabel( "First &Name", input );
    liFirstName->resize( liFirstName->sizeHint() );
    grid1->addWidget( liFirstName, 0, 0 );

    QLabel *liLastName = new QLabel( "&Last Name", input );
    liLastName->resize( liLastName->sizeHint() );
    grid1->addWidget( liLastName, 0, 1 );

    QLabel *liAddress = new QLabel( "Add&ress", input );
    liAddress->resize( liAddress->sizeHint() );
    grid1->addWidget( liAddress, 0, 2 );

    QLabel *liEMail = new QLabel( "&E-Mail", input );
    liEMail->resize( liEMail->sizeHint() );
    grid1->addWidget( liEMail, 0, 3 );

    add = new QPushButton( "A&dd", input );
    add->resize( add->sizeHint() );
    grid1->addWidget( add, 0, 4 );
    connect( add, SIGNAL( clicked() ), this, SLOT( addEntry() ) );

    iFirstName = new QLineEdit( input );
    iFirstName->resize( iFirstName->sizeHint() );
    grid1->addWidget( iFirstName, 1, 0 );
    liFirstName->setBuddy( iFirstName );

    iLastName = new QLineEdit( input );
    iLastName->resize( iLastName->sizeHint() );
    grid1->addWidget( iLastName, 1, 1 );
    liLastName->setBuddy( iLastName );

    iAddress = new QLineEdit( input );
    iAddress->resize( iAddress->sizeHint() );
    grid1->addWidget( iAddress, 1, 2 );
    liAddress->setBuddy( iAddress );

    iEMail = new QLineEdit( input );
    iEMail->resize( iEMail->sizeHint() );
    grid1->addWidget( iEMail, 1, 3 );
    liEMail->setBuddy( iEMail );

    change = new QPushButton( "&Change", input );
    change->resize( change->sizeHint() );
    grid1->addWidget( change, 1, 4 );
    connect( change, SIGNAL( clicked() ), this, SLOT( changeEntry() ) );

    tabWidget->addTab( input, "&Add/Change Entry" );

    // --------------------------------------

    QWidget *search = new QWidget( this );
    QGridLayout *grid2 = new QGridLayout( search, 2, 5, 5, 5 );

    cFirstName = new QCheckBox( "First &Name", search );
    cFirstName->resize( cFirstName->sizeHint() );
    grid2->addWidget( cFirstName, 0, 0 );
    connect( cFirstName, SIGNAL( clicked() ), this, SLOT( toggleFirstName() ) );

    cLastName = new QCheckBox( "&Last Name", search );
    cLastName->resize( cLastName->sizeHint() );
    grid2->addWidget( cLastName, 0, 1 );
    connect( cLastName, SIGNAL( clicked() ), this, SLOT( toggleLastName() ) );

    cAddress = new QCheckBox( "Add&ress", search );
    cAddress->resize( cAddress->sizeHint() );
    grid2->addWidget( cAddress, 0, 2 );
    connect( cAddress, SIGNAL( clicked() ), this, SLOT( toggleAddress() ) );

    cEMail = new QCheckBox( "&E-Mail", search );
    cEMail->resize( cEMail->sizeHint() );
    grid2->addWidget( cEMail, 0, 3 );
    connect( cEMail, SIGNAL( clicked() ), this, SLOT( toggleEMail() ) );

    sFirstName = new QLineEdit( search );
    sFirstName->resize( sFirstName->sizeHint() );
    grid2->addWidget( sFirstName, 1, 0 );

    sLastName = new QLineEdit( search );
    sLastName->resize( sLastName->sizeHint() );
    grid2->addWidget( sLastName, 1, 1 );

    sAddress = new QLineEdit( search );
    sAddress->resize( sAddress->sizeHint() );
    grid2->addWidget( sAddress, 1, 2 );

    sEMail = new QLineEdit( search );
    sEMail->resize( sEMail->sizeHint() );
    grid2->addWidget( sEMail, 1, 3 );

    find = new QPushButton( "F&ind", search );
    find->resize( find->sizeHint() );
    grid2->addWidget( find, 1, 4 );
    connect( find, SIGNAL( clicked() ), this, SLOT( findEntries() ) );

    cFirstName->setChecked( TRUE );
    sFirstName->setEnabled( TRUE );
    sLastName->setEnabled( FALSE );
    sAddress->setEnabled( FALSE );
    sEMail->setEnabled( FALSE );

    tabWidget->addTab( search, "&Search" );

    mainGrid->addWidget( tabWidget, 0, 0 );
}
Пример #5
0
bool 
cgicc::Cgicc::getElementByValue(const std::string& value, 
				std::vector<FormEntry>& result)	const
{ 
  return findEntries(value, false, result); 
}
Пример #6
0
bool 
cgicc::Cgicc::getElement(const std::string& name, 
			 std::vector<FormEntry>& result) 	const
{ 
  return findEntries(name, true, result); 
}