summaryrefslogblamecommitdiffstats
path: root/workspace/LogReceiver/ndgui.h
blob: e8b0b85630b4b03ed4a3c9f26f1250629eb8c52d (plain) (tree)
1
2
3
4
5
6
7
8
9



                        



                         
                     
                        

                                  








                                   

                                                      
                                                     


                                                                 
 







                                      


                          

                                
                                          


                               


                                   
                        

                                                   





                                             


 


                                       



                 
#ifndef NDGUI_H
#define NDGUI_H

#include <QtGui/QWidget>
#include "qprogressbar.h"
#include "qlabel.h"
#include "qgroupbox.h"
#include "qboxlayout.h"
#include "ui_ndgui.h"
#include "logreceiver.h"
#include "chooseinterfacedialog.h"
#include "abortbootdialog.h"

class ndgui: public QWidget {
Q_OBJECT

public:
	ndgui(QWidget *parent = 0);
	~ndgui();

public slots:
    void handleProgress(QString ifName, int newValue);
    void addNewInterface(QString ifName);
    void handleConnectionEstablished(QString ifName);
    void handleAbortBoot(QString msg);
    void handleUpdateStatusLabel(QString ifName, QString status);
    void handleAllProcessesFinished();

    void restartSystem();
    void shutDownSystem();
    void continueBoot(QString ifName);
    void showLog();

    void showAbortBootDialog();
    void showChooseInterfaceDialog();

private:
	Ui::ndguiClass ui;

	LogReceiver logReceiver;

	QStringList finalUsableInterfaces;

	int numberOfInterfaces;

	ChooseInterfaceDialog *cID;
	AbortBootDialog *aBD;

	/*gui elements*/
	QMap<QString, QProgressBar *> progressBars;
	QMap<QString, QLabel*> statusLabels;
	QLabel *ndStatusLabel;
	QGroupBox *interfaceGroupBox;
	QVBoxLayout *mainLayout;
	QVBoxLayout *interfaceGroupBoxLayout;
	/**/




	/*gui functions*/
	void buildGui();
	void createInterfaceGroupBox();

};

#endif // NDGUI_H