/* * Copyright(C) 2009,Hikvision Digital Technology Co., Ltd * * ÎļþÃû³Æ£ºcshelter.cpp * Ãè Êö£º * µ±Ç°°æ±¾£º1.0 * ×÷ ÕߣºÅËÑǶ« * ´´½¨ÈÕÆÚ£º2009Äê11ÔÂ24ÈÕ * Ð޸ļǼ£º */ #include "cshelter.h" #include "publicfuc.h" /******************************************************************* Function: CShelter::CShelter Parameter: (IN) QWidget *parent Description: ¹¹Ô캯Êý **********************************************************************/ CShelter::CShelter(QWidget *parent) : QDialog(parent) { ui.setupUi(this); QStringList list; list<<"X"<<"Y"<<"Width"<<"Height"; ui.tableShelter->setRowCount(MAX_SHELTERNUM); ui.tableShelter->setColumnCount(4); ui.tableShelter->horizontalHeader()->setResizeMode(QHeaderView::Stretch); ui.tableShelter->setHorizontalHeaderLabels(list); m_pShelter =NULL; } /******************************************************************* Function: CShelter::~CShelter Parameter: (IN) ÎÞ²ÎÊý Description: Îö¹¹º¯Êý **********************************************************************/ CShelter::~CShelter() { } /******************************************************************* Function: CShelter::setShelter Parameter: (IN) NET_DVR_SHELTER *pShelter ÕÚµ²ÇøÓòÖ¸Õë Return: HPR_OK--³É¹¦£¬HPR_ERROR--ʧ°Ü¡£ Description: ÉèÈëÕÚµ²ÇøÓòµØÖ· **********************************************************************/ int CShelter::setShelter(NET_DVR_SHELTER *pShelter) { if(NULL == pShelter) { return HPR_ERROR; } m_pShelter = pShelter; return HPR_OK; } /******************************************************************* Function: CShelter::setEachWidgetValue Parameter: (IN) ÎÞ²ÎÊý Return: HPR_OK--³É¹¦£¬HPR_ERROR--ʧ°Ü¡£ Description: ÉèÖöԻ°¿ò¿Ø¼þÖеÄÖµ **********************************************************************/ int CShelter::setEachWidgetValue() { if(NULL == m_pShelter) { return HPR_ERROR; } int i; char strTemp[100] = {0}; for(i = 0; i < MAX_SHELTERNUM; i++) { //X×ø±ê sprintf(strTemp, "%d", m_pShelter[i].wHideAreaTopLeftX);//ÕûÊýת×Ö·û´® m_itemShelter[i][0].setText(strTemp); //¼ÓÈëµ½ItemÖÐ ui.tableShelter->setItem(i, 0, &(m_itemShelter[i][0])); //¼ÓÈëµ½TableÖÐÈ¥ //Y×ø±ê memset(strTemp, 0, 100); sprintf(strTemp, "%d", m_pShelter[i].wHideAreaTopLeftY); m_itemShelter[i][1].setText(strTemp); ui.tableShelter->setItem(i, 1, &(m_itemShelter[i][1])); //¿í¶È memset(strTemp, 0, 100); sprintf(strTemp, "%d", m_pShelter[i].wHideAreaWidth); m_itemShelter[i][2].setText(strTemp); ui.tableShelter->setItem(i, 2, &(m_itemShelter[i][2])); //¸ß¶È memset(strTemp, 0, 100); sprintf(strTemp, "%d", m_pShelter[i].wHideAreaHeight); m_itemShelter[i][3].setText(strTemp); ui.tableShelter->setItem(i, 3, &(m_itemShelter[i][3])); } return HPR_OK; } /******************************************************************* Function: CShelter::getEachWidgetValue Parameter: (IN) ÎÞ²ÎÊý Return: HPR_OK--³É¹¦£¬HPR_ERROR--ʧ°Ü¡£ Description: »ñÈ¡¶Ô»°¿òÖеĿؼþÖµ **********************************************************************/ int CShelter::getEachWidgetValue() { if(NULL == m_pShelter) { return HPR_ERROR; } int iTemp; int i; QString qstrTemp; for(i = 0; i < MAX_SHELTERNUM; i++) { qstrTemp = m_itemShelter[i][0].text(); //²»ÕâÑùÓã¬Ö±½ÓÓÃkitº¯ÊýÈ¡µØÖ·»áÓÐwaring KIT_qstringToInt(&(qstrTemp), &iTemp); m_pShelter[i].wHideAreaTopLeftX = iTemp; qstrTemp = m_itemShelter[i][1].text(); KIT_qstringToInt(&(qstrTemp), &iTemp); m_pShelter[i].wHideAreaTopLeftY = iTemp; qstrTemp = m_itemShelter[i][2].text(); KIT_qstringToInt(&(qstrTemp), &iTemp); m_pShelter[i].wHideAreaWidth = iTemp; qstrTemp = m_itemShelter[i][3].text(); KIT_qstringToInt(&(qstrTemp), &iTemp); m_pShelter[i].wHideAreaHeight = iTemp; } return HPR_OK; } /******************************************************************* Function: CShelter::on_btnSave_clicked Parameter: (IN) ÎÞ²ÎÊý Return: ÎÞ Description: ¡°È·¶¨¡±°´Å¥µÄÏìÓ¦º¯Êý£¬ÓÃÓÚ±£´æ²ÎÊý **********************************************************************/ void CShelter::on_btnSave_clicked() { getEachWidgetValue();//±£´æ²ÎÊý close(); } /******************************************************************* Function: CShelter::showEvent Parameter: (IN) QShowEvent * event ´°¿ÚÏÔʾʼþ Return: ÎÞ Description: ¶Ô»°¿òÏÔʾʱ£¬½«²ÎÊýÖеÄֵдÈë¿Ø¼þ£¬ÏÔʾ³öÀ´ **********************************************************************/ void CShelter::showEvent ( QShowEvent * event ) { if(event ==NULL) { } //»ñÈ¡ÏÔʾ²ÎÊý setEachWidgetValue(); }