Ejemplo n.º 1
0
GUIGlObject::GUIGlObject(const std::string& prefix, GUIGlObjectType type, const std::string& microsimID) :
    myGLObjectType(type),
    myMicrosimID(microsimID),
    myPrefix(prefix) {
    myFullName = createFullName();
    myGlID = GUIGlObjectStorage::gIDStorage.registerObject(this, myFullName);
}
void CustomerShow::updateView()
{
    setWindowTitle(createFullName(customer.getForename(), customer.getSurname()));

    QString customerName(createFullName(customer.getForename(), customer.getSurname()));
    ui->label_customerNameE->setText(customerName);
    ui->label_customerNameE2->setText(customerName);

    ui->label_addressLine1E->setText(customer.getAddressLine1());
    ui->label_addressLine2E->setText(customer.getAddressLine2());
    ui->label_townE->setText(customer.getTown());
    ui->label_postcodeE->setText(customer.getPostcode());
    ui->label_homePhoneE->setText(customer.getHomePhoneNumber());
    ui->label_mobilePhoneE->setText(customer.getMobilePhoneNumber());
    ui->label_emailAddressE->setText(customer.getEmailAddress());

    ui->listWidget_jobs->clear();
    JobController::sortJobsByDate(jobs, false);
    for (unsigned i = 0; i < jobs.size(); ++i) ui->listWidget_jobs->addItem(Date(jobs[i].getDate()));
}
Ejemplo n.º 3
0
void MainWindow::updateListWidgets()
{
    const Date date(ui->calendar->selectedDate());
    ui->label_selectedDate1->setText(date.toQStringWithoutTime());
    ui->label_selectedDate2->setText(date.toQStringWithoutTime());

    ui->listWidget_jobs->clear();
    ui->listWidget_tasks->clear();

    Customer customer;
    for (unsigned i = 0; i < jobs->size(); ++i)
    {
        customer = CustomerController::getCustomer(jobs->at(i).getCustomerId());
        ui->listWidget_jobs->addItem(createFullName(customer.getForename(), customer.getSurname()));
    }

    for (unsigned i = 0; i < tasks->size(); ++i)
        ui->listWidget_tasks->addItem(limitLength(tasks->at(i).getDescription(), 30));
}
Ejemplo n.º 4
0
void scan_root(char *dir, char* dirFullPath, int* depth, int maxDepth)   // 定义目录扫描函数  
{  
    DIR *dp;                      // 定义子目录流指针  
    struct dirent *entry;         // 定义dirent结构指针保存后续目录  
    struct stat statbuf;          // 定义statbuf结构保存文件属性
    char* path = NULL;
    int currentDepth;
    (*depth)++;
    if (*depth == maxDepth) {
      return;
    }
    currentDepth = *depth;
  if((dp = opendir(dir)) == NULL) // 打开目录,获取子目录流指针,判断操作是否成功  
  {  
    puts("can't open dir.");  
    return;  
  }  
    chdir (dir);                     // 切换到当前目录  
    while((entry = readdir(dp)) != NULL)  // 获取下一级目录信息,如果未否则循环  
    {
      path = createFullName(dirFullPath, entry->d_name);
    lstat(entry->d_name, &statbuf); // 获取下一级成员属性  
        if(S_IFDIR & statbuf.st_mode)    // 判断下一级成员是否是目录  
        {  
          if (strcmp(".", entry->d_name) == 0 || strcmp("..", entry->d_name) == 0)  
            continue;
        // printf("%s\n", path);  // 输出目录名称  
        scan_root(entry->d_name, path, depth, maxDepth);              // 递归调用自身,扫描下一级目录的内容
        *depth = currentDepth;
        } else if (S_IFREG & statbuf.st_mode) {          //判断下一级成员是否是一般文件
      //printf("%s\n", path);  // 输出文件名称
          char* copy = malloc((strlen(path) + 1) * sizeof(char));
          strcpy(copy, path);
          pqueue_put(&pqb, (void *) copy);
        }
    //fprintf(stdout, "%s\n", path);
//    free(path);
      }
    chdir("..");                                                  // 回到上级目录  
    closedir(dp);                                                 // 关闭子目录流  
  }  
