: QGLWidget(parent),
rubberBand(0),
popupMenu(new QMenu(this)),
- copySelectedSequenceAsFastaAction(new QAction(tr("&Copy as Fasta"), this))
+ copySelectedSequenceAsFastaAction(new QAction(tr("&Copy as Fasta"), this)),
+ copySelectedSequenceAsStringAction(new QAction(tr("&Copy Sequence"), this))
{
connect(copySelectedSequenceAsFastaAction, SIGNAL(triggered()),
this, SLOT(copySelectedSequenceAsFasta()));
- copySelectedSequenceAsFastaAction->setShortcut(Qt::CTRL | Qt::Key_C);
popupMenu->addAction(copySelectedSequenceAsFastaAction);
+ copySelectedSequenceAsStringAction->setShortcut(Qt::CTRL | Qt::Key_C);
+ connect(copySelectedSequenceAsStringAction, SIGNAL(triggered()),
+ this, SLOT(copySelectedSequenceAsString()));
+ popupMenu->addAction(copySelectedSequenceAsStringAction);
}
SequenceBrowser::SequenceBrowser(const SequenceBrowser& sb, QWidget *parent)
return copySelectedSequenceAsFastaAction;
}
+QAction *SequenceBrowser::getCopySelectedSequenceAsStringAction()
+{
+ return copySelectedSequenceAsStringAction;
+}
QSize SequenceBrowser::sizeHint() const
{
emit basepairsCopied(base_pairs_copied);
}
+void SequenceBrowser::copySelectedSequenceAsString()
+{
+ // get fasta data
+ std::string buffer;
+ size_t base_pairs_copied = copySelectedTracksAsString(buffer);
+
+ // get reference to clipboard
+ QClipboard *clipboard = QApplication::clipboard();
+ clipboard->setText(buffer.c_str());
+ emit basepairsCopied(base_pairs_copied);
+}
void SequenceBrowser::clear()
{