109 : QWidget(parent,f),
m_d(
new Imp)
110{
111 if (!views.count())
112 std::cout<<"VP12DExaminerViewer ERROR: Using multimode constructor with empty list of requested views!"<<std::endl;
113
114
116 m_d->singleviewmode =
false;
117
119
120
121 QVBoxLayout *
layout =
new QVBoxLayout;
123 layout->setContentsMargins(0, 0, 0, 0);
124 QSizePolicy sizePolicy(QSizePolicy::Fixed, QSizePolicy::Fixed);
125 sizePolicy.setHorizontalStretch(0);
126 sizePolicy.setVerticalStretch(0);
127 m_d->ui->widget_viewchangebuttons->setLayout(layout);
128
129
130 m_d->multiviews_viewidAndIconUrl = views;
131 VP1GraphicsView * firstview(0);
132 for (
int i = 0;
i<views.count();++
i) {
133
134 VP1GraphicsView *
view =
new VP1GraphicsView;
135 if (!firstview)
137
138 m_d->multiviews_viewid2view.insert(views.at(i).first,
view);
139
140 m_d->ui->stackedWidget_views->insertWidget(
m_d->ui->stackedWidget_views->count(),
view);
141
142 QPushButton* button =
new QPushButton(
m_d->ui->widget_viewchangebuttons);
143 button->setToolTip(views.at(i).first);
144 button->setSizePolicy(sizePolicy);
145 button->setMinimumSize(QSize(30, 30));
146 button->setMaximumSize(QSize(30, 30));
147 button->setFocusPolicy(Qt::NoFocus);
148 button->setIcon(QIcon(views.at(i).second));
149 button->setIconSize(QSize(30, 30));
150 button->setCheckable(false);
151 layout->addWidget(button);
152
154 m_d->button2viewid.insert(button,views.at(i).first);
155 }
156
157 QSpacerItem * spacerItem = new QSpacerItem(20, 1, QSizePolicy::Minimum, QSizePolicy::Expanding);
158 layout->addItem(spacerItem);
159
160 if (firstview)
161 m_d->ui->stackedWidget_views->setCurrentWidget(firstview);
162 else
163 std::cout<<"VP12DExaminerViewer WARNING: View is NULL"<<std::endl;
164
166
167
168}
VP1GraphicsView * view() const
void changeViewButtonClicked()