[Tux4kids-commits] r1206 - in tux4kids-admin/trunk: libtux4kidsadmin tux4kids-admin/src

Michał Świtakowski swistakers-guest at alioth.debian.org
Tue Jul 14 22:02:47 UTC 2009


Author: swistakers-guest
Date: 2009-07-14 22:02:47 +0000 (Tue, 14 Jul 2009)
New Revision: 1206

Added:
   tux4kids-admin/trunk/libtux4kidsadmin/studentDir.cpp
   tux4kids-admin/trunk/libtux4kidsadmin/studentDir.h
   tux4kids-admin/trunk/libtux4kidsadmin/studentDir_p.h
Removed:
   tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.cpp
Modified:
   tux4kids-admin/trunk/libtux4kidsadmin/CMakeLists.txt
   tux4kids-admin/trunk/libtux4kidsadmin/libtux4kidsadmin.pro
   tux4kids-admin/trunk/libtux4kidsadmin/schoolData.cpp
   tux4kids-admin/trunk/libtux4kidsadmin/schoolData.h
   tux4kids-admin/trunk/libtux4kidsadmin/schoolData_p.h
   tux4kids-admin/trunk/tux4kids-admin/src/CMakeLists.txt
   tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.h
   tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.ui
   tux4kids-admin/trunk/tux4kids-admin/src/main.cpp
   tux4kids-admin/trunk/tux4kids-admin/src/mainController.cpp
   tux4kids-admin/trunk/tux4kids-admin/src/mainController.h
   tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.cpp
   tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.h
   tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.ui
   tux4kids-admin/trunk/tux4kids-admin/src/manageStudentsWidget.cpp
   tux4kids-admin/trunk/tux4kids-admin/src/manageStudentsWidget.h
   tux4kids-admin/trunk/tux4kids-admin/src/src.pro
Log:
adding very basic student dirs works

Modified: tux4kids-admin/trunk/libtux4kidsadmin/CMakeLists.txt
===================================================================
--- tux4kids-admin/trunk/libtux4kidsadmin/CMakeLists.txt	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/libtux4kidsadmin/CMakeLists.txt	2009-07-14 22:02:47 UTC (rev 1206)
@@ -4,11 +4,13 @@
 SET(LIBTUX4KIDSADMIN_SOURCES 
 	libtux4kidsadmin.cpp
 	profileDir.cpp 
-	schoolData.cpp )
+	schoolData.cpp
+	studentDir.cpp )
 
 SET(LIBTUX4KIDSADMIN_MOC_HEADERS 
 	profileDir.h 
-	schoolData.h )
+	schoolData.h
+	studentDir.h )
 
 # enable warnings
 ADD_DEFINITIONS( -Wall -DLIBTUX4KIDSADMIN_LIBRARY )

Modified: tux4kids-admin/trunk/libtux4kidsadmin/libtux4kidsadmin.pro
===================================================================
--- tux4kids-admin/trunk/libtux4kidsadmin/libtux4kidsadmin.pro	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/libtux4kidsadmin/libtux4kidsadmin.pro	2009-07-14 22:02:47 UTC (rev 1206)
@@ -4,10 +4,13 @@
 DEFINES += LIBTUX4KIDSADMIN_LIBRARY
 SOURCES += libtux4kidsadmin.cpp \
     profileDir.cpp \
-    schoolData.cpp
+    schoolData.cpp \
+    studentDir.cpp
 HEADERS += libtux4kidsadmin.h \
     libtux4kidsadmin_global.h \
     profileDir.h \
     schoolData.h \
     schoolData_p.h \
-    profileDir_p.h
+    profileDir_p.h \
+    studentDir.h \
+    studentDir_p.h

Modified: tux4kids-admin/trunk/libtux4kidsadmin/schoolData.cpp
===================================================================
--- tux4kids-admin/trunk/libtux4kidsadmin/schoolData.cpp	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/libtux4kidsadmin/schoolData.cpp	2009-07-14 22:02:47 UTC (rev 1206)
@@ -1,7 +1,9 @@
 #include "schoolData.h"
 #include "schoolData_p.h"
