void xml_create_by_vm2vm(char *xmlfilename) { int i; xmlDocPtr doc = NULL; xmlNodePtr root_node = NULL, node = NULL, node1 = NULL; //建立根节点 doc = xmlNewDoc(BAD_CAST "1.0"); root_node = xmlNewNode(NULL, BAD_CAST "DATA"); xmlNewProp(root_node,BAD_CAST"VERSION",BAD_CAST"0.1"); xmlDocSetRootElement(doc, root_node); /*对没一条亲和性关系输出到XML*/ for(i=0;i<_xpthis->sd->v2v_total;i++){ /*生成主节点*/ node = xmlNewNode(NULL, BAD_CAST "AFFINITY"); /*生成AT属性*/ xmlNewProp(node,BAD_CAST"AT",BAD_CAST _xpthis->sd->v2vlist[i].at); /*生成TYPE属性*/ xmlNewProp(node,BAD_CAST"TYPE",BAD_CAST NumToChar (_xpthis->sd->v2vlist[i].affinity)); /*生成TRAFFIC属性*/ if(_xpthis->sd->v2vlist[i].traffic>0) xmlNewProp(node,BAD_CAST"TRAFFIC",BAD_CAST DoubleToChar (_xpthis->sd->v2vlist[i].traffic,0)); else xmlNewProp(node,BAD_CAST"TRAFFIC",BAD_CAST " "); /*生成DELAY属性*/ xmlNewProp(node,BAD_CAST"DELAY",BAD_CAST DoubleToChar (_xpthis->sd->v2vlist[i].delay,0)); /*生成VMIDS属性*/ xmlNewProp(node,BAD_CAST"VMIDS",BAD_CAST _xpthis->sd->v2vlist[i].vmids); /* xmlNewProp(node,BAD_CAST"DSTID",BAD_CAST NumToChar(_xpthis->sd->v2vlist[i].p_dst_vm->host.id)); xmlNewProp(node,BAD_CAST"SRCID",BAD_CAST NumToChar(_xpthis->sd->v2vlist[i].p_src_vm->host.id)); */ xmlAddChild(root_node, node); } /*生成文件*/ xmlSaveFormatFileEnc(xmlfilename, doc, "UTF-8", 1); /*释放*/ xmlFreeDoc(doc); xmlCleanupParser(); xmlMemoryDump(); }
void CStaticText::setText(double init) { char* temp = DoubleToChar(init); itsText = temp; delete[] temp; }
void UI_hl(void) { int currentLevel = 1; int level1CurrentSelection = 0; int level2CurrentSelection = 0; int buttonFlag = 0; int rotaryPressFlag = 0; int rotaryFlag = 0; DisplayLine ( 0, " Manual " ); while ( 1 ) { switch ( Rotary () ) { case 0: // No change rotaryFlag = 0; break; case 1: // Clockwise if ( rotaryFlag == 1 ) break; rotaryFlag = 1; switch ( currentLevel ) { case 1: switch (level1CurrentSelection) { case 0: level1CurrentSelection = 1; DisplayLine ( 0, " Automode " ); break; case 1: level1CurrentSelection = 2; DisplayLine ( 0, " Bypass " ); break; case 2: level1CurrentSelection = 0; DisplayLine ( 0, " Manual " ); break; } break; case 2: switch (level1CurrentSelection) { case 0: if ( level2CurrentSelection == 4 ) level2CurrentSelection = 0; else level2CurrentSelection ++; switch ( level2CurrentSelection ) { case 0: DisplayLine ( 1, " Threshold " ); break; case 1: DisplayLine ( 1, " MakeUp Gain " ); break; case 2: DisplayLine ( 1, " Attack " ); break; case 3: DisplayLine ( 1, " Release " ); break; case 4: DisplayLine ( 1, " Ratio " ); break; } break; case 1: if ( autoEN == 1 ) { autoEN = 0; DisplayLine ( 1, " Disabled " ); } else { autoEN = 1; DisplayLine ( 1, " Enabled " ); } break; case 2: if ( bypassEN == 1 ) { bypassEN = 0; DisplayLine ( 1, " Disabled " ); } else { bypassEN = 1; DisplayLine ( 1, " Enabled " ); } break; } break; case 3: switch ( level2CurrentSelection ) { case 0: if ( threshold == thresholdMax ) break; threshold += thresholdStep; DisplayLine ( 2, DoubleToChar( threshold ) ); break; case 1: if ( mug == mugMax ) break; mug += mugStep; DisplayLine ( 2, DoubleToChar( mug ) ); break; case 2: if ( attack == attackMax) break; attack += attackStep; DisplayLine ( 2, DoubleToChar( attack ) ); break; case 3: if ( release == releaseMax ) break; release += releaseStep; DisplayLine ( 2, DoubleToChar( release ) ); break; case 4: if ( ratio == ratioMax ) break; ratio += ratioStep; DisplayLine ( 2, DoubleToChar( ratio ) ); break; default: break; } case 4: // No level 4, yet break; default: break; } case 2: // Counter-Clockwise if ( rotaryFlag == 1 ) break; rotaryFlag = 1; switch ( currentLevel ) { case 1: switch ( level1CurrentSelection ) { case 0: level1CurrentSelection = 2; DisplayLine ( 0, " Bypass " ); break; case 1: level1CurrentSelection = 0; DisplayLine ( 0, " Manual " ); break; case 2: level1CurrentSelection = 1; DisplayLine (0, " Automode " ); break; } break; case 2: switch ( level1CurrentSelection ) { case 0: if ( level2CurrentSelection == 0 ) level2CurrentSelection = 4; else level2CurrentSelection --; switch ( level2CurrentSelection ) { case 0: DisplayLine ( 1, " Threshold " ); break; case 1: DisplayLine ( 1, " MakeUp Gain " ); break; case 2: DisplayLine ( 1, " Attack " ); break; case 3: DisplayLine ( 1, " Release " ); break; case 4: DisplayLine ( 1, " Ratio " ); break; } break; case 1: if ( autoEN == 1 ) { autoEN = 0; DisplayLine ( 1, " Disabled " ); } else { autoEN = 1; DisplayLine ( 1, " Enabled " ); } break; case 2: if ( bypassEN == 1 ) { bypassEN = 0; DisplayLine ( 1, " Disabled " ); } else { bypassEN = 1; DisplayLine ( 1, " Enabled " ); } break; } break; case 3: switch ( level2CurrentSelection ) { case 0: if ( threshold == thresholdMin ) break; threshold -= thresholdStep; DisplayLine ( 2, DoubleToChar( threshold ) ); break; case 1: if ( mug == mugMin) break; mug -= mugStep; DisplayLine ( 2, DoubleToChar( mug ) ); break; case 2: if ( attack == attackMin ) break; attack -= attackStep; DisplayLine ( 2, DoubleToChar( attack ) ); break; case 3: if ( release == releaseMin ) break; release -= releaseStep; DisplayLine ( 2, DoubleToChar( release ) ); break; case 4: if ( ratio == ratioMin ) break; ratio -= ratioStep; DisplayLine ( 2, DoubleToChar( ratio ) ); break; default: break; } case 4: // No level 4, yet break; default: break; } default: break; } /* Rotary Button code */ //If flag is low and INPUT = HIGH, flag = HIGH if ( rotaryPressFlag == 0 ) { if( GPIO_ReadInputDataBit( GPIOE, GPIO_Pin_9 ) > 0 ) { rotaryPressFlag = 1; switch ( currentLevel ) { case 1: currentLevel ++; switch ( level1CurrentSelection ) { case 0: DisplayLine ( 1, " Threshold " ); level2CurrentSelection = 0; break; case 1: DisplayLine ( 1, " Disabled " ); break; case 2: DisplayLine ( 1, " Disabled " ); break; } break; case 2: if ( level1CurrentSelection == 0 ) currentLevel ++; break; case 3: // Do Nothing break; } } } //Otherwise, if flag = HIGH, wait until INPUT = LOW to reset flag else { if( GPIO_ReadInputDataBit( GPIOE, GPIO_Pin_9 ) == 0 ) { rotaryPressFlag = 0; } } /* Back Button code */ //If flag is low and INPUT = HIGH, flag = HIGH if ( buttonFlag == 0 ) { if( GPIO_ReadInputDataBit( GPIOE, GPIO_Pin_10 ) > 0 ) { buttonFlag = 1; switch ( currentLevel ) { case 1: // Do Nothing break; case 2: currentLevel-- ; DisplayLine ( 1, " " ); if ( autoEN == 1 ) autoEN = 0; if ( bypassEN == 1 ) bypassEN = 0; break; case 3: currentLevel-- ; DisplayLine ( 2, " " ); break; } } } //Otherwise, if flag = HIGH, wait until INPUT = LOW to reset flag else { if( GPIO_ReadInputDataBit( GPIOE, GPIO_Pin_10 ) == 0 ) { buttonFlag = 0; } } } //end while } //end UI_hl
void* KaiXinAPI_CommentDetail_JsonParse(char *text) { cJSON *json; cJSON *pTemp0; tResponseCommentDetail* Response = new tResponseCommentDetail; memset(Response, 0 , sizeof(tResponseCommentDetail)); json = cJSON_Parse(text); pTemp0 = cJSON_GetObjectItem(json,"ret"); if (pTemp0) { Response->ret = pTemp0->valueint; } //Success if(Response->ret == 1) { pTemp0 = cJSON_GetObjectItem(json, "uid"); if(pTemp0) { if(pTemp0->valueint > 0) sprintf(Response->uid, "%d", pTemp0->valueint ); else STRCPY_Ex(Response->uid, pTemp0->valuestring); } pTemp0 = cJSON_GetObjectItem(json, "n"); if(pTemp0) { Response->n = pTemp0->valueint; } pTemp0 = cJSON_GetObjectItem(json, "thread_cid"); if(pTemp0) { if(pTemp0->valuedouble > 0) DoubleToChar(pTemp0->valuedouble, Response->thread_cid); else STRCPY_Ex(Response->thread_cid, pTemp0->valuestring); } pTemp0 = cJSON_GetObjectItem(json, "mtype"); if(pTemp0) { if(IsNullString(pTemp0->valuestring)) sprintf(Response->mtype, "%d", pTemp0->valueint); else STRCPY_Ex(Response->mtype, pTemp0->valuestring); } pTemp0 = cJSON_GetObjectItem(json, "flogo"); if(pTemp0) { STRCPY_Ex(Response->flogo, pTemp0->valuestring); } pTemp0 = cJSON_GetObjectItem(json, "cnum"); if(pTemp0) { Response->cnum = pTemp0->valueint; } pTemp0 = cJSON_GetObjectItem(json, "more"); if(pTemp0) { Response->more = pTemp0->valueint; } //new added pTemp0 = cJSON_GetObjectItem(json, "title"); if(pTemp0) { STRCPY_Ex(Response->title, pTemp0->valuestring); } pTemp0 = cJSON_GetObjectItem(json, "thumbnail"); if(pTemp0) { STRCPY_Ex(Response->thumbnail, pTemp0->valuestring); } pTemp0 = cJSON_GetObjectItem(json, "appid"); if(pTemp0) { STRCPY_Ex(Response->appid, pTemp0->valuestring); } pTemp0 = cJSON_GetObjectItem(json, "comments"); if(pTemp0) { int nSize1 = 0, i = 0; nSize1 = cJSON_GetArraySize(pTemp0); Response->nSize = nSize1; if( nSize1 != 0 ) { Response->comments = NULL; Response->comments = (CommentDetail_comments*) malloc(sizeof( CommentDetail_comments ) * nSize1 ); memset(Response->comments, 0 , sizeof(CommentDetail_comments) * nSize1 ); } for ( i = 0; i < nSize1; i++ ) { cJSON *Item1 = NULL, *pTemp1 = NULL; Item1 = cJSON_GetArrayItem(pTemp0,i); pTemp1 = cJSON_GetObjectItem(Item1, "flogo"); if(pTemp1) { STRCPY_Ex(Response->comments[i].flogo, pTemp1->valuestring); } pTemp1 = cJSON_GetObjectItem(Item1, "cid"); if(pTemp1) { Response->comments[i].cid = pTemp1->valueint; } pTemp1 = cJSON_GetObjectItem(Item1, "fuid"); if(pTemp1) { Response->comments[i].fuid = pTemp1->valueint; } pTemp1 = cJSON_GetObjectItem(Item1, "fname"); if(pTemp1) { STRCPY_Ex(Response->comments[i].fname, pTemp1->valuestring); } pTemp1 = cJSON_GetObjectItem(Item1, "abscont"); if(pTemp1) { STRCPY_Ex(Response->comments[i].abscont, pTemp1->valuestring); } pTemp1 = cJSON_GetObjectItem(Item1, "ctime"); if(pTemp1) { Response->comments[i].ctime = pTemp1->valueint; } pTemp1 = cJSON_GetObjectItem(Item1, "strctime"); if(pTemp1) { STRCPY_Ex(Response->comments[i].strctime, pTemp1->valuestring); } } } } //Failue else { //pTemp0 = cJSON_GetObjectItem(json,"msg"); //if (pTemp0) //{ // strcpy(Response->msg, pTemp0 ->valuestring); //} } cJSON_Delete(json); return Response; }
char* GetDataPPDOption(cngplpData *data, int id) { char *option = NULL; switch(id){ case ID_SELECTBY: return IntToChar(data->ppd_opt->selectby); case ID_JOBACCOUNT: if(data->ppd_opt->special == NULL) return NULL; else{ #ifndef __APPLE__ return IntToChar(data->ppd_opt->special->job_account); #else return ToChar(data->ppd_opt->special->job_account == 0 ? "False" : "True"); #endif } case ID_JOBACCOUNT_ID: if(data->ppd_opt->special == NULL) return NULL; else return ToChar(data->ppd_opt->special->job_account_id); case ID_JOBACCOUNT_PASSWD: if(data->ppd_opt->special == NULL) return NULL; else return ToChar(data->ppd_opt->special->job_account_passwd); case ID_CNUSRPASSWORD: if(data->ppd_opt->special == NULL) return NULL; else return ToChar(data->ppd_opt->special->usr_passwd); case ID_DATANAME: if(data->ppd_opt->special == NULL) return NULL; else return IntToChar(data->ppd_opt->special->data_name); case ID_ENTERNAME: if(data->ppd_opt->special == NULL) return NULL; else #ifndef _OPAL return ToChar(data->ppd_opt->special->enter_name); #else if(data->ppd_opt->special->enter_name == NULL){ return ToChar(""); }else { return ToChar(data->ppd_opt->special->enter_name); } #endif case ID_BOXIDNUM: if(data->ppd_opt->special == NULL) return NULL; else #ifndef __APPLE__ return IntToChar(data->ppd_opt->special->box_num); #else return ToChar(data->ppd_opt->special->box_num); #endif case ID_MAX_BOXIDNUM: return IntToChar(data->ppd_opt->max_box_num); case ID_GUTTER: if(data->ppd_opt->summary_flag & CNSUMMARY_FLG_GUTTER) return NULL; if(data->ppd_opt->us_type) return DoubleToChar(data->ppd_opt->gutter_value_d); else return IntToChar(data->ppd_opt->gutter_value); case ID_MAX_GUTTER: if(data->ppd_opt->us_type) return DoubleToChar(data->ppd_opt->max_gutter_value_d); else return IntToChar(data->ppd_opt->max_gutter_value); case ID_USTYPE: return ToChar(data->ppd_opt->us_type == 0 ? "False" : "True"); case ID_LIST_MEDIATYPE: return IntToChar(data->ppd_opt->list_mediatype_value); case ID_LIST_PAGESIZE: return IntToChar(data->ppd_opt->list_pagesize_value); case ID_SECURED_DOCNAME: if(data->ppd_opt->special == NULL) return NULL; else #ifndef _OPAL return ToChar(data->ppd_opt->special->doc_name); #else if(data->ppd_opt->special->doc_name == NULL){ return ToChar(""); }else { return ToChar(data->ppd_opt->special->doc_name); } #endif case ID_SECURED_USRNAME: if(data->ppd_opt->special == NULL) return NULL; else return ToChar(data->ppd_opt->special->usr_name); case ID_SECURED_PASSWD: if(data->ppd_opt->special == NULL) return NULL; else return ToChar(data->ppd_opt->special->passwd_array); case ID_COLOR_MODE: return IntToChar(data->ppd_opt->color_mode); case ID_PRINTERTYPE: return IntToChar(data->ppd_opt->printer_type); case ID_MAX_COPIES: return IntToChar(data->ppd_opt->max_copy_num); case ID_SPECIAL_FUNC: return ToChar(data->ppd_opt->special != NULL ? "1" : "0"); case ID_DOC_LENGTH: return IntToChar(data->ppd_opt->max_doc_length); case ID_DUPLEX: option = IDtoPPDOption(id - 1); if(option == NULL) return NULL; #ifdef __APPLE__ return MakePPDOptionList(data->ppd_opt, "Duplex"); #else return MakeDuplexBoolList(data->ppd_opt); #endif case ID_BOOKLET: case ID_CNSADDLESTITCH: case ID_CNTRIMMING: case ID_CNZFOLDING: case ID_CNINSERTER: case ID_CNPUREBLACKPROCESS: case ID_CNPUNCHER: case ID_CNFOLDER: case ID_CNINSERTUNIT: case ID_CNTRIMMER: case ID_CNDUPLEXUNIT: case ID_CNSUPERSMOOTH: case ID_CNBACKPAPERPRINT: case ID_CNROTATEPRINT: case ID_CNCOPYSETNUMBERING: case ID_CNINTERLEAFSHEET: case ID_CNINTERLEAFPRINT: case ID_CNSKIPBLANK: case ID_CNDETECTPAPERSIZE: case ID_CNRGBPUREBLACKPROCESS: case ID_CNUSEGRAYSCALEPROFILE: case ID_CNLASTPAGEPRINTMODE: case ID_CNSET_FRONT_COVER: case ID_CNSET_BACK_COVER: case ID_CNSPECIFYNUMOFCOPIESSTACK: case ID_CNVFOLDING: case ID_CNPROPUNCHER: option = IDtoPPDOption(id - 1); if(option == NULL) return NULL; #ifdef __APPLE__ if(data->ppd_opt->printer_type != PRINTER_TYPE_CAPT) { switch(id){ case ID_CNPUNCHER: case ID_BOOKLET: case ID_CNFOLDER: case ID_CNTRIMMER: case ID_CNINSERTUNIT: case ID_CNLASTPAGEPRINTMODE: case ID_CNPROPUNCHER: return MakePPDOptionList(data->ppd_opt, option); default: return MakePPDBoolList(data->ppd_opt, option); } } else { switch(id){ case ID_CNSUPERSMOOTH: return MakePPDOptionList(data->ppd_opt, option); default: return MakePPDBoolList(data->ppd_opt, option); } #endif return MakePPDBoolList(data->ppd_opt, option); #ifdef __APPLE__ } #endif case ID_CNPUNCH: option = IDtoPPDOption(id - 1); if(option == NULL) return NULL; return MakeCNPunchBoolList(data->ppd_opt, option); case ID_BOOKLET_DLG: option = IDtoPPDOption(ID_BOOKLET - 1); if(option == NULL) return NULL; return MakePPDOptionList(data->ppd_opt, option); case ID_STARTNUM: return IntToChar(data->ppd_opt->startnum_value); case ID_USERID: return IntToChar(getuid()); case ID_BACKPAPERPRINT_LABEL: return ToChar(GetItemString(data->ppd_opt->items_list, "CNBackPaperPrint")); case ID_DISABLE_JOBACCOUNT_BW: if(data->ppd_opt->special == NULL) return NULL; else #ifndef __APPLE__ return IntToChar(data->ppd_opt->special->disable_job_account_bw); #else return ToChar(data->ppd_opt->special->disable_job_account_bw == 0 ? "False:True<0>,False<0>" : "True:True<0>,False<0>"); #endif #if !defined(__APPLE__) && !defined(_OPAL) case ID_SHOW_JOBACCOUNT: if(data->ppd_opt->special == NULL) { return NULL; } else { return IntToChar(data->ppd_opt->special->show_job_account); } break; #endif case ID_SHOW_DISABLE_JOBACCOUNT_BW: if(data->ppd_opt->special == NULL) return NULL; else return IntToChar(data->ppd_opt->special->show_disable_job_account_bw); case ID_DETECTPAPER_LABEL: return ToChar(GetItemString(data->ppd_opt->items_list, "CNDetectPaperSize")); case ID_CNDPICONPICTID: if(data->ppd_opt->dpicon_pictid > 0) return IntToChar(data->ppd_opt->dpicon_pictid); break; case ID_CNENABLEFINISHFLAG: if(data->ppd_opt->enable_finishflag > 0) return IntToChar(data->ppd_opt->enable_finishflag); break; case ID_CNENABLEINPUTFLAG: if(data->ppd_opt->enable_inputflag > 0) return IntToChar(data->ppd_opt->enable_inputflag); break; case ID_CNENABLEQUALITYTYPE: if(data->ppd_opt->enable_qualitytype > 0) return IntToChar(data->ppd_opt->enable_qualitytype); break; case ID_INPUTSLOT_TYPE: return IntToChar(data->ppd_opt->input_slot_type); case ID_CNSHIFTTYPE: return IntToChar(data->ppd_opt->shift_pos_type); case ID_CNSHIFTUPWARDS: if((option = GetUIValue(data, "CNEnableDetailShiftPosition")) != NULL){ if(strcasecmp(option,"True") == 0){ return DoubleToChar(data->ppd_opt->detail_shift_upwards); } } return IntToChar(data->ppd_opt->shift_upwards); case ID_CNSHIFTRIGHT: if((option = GetUIValue(data, "CNEnableDetailShiftPosition")) != NULL){ if(strcasecmp(option,"True") == 0){ return DoubleToChar(data->ppd_opt->detail_shift_right); } } return IntToChar(data->ppd_opt->shift_right); case ID_CNSHIFTFRLONGEDGE: if((option = GetUIValue(data, "CNEnableDetailShiftPosition")) != NULL){ if(strcasecmp(option,"True") == 0){ return DoubleToChar(data->ppd_opt->detail_shift_front_long); } } return IntToChar(data->ppd_opt->shift_front_long); case ID_CNSHIFTFRSHORTEDGE: if((option = GetUIValue(data, "CNEnableDetailShiftPosition")) != NULL){ if(strcasecmp(option,"True") == 0){ return DoubleToChar(data->ppd_opt->detail_shift_front_short); } } return IntToChar(data->ppd_opt->shift_front_short); case ID_CNSHIFTBKLONGEDGE: if((option = GetUIValue(data, "CNEnableDetailShiftPosition")) != NULL){ if(strcasecmp(option,"True") == 0){ return DoubleToChar(data->ppd_opt->detail_shift_back_long); } } return IntToChar(data->ppd_opt->shift_back_long); case ID_CNSHIFTBKSHORTEDGE: if((option = GetUIValue(data, "CNEnableDetailShiftPosition")) != NULL){ if(strcasecmp(option,"True") == 0){ return DoubleToChar(data->ppd_opt->detail_shift_back_short); } } return IntToChar(data->ppd_opt->shift_back_short); case ID_CNSHIFTPOSITIONMAX: return cngplpGetValue(data,kPPD_Items_CNShiftPositionMax); case ID_CNSHIFTPOSITIONMIN: return cngplpGetValue(data,kPPD_Items_CNShiftPositionMin); case ID_CNJOBNOTE: if(data->ppd_opt->job_note == NULL) return NULL; else return ToChar(data->ppd_opt->job_note->note); case ID_CNJOBDETAILS: if(data->ppd_opt->job_note == NULL) return NULL; else return ToChar(data->ppd_opt->job_note->details); case ID_CNFINDETAILS: option = GetUIValue(data, kPPD_Items_CNFinDetails); if(option == NULL) return 0; return IntToChar((strcasecmp(option, "true") == 0) ? 1 : 0); case ID_CNOFFSETNUM: return IntToChar(data->ppd_opt->offset_num); case ID_CNUIOFFSETMAX: return cngplpGetValue(data,kPPD_Items_CNUIOffsetMax); case ID_CNGUTTERSHIFTNUM: return DoubleToChar2(data->ppd_opt->guttershiftnum_value_d); case ID_MAX_GUTTER_SHIFT_NUM: return cngplpGetValue(data,kPPD_Items_CNMAXGutterShiftNum); case ID_MIN_GUTTER_SHIFT_NUM: return cngplpGetValue(data,kPPD_Items_CNMINGutterShiftNum); case ID_CNTABSHIFT: return DoubleToChar(data->ppd_opt->tab_shift); case ID_DRIVERROOTPATH: if(data->ppd_opt->drv_root_path == NULL) return NULL; else return ToChar(data->ppd_opt->drv_root_path); case ID_CNMEDIABRANDLIST: return MakeMediaBrandListChar(data->ppd_opt); case ID_CNMEDIABRAND: return MakeMediaBrandChar(data->ppd_opt); case ID_CNINSERTMEDIABRANDLIST: return MakeInsertMediaBrandListChar(data->ppd_opt); case ID_CNINSERTMEDIABRAND: return MakeInsertMediaBrandChar(data->ppd_opt); case ID_CNINTERLEAFMEDIABRANDLIST: return MakeInterleafMediaBrandListChar(data->ppd_opt); case ID_CNINTERLEAFMEDIABRAND: return MakeInterleafMediaBrandChar(data->ppd_opt); case ID_CNPBINDCOVERMEDIABRANDLIST: return MakePBindCoverMediaBrandListChar(data->ppd_opt); case ID_CNPBINDCOVERMEDIABRAND: return MakePBindCoverMediaBrandChar(data->ppd_opt); case ID_CNINSERTTABSHIFT: return DoubleToChar(data->ppd_opt->ins_tab_shift); case ID_CNINSERTPOS: return ToChar(data->ppd_opt->ins_pos); case ID_CNINSERTPOSPAPERSOURCE: return ToChar(data->ppd_opt->ins_pos_papersource); case ID_CNINSERTPOSPRINTON: return ToChar(data->ppd_opt->ins_pos_printon); case ID_CNTABINSERTPOS: return ToChar(data->ppd_opt->tab_ins_pos); case ID_CNTABINSERTPOSPAPERSOURCE: return ToChar(data->ppd_opt->tab_ins_pos_papersource); case ID_CNTABINSERTPOSPRINTON: return ToChar(data->ppd_opt->tab_ins_pos_printon); case ID_CNTABINSERTMULTIPAPERNUMBER: return IntToChar(data->ppd_opt->tab_ins_multi_number); case ID_CNTABINSERTMULTIPAPERSOURCE: return ToChar(data->ppd_opt->tab_ins_multi_papersource); case ID_CNTABINSERTMULTIPAPERTYPE: return ToChar(data->ppd_opt->tab_ins_multi_papertype); case ID_CNBINNAME: return ToChar(data->ppd_opt->bin_name); case ID_CNBINNAME_ARRAY: return ToChar(data->ppd_opt->bin_name_array); case ID_CNOVERLAYFILENAME: if(data->ppd_opt->special == NULL) return NULL; else return ToChar(data->ppd_opt->special->form_name); case ID_CNFORMHANDLE: if(data->ppd_opt->special == NULL) return NULL; else return ToChar(data->ppd_opt->special->form_handle); case ID_CNFORMLIST: return MakeFormListChar(data->ppd_opt); case ID_CNADJUSTTRIMNUM: return DoubleToChar(data->ppd_opt->adjust_trim_num); case ID_CNUITRIMVALMAX: return cngplpGetValue(data, kPPD_Items_CNUITrimValMax); case ID_CNUITRIMVALMIN: return cngplpGetValue(data, kPPD_Items_CNUITrimValMin); case ID_CNADJUSTFORETRIMNUM: return DoubleToChar(data->ppd_opt->adjust_frtrim_num); case ID_CNADJUSTTOPBOTTOMTRIMNUM: return DoubleToChar(data->ppd_opt->adjust_tbtrim_num); case ID_CNPBINDFINISHFORETRIMNUM: return DoubleToChar(data->ppd_opt->pb_fin_fore_trim_num); case ID_CNPBINDFINISHTOPBOTTOMTRIMNUM: return DoubleToChar(data->ppd_opt->pb_fin_topbtm_trim_num); case ID_CNSENDTIMENUM: if(data->ppd_opt->fax_setting == NULL) return NULL; else return ToChar(data->ppd_opt->fax_setting->send_time); case ID_CNOUTSIDELINENUMBER: if(data->ppd_opt->fax_setting == NULL) return NULL; else return ToChar(data->ppd_opt->fax_setting->outside_line_number); case ID_CNOUTSIDELINENUMINTRA: if(data->ppd_opt->fax_setting == NULL) return NULL; else return ToChar(data->ppd_opt->fax_setting->outside_line_number_intra); case ID_CNOUTSIDELINENUMNGN: if(data->ppd_opt->fax_setting == NULL) return NULL; else return ToChar(data->ppd_opt->fax_setting->outside_line_number_ngn); case ID_CNOUTSIDELINENUMMYNUMBERNGN: if(data->ppd_opt->fax_setting == NULL) return NULL; else return ToChar(data->ppd_opt->fax_setting->outside_line_number_ngnmynum); case ID_CNOUTSIDELINENUMVOIP: if(data->ppd_opt->fax_setting == NULL) return NULL; else return ToChar(data->ppd_opt->fax_setting->outside_line_number_voip); case ID_CNSENDER: if(data->ppd_opt->fax_setting == NULL) return NULL; else return ToChar(data->ppd_opt->fax_setting->sender_name); case ID_HOLD_NAME: if(data->ppd_opt->special == NULL) return NULL; else return ToChar(data->ppd_opt->special->hold_name); case ID_HOLDQUEUE_DATANAME: if(data->ppd_opt->special == NULL) return NULL; else return IntToChar(data->ppd_opt->special->holddata_name); case ID_CNFEEDPAPERNAME: if(data->ppd_opt->feed_paper_name == NULL) return NULL; else return ToChar(data->ppd_opt->feed_paper_name); case ID_CNSADDLESETTING: option = IDtoPPDOption(id - 1); if(option == NULL) return NULL; return MakeCNSaddleSettingList(data->ppd_opt, option); case ID_CNSTACKCOPIESNUM: return IntToChar(data->ppd_opt->stack_copies_num); case ID_CNSADDLEPRESSADJUSTMENT: return IntToChar(data->ppd_opt->saddle_press_adjust); case ID_CNLISTIDSPECIALPRINTMODE: return IntToChar(data->ppd_opt->list_specialprintmode_value); #ifndef __APPLE__ case ID_ENABLECNOFFSETNUM: return ToChar(GetUIValue(data, "EnableCNOffsetNum")); case ID_CNFOLDSETTING: option = IDtoPPDOption(id - 1); if(option == NULL){ return NULL; } return MakeCNFoldSettingList(data->ppd_opt, option); case ID_CNPRINTSTYLE: option = IDtoPPDOption(id - 1); if(option == NULL){ return NULL; } return MakeCNPrintStyleList(data->ppd_opt, option); #endif case ID_PCFILENAME: return ToChar(data->ppd_opt->pcfile_name); case ID_MANUFACTURER: return ToChar(data->ppd_opt->manufacturer); case ID_NICKNAME: return ToChar(data->ppd_opt->nickname); case ID_CNPDLTYPE: return ToChar(data->ppd_opt->cnpdl_type); case ID_APPRINTERICONPATH: return ToChar(data->ppd_opt->ap_printer_icon_path); case ID_CONFLICTCNOFFSETNUM: return IntToChar(GetOffsetNumConflict(data)); case ID_ENABLEINSERTPOSPAPERSOURCE: return MakeEnableInsertPosPaperSource(data, 0); case ID_ENABLETABINSERTPOSPAPERSOURCE: return MakeEnableInsertPosPaperSource(data, 1); default: option = IDtoPPDOption(id - 1); if(option == NULL) return NULL; return MakePPDOptionList(data->ppd_opt, option); } return NULL; }
/* * 函数名 : void xml_create_by_pms_vms() * 功能 : 将物理机及虚拟机信息生成xml文档:xml2.xml * 传入参数 : xmlfilename 为生成的文件名 * 返回值 :无 * @created by 贾俊伟 in 2013.5.12 * @Modified by Jianhai in 2013-05-13 */ void xml1_create(char *xmlfilename) { int i,j; char strBuf[30]; xmlDocPtr doc = NULL; xmlNodePtr root_node = NULL, node = NULL, node1 = NULL; /*建立根节点*/ doc = xmlNewDoc(BAD_CAST "1.0"); root_node = xmlNewNode(NULL, BAD_CAST "DATA"); xmlNewProp(root_node,BAD_CAST"VERSION",BAD_CAST"0.3"); xmlDocSetRootElement(doc, root_node); ///////////////////////////////////////////////////////////////// /*生成框FRAME信息*/ for(i=0;i<_xpthis->sd->fr_total;i++){ /*生成FRAME元素*/ node = xmlNewNode(NULL, BAD_CAST "FRAME"); /*加入FRAME的PMIDS属性*/ xmlNewProp(node,BAD_CAST"PMIDS",BAD_CAST _xpthis->sd->framelist[i].pmids); /*加入FRAME的ID属性*/ xmlNewProp(node,BAD_CAST"ID",BAD_CAST _xpthis->sd->framelist[i].sid); xmlAddChild(root_node, node); } /*组GROUPxin*/ for(i=0;i<_xpthis->sd->gr_total;i++){ /*生成GROUP元素*/ node = xmlNewNode(NULL, BAD_CAST "GROUP"); /*加入GROUP的PMIDS属性*/ xmlNewProp(node,BAD_CAST"PMIDS",BAD_CAST _xpthis->sd->pmglist[i].pmids); /*加入GROUP的ID属性*/ xmlNewProp(node,BAD_CAST"ID",BAD_CAST _xpthis->sd->pmglist[i].sid); xmlAddChild(root_node, node); } ///////////////////////////////////////////////////////////////// /*物理机输出*/ for(i=0;i<_xpthis->sd->pm_total;i++){ /*生成PM元素*/ node = xmlNewNode(NULL, BAD_CAST "PM"); /*加入PM的STAT属性*/ sprintf(strBuf,"%d",(int)_xpthis->sd->pmlist[i].host.stat); xmlNewProp(node,BAD_CAST"STAT",BAD_CAST strBuf); /*所在GROUP*/ //sprintf(strBuf,"%d",(int)_xpthis->sd->pmlist[i].group_id); xmlNewProp(node,BAD_CAST"GR",BAD_CAST _xpthis->sd->pmlist[i].at_gr_ids); /*所在FRAME*/ //sprintf(strBuf,"%d",(int)_xpthis->sd->pmlist[i].frame_id); xmlNewProp(node,BAD_CAST"FR",BAD_CAST _xpthis->sd->pmlist[i].at_fr_sid); /*加入PM的IP属性*/ xmlNewProp(node,BAD_CAST"IP",BAD_CAST _xpthis->sd->pmlist[i].host.ip); /*加入PM的ID属性*/ //itoa(_xpthis->sd->pmlist[i].host.id,strBuf,10); //sprintf(strBuf,"%d",(int)_xpthis->sd->pmlist[i].host.id); xmlNewProp(node,BAD_CAST"ID",BAD_CAST _xpthis->sd->pmlist[i].host.sid); xmlAddChild(root_node, node); /*生成METRIC元素*/ for(j=0;j<DIM;j++){ node1 = xmlNewNode(NULL,BAD_CAST"METRIC"); /*指标值 预留*/ xmlNewProp (node1,BAD_CAST"RESERVED",BAD_CAST DoubleToChar(_xpthis->sd->pmlist[i].host.load[j].reserved,2)); /*指标值 总量*/ xmlNewProp (node1,BAD_CAST"TOTAL",BAD_CAST DoubleToChar(_xpthis->sd->pmlist[i].host.load[j].total,2)); /*指标值 已用量*/ xmlNewProp (node1,BAD_CAST"USED",BAD_CAST DoubleToChar(_xpthis->sd->pmlist[i].host.load[j].used,2)); /*新增METRIC属性enum MetricName {CPU = 0, MEM, DISKIO, FPGA, ETH0, ETH1, ETH2, ETH3, SUM, MAX, MIN};*/ switch(j){ case CPU: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"cpu"); break; case MEM: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"mem"); break; case DISKIO: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"diskio"); break; case FPGA: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"fpga"); break; case ETH0: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"eth0"); break; case ETH1: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"eth1"); break; case ETH2: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"eth2"); break; case ETH3: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"eth3"); break; } xmlAddChild(node,node1); } } ///////////////////////////////////////////////////////////////// /*虚拟机输出*/ for(i=0;i<_xpthis->sd->vm_total;i++){ node = xmlNewNode(NULL, BAD_CAST "VM"); // xmlNewProp(node,BAD_CAST"STAT",BAD_CAST NumToChar(g_vmlist[i].stat)); 没有stat的值 /*所在PM*/ xmlNewProp(node,BAD_CAST"AT",BAD_CAST _xpthis->sd->pmlist[_xpthis->sd->vmlist[i].at].host.sid); /*加入VM的STAT属性*/ xmlNewProp(node,BAD_CAST"STAT",BAD_CAST NumToChar(_xpthis->sd->vmlist[i].host.stat)); /*IP*/ xmlNewProp(node,BAD_CAST"IP",BAD_CAST _xpthis->sd->vmlist[i].host.ip); /*加入ID属性*/ xmlNewProp(node,BAD_CAST"ID",BAD_CAST _xpthis->sd->vmlist[i].host.sid); xmlAddChild(root_node, node); for(j=0;j<DIM;j++){ /*METRIC*/ node1=xmlNewNode(NULL,BAD_CAST"METRIC"); /*TOTAL属性*/ xmlNewProp(node1,BAD_CAST"TOTAL",BAD_CAST DoubleToChar(_xpthis->sd->vmlist[i].host.load[j].total,2)); /*USED属性*/ xmlNewProp(node1,BAD_CAST"USED",BAD_CAST DoubleToChar(_xpthis->sd->vmlist[i].host.load[j].used,2)); /*新增METRIC属性enum MetricName {CPU = 0, MEM, DISKIO, FPGA, ETH0, ETH1, ETH2, ETH3, SUM, MAX, MIN};*/ switch(j){ case CPU: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"cpu"); break; case MEM: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"mem"); break; case DISKIO: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"diskio"); break; case FPGA: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"fpga"); break; case ETH0: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"eth0"); break; case ETH1: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"eth1"); break; case ETH2: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"eth2"); break; case ETH3: xmlNewProp(node1,BAD_CAST"NAME",BAD_CAST"eth3"); break; } xmlAddChild(node,node1); } } /*保存输出到文件*/ xmlSaveFormatFileEnc(xmlfilename, doc, "UTF-8", 1); /*释放*/ xmlFreeDoc(doc); xmlCleanupParser(); xmlMemoryDump(); }
/*生成网络拓扑XML21 cjh add 7.28*/ void xml_create_by_pm2pm_treetopo(char *xmlfilename) { int i; pm2swPtr p_ps; sw2swPtr p_ss; swPtr p_sw; xmlDocPtr doc = NULL; xmlNodePtr root_node = NULL, node = NULL, node1 = NULL; //建立根节点 doc = xmlNewDoc(BAD_CAST "1.0"); root_node = xmlNewNode(NULL, BAD_CAST "DATA"); xmlNewProp(root_node,BAD_CAST"VERSION",BAD_CAST"0.1"); xmlDocSetRootElement(doc, root_node); /*---1.生成SWITCH列表---------------*/ /*对每一个SWITHC输出到XML21*/ for(i=0;i<_xpthis->sd->sw_total;i++){ p_sw=&_xpthis->sd->swlist[i]; /*生成id属性*/ xmlNewProp(node,BAD_CAST"ID",BAD_CAST p_sw->sid); //printf(" ---%s ---\n",p_sw->sid); /*生成主节点*/ node = xmlNewNode(NULL, BAD_CAST "SW"); /*生成LEVEL属性*/ xmlNewProp(node,BAD_CAST"LEV",BAD_CAST NumToChar(p_sw->level)); /*端口个数属性*/ xmlNewProp(node,BAD_CAST"PORTNUM",BAD_CAST "24"); xmlAddChild(root_node, node); } /*对每一个PM2SW连接关系输出到XML21*/ for(i=0;i<_xpthis->sd->p2s_total;i++){ p_ps=&_xpthis->sd->p2slist[i]; /*生成主节点*/ node = xmlNewNode(NULL, BAD_CAST "P2S"); /*生成delay属性*/ xmlNewProp(node,BAD_CAST"DELAY",BAD_CAST DoubleToChar(p_ps->delay,0)); /*生成BANDWIDTH属性*/ if(_xpthis->sd->p2slist[i].bandwidth>0) xmlNewProp(node,BAD_CAST"BW",BAD_CAST DoubleToChar (p_ps->bandwidth,0)); else xmlNewProp(node,BAD_CAST"BW",BAD_CAST ""); /*生成DST: SWITCH SID属性*/ xmlNewProp(node,BAD_CAST"DPORT",BAD_CAST NumToChar(p_ps->swithch_port)); /*生成DST: SWITCH SID属性*/ xmlNewProp(node,BAD_CAST"DST",BAD_CAST p_ps->switch_sid); /*生成SRC: PMSID属性*/ xmlNewProp(node,BAD_CAST"SPORT",BAD_CAST NumToChar( p_ps->port_id)); /*生成SRC: PMSID属性*/ xmlNewProp(node,BAD_CAST"SRC",BAD_CAST p_ps->pm_sid); /*生成ID属性:PS(pm2sw), SS(sw2sw)*/ xmlNewProp(node,BAD_CAST"ID",BAD_CAST NumToChar( p_ps->id)); xmlAddChild(root_node, node); } /*对每一个SW2SW连接关系输出到XML21*/ for(i=0;i<_xpthis->sd->s2s_total;i++){ p_ss=&_xpthis->sd->s2slist[i]; /*生成主节点*/ node = xmlNewNode(NULL, BAD_CAST "S2S"); /*生成delay属性*/ xmlNewProp(node,BAD_CAST"DELAY",BAD_CAST DoubleToChar(p_ss->delay,0)); /*生成BANDWIDTH属性*/ if(_xpthis->sd->s2slist[i].bandwidth>0) xmlNewProp(node,BAD_CAST"BW",BAD_CAST DoubleToChar (p_ss->bandwidth,0)); else xmlNewProp(node,BAD_CAST"BW",BAD_CAST ""); /*生成DST: SWITCH SID属性*/ xmlNewProp(node,BAD_CAST"DST",BAD_CAST p_ss->p_dst_sw->sid); /*生成SRC: PMSID属性*/ xmlNewProp(node,BAD_CAST"SRC",BAD_CAST p_ss->sw_src_sid); /*生成ID属性:PS(pm2sw), SS(sw2sw)*/ xmlNewProp(node,BAD_CAST"ID",BAD_CAST NumToChar(p_ss->id)); xmlAddChild(root_node, node); } /*生成文件*/ xmlSaveFormatFileEnc(xmlfilename, doc, "UTF-8", 1); /*释放*/ xmlFreeDoc(doc); xmlCleanupParser(); xmlMemoryDump(); }
// 窗口事件处理 Boolean TGuestbookGetForm::EventHandler(TApplication * pApp, EventType * pEvent) { Boolean bHandled = FALSE; switch (pEvent->eType) { //窗口创建 case EVENT_WinInit: { _OnWinInitEvent(pApp, pEvent); bHandled = TRUE; } break; //窗口关闭 case EVENT_WinClose: { _OnWinClose(pApp, pEvent); } break; //点击控件 case EVENT_CtrlSelect: { bHandled = _OnCtrlSelectEvent(pApp, pEvent); } break; //控件获取焦点 case EVENT_CtrlSetFocus: { bHandled = _OnCtrlSetFocusEvent(pApp, pEvent); } break; //控件丢失焦点 case EVENT_CtrlKillFocus : { bHandled = _OnCtrlKillFocusEvent(pApp, pEvent); } break; //输入框内容变化 case EVENT_FieldChanged: { _OnFldChangedEvent(pApp, pEvent); bHandled = TRUE; } break; //窗口的背景 case EVENT_WinEraseClient: { TDC dc(this); WinEraseClientEventType *pEraseEvent = reinterpret_cast< WinEraseClientEventType* >( pEvent ); TRectangle rc(pEraseEvent->rc); dc.SetBackColor(RGB_COLOR_FORM_BACKGROUND); dc.EraseRectangle(&rc, 0); dc.DrawBitmapsH(TResource::LoadConstBitmap(APP_RE_ID_BITMAP_title_bg), 0, 0, SCR_W,GUI_API_STYLE_ALIGNMENT_LEFT); if(m_FormMode == FORM_MODE_MYHOME) dc.DrawBitmapsH(TResource::LoadConstBitmap(APP_RE_ID_BITMAP_Bottom_btn_bg), 0, BOTTOM_TAB_Y, SCR_W,GUI_API_STYLE_ALIGNMENT_LEFT); pEraseEvent->result = 1; bHandled = TRUE; } break; // 右软键事件 case EVENT_KeyCommand: { if( pEvent->sParam1 == SYS_KEY_SOFTKEY_RIGHT_UP || pEvent->sParam1 == SYS_KEY_SOFTKEY_RIGHT_LONG ) { // 模拟标题栏右按钮选中消息 HitControl(m_TitleBtnRight); bHandled = TRUE; } } break; //下载完成事件 case MSG_DL_THREAD_NOTIFY: { NotifyMsgDataType notifyData; Sys_GetMessageBody((MESSAGE_t *)pEvent, ¬ifyData, sizeof(NotifyMsgDataType)); bHandled = TRUE; switch(notifyData.nAccessType) { case RR_PhotoDownload: { if(notifyData.nParam == FEED_PROFILE_IMAGE_INDEX) { //下载完后更新对应的图片 TBitmap* pDownLoadBitmap = NULL; pDownLoadBitmap = LoadImgByPath(notifyData.pszFilePath); if(pDownLoadBitmap) { TMaskButton* pLogo = NULL; pLogo = static_cast<TMaskButton*>(GetControlPtr(m_ProfileImageID)); if(pLogo) { TRectangle rc; pLogo->GetBounds(&rc); if( pProfileImage != NULL) { pProfileImage->Destroy(); pProfileImage = NULL; } pProfileImage = TBitmap::Create(RR_HEAD_W, RR_HEAD_W, pDownLoadBitmap->GetDepth()); pProfileImage->QuickZoom(pDownLoadBitmap, TRUE, TRUE,RGBA(0,0,0,255)); pLogo->SetCaption(TUSTR_Re_NULL,0,0); pLogo->SetImage(pProfileImage, (rc.Width()-pProfileImage->GetWidth())/2, (rc.Height()-pProfileImage->GetHeight())/2); pLogo->Draw(); } //释放图片 pDownLoadBitmap->Destroy(); pDownLoadBitmap = NULL; } break; } if( gItemData[notifyData.nParam].pBmp != NULL) { gItemData[notifyData.nParam].pBmp->Destroy(); gItemData[notifyData.nParam].pBmp = NULL; } if( gItemData[notifyData.nParam].pBmpZoom!= NULL) { gItemData[notifyData.nParam].pBmpZoom->Destroy(); gItemData[notifyData.nParam].pBmpZoom = NULL; } gItemData[notifyData.nParam].pBmp= LoadImgByPath(notifyData.pszFilePath); if(gItemData[notifyData.nParam].pBmp != NULL) { TMaskButton* pMyHeadMBtn = static_cast<TMaskButton*>(GetControlPtr(gItemData[notifyData.nParam].HeadMaskButtonID)); if(pMyHeadMBtn != NULL) { gItemData[notifyData.nParam].pBmpZoom = gItemData[notifyData.nParam].pBmp->Create(HEADPHOTO_W, HEADPHOTO_H, 32); gItemData[notifyData.nParam].pBmpZoom->QuickSpecialZoom(gItemData[notifyData.nParam].pBmp, 0, 0); pMyHeadMBtn->SetImage(gItemData[notifyData.nParam].pBmpZoom, (HEADMASKBUTTON_W - gItemData[notifyData.nParam].pBmpZoom->GetWidth())/2, (HEADMASKBUTTON_H - gItemData[notifyData.nParam].pBmpZoom->GetHeight())/2 ); pMyHeadMBtn->Draw(); } } break; } case RR_GuestbookPost: { pApp->MessageBox(TResource::LoadConstString(APP_RE_ID_STRING_Success), TResource::LoadConstString(APP_RE_ID_STRING_SendComment), WMB_OK); RenRenAPICommon_Download(RR_GuestbookGet, this->GetWindowHwndId(), 0, m_FormMode); break; } case RR_UsersGetInfoPhoto: { tResponseUsersGetInfo* Response = NULL; RenRenAPI_JsonParse(RR_UsersGetInfoPhoto, (void **)&Response); if(Response) { _UpdateProfilePhoto(pApp, Response); delete Response; Response = NULL; } } break; default: break; } } break; case MSG_POST_THREAD_NOTIFY: { PostNotifyMsgDataType notifyData; Sys_GetMessageBody((MESSAGE_t *)pEvent, ¬ifyData, sizeof(PostNotifyMsgDataType)); //if(notifyData.nEditType == NewBlogEdit) { char* uid = Get_Url_Params(RR_GuestbookGet, "uid"); Set_Url_Params(RR_GuestbookPost, "uid", uid); Set_Url_Params(RR_GuestbookPost, "content", (char*)notifyData.pszEditContent); //留言是否为悄悄话,1表示是,0表示否,缺省值为0 if(notifyData.bPrivacy == TRUE) Set_Url_Params(RR_GuestbookPost, "type", "1"); else Set_Url_Params(RR_GuestbookPost, "type", "0"); //回复他人的留言需要传rid if(bReply) { char rid[64] = {0}; sprintf(rid, "%d", gItemData[m_SelectReplyItem].uid); Set_Url_Params(RR_GuestbookPost, "rid", rid); } else { Set_Url_Params(RR_GuestbookPost, "rid", ""); } //当回复公共主页的留言时需要传reply_gossip_id //TUChar sID[64]={0}; //Char id[64]={0}; //TUString::StrI64ToA(sID,(Int64)gItemData[m_SelectReplyItem].id); //TUString::StrUnicodeToStrUtf8(id,sID); char id[64] = {0}; DoubleToChar(gItemData[m_SelectReplyItem].id, id); Set_Url_Params(RR_GuestbookPost, "reply_gossip_id", (char*)id); RenRenAPICommon_Download(RR_GuestbookPost, this->GetWindowHwndId(), 0, 0); } bHandled = TRUE; break; } default: break; } if (!bHandled) { bHandled = TWindow::EventHandler(pApp, pEvent); } return bHandled; }
// 控件点击事件处理 Boolean TFeedGetFangleForm::_OnCtrlSelectEvent(TApplication * pApp, EventType * pEvent) { Boolean bHandled; bHandled = FALSE; Int32 nCtrlID = pEvent->sParam1; if(m_TitleBtnRight == nCtrlID) { bHandled = TRUE; this->CloseWindow(); return bHandled; } else if(m_TitleBtnLeft == nCtrlID) { bHandled = TRUE; return bHandled; } else if(APP_RE_ID_CommonListForm_CommonCoolBarList == nCtrlID) { TBarListItem* pListItem = NULL; Int32 Index = 0; char cbuf[50] = {0}; TUChar Tbuf[50] = {0}; pListItem = (TBarListItem*)(pEvent->lParam3); Index = pListItem->GetIndex(); //设为已读 char szType[16] = {0}; char szSourceID[50] = {0}; sprintf(szType, "%d", Response->Array[Index].type); DoubleToChar(Response->Array[Index].source_id, szSourceID); Set_Url_Params(RR_FeedReadFangle, "source_id",szSourceID); Set_Url_Params(RR_FeedReadFangle, "type", szType); RenRenAPICommon_Download(RR_FeedReadFangle, this->GetWindowHwndId(), 0, 0); switch(Response->Array[Index].type) { case USERBLOG_COMMENT: { DoubleToChar(Response->Array[Index].object_id, cbuf); Set_Url_Params(RR_BlogGetComments, "id", cbuf); sprintf(cbuf, "%d", Response->Array[Index].owner_id); Set_Url_Params(RR_BlogGetComments, "uid", cbuf); Set_Url_Params(RR_BlogGetComments, "page", "1"); Index = Index + 1; RenRenAPICommon_Download(RR_BlogGetComments, this->GetWindowHwndId(), 0, Index); bHandled = TRUE; } break; case USERPHOTO_COMMENT: { DoubleToChar(Response->Array[Index].object_id, cbuf); Set_Url_Params(RR_PhotosGetComments, "pid", cbuf); TUString::StrIToA(Tbuf, Response->Array[Index].owner_id); TUString::StrUnicodeToStrUtf8((Char *)cbuf, (const TUChar*)Tbuf); Set_Url_Params(RR_PhotosGetComments, "uid", cbuf); Set_Url_Params(RR_PhotosGetComments, "aid", ""); Set_Url_Params(RR_PhotosGetComments, "order", "1"); Set_Url_Params(RR_PhotosGetComments, "page", "1"); RenRenAPICommon_Download(RR_PhotosGetComments, this->GetWindowHwndId(), 0, 0); bHandled = TRUE; return bHandled; } break; case USERGUESTBOOK_COMMENT: { Set_Url_Params(RR_GuestbookGet, "uid", RenRenUserInfo.szuid); RenRenAPICommon_Download(RR_GuestbookGet, this->GetWindowHwndId(), 0, 0); bHandled = TRUE; } break; case SOMEONEBLOG_COMMENT: { bHandled = TRUE; } break; case SOMEONEPHOTO_COMMENT: { bHandled = TRUE; } break; case SOMEONEGUESTBOOK_COMMENT: { bHandled = TRUE; } break; case USERSTATUS_COMMENT: { DoubleToChar(Response->Array[Index].object_id, cbuf); Set_Url_Params(RR_StatusGetComment, "status_id", cbuf); TUString::StrIToA(Tbuf, Response->Array[Index].owner_id); TUString::StrUnicodeToStrUtf8((Char *)cbuf, (const TUChar*)Tbuf); Set_Url_Params(RR_StatusGetComment, "owner_id", cbuf); Set_Url_Params(RR_StatusGetComment, "order", "1"); RenRenAPICommon_Download(RR_StatusGetComment, this->GetWindowHwndId(), 0, 0); bHandled = TRUE; } break; case USERALBUM_COMMENT: { DoubleToChar(Response->Array[Index].object_id, cbuf); Set_Url_Params(RR_PhotosGetComments, "aid", cbuf); TUString::StrIToA(Tbuf, Response->Array[Index].owner_id); TUString::StrUnicodeToStrUtf8((Char *)cbuf, (const TUChar*)Tbuf); Set_Url_Params(RR_PhotosGetComments, "uid", cbuf); Set_Url_Params(RR_PhotosGetComments, "pid", ""); Set_Url_Params(RR_PhotosGetComments, "order", "1"); Set_Url_Params(RR_PhotosGetComments, "page", "1"); RenRenAPICommon_Download(RR_PhotosGetComments, this->GetWindowHwndId(), 0, 0); bHandled = TRUE; return bHandled; bHandled = TRUE; } break; default: break; } bHandled = TRUE; return bHandled; } switch(nCtrlID) { case APP_RE_ID_TestForm_Test01: { bHandled = TRUE; } break; default: break; } return bHandled; }