void BatteryConfig::BatteryStateUpdate() { int num_batteries; QStringList battery_names, battery_states, battery_values; laptop_portable::get_battery_status(num_batteries, battery_names, battery_states, battery_values); if (num_batteries > 0) { for (int i = 0; i < num_batteries; i++) { if (battery_states[i] == "yes") { QPixmap result; ConvertIcon(battery_values[i].toInt(), battery_pm, result); batt_label_1.at(i)->setPixmap(result); batt_label_2.at(i)->setText(battery_values[i]+"%"); batt_label_3.at(i)->setText(i18n("Present")); } else { batt_label_1.at(i)->setPixmap(battery_nopm); batt_label_2.at(i)->setText(""); batt_label_3.at(i)->setText(i18n("Not present")); } } } }
int main(int argc, char* argv[]) { // ensure proper usage if (argc < 2) { printf("ICN Icon Extractor v0.4 by 3DSGuy\n"); printf("Usage: %s -i <ICN File> -l <Large Icon> -s <Small Icon>\n",argv[0]); return 1; } char *InputICN = NULL; char *SmallIcon = NULL; char *LargeIcon = NULL; if(argc == 2){ // Drag&Drop InputICN = argv[1]; char outfile_large[1024]; append_filextention(outfile_large,1024,argv[1],".png"); LargeIcon = (char*)&outfile_large; } else{ // user has entered command line arguments for(int i = 1; i < argc-1; i++){ if(strcmp(argv[i],"-i")==0 && argv[i+1][0] != '-') InputICN = argv[i+1]; else if(strcmp(argv[i],"-l")==0 && argv[i+1][0] != '-') LargeIcon = argv[i+1]; else if(strcmp(argv[i],"-s")==0 && argv[i+1][0] != '-') SmallIcon = argv[i+1]; } } if(InputICN == NULL){ fprintf(stderr, "No input ICN data specified."); return 1; } if(LargeIcon == NULL && SmallIcon == NULL){ fprintf(stderr, "Nothing to do."); return 1; } FILE* icn = fopen(InputICN, "rb"); if (icn == NULL) { printf("Could not open %s.\n", InputICN); return 2; } // Checking if ICN file is actually an ICN file char magic[4]; fseek(icn,0,SEEK_SET); fread(&magic,4,1,icn); if(strncmp("SMDH",magic,4)!=0){ fclose(icn); fprintf(stderr, "%s is not an ICN file", InputICN); return 1; } if(SmallIcon != NULL) ConvertIcon(icn,SmallIcon,0x2040,24); if(LargeIcon != NULL) ConvertIcon(icn,LargeIcon,0x24C0,48); // close infile fclose(icn); return 0; }