-
Notifications
You must be signed in to change notification settings - Fork 5
/
Copy pathmodels.h
executable file
·33 lines (30 loc) · 1.98 KB
/
models.h
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
#ifndef MODELS_H
#define MODELS_H
#include "editProperties.h"
#include "groups.h"
using std::string;
/**
* Στην κλάση αυτή δημιουργούνται οι λίστες των δεδομένων που ζητούνται κάθε φορά ανάλογα με την ενέργεια που έχει επιλέξει να εκτελέσει ο χρήστης.
* Η φιλοσοφία είναι ίδια σε όλες τις συναρτήσεις της κλάσης.
* Αρχικά παίρνουμε τα δεδομένα τα οποία θέλουμε να εμφανιστούν σε ένα component,πχ σε μια λίστα.
* Αυτά τα φορτώνουμε σε ένα αντικείμενο της κλάσης QstandardItemModel, η οποία προσφέρεται από τις βιβλιοθήκες της Qt.
* Σε αυτό το αντικείμενο/μοντέλο αποθηκεύουμε όλα τα δεδομένα που θέλουμε να εμφανίσουμε.
* Μπορούμε να καθορίσουμε τον αριθμό των στηλών,των γραμμών,το χρώμα στο κείμενο,να βάλουμε επικεφαλίδες στις στήλες και γενικά να προσδιορίσουμε
* ποια θα είναι η οπτική αναπαράσταση των δεδομένων.
*/
class Models : public QStandardItemModel
{
public:
Models();
~Models();
QStandardItemModel *createUsersModel();
QStandardItemModel *createUsersModelWithSizes( QStringList sizeList );
QStandardItemModel *createGroupsModel( );
QStandardItemModel *createFoundedUserModel( struct passwd *userFound );
QStandardItemModel *createMembersModel( const char *groupName );
QStandardItemModel *createFoundedGroupModel( struct group *grp );
QStandardItemModel *UsersInGroupModel( const char *groupName );
QStandardItemModel *UsersNotInGroupModel( const char *groupName );
QStandardItemModel *createUserInGroupsModel(QString username );
};
#endif