Skip to content

Commit c857313

Browse files
committedFeb 28, 2013
Merge pull request #435 from Oslandia/atlas
[Atlas] Fix UI to be consistent with the use of QgsCollapsibleWidgets
2 parents 13b362e + 62e6b13 commit c857313

File tree

3 files changed

+398
-212
lines changed

3 files changed

+398
-212
lines changed
 

‎src/app/composer/qgsatlascompositionwidget.cpp‎

Lines changed: 18 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -85,12 +85,22 @@ void QgsAtlasCompositionWidget::on_mUseAtlasCheckBox_stateChanged( int state )
8585
if ( state == Qt::Checked )
8686
{
8787
atlasMap->setEnabled( true );
88-
mAtlasFrame->setEnabled( true );
88+
mConfigurationGroup->setEnabled( true );
89+
mVisibilityGroup->setEnabled( true );
90+
mSortingGroup->setEnabled( true );
91+
mFilteringGroup->setEnabled( true );
92+
mScalingGroup->setEnabled( true );
93+
mOutputGroup->setEnabled( true );
8994
}
9095
else
9196
{
9297
atlasMap->setEnabled( false );
93-
mAtlasFrame->setEnabled( false );
98+
mConfigurationGroup->setEnabled( false );
99+
mVisibilityGroup->setEnabled( false );
100+
mSortingGroup->setEnabled( false );
101+
mFilteringGroup->setEnabled( false );
102+
mScalingGroup->setEnabled( false );
103+
mOutputGroup->setEnabled( false );
94104
}
95105
}
96106

@@ -409,5 +419,10 @@ void QgsAtlasCompositionWidget::updateGuiElements()
409419
void QgsAtlasCompositionWidget::blockAllSignals( bool b )
410420
{
411421
mUseAtlasCheckBox->blockSignals( b );
412-
mAtlasFrame->blockSignals( b );
422+
mConfigurationGroup->blockSignals( b );
423+
mVisibilityGroup->blockSignals( b );
424+
mSortingGroup->blockSignals( b );
425+
mFilteringGroup->blockSignals( b );
426+
mScalingGroup->blockSignals( b );
427+
mOutputGroup->blockSignals( b );
413428
}

‎src/app/composer/qgscomposer.cpp‎

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -323,6 +323,7 @@ QgsComposer::QgsComposer( QgisApp *qgis, const QString& title )
323323
tabifyDockWidget( mGeneralDock, mUndoDock );
324324
tabifyDockWidget( mItemDock, mUndoDock );
325325
tabifyDockWidget( mGeneralDock, mItemDock );
326+
tabifyDockWidget( mItemDock, mAtlasDock );
326327

327328
mGeneralDock->raise();
328329

‎src/ui/qgsatlascompositionwidgetbase.ui‎