+#include "studentDir.h"
 
 #include <QString>
+#include <QDebug>
 
 /****************** SchoolDataPrivate *******************/
 
@@ -22,6 +24,17 @@
 {
 }
 
+QString SchoolDataPrivate::nextStudentDir() const
+{
+	QString baseName = "student_";
+	int number = 1;
+	while(mainDir.exists(baseName + QString::number(number)))
+		++number;
+
+	return baseName + QString::number(number);
+}
+
+
 /****************** SchoolData *******************/
 
 SchoolData::SchoolData(QString path, QObject *parent)
@@ -43,14 +56,13 @@
 	return d->status;
 }
 
-QString SchoolData::nextProfileDir() const
+StudentDir *SchoolData::addStudent()
 {
-	Q_D(const SchoolData);
-	QString baseName = "profile_";
-	int number = 1;
-	while(!d->mainDir.exists(baseName + QString::number(number)))
-		++number;
+	Q_D(SchoolData);
 
-	return baseName + QString::number(number);
+	StudentDir *studentDir = new StudentDir(d->mainDir.absoluteFilePath(d->nextStudentDir()));
+	d->students.append(studentDir);
+
+	return studentDir;
 }
 

Modified: tux4kids-admin/trunk/libtux4kidsadmin/schoolData.h
===================================================================
--- tux4kids-admin/trunk/libtux4kidsadmin/schoolData.h	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/libtux4kidsadmin/schoolData.h	2009-07-14 22:02:47 UTC (rev 1206)
@@ -5,6 +5,7 @@
 
 class QString;
 class SchoolDataPrivate;
+class StudentDir;
 
 class SchoolData : public QObject
 {
@@ -19,7 +20,7 @@
 	};
 
 	Status status() const;
-	QString nextProfileDir() const;
+	StudentDir *addStudent();
 
 protected:
 	SchoolDataPrivate * const d_ptr;

Modified: tux4kids-admin/trunk/libtux4kidsadmin/schoolData_p.h
===================================================================
--- tux4kids-admin/trunk/libtux4kidsadmin/schoolData_p.h	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/libtux4kidsadmin/schoolData_p.h	2009-07-14 22:02:47 UTC (rev 1206)
@@ -10,6 +10,7 @@
 
 class QString;
 class ProfileDir;
+class StudentDir;
 
 class SchoolDataPrivate
 {
@@ -19,10 +20,13 @@
 	SchoolDataPrivate(QString path);
 	virtual ~SchoolDataPrivate();
 
+	QString nextStudentDir() const;
+
 	SchoolData *q_ptr;
 
 	QDir mainDir;
 	SchoolData::Status status;
+	QList< QPointer<StudentDir> > students;
 	QList< QPointer<ProfileDir> > profiles;
 };
 

Added: tux4kids-admin/trunk/libtux4kidsadmin/studentDir.cpp
===================================================================
--- tux4kids-admin/trunk/libtux4kidsadmin/studentDir.cpp	                        (rev 0)
+++ tux4kids-admin/trunk/libtux4kidsadmin/studentDir.cpp	2009-07-14 22:02:47 UTC (rev 1206)
@@ -0,0 +1,69 @@
+#include "studentDir.h"
+#include "studentDir_p.h"
+
+#include <QString>
+
+/****************** StudentDirPrivate *******************/
+
+StudentDirPrivate::StudentDirPrivate(QString path)
+{
+	mainDir.setPath(path);
+	if (!mainDir.exists()) {
+		if (!QDir::root().mkpath(path)) {
+			status = StudentDir::InitializationError;
+			return;
+		}
+	}
+	mainDir.setPath(path);
+
+	attributes = new QSettings(path + "/attributes.ini", QSettings::IniFormat);
+	if (!attributes->status() != QSettings::NoError) {
+		status = StudentDir::InitializationError;
+		return;
+	}
+}
+
+StudentDirPrivate::~StudentDirPrivate()
+{
+	delete attributes;
+}
+
+/****************** StudentDir *******************/
+
+StudentDir::StudentDir(QString path, QObject *parent) :
+		QObject(parent), d_ptr(new StudentDirPrivate(path))
+{
+	Q_D(StudentDir);
+	d->q_ptr = this;
+}
+
+StudentDir::~StudentDir()
+{
+	Q_D(StudentDir);
+	delete d;
+}
+
+QString StudentDir::firstName() const
+{
+	Q_D(const StudentDir);
+	return d->attributes->value("first_name").toString();
+}
+
+QString StudentDir::lastName() const
+{
+	Q_D(const StudentDir);
+	return d->attributes->value("last_name").toString();
+}
+
+void StudentDir::setFirstName(const QString &firstName)
+{
+	Q_D(const StudentDir);
+	d->attributes->setValue("first_name", firstName);
+}
+
+void StudentDir::setLastName(const QString &lastName)
+{
+	Q_D(const StudentDir);
+	d->attributes->setValue("last_name", lastName);
+}
+

