MCPcopy Create free account
hub / github.com/OpenStarbound/OpenStarbound / QuestLogInterface

Method QuestLogInterface

source/frontend/StarQuestInterface.cpp:24–74  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

22namespace Star {
23
24QuestLogInterface::QuestLogInterface(QuestManagerPtr manager, PlayerPtr player, CinematicPtr cinematic, UniverseClientPtr client) {
25 m_manager = manager;
26 m_player = player;
27 m_cinematic = cinematic;
28 m_client = client;
29
30 auto assets = Root::singleton().assets();
31 auto config = assets->json("/interface/windowconfig/questlog.config");
32
33 m_trackLabel = config.getString("trackLabel");
34 m_untrackLabel = config.getString("untrackLabel");
35
36 GuiReader reader;
37
38 reader.registerCallback("close", [=](Widget*) { dismiss(); });
39 reader.registerCallback("btnToggleTracking",
40 [=](Widget*) {
41 toggleTracking();
42 });
43 reader.registerCallback("btnAbandon",
44 [=](Widget*) {
45 abandon();
46 });
47 reader.registerCallback("filter",
48 [=](Widget*) {
49 fetchData();
50 });
51
52 reader.construct(config.get("paneLayout"), this);
53
54 auto mainQuestList = fetchChild<ListWidget>("scrollArea.verticalLayout.mainQuestList");
55 auto sideQuestList = fetchChild<ListWidget>("scrollArea.verticalLayout.sideQuestList");
56 mainQuestList->setCallback([sideQuestList](Widget* widget) {
57 auto listWidget = as<ListWidget>(widget);
58 if (listWidget->selectedItem() != NPos)
59 sideQuestList->clearSelected();
60 });
61 sideQuestList->setCallback([mainQuestList](Widget* widget) {
62 auto listWidget = as<ListWidget>(widget);
63 if (listWidget->selectedItem() != NPos)
64 mainQuestList->clearSelected();
65 });
66 mainQuestList->disableScissoring();
67 sideQuestList->disableScissoring();
68
69 m_rewardItems = make_shared<ItemBag>(5);
70 fetchChild<ItemGridWidget>("rewardItems")->setItemBag(m_rewardItems);
71
72 m_refreshRate = 30;
73 m_refreshTimer = 0;
74}
75
76void QuestLogInterface::pollDialog(PaneManager* paneManager) {
77 if (paneManager->topPane({PaneLayer::ModalWindow}))

Callers

nothing calls this directly

Calls 12

singletonClass · 0.85
assetsMethod · 0.80
jsonMethod · 0.80
getStringMethod · 0.80
clearSelectedMethod · 0.80
disableScissoringMethod · 0.80
setItemBagMethod · 0.80
registerCallbackMethod · 0.45
constructMethod · 0.45
getMethod · 0.45
setCallbackMethod · 0.45
selectedItemMethod · 0.45

Tested by

no test coverage detected