Lines changed: 379 additions & 209 deletions
Original file line numberDiff line numberDiff line change
@@ -6,8 +6,8 @@
66
<rect>
77
<x>0</x>
88
<y>0</y>
9-
<width>450</width>
10-
<height>501</height>
9+
<width>435</width>
10+
<height>596</height>
1111
</rect>
1212
</property>
1313
<property name="sizePolicy">
@@ -17,233 +17,403 @@
1717
</sizepolicy>
1818
</property>
1919
<property name="windowTitle">
20-
<string>Atlas generation</string>
20+
<string>Form</string>
2121
</property>
22-
<layout class="QGridLayout" name="gridLayout_8">
22+
<layout class="QVBoxLayout" name="verticalLayout">
23+
<property name="spacing">
24+
<number>0</number>
25+
</property>
2326
<property name="margin">
2427
<number>0</number>
2528
</property>
26-
<item row="0" column="0">
27-
<widget class="QToolBox" name="toolBox">
28-
<property name="lineWidth">
29-
<number>0</number>
29+
<item>
30+
<widget class="QLabel" name="label">
31+
<property name="styleSheet">
32+
<string notr="true">padding: 2px; font-weight: bold; background-color: rgb(200, 200, 200);</string>
3033
</property>
31-
<property name="currentIndex">
32-
<number>0</number>
34+
<property name="text">
35+
<string>Atlas generation</string>
3336
</property>
34-
<widget class="QWidget" name="page_4">
35-
<property name="geometry">
36-
<rect>
37-
<x>0</x>
38-
<y>0</y>
39-
<width>450</width>
40-
<height>470</height>
41-
</rect>
37+
</widget>
38+
</item>
39+
<item>
40+
<widget class="QFrame" name="verticalFrame">
41+
<property name="frameShape">
42+
<enum>QFrame::StyledPanel</enum>
43+
</property>
44+
<layout class="QGridLayout" name="gridLayout">
45+
<property name="horizontalSpacing">
46+
<number>0</number>
47+
</property>
48+
<property name="verticalSpacing">
49+
<number>3</number>
50+
</property>
51+
<property name="margin">
52+
<number>0</number>
4253
</property>
43-
<attribute name="label">
44-
<string>Atlas options</string>
45-
</attribute>
46-
<layout class="QGridLayout" name="gridLayout_9">
47-
<item row="2" column="0">
48-
<widget class="QFrame" name="mAtlasFrame">
54+
<item row="0" column="1">
55+
<widget class="QCheckBox" name="mUseAtlasCheckBox">
56+
<property name="text">
57+
<string>Generate an atlas</string>
58+
</property>
59+
</widget>
60+
</item>
61+
<item row="0" column="2">
62+
<spacer name="horizontalSpacer">
63+
<property name="orientation">
64+
<enum>Qt::Horizontal</enum>
65+
</property>
66+
<property name="sizeHint" stdset="0">
67+
<size>
68+
<width>40</width>
69+
<height>20</height>
70+
</size>
71+
</property>
72+
</spacer>
73+
</item>
74+
<item row="0" column="0">
75+
<spacer name="horizontalSpacer_2">
76+
<property name="orientation">
77+
<enum>Qt::Horizontal</enum>
78+
</property>
79+
<property name="sizeType">
80+
<enum>QSizePolicy::Fixed</enum>
81+
</property>
82+
<property name="sizeHint" stdset="0">
83+
<size>
84+
<width>12</width>
85+
<height>20</height>
86+
</size>
87+
</property>
88+
</spacer>
89+
</item>
90+
<item row="1" column="0" colspan="3">
91+
<widget class="QScrollArea" name="scrollArea">
92+
<property name="widgetResizable">
93+
<bool>true</bool>
94+
</property>
95+
<widget class="QWidget" name="scrollAreaWidgetContents">
4996
<property name="enabled">
50-
<bool>false</bool>
97+
<bool>true</bool>
5198
</property>
52-
<property name="sizePolicy">
53-
<sizepolicy hsizetype="Preferred" vsizetype="Preferred">
54-
<horstretch>0</horstretch>
55-
<verstretch>1</verstretch>
56-
</sizepolicy>
99+
<property name="geometry">
100+
<rect>
101+
<x>0</x>
102+
<y>0</y>
103+
<width>431</width>
104+
<height>546</height>
105+
</rect>
57106
</property>
58-
<property name="autoFillBackground">
59-
<bool>false</bool>
60-
</property>
61-
<property name="frameShape">
62-
<enum>QFrame::NoFrame</enum>
63-
</property>
64-
<property name="frameShadow">
65-
<enum>QFrame::Raised</enum>
66-
</property>
67-
<property name="lineWidth">
68-
<number>0</number>
69-
</property>
70-
<layout class="QVBoxLayout" name="verticalLayout">
71-
<property name="spacing">
72-
<number>6</number>
73-
</property>
74-
<property name="margin">
107+
<layout class="QVBoxLayout" name="mainLayout">
108+
<property name="bottomMargin">
75109
<number>0</number>
76110
</property>
77111
<item>
78-
<layout class="QGridLayout" name="gridLayout_7" rowstretch="0,0,0,0,0,0,0,0,0,0" columnstretch="0,0,0">
79-
<item row="4" column="0">
80-
<widget class="QLabel" name="mAtlasFeatureFilterLabel">
81-
<property name="text">
82-
<string>Feature filter</string>
83-
</property>
84-
</widget>
85-
</item>
86-
<item row="2" column="0" colspan="2">
87-
<widget class="QCheckBox" name="mAtlasHideCoverageCheckBox">
88-
<property name="toolTip">
89-
<string>Hide the coverage layer when generating the output</string>
90-
</property>
91-
<property name="text">
92-
<string>Hidden coverage layer</string>
93-
</property>
94-
</widget>
95-
</item>
96-
<item row="5" column="0">
97-
<widget class="QLabel" name="label">
98-
<property name="text">
99-
<string>Margin around coverage</string>
100-
</property>
101-
</widget>
102-
</item>
103-
<item row="8" column="0">
104-
<widget class="QLabel" name="label_5">
105-
<property name="text">
106-
<string>Output filename expression</string>
107-
</property>
108-
</widget>
109-
</item>
110-
<item row="5" column="1">
111-
<widget class="QSpinBox" name="mAtlasMarginSpinBox">
112-
<property name="suffix">
113-
<string> %</string>
114-
</property>
115-
<property name="maximum">
116-
<number>100</number>
117-
</property>
118-
<property name="value">
119-
<number>10</number>
120-
</property>
121-
</widget>
122-
</item>
123-
<item row="8" column="2">
124-
<widget class="QToolButton" name="mAtlasFilenameExpressionButton">
125-
<property name="text">
126-
<string>...</string>
127-
</property>
128-
</widget>
129-
</item>
130-
<item row="8" column="1">
131-
<widget class="QLineEdit" name="mAtlasFilenamePatternEdit"/>
132-
</item>
133-
<item row="1" column="0">
134-
<widget class="QLabel" name="label_6">
135-
<property name="text">
136-
<string>Coverage layer</string>
137-
</property>
138-
</widget>
139-
</item>
140-
<item row="1" column="1">
141-
<widget class="QComboBox" name="mAtlasCoverageLayerComboBox">
142-
<property name="contextMenuPolicy">
143-
<enum>Qt::NoContextMenu</enum>
144-
</property>
145-
</widget>
146-
</item>
147-
<item row="6" column="0" colspan="2">
148-
<widget class="QCheckBox" name="mAtlasFixedScaleCheckBox">
149-
<property name="text">
150-
<string>Fixed scale</string>
151-
</property>
152-
</widget>
153-
</item>
154-
<item row="9" column="0" colspan="2">
155-
<widget class="QCheckBox" name="mAtlasSingleFileCheckBox">
156-
<property name="text">
157-
<string>Single file export when possible</string>
158-
</property>
159-
</widget>
160-
</item>
161-
<item row="0" column="1">
162-
<widget class="QComboBox" name="mComposerMapComboBox"/>
163-
</item>
164-
<item row="0" column="0">
165-
<widget class="QLabel" name="label_2">
166-
<property name="text">
167-
<string>Composer map to use</string>
168-
</property>
169-
</widget>
170-
</item>
171-
<item row="3" column="1">
172-
<widget class="QComboBox" name="mAtlasSortFeatureKeyComboBox">
173-
<property name="toolTip">
174-
<string>Sort key</string>
175-
</property>
176-
</widget>
177-
</item>
178-
<item row="4" column="1">
179-
<widget class="QLineEdit" name="mAtlasFeatureFilterEdit">
180-
<property name="toolTip">
181-
<string>Feature filter</string>
182-
</property>
183-
</widget>
184-
</item>
185-
<item row="3" column="0">
186-
<widget class="QCheckBox" name="mAtlasSortFeatureCheckBox">
187-
<property name="text">
188-
<string>Sort features</string>
189-
</property>
190-
</widget>
191-
</item>
192-
<item row="4" column="2">
193-
<widget class="QToolButton" name="mAtlasFeatureFilterButton">
194-
<property name="toolTip">
195-
<string>Open expression builder</string>
196-
</property>
197-
<property name="text">
198-
<string>...</string>
199-
</property>
200-
</widget>
201-
</item>
202-
<item row="3" column="2">
203-
<widget class="QToolButton" name="mAtlasSortFeatureDirectionButton">
204-
<property name="toolTip">
205-
<string>Sort direction</string>
206-
</property>
207-
<property name="text">
208-
<string>...</string>
209-
</property>
210-
<property name="arrowType">
211-
<enum>Qt::UpArrow</enum>
212-
</property>
213-
</widget>
214-
</item>
215-
</layout>
112+
<widget class="QgsCollapsibleGroupBoxBasic" name="mConfigurationGroup">
113+
<property name="enabled">
114+
<bool>false</bool>
115+
</property>
116+
<property name="title">
117+
<string>Configuration</string>
118+
</property>
119+
<property name="checkable">
120+
<bool>false</bool>
121+
</property>
122+
<property name="syncGroup" stdset="0">
123+
<string notr="true">composeritem</string>
124+
</property>
125+
<property name="collapsed" stdset="0">
126+
<bool>false</bool>
127+
</property>
128+
<layout class="QFormLayout" name="formLayout_4">
129+
<property name="fieldGrowthPolicy">
130+
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
131+
</property>
132+
<property name="labelAlignment">
133+
<set>Qt::AlignLeading|Qt::AlignLeft|Qt::AlignVCenter</set>
134+
</property>
135+
<item row="0" column="0">
136+
<widget class="QLabel" name="mVerticalAlignementLabel">
137+
<property name="text">
138+
<string>Composer map</string>
139+
</property>
140+
</widget>
141+
</item>
142+
<item row="0" column="1">
143+
<layout class="QHBoxLayout" name="horizontalLayout_6">
144+
<item>
145+
<widget class="QComboBox" name="mComposerMapComboBox"/>
146+
</item>
147+
</layout>
148+
</item>
149+
<item row="1" column="0">
150+
<widget class="QLabel" name="mHorizontalAlignementLabel">
151+
<property name="text">
152+
<string>Coverage layer</string>
153+
</property>
154+
</widget>
155+
</item>
156+
<item row="1" column="1">
157+
<layout class="QHBoxLayout" name="horizontalLayout_5">
158+
<item>
159+
<widget class="QComboBox" name="mAtlasCoverageLayerComboBox"/>
160+
</item>
161+
</layout>
162+
</item>
163+
</layout>
164+
</widget>
165+
</item>
166+
<item>
167+
<widget class="QgsCollapsibleGroupBoxBasic" name="mVisibilityGroup">
168+
<property name="enabled">
169+
<bool>false</bool>
170+
</property>
171+
<property name="title">
172+
<string>Visibility</string>
173+
</property>
174+
<property name="checkable">
175+
<bool>false</bool>
176+
</property>
177+
<property name="syncGroup" stdset="0">
178+
<string notr="true">composeritem</string>
179+
</property>
180+
<property name="collapsed" stdset="0">
181+
<bool>false</bool>
182+
</property>
183+
<layout class="QVBoxLayout" name="verticalLayout_2">
184+
<item>
185+
<widget class="QCheckBox" name="mAtlasHideCoverageCheckBox">
186+
<property name="text">
187+
<string>Hidden coverage layer</string>
188+
</property>
189+
</widget>
190+
</item>
191+
</layout>
192+
</widget>
193+
</item>
194+
<item>
195+
<widget class="QgsCollapsibleGroupBoxBasic" name="mSortingGroup">
196+
<property name="enabled">
197+
<bool>false</bool>
198+
</property>
199+
<property name="title">
200+
<string>Feature sorting</string>
201+
</property>
202+
<property name="checkable">
203+
<bool>false</bool>
204+
</property>
205+
<property name="syncGroup" stdset="0">
206+
<string notr="true">composeritem</string>
207+
</property>
208+
<property name="collapsed" stdset="0">
209+
<bool>true</bool>
210+
</property>
211+
<layout class="QFormLayout" name="formLayout">
212+
<property name="fieldGrowthPolicy">
213+
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
214+
</property>
215+
<item row="0" column="0">
216+
<widget class="QCheckBox" name="mAtlasSortFeatureCheckBox">
217+
<property name="text">
218+
<string>Sort by</string>
219+
</property>
220+
</widget>
221+
</item>
222+
<item row="0" column="1">
223+
<layout class="QHBoxLayout" name="horizontalLayout">
224+
<item>
225+
<widget class="QComboBox" name="mAtlasSortFeatureKeyComboBox"/>
226+
</item>
227+
<item>
228+
<widget class="QToolButton" name="mAtlasSortFeatureDirectionButton">
229+
<property name="toolTip">
230+
<string>Sort direction</string>
231+
</property>
232+
<property name="text">
233+
<string>...</string>
234+
</property>
235+
<property name="arrowType">
236+
<enum>Qt::UpArrow</enum>
237+
</property>
238+
</widget>
239+
</item>
240+
</layout>
241+
</item>
242+
</layout>
243+
</widget>
244+
</item>
245+
<item>
246+
<widget class="QgsCollapsibleGroupBoxBasic" name="mFilteringGroup">
247+
<property name="enabled">
248+
<bool>false</bool>
249+
</property>
250+
<property name="title">
251+
<string>Feature filtering</string>
252+
</property>
253+
<property name="checkable">
254+
<bool>false</bool>
255+
</property>
256+
<property name="syncGroup" stdset="0">
257+
<string notr="true">composeritem</string>
258+
</property>
259+
<property name="collapsed" stdset="0">
260+
<bool>true</bool>
261+
</property>
262+
<layout class="QFormLayout" name="formLayout_2">
263+
<property name="fieldGrowthPolicy">
264+
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
265+
</property>
266+
<item row="0" column="1">
267+
<layout class="QHBoxLayout" name="horizontalLayout_2">
268+
<item>
269+
<widget class="QLineEdit" name="mAtlasFeatureFilterEdit"/>
270+
</item>
271+
<item>
272+
<widget class="QToolButton" name="mAtlasFeatureFilterButton">
273+
<property name="text">
274+
<string>...</string>
275+
</property>
276+
</widget>
277+
</item>
278+
</layout>
279+
</item>
280+
<item row="0" column="0">
281+
<widget class="QLabel" name="label_2">
282+
<property name="text">
283+
<string>Filter with</string>
284+
</property>
285+
</widget>
286+
</item>
287+
</layout>
288+
</widget>
289+
</item>
290+
<item>
291+
<widget class="QgsCollapsibleGroupBoxBasic" name="mScalingGroup">
292+
<property name="enabled">
293+
<bool>false</bool>
294+
</property>
295+
<property name="title">
296+
<string>Scaling</string>
297+
</property>
298+
<property name="checkable">
299+
<bool>false</bool>
300+
</property>
301+
<property name="syncGroup" stdset="0">
302+
<string notr="true">composeritem</string>
303+
</property>
304+
<property name="collapsed" stdset="0">
305+
<bool>false</bool>
306+
</property>
307+
<layout class="QFormLayout" name="formLayout_3">
308+
<item row="1" column="0">
309+
<widget class="QCheckBox" name="mAtlasFixedScaleCheckBox">
310+
<property name="text">
311+
<string>Fixed scale</string>
312+
</property>
313+
</widget>
314+
</item>
315+
<item row="0" column="0">
316+
<widget class="QLabel" name="label_3">
317+
<property name="text">
318+
<string>Margin around feature</string>
319+
</property>
320+
</widget>
321+
</item>
322+
<item row="0" column="1">
323+
<widget class="QSpinBox" name="mAtlasMarginSpinBox">
324+
<property name="suffix">
325+
<string>%</string>
326+
</property>
327+
<property name="maximum">
328+
<number>100</number>
329+
</property>
330+
<property name="value">
331+
<number>10</number>
332+
</property>
333+
</widget>
334+
</item>
335+
</layout>
336+
</widget>
337+
</item>
338+
<item>
339+
<widget class="QgsCollapsibleGroupBoxBasic" name="mOutputGroup">
340+
<property name="enabled">
341+
<bool>false</bool>
342+
</property>
343+
<property name="title">
344+
<string>Output</string>
345+
</property>
346+
<property name="checkable">
347+
<bool>false</bool>
348+
</property>
349+
<property name="syncGroup" stdset="0">
350+
<string notr="true">composeritem</string>
351+
</property>
352+
<property name="collapsed" stdset="0">
353+
<bool>false</bool>
354+
</property>
355+
<layout class="QFormLayout" name="formLayout_5">
356+
<item row="0" column="0">
357+
<widget class="QLabel" name="label_4">
358+
<property name="text">
359+
<string>Output filename expression</string>
360+
</property>
361+
</widget>
362+
</item>
363+
<item row="0" column="1">
364+
<layout class="QHBoxLayout" name="horizontalLayout_3">
365+
<item>
366+
<widget class="QLineEdit" name="mAtlasFilenamePatternEdit"/>
367+
</item>
368+
<item>
369+
<widget class="QToolButton" name="mAtlasFilenameExpressionButton">
370+
<property name="text">
371+
<string>...</string>
372+
</property>
373+
</widget>
374+
</item>
375+
</layout>
376+
</item>
377+
<item row="1" column="0" colspan="2">
378+
<widget class="QCheckBox" name="mAtlasSingleFileCheckBox">
379+
<property name="text">
380+
<string>Single file export when possible</string>
381+
</property>
382+
</widget>
383+
</item>
384+
</layout>
385+
</widget>
386+
</item>
387+
<item>
388+
<spacer name="verticalSpacer">
389+
<property name="orientation">
390+
<enum>Qt::Vertical</enum>
391+
</property>
392+
<property name="sizeHint" stdset="0">
393+
<size>
394+
<width>20</width>
395+
<height>40</height>
396+
</size>
397+
</property>
398+
</spacer>
216399
</item>
217400
</layout>
218401
</widget>
219-
</item>
220-
<item row="5" column="0">
221-
<spacer name="verticalSpacer_5">
222-
<property name="orientation">
223-
<enum>Qt::Vertical</enum>
224-
</property>
225-
<property name="sizeHint" stdset="0">
226-
<size>
227-
<width>20</width>
228-
<height>76</height>
229-
</size>
230-
</property>
231-
</spacer>
232-
</item>
233-
<item row="0" column="0">
234-
<widget class="QCheckBox" name="mUseAtlasCheckBox">
235-
<property name="text">
236-
<string>Generate an atlas</string>
237-
</property>
238-
</widget>
239-
</item>
240-
</layout>
241-
</widget>
402+
</widget>
403+
</item>
404+
</layout>
242405
</widget>
243406
</item>
244407
</layout>
245408
</widget>
246-
<layoutdefault spacing="6" margin="11"/>
409+
<customwidgets>
410+
<customwidget>
411+
<class>QgsCollapsibleGroupBoxBasic</class>
412+
<extends>QGroupBox</extends>
413+
<header location="global">qgscollapsiblegroupbox.h</header>
414+
<container>1</container>
415+
</customwidget>
416+
</customwidgets>
247417
<resources/>
248418
<connections/>
249419
</ui>

0 commit comments

Comments
 (0)
Please sign in to comment.