Added: tux4kids-admin/trunk/libtux4kidsadmin/studentDir.h
===================================================================
--- tux4kids-admin/trunk/libtux4kidsadmin/studentDir.h	                        (rev 0)
+++ tux4kids-admin/trunk/libtux4kidsadmin/studentDir.h	2009-07-14 22:02:47 UTC (rev 1206)
@@ -0,0 +1,36 @@
+#ifndef STUDENTDIR_H
+#define STUDENTDIR_H
+
+#include <QObject>
+
+#include "libtux4kidsadmin_global.h"
+
+class StudentDirPrivate;
+class QString;
+
+class LIBTUX4KIDSADMINSHARED_EXPORT StudentDir : public QObject
+{
+	Q_OBJECT
+public:
+	StudentDir(QString path, QObject *parent = 0);
+	~StudentDir();
+
+	enum Status {
+		NoError = 0,
+		InitializationError = 1
+	};
+
+	QString firstName() const;
+	QString lastName() const;
+	void setFirstName(const QString &firstName);
+	void setLastName(const QString &lastName);
+
+protected:
+	StudentDirPrivate * const d_ptr;
+	StudentDir(StudentDirPrivate &dd, QObject *parent = 0);
+private:
+	Q_DECLARE_PRIVATE(StudentDir)
+	Q_DISABLE_COPY(StudentDir)
+};
+
+#endif // STUDENTDIR_H

Added: tux4kids-admin/trunk/libtux4kidsadmin/studentDir_p.h
===================================================================
--- tux4kids-admin/trunk/libtux4kidsadmin/studentDir_p.h	                        (rev 0)
+++ tux4kids-admin/trunk/libtux4kidsadmin/studentDir_p.h	2009-07-14 22:02:47 UTC (rev 1206)
@@ -0,0 +1,26 @@
+#ifndef STUDENTDIR_P_H
+#define STUDENTDIR_P_H
+
+#include <QtGlobal>
+#include <QDir>
+#include <QSettings>
+#include "libtux4kidsadmin_global.h"
+
+class QString;
+
+class StudentDirPrivate
+{
+public:
+	Q_DECLARE_PUBLIC(StudentDir)
+
+	StudentDirPrivate(QString path);
+	virtual ~StudentDirPrivate();
+
+	StudentDir *q_ptr;
+
+	StudentDir::Status status;
+	QSettings *attributes;
+	QDir mainDir;
+};
+
+#endif // STUDENTDIR_P_H

Modified: tux4kids-admin/trunk/tux4kids-admin/src/CMakeLists.txt
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/CMakeLists.txt	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/CMakeLists.txt	2009-07-14 22:02:47 UTC (rev 1206)
@@ -10,8 +10,8 @@
 	pluginManager.cpp 
 	pluginManagerDialog.cpp 
 	manageStudentsWidget.cpp
