--- /dev/null
+#include "eventdialog.h"
+
+EventDialog::EventDialog(const QModelIndex &aIndex, QWidget *aParent)
+ : QDialog(aParent)
+ , mIndex(aIndex)
+{
+ setupUi(this);
+ Event *event = static_cast<Event *>(mIndex.internalPointer());
+ title->setText(event->title());
+ persons->setText(QString::number(event->id()));
+ abstract->setPlainText(event->abstract());
+ description->setPlainText(event->description());
+}
+
--- /dev/null
+#ifndef EVENTDIALOG_H
+#define EVENTDIALOG_H
+
+#include <QDialog>
+#include <QModelIndex>
+#include "ui_eventdialog.h"
+#include <event.h>
+
+class EventDialog : public QDialog, Ui::EventDialog
+{
+public:
+ EventDialog(const QModelIndex &aIndex, QWidget *aParent = NULL);
+ ~EventDialog() {}
+private:
+ QModelIndex mIndex;
+};
+
+#endif /* EVENTDIALOG_H */
+
--- /dev/null
+<ui version="4.0" >
+ <class>EventDialog</class>
+ <widget class="QDialog" name="EventDialog" >
+ <property name="geometry" >
+ <rect>
+ <x>0</x>
+ <y>0</y>
+ <width>339</width>
+ <height>250</height>
+ </rect>
+ </property>
+ <property name="windowTitle" >
+ <string>Dialog</string>
+ </property>
+ <layout class="QGridLayout" name="gridLayout" >
+ <item row="0" column="0" >
+ <layout class="QVBoxLayout" name="verticalLayout" >
+ <item>
+ <widget class="QLabel" name="title" >
+ <property name="text" >
+ <string>Here goes title</string>
+ </property>
+ </widget>
+ </item>
+ <item>
+ <layout class="QGridLayout" name="gridLayout_2" >
+ <item row="1" column="1" >
+ <widget class="QLabel" name="label_2" >
+ <property name="text" >
+ <string>Presenter(s):</string>
+ </property>
+ </widget>
+ </item>
+ <item row="1" column="2" >
+ <widget class="QLabel" name="persons" >
+ <property name="text" >
+ <string>Here go persons</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="1" >
+ <widget class="QLabel" name="label_3" >
+ <property name="text" >
+ <string>Abstract:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="2" column="2" >
+ <widget class="QPlainTextEdit" name="abstract" />
+ </item>
+ <item row="3" column="1" >
+ <widget class="QLabel" name="label" >
+ <property name="text" >
+ <string>Description:</string>
+ </property>
+ </widget>
+ </item>
+ <item row="3" column="2" >
+ <widget class="QPlainTextEdit" name="description" />
+ </item>
+ </layout>
+ </item>
+ <item>
+ <layout class="QHBoxLayout" name="horizontalLayout" >
+ <item>
+ <spacer name="horizontalSpacer" >
+ <property name="orientation" >
+ <enum>Qt::Horizontal</enum>
+ </property>
+ <property name="sizeHint" stdset="0" >
+ <size>
+ <width>40</width>
+ <height>20</height>
+ </size>
+ </property>
+ </spacer>
+ </item>
+ <item>
+ <widget class="QPushButton" name="okButton" >
+ <property name="text" >
+ <string>OK</string>
+ </property>
+ </widget>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </item>
+ </layout>
+ </widget>
+ <resources/>
+ <connections>
+ <connection>
+ <sender>okButton</sender>
+ <signal>clicked()</signal>
+ <receiver>EventDialog</receiver>
+ <slot>close()</slot>
+ <hints>
+ <hint type="sourcelabel" >
+ <x>287</x>
+ <y>84</y>
+ </hint>
+ <hint type="destinationlabel" >
+ <x>169</x>
+ <y>53</y>
+ </hint>
+ </hints>
+ </connection>
+ </connections>
+</ui>
FORMS += mainwindow.ui \
daynavigatorwidget.ui \
- about.ui
+ about.ui \
+ eventdialog.ui
HEADERS += mainwindow.h \
- daynavigatorwidget.h
+ daynavigatorwidget.h \
+ eventdialog.h
SOURCES += mainwindow.cpp \
- daynavigatorwidget.cpp
+ daynavigatorwidget.cpp \
+ eventdialog.cpp
maemo {
FORMS += alarmdialog.ui
#include <QDialog>
#include "ui_about.h"
+#include "eventdialog.h"
#include "daynavigatorwidget.h"
MainWindow::MainWindow(QWidget *parent)
favTreeView->setItemDelegate(new Delegate(favTreeView));
//ACTIVITIES View
- activityDayTreeView->setHeaderHidden(true);
- activityDayTreeView->setRootIsDecorated(false);
- activityDayTreeView->setIndentation(0);
- activityDayTreeView->setAnimated(true);
- activityDayTreeView->setModel(new EventModel());
- activityDayTreeView->setItemDelegate(new Delegate(activityDayTreeView));
+ actTreeView->setHeaderHidden(true);
+ actTreeView->setRootIsDecorated(false);
+ actTreeView->setIndentation(0);
+ actTreeView->setAnimated(true);
+ actTreeView->setModel(new EventModel());
+ actTreeView->setItemDelegate(new Delegate(actTreeView));
+
+ connect(dayTreeView, SIGNAL(doubleClicked(const QModelIndex &)), SLOT(itemDoubleClicked(const QModelIndex &)));
+ connect(favTreeView, SIGNAL(doubleClicked(const QModelIndex &)), SLOT(itemDoubleClicked(const QModelIndex &)));
+ connect(actTreeView, SIGNAL(doubleClicked(const QModelIndex &)), SLOT(itemDoubleClicked(const QModelIndex &)));
// TESTING: load some 'fav' data
if(Conference::getAll().count()) // no conference(s) in the DB
void MainWindow::updateActivitiesDayView(const QDate &aDate)
{
int confId = 1;
- static_cast<EventModel*>(activityDayTreeView->model())->loadEventsByActivities(aDate,confId);
- activityDayTreeView->reset();
+ static_cast<EventModel*>(actTreeView->model())->loadEventsByActivities(aDate,confId);
+ actTreeView->reset();
activityDayNavigator->show();
}
+
+void MainWindow::itemDoubleClicked(const QModelIndex &aIndex)
+{
+ // have to handle only events, not time-groups
+ if(!aIndex.parent().isValid()) // time-group
+ return;
+
+ EventDialog dialog(aIndex,this);
+ dialog.exec();
+}
+
void updateFavView();
/*void updateFavViewComplete();*/
void updateActivitiesDayView(const QDate &aDate);
+ void itemDoubleClicked(const QModelIndex &aIndex);
private:
SqlEngine *mSqlEngine;
ScheduleXmlParser *mXmlParser;
<item row="0" column="0" >
<widget class="QTabWidget" name="tabWidget" >
<property name="currentIndex" >
- <number>2</number>
+ <number>0</number>
</property>
<widget class="QWidget" name="dayViewTab" >
<attribute name="title" >
<widget class="DayNavigatorWidget" native="1" name="activityDayNavigator" />
</item>
<item>
- <widget class="TreeView" name="activityDayTreeView" >
+ <widget class="TreeView" name="actTreeView" >
<property name="maximumSize" >
<size>
<width>16777215</width>