예제 #1
0
파일: input.cpp 프로젝트: Godzil/quickdev16
//when port combobox item is changed, device list needs to be repopulated
void InputSettingsWindow::portChanged() {
  disconnect(device, SIGNAL(currentIndexChanged(int)), this, SLOT(reloadList()));

  device->clear();
  deviceItem.reset();

  int index = port->currentIndex();
  if(index < 2) {
    //this is a controller port
    for(unsigned i = 0; i < inputPool.size(); i++) {
      //only add devices for selected port
      if(inputPool[i]->port == index) {
        device->addItem(inputPool[i]->name);
        deviceItem.add(inputPool[i]);
      }
    }
  } else {
    //user interface controls
    for(unsigned i = 0; i < inputUiPool.size(); i++) {
      device->addItem(inputUiPool[i]->name);
      deviceItem.add(inputUiPool[i]);
    }
  }

  reloadList();
  connect(device, SIGNAL(currentIndexChanged(int)), this, SLOT(reloadList()));
}
예제 #2
0
void CTemplateWindow::onDelButton()
{
	uiComboBoxItem *pItem = m_comboList->getSelectItem();
	if ( pItem )
	{
		CObjectTemplate *p = (CObjectTemplate*) pItem->getData();

		if ( p->getRef() > 0 )
		{
			alert( L"Can not delete this template because it is used on level!", NULL);
			return;
		}

		if ( p )
		{		
			WCHAR msg[1024];
			swprintf( msg, 1024, L"Do you want to delete this template '%s'", p->getObjectTemplateName() );
			if ( question( msg, NULL) == true )
			{				
				CObjTemplateFactory::removeTemplate( p->getObjectTemplateName() );
				CObjTemplateFactory::saveAllObjectTemplate();
				reloadList();
			}
		}
	}
}
예제 #3
0
CTemplateWindow::CTemplateWindow( WCHAR *lpString, uiWindow *p )
	:CAddEditWindow(lpString, p)
{
	reloadList();

	m_comboList->setEventOnSelectChange<CTemplateWindow, &CTemplateWindow::onTemplateChange>( this );
}
예제 #4
0
void MainInfo::removeEmail()
{
    EMailInfo *info = currentMail();
    if (info == NULL) return;
    mails.remove(info);
    delete info;
    reloadList();
}
예제 #5
0
void MainInfo::editEmail()
{
    EMailInfo *info = currentMail();
    if (info == NULL) return;
    EmailEditDlg dlg(this, info, !bReadOnly);
    if (dlg.exec())
        reloadList();
}
예제 #6
0
void CheatEditorWindow::deleteSelectedCode() {
  QList<QTreeWidgetItem*> items = list->selectedItems();
  if(items.count() > 0) {
    QTreeWidgetItem *item = items[0];
    unsigned n = item->data(0, Qt::UserRole).toUInt();
    SNES::cheat.remove(n);
    reloadList();
  }
}
예제 #7
0
void CTemplateWindow::onAddButton()
{
	CTemplateDialog dialog(L"Add, modify object template", 0, 0, 500, 400, this);
	dialog.setPositionCenterOfScreen();
	
	uiApplication::getRoot()->doModal( &dialog );

	reloadList();
}
예제 #8
0
void MainInfo::addEmail()
{
    EMailInfo *info = new EMailInfo;
    if (bReadOnly) info->MyInfo = true;
    EmailEditDlg dlg(this, info, !bReadOnly);
    if (dlg.exec()){
        mails.push_back(info);
        reloadList();
    }else{
        delete info;
    }
}
예제 #9
0
void MainInfo::defaultEmail()
{
    int curSel = lstEmail->currentItem();
    if (curSel <= 0) return;
    for (EMailList::iterator it = mails.begin(); it != mails.end(); it++){
        if (curSel--) continue;
        EMailInfo *info = static_cast<EMailInfo*>(*it);
        mails.remove(info);
        mails.push_front(info);
        reloadList();
        break;
    }
}
예제 #10
0
void CTemplateWindow::onModifyButton()
{
	uiComboBoxItem *pItem = m_comboList->getSelectItem();
	if ( pItem )
	{
		CObjectTemplate *p = (CObjectTemplate*) pItem->getData();
		if ( p )
		{
			CTemplateDialog dialog(L"Add, modify object template", 0, 0, 500, 400, this, p);
			dialog.setPositionCenterOfScreen();
			
			uiApplication::getRoot()->doModal( &dialog );

			reloadList();
		}
	}
}
예제 #11
0
void MainInfo::load(ICQUser *u)
{
    if (u->Type == USER_TYPE_ICQ){
        edtUin->setText(QString::number(u->Uin));
        edtFirst->setReadOnly(bReadOnly);
        edtLast->setReadOnly(bReadOnly);
        edtNick->setReadOnly(bReadOnly);
        edtUin->show();
        lblUin->show();
        lineDiv->show();
    }
    cmbEncoding->setCurrentItem(pClient->userEncoding(u->Uin));
    edtFirst->setText(QString::fromLocal8Bit(u->FirstName.c_str()));
    edtLast->setText(QString::fromLocal8Bit(u->LastName.c_str()));
    edtNotes->setText(QString::fromLocal8Bit(u->Notes.c_str()));
    edtNick->setText(QString::fromLocal8Bit(u->Nick.c_str()));
    QStringList strDisplay;
    cmbDisplay->lineEdit()->setText(QString::fromLocal8Bit(u->Alias.c_str()));
    addString(strDisplay, QString::fromLocal8Bit(u->Nick.c_str()));
    addString(strDisplay, QString::fromLocal8Bit(u->FirstName.c_str()) + " " + QString::fromLocal8Bit(u->LastName.c_str()));
    addString(strDisplay, QString::fromLocal8Bit(u->LastName.c_str()) + " " + QString::fromLocal8Bit(u->FirstName.c_str()));
    addString(strDisplay, QString::fromLocal8Bit(u->FirstName.c_str()));
    addString(strDisplay, QString::fromLocal8Bit(u->LastName.c_str()));
    if (u->Type == USER_TYPE_EXT){
        for (PhoneBook::iterator itPhone = u->Phones.begin(); itPhone != u->Phones.end(); ++itPhone){
            PhoneInfo *info = static_cast<PhoneInfo*>(*itPhone);
            addString(strDisplay, QString::fromLocal8Bit(info->getNumber().c_str()));
        }
        for (EMailList::iterator itMail = u->EMails.begin(); itMail != u->EMails.end(); ++itMail){
            EMailInfo *info = static_cast<EMailInfo*>(*itMail);
            addString(strDisplay, QString::fromLocal8Bit(info->Email.c_str()));
        }
    }
    cmbDisplay->clear();
    cmbDisplay->insertStringList(strDisplay);
    CUser user(u);
    cmbDisplay->lineEdit()->setText(user.name());
    mails = u->EMails;
    for (EMailList::iterator it = mails.begin(); it != mails.end(); it++){
        EMailInfo *email = static_cast<EMailInfo*>(*it);
        lstEmail->insertItem(Pict("mail_generic"), QString::fromLocal8Bit(email->Email.c_str()));
    }
    reloadList();
    setButtons(-1);
}
void DBGProfileListView::setView(int view)
{
  m_view = view;
  reloadList();
}
예제 #13
0
void CheatEditorWindow::addNewCode() {
  SNES::cheat.add(false, "", "");
  reloadList();
}
예제 #14
0
CheatEditorWindow::CheatEditorWindow() {
  layout = new QVBoxLayout;
  layout->setMargin(0);
  layout->setSpacing(0);
  setLayout(layout);

  title = new QLabel("Cheat Code Editor");
  title->setProperty("class", "title");
  layout->addWidget(title);

  list = new QTreeWidget;
  list->setColumnCount(3);
  list->setHeaderLabels(QStringList() << "Slot" << "Code" << "Description");
  list->setAllColumnsShowFocus(true);
  list->sortByColumn(0, Qt::AscendingOrder);
  list->setRootIsDecorated(false);
  list->setContextMenuPolicy(Qt::CustomContextMenu);
  layout->addWidget(list);
  layout->addSpacing(Style::WidgetSpacing);

  controlLayout = new QGridLayout;
  controlLayout->setSpacing(Style::WidgetSpacing);
  layout->addLayout(controlLayout);
  layout->addSpacing(Style::WidgetSpacing);

  descLabel = new QLabel("Description:");
  descLabel->setAlignment(Qt::AlignRight);
  controlLayout->addWidget(descLabel, 0, 0);

  descEdit = new QLineEdit;
  controlLayout->addWidget(descEdit, 0, 1);

  codeLabel = new QLabel("Code(s):");
  codeLabel->setAlignment(Qt::AlignRight);
  controlLayout->addWidget(codeLabel, 1, 0);

  codeEdit = new QLineEdit;
  controlLayout->addWidget(codeEdit, 1, 1);

  buttonLayout = new QHBoxLayout;
  buttonLayout->setSpacing(Style::WidgetSpacing);
  layout->addLayout(buttonLayout);

  addCode = new QPushButton("Add Slot");
  buttonLayout->addWidget(addCode);

  deleteCode = new QPushButton("Delete Slot");
  buttonLayout->addWidget(deleteCode);

  reloadList();

  menu = new QMenu(list);
  deleteCodeItem = menu->addAction("&Delete Selected Code");
  addCodeItem = menu->addAction("&Add New Code");

  connect(list, SIGNAL(customContextMenuRequested(const QPoint&)), this, SLOT(popupMenu(const QPoint&)));
  connect(list, SIGNAL(itemChanged(QTreeWidgetItem*, int)), this, SLOT(updateCodeStatus()));
  connect(list, SIGNAL(itemSelectionChanged()), this, SLOT(listChanged()));
  connect(list, SIGNAL(itemActivated(QTreeWidgetItem*, int)), this, SLOT(toggleCodeStatus()));
  connect(descEdit, SIGNAL(textEdited(const QString&)), this, SLOT(textEdited()));
  connect(codeEdit, SIGNAL(textEdited(const QString&)), this, SLOT(textEdited()));
  connect(addCode, SIGNAL(released()), this, SLOT(addNewCode()));
  connect(deleteCode, SIGNAL(released()), this, SLOT(deleteSelectedCode()));

  connect(addCodeItem, SIGNAL(triggered()), this, SLOT(addNewCode()));
  connect(deleteCodeItem, SIGNAL(triggered()), this, SLOT(deleteSelectedCode()));
}