void LightGotoLineWidget::doHide() { emit requestHide(); if ( editor ) { editor->viewport()->repaint(); editor->setFocus(); } }
void LightFindWidget::doHide() { startpos=-1; endpos=-1; emit requestHide(); if ( editor ) { editor->viewport()->repaint(); editor->setFocus(); } }
void ReplaceWidget::doHide() { emit requestHide(); startpos=-1; endpos=-1; deltacol=0; if ( editor ) { editor->viewport()->repaint(); editor->setFocus(); } }
SourceView::SourceView(QWidget *parent,QFont & efont,bool line, QList<QColor> edcolors, QList<QColor> hicolors ) : QWidget(parent) { splitter=new MiniSplitter(this); splitter->setOrientation(Qt::Vertical); QFrame *framebis=new QFrame(splitter); framebis->setLineWidth(0); framebis->setFrameShape(QFrame::NoFrame); framebis->setFrameShadow(QFrame::Plain); framebis->setFrameStyle(QFrame::NoFrame); QVBoxLayout* mainlay = new QVBoxLayout(framebis ); mainlay->setSpacing(0); mainlay->setMargin(0); centralToolBar=new QToolBar("ToolBar",framebis); centralToolBar->setFloatable(false); centralToolBar->setOrientation(Qt::Horizontal); centralToolBar->setMovable(false); centralToolBar->setIconSize(QSize(16,16 )); centralToolBar->setSizePolicy(QSizePolicy::Expanding, QSizePolicy::Minimum); mainlay->addWidget(centralToolBar); QAction *Act = new QAction(getIcon(":/images/fileopen16.png"), tr("Open"), this); connect(Act, SIGNAL(triggered()), this, SLOT(fileOpen())); centralToolBar->addAction(Act); centralToolBar->addSeparator(); titleLabel=new QLabel("(read only)",centralToolBar); centralToolBar->addWidget(titleLabel); centralToolBar->addSeparator(); Act = new QAction(getIcon(":/images/diff.png"), tr("Check differences"), this); connect(Act, SIGNAL(triggered()), this, SLOT(checkDiff())); centralToolBar->addAction(Act); QFrame *frame=new QFrame(framebis); frame->setLineWidth(0); frame->setFrameShape(QFrame::NoFrame); frame->setFrameShadow(QFrame::Plain); frame->setFrameStyle(QFrame::NoFrame); mainlay->addWidget(frame); lastdocument=""; editor=new LightLatexEditor(frame,efont,edcolors,hicolors,""); connect(editor, SIGNAL(requestFind()), this, SLOT(showFind())); connect(editor, SIGNAL(requestGotoLine()), this, SLOT(showGoto())); m_lineNumberWidget = new LightLineNumberWidget( editor, frame); m_lineNumberWidget->setFont(efont); QFontMetrics fm( efont ); m_lineNumberWidget->setFixedWidth( fm.width( "00000" ) + 22 ); QHBoxLayout* lay = new QHBoxLayout( frame ); lay->setSpacing(0); lay->setMargin(0); lay->addWidget( m_lineNumberWidget ); lay->addWidget( editor ); setFocusProxy( editor ); setLineNumberWidgetVisible(line); Stack=new QStackedWidget(this); Stack->setLineWidth(0); Stack->setFrameShape(QFrame::NoFrame); Stack->setFrameShadow(QFrame::Plain); findwidget=new LightFindWidget(Stack); Stack->addWidget(findwidget); findwidget->SetEditor(editor); connect(findwidget, SIGNAL( requestHide() ), Stack, SLOT( hide() ) ); connect(findwidget, SIGNAL( requestExtension() ), this, SLOT( showFind() ) ); gotolinewidget=new LightGotoLineWidget(Stack); Stack->addWidget(gotolinewidget); gotolinewidget->SetEditor(editor); connect(gotolinewidget, SIGNAL( requestHide() ), Stack, SLOT( hide() ) ); Stack->hide(); splitter->addWidget(framebis); splitter->addWidget(Stack); QVBoxLayout *mainlayout= new QVBoxLayout(this); mainlayout->setSpacing(0); mainlayout->setMargin(0); mainlayout->addWidget(splitter); }