MCPcopy Create free account
hub / github.com/Adaptix-Framework/AdaptixC2 / SetApplicationTheme

Method SetApplicationTheme

AdaptixClient/Source/MainAdaptix.cpp:198–239  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

196}
197
198void MainAdaptix::SetApplicationTheme() const
199{
200 static bool kddwInitialized = false;
201 if (!kddwInitialized) {
202 KDDockWidgets::initFrontend(KDDockWidgets::FrontendType::QtWidgets);
203 KDDockWidgets::Config::self().setSeparatorThickness(5);
204
205 auto flags = KDDockWidgets::Config::self().flags();
206 flags |= KDDockWidgets::Config::Flag_HideTitleBarWhenTabsVisible;
207 flags |= KDDockWidgets::Config::Flag_TabsHaveCloseButton;
208 flags |= KDDockWidgets::Config::Flag_ShowButtonsOnTabBarIfTitleBarHidden;
209 flags |= KDDockWidgets::Config::Flag_AllowSwitchingTabsViaMenu;
210 flags |= KDDockWidgets::Config::Flag_AllowReorderTabs;
211 flags |= KDDockWidgets::Config::Flag_DoubleClickMaximizes;
212 KDDockWidgets::Config::self().setFlags(flags);
213 kddwInitialized = true;
214 }
215
216 QGuiApplication::setWindowIcon( QIcon( ":/LogoLin" ) );
217
218 FontManager::instance().initialize();
219
220 auto* style = new oclero::qlementine::QlementineStyle(qApp);
221 QString userPath = QDir(QDir::homePath()).filePath(".adaptix/themes/app/" + settings->data.MainTheme + ".json");
222 QString themePath = QFile::exists(userPath) ? userPath : QString(":/qlementine-themes/%1").arg(settings->data.MainTheme);
223 style->setThemeJsonPath(themePath);
224 const_cast<MainAdaptix*>(this)->qlementineStyle = style;
225
226 ApplyApplicationFont();
227
228 QApplication::setStyle(style);
229
230 QString additionalStyles = R"(
231 QMenu::separator {
232 height: 1px;
233 background-color: #3A3A3A;
234 margin: 4px 8px;
235 }
236 )";
237 QApplication *app = qobject_cast<QApplication*>(QCoreApplication::instance());
238 app->setStyleSheet(additionalStyles);
239}
240
241void MainAdaptix::ApplyApplicationFont() const
242{

Callers 1

MainAdaptixMethod · 0.95

Calls 7

setWindowIconFunction · 0.85
setSeparatorThicknessMethod · 0.80
setFlagsMethod · 0.80
setThemeJsonPathMethod · 0.80
QStringClass · 0.50
flagsMethod · 0.45
initializeMethod · 0.45

Tested by

no test coverage detected