-    addStudentDialog.cpp
-    studentTableModel.cpp )
+	addStudentDialog.cpp
+	studentTableModel.cpp )
 
 SET(TUX4KIDS-ADMIN_MOC_HEADERS 
 	mainWindow.h
@@ -19,8 +19,8 @@
 	pluginManager.h 
 	pluginManagerDialog.h 
 	manageStudentsWidget.h
-    addStudentDialog.h
-    studentTableModel.h )
+	addStudentDialog.h
+	studentTableModel.h )
 
 SET(TUX4KIDS-ADMIN_UIS 
 	mainWindow.ui 
@@ -33,12 +33,10 @@
 
 FIND_PACKAGE( Qt4 REQUIRED )
 INCLUDE( ${QT_USE_FILE} )
-INCLUDE_DIRECTORIES( ../plugins/ ../../libtux4kidsadmin/ ${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR})
+INCLUDE_DIRECTORIES( ../plugins/ ../../libtux4kidsadmin/ ${CMAKE_CURRENT_BINARY_DIR} )
 
 QT4_WRAP_UI( TUX4KIDS-ADMIN_UI_HEADERS ${TUX4KIDS-ADMIN_UIS} )
 QT4_WRAP_CPP( TUX4KIDS-ADMIN_MOC_SOURCES ${TUX4KIDS-ADMIN_MOC_HEADERS} )
 
 ADD_EXECUTABLE( tux4kids-admin ${TUX4KIDS-ADMIN_SOURCES} ${TUX4KIDS-ADMIN_MOC_SOURCES} ${TUX4KIDS-ADMIN_UI_HEADERS} )
-TARGET_LINK_LIBRARIES( tux4kids-admin ${QT_LIBRARIES} )
-
-
+TARGET_LINK_LIBRARIES( tux4kids-admin ${QT_LIBRARIES} tux4kidsadmin)

Deleted: tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.cpp
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.cpp	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.cpp	2009-07-14 22:02:47 UTC (rev 1206)
@@ -1,29 +0,0 @@
-#include "addStudentDialog.h"
-#include "ui_addStudentDialog.h"
-
-#include <QListWidgetItem>
-
-AddStudentDialog::AddStudentDialog(QWidget *parent) :
-		QDialog(parent),
-		m_ui(new Ui::AddStudentDialog)
-{
-	m_ui->setupUi(this);
-
-	QListWidgetItem *testListWidgetItem = new QListWidgetItem("haha");
-	testListWidgetItem->setFlags(testListWidgetItem->flags() | Qt::ItemIsUserCheckable);
-
-	m_ui->applicationList->addItem(testListWidgetItem);
-	testListWidgetItem->setFlags(testListWidgetItem->flags() | Qt::ItemIsUserCheckable);
-	testListWidgetItem->setCheckState(Qt::Unchecked);
-
-	QListWidgetItem *testListWidgetItem2 = new QListWidgetItem("haha2");
-	testListWidgetItem2->setFlags(Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
-
-	m_ui->applicationList->addItem(testListWidgetItem2);
-	testListWidgetItem2->setFlags(Qt::ItemIsUserCheckable | Qt::ItemIsEnabled);
-}
-
-AddStudentDialog::~AddStudentDialog()
-{
-	delete m_ui;
-}

Modified: tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.h
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.h	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.h	2009-07-14 22:02:47 UTC (rev 1206)
@@ -16,6 +16,10 @@
 
 private:
 	Ui::AddStudentDialog *m_ui;
+
+private slots:
+	void addClicked();
+
 };
 
 #endif // ADDSTUDENTDIALOG_H

Modified: tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.ui
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.ui	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/addStudentDialog.ui	2009-07-14 22:02:47 UTC (rev 1206)
@@ -41,6 +41,13 @@
    <item>
     <widget class="QListWidget" name="applicationList"/>
    </item>
+   <item>
+    <widget class="QPushButton" name="addButton">
+     <property name="text">
+      <string>Add</string>
+     </property>
+    </widget>
+   </item>
   </layout>
  </widget>
  <resources/>

Modified: tux4kids-admin/trunk/tux4kids-admin/src/main.cpp
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/main.cpp	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/main.cpp	2009-07-14 22:02:47 UTC (rev 1206)
@@ -4,6 +4,7 @@
 #include <QDebug>
 
 #include "mainWindow.h"
+#include "mainController.h"
 
 int main(int argc, char *argv[])
 {

Modified: tux4kids-admin/trunk/tux4kids-admin/src/mainController.cpp
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/mainController.cpp	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/mainController.cpp	2009-07-14 22:02:47 UTC (rev 1206)
@@ -1,7 +1,9 @@
 #include <QDebug>
 #include <QApplication>
+#include <QDir>
 
 #include "mainController.h"
+#include "schoolData.h"
 
 MainController::MainController()
 {
@@ -11,6 +13,8 @@
 	if (m_pluginManager.empty()) {
 		qDebug() << tr("Failed to load plugins");
 	}
+
+	m_schoolData = new SchoolData(QDir::homePath() + "/school_data");
 }
 
 MainController::~MainController()
@@ -22,4 +26,9 @@
 	return &m_pluginManager;
 }
 
+SchoolData *MainController::schoolData()
+{
+	return m_schoolData;
+}
 
+

Modified: tux4kids-admin/trunk/tux4kids-admin/src/mainController.h
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/mainController.h	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/mainController.h	2009-07-14 22:02:47 UTC (rev 1206)
@@ -6,6 +6,8 @@
 
 #include "pluginManager.h"
 
+class SchoolData;
+
 class MainController : public QObject
 {
 	Q_OBJECT
@@ -15,10 +17,13 @@
 	~MainController();
 
 	PluginManager *pluginManager();
+	SchoolData *schoolData();
 
 private:
 
 	PluginManager m_pluginManager;
+	QPointer<SchoolData> m_schoolData;
+
 };
 
 #endif // MAINCONTROLLER_H

Modified: tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.cpp
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.cpp	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.cpp	2009-07-14 22:02:47 UTC (rev 1206)
@@ -2,13 +2,14 @@
 #include "ui_mainWindow.h"
 #include "pluginManagerDialog.h"
 #include "manageStudentsWidget.h"
+#include "mainController.h"
 
-MainWindow::MainWindow(MainController *controller, QWidget *parent) : QMainWindow(parent), m_ui(new Ui::MainWindow)
+MainWindow::MainWindow(MainController *mainController, QWidget *parent) : QMainWindow(parent), m_ui(new Ui::MainWindow)
 {
 	m_ui->setupUi(this);
 
-	mainController = controller;
-	//m_ui->tabWidget->insertTab(1, new ManageStudentsWidget(this), tr("Students"));
+	m_mainController = mainController;
+	m_ui->tabWidget->insertTab(1, new ManageStudentsWidget(m_mainController, this), tr("Students"));
 
 	connect(m_ui->actionPlugins, SIGNAL(triggered()), this, SLOT(pluginsManagerClicked()));
 }
@@ -20,6 +21,6 @@
 
 void MainWindow::pluginsManagerClicked()
 {
-	PluginManagerDialog pluginManagerDialog(mainController->pluginManager(), this);
+	PluginManagerDialog pluginManagerDialog(m_mainController->pluginManager(), this);
 	pluginManagerDialog.exec();
 }

Modified: tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.h
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.h	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.h	2009-07-14 22:02:47 UTC (rev 1206)
@@ -2,8 +2,9 @@
 #define MAINWINDOW_H
 
 #include <QtGui/QMainWindow>
+#include <QPointer>
 
-#include "mainController.h"
+class MainController;
 
 namespace Ui
 {
@@ -21,7 +22,7 @@
 private:
 	Ui::MainWindow *m_ui;
 
-	MainController *mainController;
+	QPointer<MainController> m_mainController;
 
 private slots:
 	void pluginsManagerClicked();

Modified: tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.ui
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.ui	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/mainWindow.ui	2009-07-14 22:02:47 UTC (rev 1206)
@@ -17,9 +17,12 @@
    <layout class="QVBoxLayout" name="verticalLayout">
     <item>
      <widget class="QTabWidget" name="tabWidget">
-      <widget class="ManageStudentsWidget" name="tab">
+      <property name="currentIndex">
+       <number>0</number>
+      </property>
+      <widget class="QWidget" name="Seite">
        <attribute name="title">
-        <string>Students</string>
+        <string>Seite</string>
        </attribute>
       </widget>
      </widget>
@@ -70,14 +73,6 @@
   </action>
  </widget>
  <layoutdefault spacing="6" margin="11"/>
- <customwidgets>
-  <customwidget>
-   <class>ManageStudentsWidget</class>
-   <extends>QWidget</extends>
-   <header>manageStudentsWidget.h</header>
-   <container>1</container>
-  </customwidget>
- </customwidgets>
  <resources/>
  <connections/>
 </ui>

Modified: tux4kids-admin/trunk/tux4kids-admin/src/manageStudentsWidget.cpp
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/manageStudentsWidget.cpp	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/manageStudentsWidget.cpp	2009-07-14 22:02:47 UTC (rev 1206)
@@ -1,14 +1,18 @@
 #include "manageStudentsWidget.h"
 #include "ui_manageStudentsWidget.h"
 #include "addStudentDialog.h"
+#include "mainController.h"
+#include "schoolData.h"
+#include "studentDir.h"
 
-ManageStudentsWidget::ManageStudentsWidget(QWidget *parent) :
+ManageStudentsWidget::ManageStudentsWidget(MainController *mainController, QWidget *parent) :
 		QWidget(parent),
 		m_ui(new Ui::ManageStudentsWidget),
-		addStudentDialog(0)
+		m_addStudentDialog(0)
 {
 	m_ui->setupUi(this);
 
+	m_mainController = mainController;
 	connect(m_ui->addStudentButton, SIGNAL(clicked()), this, SLOT(addStudentClicked()));
 }
 
@@ -19,8 +23,17 @@
 
 void ManageStudentsWidget::addStudentClicked()
 {
-	if (addStudentDialog == 0) {
-		addStudentDialog = new AddStudentDialog();
+	if (m_addStudentDialog == 0) {
+		m_addStudentDialog = new AddStudentDialog();
+		connect(m_addStudentDialog, SIGNAL(accepted()), this, SLOT(addStudent()));
 	}
-	addStudentDialog->showNormal();
+	m_addStudentDialog->showNormal();
 }
+
+void ManageStudentsWidget::addStudent()
+{
+	StudentDir *studentDir = m_mainController->schoolData()->addStudent();
+	studentDir->setFirstName("John");
+	studentDir->setLastName("Harry");
+}
+

Modified: tux4kids-admin/trunk/tux4kids-admin/src/manageStudentsWidget.h
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/manageStudentsWidget.h	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/manageStudentsWidget.h	2009-07-14 22:02:47 UTC (rev 1206)
@@ -4,7 +4,10 @@
 #include <QtGui/QWidget>
 #include <QPointer>
 
+//#include "mainController.h"
+
 class AddStudentDialog;
+class MainController;
 
 namespace Ui {
 	class ManageStudentsWidget;
@@ -14,16 +17,18 @@
 {
 	Q_OBJECT
 public:
-	ManageStudentsWidget(QWidget *parent = 0);
+	ManageStudentsWidget(MainController *mainController, QWidget *parent = 0);
 	~ManageStudentsWidget();
 
 private:
 	Ui::ManageStudentsWidget *m_ui;
-	QPointer<AddStudentDialog> addStudentDialog;
+	QPointer<AddStudentDialog> m_addStudentDialog;
+	QPointer<MainController> m_mainController;
 
 private slots:
 
 	void addStudentClicked();
+	void addStudent();
 };
 
 #endif // MANAGESTUDENTSWIDGET_H

Modified: tux4kids-admin/trunk/tux4kids-admin/src/src.pro
===================================================================
--- tux4kids-admin/trunk/tux4kids-admin/src/src.pro	2009-07-14 21:54:06 UTC (rev 1205)
+++ tux4kids-admin/trunk/tux4kids-admin/src/src.pro	2009-07-14 22:02:47 UTC (rev 1206)
@@ -25,3 +25,5 @@
     pluginManagerDialog.ui \
     manageStudentsWidget.ui \
     addStudentDialog.ui
+LIBS += -ltux4kidsadmin -L../../libtux4kidsadmin
+




More information about the Tux4kids-commits mailing list