コード例 #1
0
ファイル: banner.cpp プロジェクト: fluxer/kde-workspace
void KBannerSetup::fillFontSizes()
{
    bool block = comboSizes->signalsBlocked();
    comboSizes->blockSignals( true );
    comboSizes->clear();
    int i = 0;
    sizes = QFontDatabase().pointSizes( fontFamily );
    sizes << 96 << 128 << 156 << 0;
    int current = 0;
    while ( sizes[i] )
	{
	QString num;
	num.setNum( sizes[i] );
	comboSizes->insertItem( i, num );
	if ( fontSize == sizes[i] ) // fontsize equals one of the defined ones
	    {
            current = i;
	    comboSizes->setCurrentIndex( current );
	    slotSize( current );
	    }
	i++;
	}
    if ( current == 0 ) // fontsize seems to be entered by hand
        {
	QString fsize;
	fsize.setNum( fontSize );
	comboSizes->setEditText(fsize);
	slotSizeEdit( fsize );
	}
    comboSizes->blockSignals( block );
}
コード例 #2
0
FontSet::FontSet(QWidget *parent)
    : QMainWindow(parent)
{
    QFont f("ZYSong18030",12);
    setFont(f);

    setWindowTitle(tr("font"));

    QToolBar *toolBar = addToolBar("Font");

    QLabel *label1 = new QLabel(tr("ZiTi: "));
    fontBox = new QFontComboBox(toolBar);
    fontBox->setFontFilters(QFontComboBox::ScalableFonts);
    toolBar->addWidget(label1);
    toolBar->addWidget(fontBox);

    QLabel *label2 = new QLabel(tr("number: "));
    sizeBox = new QComboBox(toolBar);
    toolBar->addWidget(label2);
    toolBar->addWidget(sizeBox);
    QFontDatabase db;
    foreach(int size, db.standardSizes())
    {
        sizeBox->addItem(QString::number(size));
    }

    toolBar->addSeparator();

    boldBtn = new QToolButton;
    boldBtn->setIcon(QIcon("./images/bold.png"));
    boldBtn->setCheckable(true);
    toolBar->addWidget(boldBtn);
    italicBtn = new QToolButton;
    italicBtn->setIcon(QIcon("./images/italic.png"));
    italicBtn->setCheckable(true);
    toolBar->addWidget(italicBtn);

    underBtn = new QToolButton;
    underBtn->setIcon(QIcon("./images/underline.png"));
    underBtn->setCheckable(true);
    toolBar->addWidget(underBtn);


    toolBar->addSeparator();
    colorBtn = new QToolButton;
    colorBtn->setIcon(QIcon("./images/color.png"));
    toolBar->addWidget(colorBtn);

    text =  new QTextEdit(this);
    text->setFocus();
    setCentralWidget(text);

    connect(fontBox,SIGNAL(activated(QString)),this,SLOT(slotFont(QString)));
    connect(sizeBox,SIGNAL(activated(QString)),this,SLOT(slotSize(QString)));
    connect(boldBtn,SIGNAL(clicked()),this,SLOT(slotBold()));
    connect(italicBtn,SIGNAL(clicked()),this,SLOT(slotItalic()));
    connect(underBtn,SIGNAL(clicked()),this,SLOT(slotUnder()));
    connect(colorBtn,SIGNAL(clicked()),this,SLOT(slotColor()));

    connect(text,SIGNAL(currentCharFormatChanged(const QTextCharFormat&)),this,SLOT(slotCurrentFormatChanged(const QTextCharFormat&)));

}
コード例 #3
0
inline size_t objectSize(const JsonObjectData* obj) {
  if (!obj) return 0;
  return slotSize(obj->head);
}