Changeset 6287

Show
Ignore:
Timestamp:
06/14/08 04:06:02 (3 months ago)
Author:
eugene
Message:

Merged r6260:6264 from SVNROOT/branches/qt4-gui_group

Location:
trunk/qt4-gui/src/dialogs
Files:
4 modified

Legend:

Unmodified
Added
Removed
  • trunk/qt4-gui/src/dialogs/adduserdlg.cpp

    r6252 r6287  
    3131#include "helpers/support.h" 
    3232 
     33#include "widgets/groupcombobox.h" 
    3334#include "widgets/protocombobox.h" 
    3435 
     
    5556  layDialog->addWidget(myProtocol, line++, 1); 
    5657 
    57   QLabel* lblUin = new QLabel(tr("New &User ID:")); 
    58   myUin = new QLineEdit(); 
     58  QLabel* lblGroup = new QLabel(tr("&Group:")); 
     59  myGroup = new GroupComboBox(); 
     60  myGroup->setCurrentGroupId(gUserManager.NewUserGroup()); 
     61  lblGroup->setBuddy(myGroup); 
     62 
     63  layDialog->addWidget(lblGroup, line, 0); 
     64  layDialog->addWidget(myGroup, line++, 1); 
     65 
     66  QLabel* lblId = new QLabel(tr("New &User ID:")); 
     67  myId = new QLineEdit(); 
    5968  if (!id.isEmpty()) 
    60     myUin->setText(id); 
    61   connect(myUin, SIGNAL(returnPressed()), SLOT(ok())); 
    62   lblUin->setBuddy(myUin); 
     69    myId->setText(id); 
     70  connect(myId, SIGNAL(returnPressed()), SLOT(ok())); 
     71  lblId->setBuddy(myId); 
    6372 
    64   layDialog->addWidget(lblUin, line, 0); 
    65   layDialog->addWidget(myUin, line++, 1); 
     73  layDialog->addWidget(lblId, line, 0); 
     74  layDialog->addWidget(myId, line++, 1); 
    6675 
    6776  myNotify = new QCheckBox(tr("&Notify User")); 
     
    7786  layDialog->addWidget(buttons, line++, 0, 1, 2); 
    7887 
    79   myUin->setFocus(); 
     88  myId->setFocus(); 
    8089  show(); 
    8190} 
     
    8392void AddUserDlg::ok() 
    8493{ 
    85   QString uin = myUin->text(); 
     94  QByteArray id = myId->text().trimmed().toLatin1(); 
     95  unsigned long ppid = myProtocol->currentPpid(); 
     96  unsigned short group = myGroup->currentGroupId(); 
     97  bool notify = myNotify->isChecked(); 
    8698 
    87   if (!uin.isEmpty()) 
    88     gLicqDaemon->AddUserToList(uin.toLatin1(), myProtocol->currentPpid(), 
    89         myNotify->isChecked()); 
     99  if (!id.isEmpty()) 
     100  { 
     101    ICQUser* u = gUserManager.FetchUser(id, ppid, LOCK_W); 
     102 
     103    if (u == NULL) 
     104    { 
     105      unsigned short currentNewGroup = gUserManager.NewUserGroup(); 
     106      gUserManager.SetNewUserGroup(group); 
     107      gLicqDaemon->AddUserToList(id, ppid, notify); 
     108      gUserManager.SetNewUserGroup(currentNewGroup); 
     109    } 
     110    else 
     111    { 
     112      if (u->NotInList()) 
     113      { 
     114        u->SetPermanent(); 
     115        gUserManager.DropUser(u); 
     116        gUserManager.AddUserToGroup(id.toLatin1()); 
     117        if (notify && ppid == LICQ_PPID) 
     118          gLicqDaemon->icqAlertUser(id.toULong()); 
     119      } 
     120      else 
     121        gUserManager.DropUser(u); 
     122    } 
     123  } 
    90124 
    91125  close(); 
  • trunk/qt4-gui/src/dialogs/adduserdlg.h

    r6221 r6287  
    2929namespace LicqQtGui 
    3030{ 
     31class GroupComboBox; 
    3132class ProtoComboBox; 
    3233 
     
    4041private: 
    4142   QCheckBox* myNotify; 
    42    QLineEdit* myUin; 
     43   QLineEdit* myId; 
     44   GroupComboBox* myGroup; 
    4345   ProtoComboBox* myProtocol; 
    4446 
  • trunk/qt4-gui/src/dialogs/searchuserdlg.cpp

    r6249 r6287  
    4646#include "core/signalmanager.h" 
    4747 
     48#include "dialogs/adduserdlg.h" 
     49 
    4850#include "helpers/support.h" 
    4951 
     
    5254 
    5355SearchUserDlg::SearchUserDlg() 
    54   : searchTag(0) 
     56  : ppid(LICQ_PPID), 
     57    searchTag(0) 
    5558{ 
    5659  Support::setWidgetProps(this, "SearchUserDialog"); 
     
    178181  grp_lay->addWidget(foundView, 0, 0, 1, 4); 
    179182 
    180   chkAlertUser = new QCheckBox(tr("A&lert User")); 
    181   chkAlertUser->setChecked(true); 
    182   grp_lay->addWidget(chkAlertUser, 1, 0); 
    183  
    184183  btnInfo = new QPushButton(tr("View &Info")); 
    185184  btnInfo->setEnabled(false); 
    186185  connect(btnInfo, SIGNAL(clicked()), SLOT(viewInfo())); 
    187   grp_lay->addWidget(btnInfo, 1, 2); 
     186  grp_lay->addWidget(btnInfo, 1, 1); 
    188187 
    189188  btnAdd = new QPushButton(tr("&Add User")); 
    190189  btnAdd->setEnabled(false); 
    191190  connect(btnAdd, SIGNAL(clicked()), SLOT(addUser())); 
    192   grp_lay->addWidget(btnAdd, 1, 3); 
     191  grp_lay->addWidget(btnAdd, 1, 2); 
    193192 
    194193  grp_lay->setRowStretch(0, 1); 
    195   grp_lay->setColumnStretch(1, 1); 
     194  grp_lay->setColumnStretch(0, 1); 
    196195  lay->addWidget(grpResult, 1); 
    197196 
     
    445444  foreach (QTreeWidgetItem* current, foundView->selectedItems()) 
    446445  { 
    447     QString szId = current->data(0, Qt::UserRole).toString(); 
    448  
    449     if (!gUserManager.IsOnList(szId.toLatin1(), LICQ_PPID)) 
    450       gLicqDaemon->AddUserToList( 
    451           szId.toLatin1(), LICQ_PPID, false, true); 
    452  
    453     LicqGui::instance()->showInfoDialog(mnuUserGeneral, szId, LICQ_PPID, false, true); 
     446    QByteArray id = current->data(0, Qt::UserRole).toString().toLatin1(); 
     447 
     448    if (!gUserManager.IsOnList(id, ppid)) 
     449      gLicqDaemon->AddUserToList(id, ppid, false, true); 
     450 
     451    LicqGui::instance()->showInfoDialog(mnuUserGeneral, id, ppid, false, true); 
    454452  } 
    455453} 
     
    459457  foreach (QTreeWidgetItem* current, foundView->selectedItems()) 
    460458  { 
    461     unsigned long uin = current->data(0, Qt::UserRole).toString().toULong(); 
    462  
    463     if (gLicqDaemon->AddUserToList(uin) && 
    464         chkAlertUser->isChecked()) 
    465       gLicqDaemon->icqAlertUser(uin); 
     459    QString id = current->data(0, Qt::UserRole).toString(); 
     460 
     461    new AddUserDlg(id, ppid, this); 
    466462  } 
    467463 
  • trunk/qt4-gui/src/dialogs/searchuserdlg.h

    r6180 r6287  
    4040namespace LicqQtGui 
    4141{ 
    42 class TabWidget; 
    43  
    4442//TODO for protocol plugin support 
    4543 
     
    5553 
    5654private: 
     55  unsigned long ppid; 
    5756  unsigned long searchTag; 
    5857 
     
    8079 
    8180  QCheckBox* chkOnlineOnly; 
    82   QCheckBox* chkAlertUser; 
    8381 
    8482  QPushButton* btnSearch;