void ChatView::renderMessage(const MessageView &mv) { QString timestr = formatTimeStamp(mv.dateTime()); QString color = colorString(mv.isLocal(), mv.isSpooled()); if (useMessageIcons_ && mv.isAwaitingReceipt()) { document()->addResource(QTextDocument::ImageResource, QUrl(QString("icon:delivery") + mv.messageId()), logIconSend); } QString icon = useMessageIcons_? (QString("<img src=\"%1\" />").arg(mv.isLocal()? (mv.isAwaitingReceipt()?QString("icon:delivery") + mv.messageId():"icon:log_icon_send"):"icon:log_icon_receive")):""; if (mv.isEmote()) { appendText(icon + QString("<span style=\"color: %1\">").arg(color) + QString("[%1]").arg(timestr) + QString(" *%1 ").arg(TextUtil::escape(mv.nick())) + mv.formattedText() + "</span>"); } else { if (PsiOptions::instance()->getOption("options.ui.chat.use-chat-says-style").toBool()) { appendText(icon + QString("<span style=\"color: %1\">").arg(color) + QString("[%1] ").arg(timestr) + tr("%1 says:").arg(TextUtil::escape(mv.nick())) + "</span><br>" + mv.formattedText()); } else { appendText(icon + QString("<span style=\"color: %1\">").arg(color) + QString("[%1] <").arg(timestr) + TextUtil::escape(mv.nick()) + QString("></span> ") + mv.formattedText()); } } if (mv.isLocal()) { deferredScroll(); } }
void ChatView::renderMucMessage(const MessageView &mv) { const QString timestr = formatTimeStamp(mv.dateTime()); QString alerttagso, alerttagsc, nickcolor; QString textcolor = palette().color(QPalette::Active, QPalette::Text).name(); QString icon = useMessageIcons_? (QString("<img src=\"%1\" />").arg(mv.isLocal()?"icon:log_icon_delivered":"icon:log_icon_receive")):""; if(mv.isAlert()) { textcolor = "#FF0000"; alerttagso = "<b>"; alerttagsc = "</b>"; } if(mv.isSpooled()) { nickcolor = ColorOpt::instance()->color(infomrationalColorOpt).name(); } else { nickcolor = getMucNickColor(mv.nick(), mv.isLocal()); } if(mv.isEmote()) { appendText(icon + QString("<font color=\"%1\">").arg(nickcolor) + QString("[%1]").arg(timestr) + QString(" *%1 ").arg(TextUtil::escape(mv.nick())) + alerttagso + mv.formattedText() + alerttagsc + "</font>"); } else { if(PsiOptions::instance()->getOption("options.ui.chat.use-chat-says-style").toBool()) { appendText(icon + QString("<font color=\"%1\">").arg(nickcolor) + QString("[%1] ").arg(timestr) + QString("%1 says:").arg(TextUtil::escape(mv.nick())) + "</font><br>" + QString("<font color=\"%1\">").arg(textcolor) + alerttagso + mv.formattedText() + alerttagsc + "</font>"); } else { appendText(icon + QString("<font color=\"%1\">").arg(nickcolor) + QString("[%1] <").arg(timestr) + TextUtil::escape(mv.nick()) + QString("></font> ") + QString("<font color=\"%1\">").arg(textcolor) + alerttagso + mv.formattedText() + alerttagsc +"</font>"); } } if(mv.isLocal()) { scrollToBottom(); } }
void ChatView::renderMucSubject(const MessageView &mv) { QString timestr = formatTimeStamp(mv.dateTime()); QString ut = mv.formattedUserText(); QString color = ColorOpt::instance()->color(infomrationalColorOpt).name(); QString userTextColor = ColorOpt::instance()->color("options.ui.look.colors.messages.usertext").name(); appendText(QString(useMessageIcons_?"<img src=\"icon:log_icon_info\" />":"") + QString("<font color=\"%1\">[%2] *** ").arg(color, timestr) + mv.formattedText() + (ut.isEmpty()?"":":<br>") + "</font>" + (ut.isEmpty()?"":QString(" <span style=\"color:%1;font-weight:bold\">%2</span>").arg(userTextColor, ut))); }
/* * Función que implementa la lógica del callback. */ static int powerOnTime_proc_show(struct seq_file *m, void *v) { struct timespec time; struct formatedTime humanTime; getTimeStamp(&time); diff_between_timestamps(initialTime, &time); humanTime = formatTimeStamp(time); seq_printf(m, "powerOn time:\t%3d days, %2d hours, %2d minutes, %2d seconds\n", humanTime.days, humanTime.hours, humanTime.minutes, humanTime.seconds); return 0; }
queryList* FSqueryTool( queryList *listpointer ) { void getDirectoryPath( ) ; void attributeDATE( ) ; void attributeNAME( ) ; resultList* attributeID( query *, int ) ; char oneLine[BUFFER_SIZE] ; // one line from the an opened file char *word ; // a token during string tokenization int numClauses ; queryList *tempQueries ; // a pointer to the query list arguement resultList *tempResults ; getDirectoryPath( ) ; tempQueries = listpointer ; tempResults = NULL ; while( tempQueries != NULL ) { for( numClauses = 0 ; numClauses <= tempQueries -> oneQuery -> numClauses ; numClauses++ ) { if( strcmp( tempQueries -> oneQuery -> myClauses[numClauses].attribute, "ID" ) == 0 ) { if( numClauses == 0 ) tempResults = attributeID( tempQueries -> oneQuery, numClauses ) ; else { if( strcmp( tempQueries -> oneQuery -> myClauses[numClauses-1].conjecture, "AND" ) == 0 ) tempResults = andResult( tempResults, attributeID( tempQueries -> oneQuery, numClauses ) ) ; if( strcmp( tempQueries -> oneQuery -> myClauses[numClauses-1].conjecture, "OR" ) == 0 ) tempResults = orResult(tempResults, attributeID( tempQueries -> oneQuery, numClauses ) ) ; } } if( strcmp( tempQueries -> oneQuery -> myClauses[numClauses].attribute, "DATE" ) == 0 ) { char fileTime[22] = { '\0' } ; dateResults = NULL; formatTimeStamp( fileTime, tempQueries -> oneQuery -> myClauses[numClauses].value ) ; fileQueryTime = parsedate( fileTime, NULL) ; strcpy( operatorType, tempQueries -> oneQuery -> myClauses[numClauses].operator ) ; attributeDATE( ) ; if( numClauses == 0 ) tempResults = dateResults ; else { if( strcmp( tempQueries -> oneQuery -> myClauses[numClauses-1].conjecture, "AND" ) == 0 ) tempResults = andResult( tempResults, dateResults ) ; if( strcmp( tempQueries -> oneQuery -> myClauses[numClauses-1].conjecture, "OR" ) == 0 ) tempResults = orResult( tempResults, dateResults ) ; } } if( strcmp( tempQueries -> oneQuery -> myClauses[numClauses].attribute, "NAME" ) == 0 ) { nameResults = NULL; strcpy( operatorType, tempQueries -> oneQuery -> myClauses[numClauses].operator ) ; strcpy( queryName, tempQueries -> oneQuery -> myClauses[numClauses].value ) ; attributeNAME( ) ; if( numClauses == 0 ) tempResults = nameResults ; else { if( strcmp( tempQueries -> oneQuery -> myClauses[numClauses-1].conjecture, "AND" ) == 0 ) tempResults = andResult( tempResults, nameResults ) ; if( strcmp( tempQueries -> oneQuery -> myClauses[numClauses-1].conjecture, "OR" ) == 0 ) tempResults = orResult( tempResults, nameResults ) ; } } } while ( tempResults != NULL ) { tempQueries -> oneQuery -> results = addResultItem( tempQueries -> oneQuery -> results, tempResults -> oneResult ) ; tempQueries -> oneQuery -> numFound++ ; tempResults = ( resultList* ) tempResults -> link ; } tempQueries = ( queryList* ) tempQueries -> link ; } return listpointer ; }