Ejemplo n.º 5
0
void
GUIGlObject::setPrefix(const std::string& prefix) {
    myPrefix = prefix;
    myFullName = createFullName();
}
Ejemplo n.º 6
0
void
GUIGlObject::setMicrosimID(const std::string& newID) {
    myMicrosimID = newID;
    myFullName = createFullName();
}
Ejemplo n.º 7
0
extern PSBCategoryList *parseFile(char *catFile, bool verbose){
  FILE *file;
  char firstBuffer[256], secondBuffer[256], catNameBuffer[256], modelBuffer[256];
  int num, numCategories, currentNumCategories, numFound, i;
  int numModels, currNumModels, currNumTotalModels, numTotalModels;
  PSBCategoryList *categoryList;

  file = fopen(catFile, "r");
  if (file == NULL){
    fprintf(stderr, "trouble opening %s\n", catFile);
    exit(1);
  }

  // check header
  if(fscanf(file, "%s %d", firstBuffer, &num) != 2 || strcmp(PSB, firstBuffer) || num > CURR_FORMAT){
    error(file, "%s is not a PSB file of format %d\n", catFile, CURR_FORMAT);
  }

  // get num categories
  if (fscanf(file, "%d %d", &numCategories, &numTotalModels) != 2){
    error(file, "%s does not list the number of categories or models\n", catFile);
  }

  if (numCategories < 0 || numTotalModels < 0){
    error(file, "%d categories and %d models is invalid\n", numCategories, numTotalModels);
  }
  

  categoryList = (PSBCategoryList*)malloc(sizeof(PSBCategoryList));
  assert(categoryList != NULL);
  categoryList->_numCategories = numCategories;
  categoryList->_categories = (PSBCategory **)malloc(numCategories * sizeof(PSBCategory*));
  assert(categoryList != NULL);

  currentNumCategories = 0;
  currNumTotalModels = 0;

  while(1){
    numFound = fscanf(file, "%s %s %d", firstBuffer, secondBuffer, &numModels);
    
    if (numFound == 0 || numFound == EOF){
      break; // end of file
    }else if (numFound == 1){
      error(file, "poorly formated category line, %s\n", firstBuffer);
    }else if (numFound == 2){
      error(file, "poorly formated category line, %s %s\n", firstBuffer, secondBuffer);
    }else if (numFound > 3){
      error(file, "poorly formated category line\n");
    }

    if (numModels < 0){
      error(file, "%d is an invalid number of categories\n", numModels);
    }

    if (isCategoryDefined(categoryList, firstBuffer, currentNumCategories)){
      error(file, "%s is already a defined category\n", firstBuffer);
    }

    if (!isCategoryDefined(categoryList, secondBuffer, currentNumCategories)){
      error(file, "%s is not a defined category\n", secondBuffer);
    }


    createFullName(catNameBuffer, firstBuffer, secondBuffer, categoryList, currentNumCategories);

    categoryList->_categories[currentNumCategories] = defineCategory(firstBuffer, catNameBuffer, numModels);

    if (verbose) printf("processing category %s, ", firstBuffer);

    currNumModels = 0;
    
    for(i = 0; i < numModels; ++i){
      numFound = fscanf(file,"%s", modelBuffer);
      if (numFound != 1){
        error(file, "%s has an incorrect number of models, read %d, should be %d\n", firstBuffer, currNumModels, numModels);
      }
      categoryList->_categories[currentNumCategories]->_models[currNumModels] = strdup(modelBuffer);
      currNumModels++;
      currNumTotalModels++;
    }
    if (verbose) printf("finished.\n");
    ++currentNumCategories;

  }
  
  if (currentNumCategories != numCategories){
    error(file, "expected %d categories, found %d\n", numCategories, currentNumCategories);
  }

  if (currNumTotalModels != numTotalModels){
    error(file, "expected %d models, found %d\n", numTotalModels, currNumTotalModels);
  }

  
  if (fclose(file) == EOF){
    fprintf(stderr, "trouble closing %s\n", catFile);
  }

  if (verbose) printf("Validated %s, %d categories, %d models\n", catFile, numCategories, currNumTotalModels);
  return categoryList;
}