MCPcopy Create free account
hub / github.com/MultiMC/Launcher / setModDescription

Method setModDescription

launcher/ui/widgets/MCModInfoFrame.cpp:105–149  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

103}
104
105void MCModInfoFrame::setModDescription(QString text)
106{
107 if(text.isEmpty())
108 {
109 ui->label_ModDescription->setHidden(true);
110 updateHiddenState();
111 return;
112 }
113 else
114 {
115 ui->label_ModDescription->setHidden(false);
116 updateHiddenState();
117 }
118 ui->label_ModDescription->setToolTip("");
119 QString intermediatetext = text.trimmed();
120 bool prev(false);
121 QChar rem('\n');
122 QString finaltext;
123 finaltext.reserve(intermediatetext.size());
124 foreach(const QChar& c, intermediatetext)
125 {
126 if(c == rem && prev){
127 continue;
128 }
129 prev = c == rem;
130 finaltext += c;
131 }
132 QString labeltext;
133 labeltext.reserve(300);
134 if(finaltext.length() > 290)
135 {
136 ui->label_ModDescription->setOpenExternalLinks(false);
137 ui->label_ModDescription->setTextFormat(Qt::TextFormat::RichText);
138 desc = text;
139 // This allows injecting HTML here.
140 labeltext.append("<html><body>" + finaltext.left(287) + "<a href=\"#mod_desc\">...</a></body></html>");
141 QObject::connect(ui->label_ModDescription, &QLabel::linkActivated, this, &MCModInfoFrame::modDescEllipsisHandler);
142 }
143 else
144 {
145 ui->label_ModDescription->setTextFormat(Qt::TextFormat::PlainText);
146 labeltext.append(finaltext);
147 }
148 ui->label_ModDescription->setText(labeltext);
149}
150
151void MCModInfoFrame::modDescEllipsisHandler(const QString &link)
152{

Callers 2

metadataLoadedMethod · 0.80
packageCurrentMethod · 0.80

Calls 5

isEmptyMethod · 0.80
lengthMethod · 0.80
appendMethod · 0.80
sizeMethod · 0.45
setTextMethod · 0.45

Tested by

no test coverage detected