ReceiptsPrinterOptionsDialog::ReceiptsPrinterOptionsDialog(QWidget *parent) :
    QDialog(parent),
    ui(new Ui::ReceiptsPrinterOptionsDialog)
{
    ui->setupUi(this);
    connect(ui->btGraphicsPrinter, &QPushButton::toggled, [this](bool checked) {
        if(checked)
            this->ui->stackedWidget->setCurrentIndex(0);
    });
    connect(ui->btCharacterPrinter, &QPushButton::toggled, [this](bool checked) {
        if(checked)
            this->ui->stackedWidget->setCurrentIndex(1);
    });
    loadPrinters();
}
예제 #2
0
void KMJobViewer::addToManager()
{
    if (m_prname == i18n("All Printers"))
    {
        loadPrinters();
        QPtrListIterator<KMPrinter>	it(m_printers);
        for (; it.current(); ++it)
            m_manager->addPrinter(it.current()->printerName(), (KMJobManager::JobType)m_type, it.current()->isSpecial());
    }
    else if (!m_prname.isEmpty())
    {
        KMPrinter *prt = KMManager::self()->findPrinter( m_prname );
        bool isSpecial = ( prt ? prt->isSpecial() : false );
        m_manager->addPrinter(m_prname, (KMJobManager::JobType)m_type, isSpecial);
    }
}
예제 #3
0
void KMSpecialManager::refresh()
{
	if (!m_loaded)
		loadPrinters();
	else
	{
		QPtrListIterator<KMPrinter>	it(m_mgr->m_printers);
		for (;it.current();++it)
			if (it.current()->isSpecial())
			{
				it.current()->setDiscarded(false);
				it.current()->setType(KMPrinter::Special);
				if (KdeprintChecker::check(QStringList::split(',',it.current()->option("kde-special-require"),false)))
					it.current()->addType(KMPrinter::Invalid);
			}
	}
}
예제 #4
0
void KMJobViewer::buildPrinterMenu(QPopupMenu *menu, bool use_all, bool use_specials)
{
    loadPrinters();
    menu->clear();

    QPtrListIterator<KMPrinter>	it(m_printers);
    int	i(0);
    if (use_all)
    {
        menu->insertItem(SmallIcon("fileprint"), i18n("All Printers"), i++);
        menu->insertSeparator();
    }
    for (; it.current(); ++it, i++)
    {
        if ( !it.current()->instanceName().isEmpty() ||
                ( it.current()->isSpecial() && !use_specials ) )
            continue;
        menu->insertItem(SmallIcon(it.current()->pixmap()), it.current()->printerName(), i);
    }
}