本文整理汇总了C++中CKnownFile::GetFileComment方法的典型用法代码示例。如果您正苦于以下问题:C++ CKnownFile::GetFileComment方法的具体用法?C++ CKnownFile::GetFileComment怎么用?C++ CKnownFile::GetFileComment使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类CKnownFile
的用法示例。
在下文中一共展示了CKnownFile::GetFileComment方法的4个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C++代码示例。
示例1: OnSetActive
BOOL CCommentDialog::OnSetActive()
{
if (!CResizablePage::OnSetActive())
return FALSE;
if (m_bDataChanged)
{
bool bContainsSharedKnownFile = false;;
int iRating = -1;
m_bMergedComment = false;
CString strComment;
for (int i = 0; i < m_paFiles->GetSize(); i++)
{
if (!(*m_paFiles)[i]->IsKindOf(RUNTIME_CLASS(CKnownFile)))
continue;
CKnownFile* file = STATIC_DOWNCAST(CKnownFile, (*m_paFiles)[i]);
// we actually could show, add and even search for comments on kad for known but not shared files,
// but we don't publish coments entered by the user if the file is not shared (which might be changed at some point)
// so make sure we don't let him think he can comment and disable the dialog for such files
if (theApp.sharedfiles->GetFileByID(file->GetFileHash()) == NULL)
continue;
bContainsSharedKnownFile = true;
if (i == 0)
{
strComment = file->GetFileComment();
iRating = file->GetFileRating();
}
else
{
if (!m_bMergedComment && strComment.Compare(file->GetFileComment()) != 0)
{
strComment.Empty();
m_bMergedComment = true;
}
if (iRating != -1 && (UINT)iRating != file->GetFileRating())
iRating = -1;
}
}
m_bSelf = true;
SetDlgItemText(IDC_CMT_TEXT, strComment);
((CEdit*)GetDlgItem(IDC_CMT_TEXT))->SetLimitText(MAXFILECOMMENTLEN);
m_ratebox.SetCurSel(iRating);
m_bSelf = false;
EnableDialog(bContainsSharedKnownFile);
m_bDataChanged = false;
RefreshData();
}
return TRUE;
}
示例2: OnSetActive
BOOL CCommentDialog::OnSetActive()
{
if (!CResizablePage::OnSetActive())
return FALSE;
if (m_bDataChanged)
{
int iRating = -1;
m_bMergedComment = false;
CString strComment;
for (int i = 0; i < m_paFiles->GetSize(); i++)
{
CKnownFile* file = STATIC_DOWNCAST(CKnownFile, (*m_paFiles)[i]);
if (i == 0)
{
strComment = file->GetFileComment();
iRating = file->GetFileRating();
}
else
{
if (!m_bMergedComment && strComment.Compare(file->GetFileComment()) != 0)
{
strComment.Empty();
m_bMergedComment = true;
}
if (iRating != -1 && (UINT)iRating != file->GetFileRating())
iRating = -1;
}
}
m_bSelf = true;
SetDlgItemText(IDC_CMT_TEXT, strComment);
((CEdit*)GetDlgItem(IDC_CMT_TEXT))->SetLimitText(MAXFILECOMMENTLEN);
m_ratebox.SetCurSel(iRating);
m_bSelf = false;
m_bDataChanged = false;
RefreshData();
}
return TRUE;
}
示例3: OnDrawItem
void CSharedFilesCtrl::OnDrawItem( int item, wxDC* dc, const wxRect& rect, const wxRect& rectHL, bool highlighted )
{
CKnownFile *file = (CKnownFile*)GetItemData(item);
wxASSERT( file );
if ( highlighted ) {
CMuleColour newcol(GetFocus() ? wxSYS_COLOUR_HIGHLIGHT : wxSYS_COLOUR_BTNSHADOW);
dc->SetBackground(newcol.Blend(125).GetBrush());
dc->SetTextForeground( CMuleColour(wxSYS_COLOUR_HIGHLIGHTTEXT));
// The second blending goes over the first one.
dc->SetPen(newcol.Blend(65).GetPen());
} else {
dc->SetBackground( CMuleColour(wxSYS_COLOUR_LISTBOX).GetBrush() );
dc->SetTextForeground(CMuleColour(wxSYS_COLOUR_WINDOWTEXT));
dc->SetPen(*wxTRANSPARENT_PEN);
}
dc->SetBrush(dc->GetBackground());
dc->DrawRectangle(rectHL);
dc->SetPen(*wxTRANSPARENT_PEN);
// Offset based on the height of the fonts
const int textVOffset = ( rect.GetHeight() - dc->GetCharHeight() ) / 2;
// Empty space to each side of a column
const int SPARE_PIXELS_HORZ = 4;
// The leftmost position of the current column
int columnLeft = 0;
for ( int i = 0; i < GetColumnCount(); ++i ) {
const int columnWidth = GetColumnWidth(i);
if (columnWidth > 2*SPARE_PIXELS_HORZ) {
wxRect columnRect(
columnLeft + SPARE_PIXELS_HORZ, rect.y,
columnWidth - 2 * SPARE_PIXELS_HORZ, rect.height);
wxDCClipper clipper(*dc, columnRect);
wxString textBuffer;
switch ( i ) {
case ID_SHARED_COL_NAME:
textBuffer = file->GetFileName().GetPrintable();
if (file->GetFileRating() || file->GetFileComment().Length()) {
int image = Client_CommentOnly_Smiley;
if (file->GetFileRating()) {
image = Client_InvalidRating_Smiley + file->GetFileRating() - 1;
}
wxASSERT(image >= Client_InvalidRating_Smiley);
wxASSERT(image <= Client_CommentOnly_Smiley);
int imgWidth = 16;
theApp->amuledlg->m_imagelist.Draw(image, *dc, columnRect.x,
columnRect.y + 1, wxIMAGELIST_DRAW_TRANSPARENT);
// Move the text to the right
columnRect.x += (imgWidth + 4);
}
break;
case ID_SHARED_COL_SIZE:
textBuffer = CastItoXBytes(file->GetFileSize());
break;
case ID_SHARED_COL_TYPE:
textBuffer = GetFiletypeByName(file->GetFileName());
break;
case ID_SHARED_COL_PRIO:
textBuffer = PriorityToStr(file->GetUpPriority(), file->IsAutoUpPriority());
break;
case ID_SHARED_COL_ID:
textBuffer = file->GetFileHash().Encode();
break;
case ID_SHARED_COL_REQ:
textBuffer = CFormat(wxT("%u (%u)"))
% file->statistic.GetRequests()
% file->statistic.GetAllTimeRequests();
break;
case ID_SHARED_COL_AREQ:
textBuffer = CFormat(wxT("%u (%u)"))
% file->statistic.GetAccepts()
% file->statistic.GetAllTimeAccepts();
break;
case ID_SHARED_COL_TRA:
textBuffer = CastItoXBytes(file->statistic.GetTransferred())
+ wxT(" (") + CastItoXBytes(file->statistic.GetAllTimeTransferred()) + wxT(")");
break;
case ID_SHARED_COL_RTIO:
textBuffer = CFormat(wxT("%.2f")) % ((double)file->statistic.GetAllTimeTransferred() / file->GetFileSize());
break;
//.........这里部分代码省略.........
示例4: OnRightClick
void CSharedFilesCtrl::OnRightClick(wxListEvent& event)
{
long item_hit = CheckSelection(event);
if ( (m_menu == NULL) && (item_hit != -1)) {
m_menu = new wxMenu(_("Shared Files"));
wxMenu* prioMenu = new wxMenu();
prioMenu->AppendCheckItem(MP_PRIOVERYLOW, _("Very low"));
prioMenu->AppendCheckItem(MP_PRIOLOW, _("Low"));
prioMenu->AppendCheckItem(MP_PRIONORMAL, _("Normal"));
prioMenu->AppendCheckItem(MP_PRIOHIGH, _("High"));
prioMenu->AppendCheckItem(MP_PRIOVERYHIGH, _("Very High"));
prioMenu->AppendCheckItem(MP_POWERSHARE, _("Release"));
prioMenu->AppendCheckItem(MP_PRIOAUTO, _("Auto"));
m_menu->Append(0,_("Priority"),prioMenu);
m_menu->AppendSeparator();
CKnownFile* file = (CKnownFile*)GetItemData(item_hit);
if (file->GetFileComment().IsEmpty() && !file->GetFileRating()) {
m_menu->Append(MP_CMT, _("Add Comment/Rating"));
} else {
m_menu->Append(MP_CMT, _("Edit Comment/Rating"));
}
m_menu->AppendSeparator();
m_menu->Append(MP_RENAME, _("Rename"));
m_menu->AppendSeparator();
if (file->GetFileName().GetExt() == wxT("emulecollection")) {
m_menu->Append( MP_ADDCOLLECTION, _("Add files in collection to transfer list"));
m_menu->AppendSeparator();
}
m_menu->Append(MP_GETMAGNETLINK,_("Copy magnet &URI to clipboard"));
m_menu->Append(MP_GETED2KLINK,_("Copy eD2k &link to clipboard"));
m_menu->Append(MP_GETSOURCEED2KLINK,_("Copy eD2k link to clipboard (&Source)"));
m_menu->Append(MP_GETCRYPTSOURCEDED2KLINK,_("Copy eD2k link to clipboard (Source) (&With Crypt options)"));
m_menu->Append(MP_GETHOSTNAMESOURCEED2KLINK,_("Copy eD2k link to clipboard (&Hostname)"));
m_menu->Append(MP_GETHOSTNAMECRYPTSOURCEED2KLINK,_("Copy eD2k link to clipboard (Hostname) (With &Crypt options)"));
m_menu->Append(MP_GETAICHED2KLINK,_("Copy eD2k link to clipboard (&AICH info)"));
m_menu->Append(MP_WS,_("Copy feedback to clipboard"));
m_menu->Enable(MP_GETAICHED2KLINK, file->HasProperAICHHashSet());
m_menu->Enable(MP_GETHOSTNAMESOURCEED2KLINK, !thePrefs::GetYourHostname().IsEmpty());
m_menu->Enable(MP_GETHOSTNAMECRYPTSOURCEED2KLINK, !thePrefs::GetYourHostname().IsEmpty());
int priority = file->IsAutoUpPriority() ? PR_AUTO : file->GetUpPriority();
prioMenu->Check(MP_PRIOVERYLOW, priority == PR_VERYLOW);
prioMenu->Check(MP_PRIOLOW, priority == PR_LOW);
prioMenu->Check(MP_PRIONORMAL, priority == PR_NORMAL);
prioMenu->Check(MP_PRIOHIGH, priority == PR_HIGH);
prioMenu->Check(MP_PRIOVERYHIGH,priority == PR_VERYHIGH);
prioMenu->Check(MP_POWERSHARE, priority == PR_POWERSHARE);
prioMenu->Check(MP_PRIOAUTO, priority == PR_AUTO);
PopupMenu( m_menu, event.GetPoint() );
delete m_menu;
m_menu = NULL;
}
}