mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-06 00:10:59 +00:00
Add layout intelligence to View Source pane (bug #8653).
View Source pane layout now automatically switches between horizontal and vertical design when docked in vertical or horizontal way. Original idea and patch from Edwin. http://www.mail-archive.com/lyx-devel@lists.lyx.org/msg178801.html Note: the long standing-fight with too bulky minimal QTextEdit size is now solved via ViewSourceUi.sizePolicy=Ignored.
This commit is contained in:
parent
030326466f
commit
49c2450f3f
@ -32,6 +32,7 @@
|
|||||||
|
|
||||||
#include <boost/crc.hpp>
|
#include <boost/crc.hpp>
|
||||||
|
|
||||||
|
#include <QBoxLayout>
|
||||||
#include <QSettings>
|
#include <QSettings>
|
||||||
#include <QTextCursor>
|
#include <QTextCursor>
|
||||||
#include <QTextDocument>
|
#include <QTextDocument>
|
||||||
@ -227,12 +228,24 @@ void ViewSourceWidget::updateDefaultFormat()
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
void ViewSourceWidget::dockLocationChanged(Qt::DockWidgetArea area)
|
||||||
|
{
|
||||||
|
if (area == Qt::RightDockWidgetArea || area == Qt::LeftDockWidgetArea) {
|
||||||
|
layout_->setDirection(QBoxLayout::TopToBottom);
|
||||||
|
} else {
|
||||||
|
layout_->setDirection(QBoxLayout::LeftToRight);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
GuiViewSource::GuiViewSource(GuiView & parent,
|
GuiViewSource::GuiViewSource(GuiView & parent,
|
||||||
Qt::DockWidgetArea area, Qt::WindowFlags flags)
|
Qt::DockWidgetArea area, Qt::WindowFlags flags)
|
||||||
: DockView(parent, "view-source", qt_("LaTeX Source"), area, flags)
|
: DockView(parent, "view-source", qt_("LaTeX Source"), area, flags)
|
||||||
{
|
{
|
||||||
widget_ = new ViewSourceWidget;
|
widget_ = new ViewSourceWidget;
|
||||||
setWidget(widget_);
|
setWidget(widget_);
|
||||||
|
connect(this, SIGNAL(dockLocationChanged(Qt::DockWidgetArea)),
|
||||||
|
widget_, SLOT(dockLocationChanged(Qt::DockWidgetArea)));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -49,6 +49,8 @@ public Q_SLOTS:
|
|||||||
void updateDefaultFormat();
|
void updateDefaultFormat();
|
||||||
///
|
///
|
||||||
void contentsChanged();
|
void contentsChanged();
|
||||||
|
///
|
||||||
|
void dockLocationChanged(Qt::DockWidgetArea area);
|
||||||
|
|
||||||
private:
|
private:
|
||||||
///
|
///
|
||||||
|
@ -6,12 +6,12 @@
|
|||||||
<rect>
|
<rect>
|
||||||
<x>0</x>
|
<x>0</x>
|
||||||
<y>0</y>
|
<y>0</y>
|
||||||
<width>430</width>
|
<width>665</width>
|
||||||
<height>131</height>
|
<height>144</height>
|
||||||
</rect>
|
</rect>
|
||||||
</property>
|
</property>
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
|
<sizepolicy hsizetype="Ignored" vsizetype="Ignored">
|
||||||
<horstretch>0</horstretch>
|
<horstretch>0</horstretch>
|
||||||
<verstretch>0</verstretch>
|
<verstretch>0</verstretch>
|
||||||
</sizepolicy>
|
</sizepolicy>
|
||||||
@ -19,10 +19,7 @@
|
|||||||
<property name="windowTitle">
|
<property name="windowTitle">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
<layout class="QGridLayout" name="gridLayout" columnstretch="1,0">
|
<layout class="QGridLayout" name="gridLayout_2">
|
||||||
<property name="leftMargin">
|
|
||||||
<number>9</number>
|
|
||||||
</property>
|
|
||||||
<property name="topMargin">
|
<property name="topMargin">
|
||||||
<number>3</number>
|
<number>3</number>
|
||||||
</property>
|
</property>
|
||||||
@ -30,19 +27,36 @@
|
|||||||
<number>3</number>
|
<number>3</number>
|
||||||
</property>
|
</property>
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
|
<layout class="QHBoxLayout" name="layout_" stretch="1,0">
|
||||||
|
<property name="sizeConstraint">
|
||||||
|
<enum>QLayout::SetMaximumSize</enum>
|
||||||
|
</property>
|
||||||
|
<item>
|
||||||
<widget class="QTextEdit" name="viewSourceTV">
|
<widget class="QTextEdit" name="viewSourceTV">
|
||||||
<property name="sizePolicy">
|
<property name="sizePolicy">
|
||||||
<sizepolicy hsizetype="MinimumExpanding" vsizetype="Ignored">
|
<sizepolicy hsizetype="MinimumExpanding" vsizetype="MinimumExpanding">
|
||||||
<horstretch>0</horstretch>
|
<horstretch>0</horstretch>
|
||||||
<verstretch>0</verstretch>
|
<verstretch>0</verstretch>
|
||||||
</sizepolicy>
|
</sizepolicy>
|
||||||
</property>
|
</property>
|
||||||
|
<property name="minimumSize">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
|
<property name="baseSize">
|
||||||
|
<size>
|
||||||
|
<width>0</width>
|
||||||
|
<height>0</height>
|
||||||
|
</size>
|
||||||
|
</property>
|
||||||
<property name="whatsThis">
|
<property name="whatsThis">
|
||||||
<string/>
|
<string/>
|
||||||
</property>
|
</property>
|
||||||
</widget>
|
</widget>
|
||||||
</item>
|
</item>
|
||||||
<item row="0" column="1">
|
<item>
|
||||||
<layout class="QFormLayout" name="formLayout">
|
<layout class="QFormLayout" name="formLayout">
|
||||||
<property name="sizeConstraint">
|
<property name="sizeConstraint">
|
||||||
<enum>QLayout::SetDefaultConstraint</enum>
|
<enum>QLayout::SetDefaultConstraint</enum>
|
||||||
@ -57,7 +71,7 @@
|
|||||||
<number>-1</number>
|
<number>-1</number>
|
||||||
</property>
|
</property>
|
||||||
<property name="verticalSpacing">
|
<property name="verticalSpacing">
|
||||||
<number>2</number>
|
<number>4</number>
|
||||||
</property>
|
</property>
|
||||||
<item row="0" column="0">
|
<item row="0" column="0">
|
||||||
<layout class="QHBoxLayout" name="horizontalLayout" stretch="0,1">
|
<layout class="QHBoxLayout" name="horizontalLayout" stretch="0,1">
|
||||||
@ -170,6 +184,8 @@
|
|||||||
</layout>
|
</layout>
|
||||||
</item>
|
</item>
|
||||||
</layout>
|
</layout>
|
||||||
|
</item>
|
||||||
|
</layout>
|
||||||
</widget>
|
</widget>
|
||||||
<tabstops>
|
<tabstops>
|
||||||
<tabstop>viewSourceTV</tabstop>
|
<tabstop>viewSourceTV</tabstop>
|
||||||
|
Loading…
Reference in New Issue
Block a user