Esempio n. 1
0
startupdata::startupdata
(
	QWidget* parent,
	const char* name
)
	:
	Inherited( parent, name, 0 )
{
	QButtonGroup* dlgedit_ButtonGroup_1;
	dlgedit_ButtonGroup_1 = new("QButtonGroup") QButtonGroup( this, "ButtonGroup_1" );
	dlgedit_ButtonGroup_1->setGeometry( 10, 90, 380, 200 );
	dlgedit_ButtonGroup_1->setMinimumSize( 10, 10 );
	dlgedit_ButtonGroup_1->setMaximumSize( 32767, 32767 );
	dlgedit_ButtonGroup_1->setFrameStyle( 49 );
	dlgedit_ButtonGroup_1->setTitle( "Notify List" );
	dlgedit_ButtonGroup_1->setAlignment( 1 );

	QLabel* dlgedit_Label_1;
	dlgedit_Label_1 = new("QLabel") QLabel( this, "Label_1" );
	dlgedit_Label_1->setGeometry( 10, 10, 100, 30 );
	dlgedit_Label_1->setMinimumSize( 10, 10 );
	dlgedit_Label_1->setMaximumSize( 32767, 32767 );
	dlgedit_Label_1->setText( "Nick" );
	dlgedit_Label_1->setAlignment( 289 );
	dlgedit_Label_1->setMargin( -1 );

	QLabel* dlgedit_Label_2;
	dlgedit_Label_2 = new("QLabel") QLabel( this, "Label_2" );
	dlgedit_Label_2->setGeometry( 10, 50, 100, 30 );
	dlgedit_Label_2->setMinimumSize( 10, 10 );
	dlgedit_Label_2->setMaximumSize( 32767, 32767 );
	dlgedit_Label_2->setText( "Real Name" );
	dlgedit_Label_2->setAlignment( 289 );
	dlgedit_Label_2->setMargin( -1 );

	SLE_Nick = new("QLineEdit") QLineEdit( this, "LineEdit_1" );
	SLE_Nick->setGeometry( 120, 10, 270, 30 );
	SLE_Nick->setMinimumSize( 10, 10 );
	SLE_Nick->setMaximumSize( 32767, 32767 );
	SLE_Nick->setText( "" );
	SLE_Nick->setMaxLength( 32767 );
	SLE_Nick->setEchoMode( QLineEdit::Normal );
	SLE_Nick->setFrame( TRUE );

	SLE_RealName = new("QLineEdit") QLineEdit( this, "LineEdit_2" );
	SLE_RealName->setGeometry( 120, 50, 270, 30 );
	SLE_RealName->setMinimumSize( 10, 10 );
	SLE_RealName->setMaximumSize( 32767, 32767 );
	SLE_RealName->setText( "" );
	SLE_RealName->setMaxLength( 32767 );
	SLE_RealName->setEchoMode( QLineEdit::Normal );
	SLE_RealName->setFrame( TRUE );

	LB_Nicks = new("QListBox") QListBox( this, "ListBox_1" );
	LB_Nicks->setGeometry( 20, 110, 170, 170 );
	LB_Nicks->setMinimumSize( 10, 10 );
	LB_Nicks->setMaximumSize( 32767, 32767 );
	LB_Nicks->setFrameStyle( 51 );
	LB_Nicks->setLineWidth( 2 );
	LB_Nicks->setMultiSelection( FALSE );

	QPushButton* dlgedit_PushButton_1;
	dlgedit_PushButton_1 = new("QPushButton") QPushButton( this, "PushButton_1" );
	dlgedit_PushButton_1->setGeometry( 200, 110, 180, 30 );
	dlgedit_PushButton_1->setMinimumSize( 10, 10 );
	dlgedit_PushButton_1->setMaximumSize( 32767, 32767 );
	connect( dlgedit_PushButton_1, SIGNAL(clicked()), SLOT(nicks_delete()) );
	dlgedit_PushButton_1->setText( "&Delete" );
	dlgedit_PushButton_1->setAutoRepeat( FALSE );
	dlgedit_PushButton_1->setAutoResize( FALSE );

	B_AddNicks = new("QPushButton") QPushButton( this, "PushButton_2" );
	B_AddNicks->setGeometry( 200, 150, 180, 30 );
	B_AddNicks->setMinimumSize( 10, 10 );
	B_AddNicks->setMaximumSize( 32767, 32767 );
	connect( B_AddNicks, SIGNAL(clicked()), SLOT(nicks_add()) );
	B_AddNicks->setText( "&Add" );
	B_AddNicks->setAutoRepeat( FALSE );
	B_AddNicks->setAutoResize( FALSE );

	SLE_Nicks = new("QLineEdit") QLineEdit( this, "LineEdit_3" );
	SLE_Nicks->setGeometry( 200, 190, 180, 30 );
	SLE_Nicks->setMinimumSize( 10, 10 );
	SLE_Nicks->setMaximumSize( 32767, 32767 );
	connect( SLE_Nicks, SIGNAL(textChanged(const char*)), SLOT(sle_add_update(const char*)) );
	SLE_Nicks->setText( "" );
	SLE_Nicks->setMaxLength( 32767 );
	SLE_Nicks->setEchoMode( QLineEdit::Normal );
	SLE_Nicks->setFrame( TRUE );

	dlgedit_ButtonGroup_1->insert( dlgedit_PushButton_1 );
	dlgedit_ButtonGroup_1->insert( B_AddNicks );

	resize( 400,300 );
	setMinimumSize( 400, 300 );
	setMaximumSize( 400, 300 );
}
Esempio n. 2
0
/********************************************************************
  NICKS_ADD
    Tilføjer en person til nicks arrayen ved at oprette en pointer
    til en ny dbase_nicks, hvortil informationerne fra data kopieres
    (der bliver oprettet nye pointere til pointer-elementer).
    Sørg for at ALLE elementer i data er valid.

    OBS: Hvis der eksisterer en person med samme navn vil denne
         blive OVERSKREVET !!

    nicks_add finder automatisk det sted i arrayen hvor data skal
    tilføjes så arrayen hele tiden er sorteret alfabetisk efter nick
    og numeric.

  Parameter og return:
    [in]  dbase_nicks *data    = struct med de data der skal tilføjen
    [out] long      return
                       >= 0 = OK
                        < 0 = Fejl

********************************************************************/
long nicks_add(dbase_nicks *info, char *modes)
{
  long nr, num;
  if ((nr = nicks_search_nick(info->nick)) < 0)
  {
    nr += 1;
    nr *= -1;
    nicks = (dbase_nicks **)realloc(nicks, (nicks_count+1) * sizeof(dbase_nicks*));
    if (nr < (nicks_count)) memmove(&nicks[nr+1], &nicks[nr], (nicks_count - nr) * sizeof(dbase_nicks*));
    nicks[nr] = (dbase_nicks*)malloc(sizeof(dbase_nicks));
  }
  else
  {
    nicks_remove(nicks[nr]->numeric);
    return nicks_add(info, modes);
  }
  if ((num = nicks_search_numeric(info->numeric)) < 0)
  {
    num += 1;
    num *= -1;
    nicks_num = (dbase_nicks**)realloc(nicks_num, (nicks_count+1) * sizeof(dbase_nicks*));
    if (num < (nicks_count)) memmove(&nicks_num[num+1], &nicks_num[num], (nicks_count - num) * sizeof(dbase_nicks*));
  }
  else
  {
    nicks_remove(nicks_num[num]->numeric);
    return nicks_add(info, modes);
  }

  nicks_count++;

  nicks_num[num] = nicks[nr];

  nicks[nr]->nick = (char *)malloc(sizeof(char)*(strlen(info->nick)+1));
  strcpy(nicks[nr]->nick, info->nick);

  nicks[nr]->numeric = (char *)malloc(sizeof(char)*(strlen(info->numeric)+1));
  strcpy(nicks[nr]->numeric, info->numeric);

  nicks[nr]->username = (char *)malloc(sizeof(char)*(strlen(info->username)+1));
  strcpy(nicks[nr]->username, info->username);

  nicks[nr]->host = (char *)malloc(sizeof(char)*(strlen(info->host)+1));
  strcpy(nicks[nr]->host, info->host);

  nicks[nr]->userinfo = (char *)malloc(sizeof(char)*(strlen(info->userinfo)+1));
  strcpy(nicks[nr]->userinfo, info->userinfo);

  nicks[nr]->away = NULL;

  nicks[nr]->channels = (dbase_channels_nicks **)calloc(0, sizeof(dbase_channels_nicks*));

  nicks[nr]->IP = info->IP;
  nicks[nr]->timestamp = info->timestamp;
  nicks[nr]->hopcount = info->hopcount;
  nicks[nr]->channels_count = 0;
  nicks[nr]->modes = 0;  
  nicks[nr]->nickserv = NULL;

  nicks[nr]->ignored = 0;
  nicks[nr]->ignore_lines = 0;
  nicks[nr]->ignore_ts[0] = 0;
  nicks[nr]->ignore_ts[1] = 0;

  nicks_setmode(nicks[nr]->numeric, modes);

  return num;
}