X-Git-Url: https://de.git.xonotic.org/?a=blobdiff_plain;ds=sidebyside;f=qcsrc%2Fmenu%2Fxonotic%2Fdialog_settings_game.qc;h=b617d4915d4925787c06450c55c343deaade6567;hb=HEAD;hp=87134cb7812c15635247ec2799c21abf88c8a27e;hpb=1b0decb9afb829407eae763b3053a122e2ae3de6;p=xonotic%2Fxonotic-data.pk3dir.git diff --git a/qcsrc/menu/xonotic/dialog_settings_game.qc b/qcsrc/menu/xonotic/dialog_settings_game.qc index 87134cb78..b617d4915 100644 --- a/qcsrc/menu/xonotic/dialog_settings_game.qc +++ b/qcsrc/menu/xonotic/dialog_settings_game.qc @@ -4,19 +4,19 @@ METHOD(SettingSource, getEntry, entity(entity this, int i, void(string name, string icon) returns)) { - Lazy l = Settings_from(i); + Lazy l = REGISTRY_GET(Settings, i); entity it = l.m_get(); if (returns) returns(it.title, string_null); return it; } METHOD(SettingSource, getEntryTooltip, entity(entity this, int i, void(string theTooltip) returns)) { - Lazy l = Settings_from(i); + Lazy l = REGISTRY_GET(Settings, i); entity it = l.m_get(); if (returns) returns(it.titleTooltip); return it; } -METHOD(SettingSource, reload, int(entity this, string filter)) { return Settings_COUNT; } +METHOD(SettingSource, reload, int(entity this, string filter)) { return REGISTRY_COUNT(Settings); } string XonoticRegisteredSettingsList_cb_name; string XonoticRegisteredSettingsList_cb_tooltip; @@ -94,9 +94,15 @@ CONSTRUCTOR(XonoticRegisteredSettingsList, DataSource _source) { METHOD(XonoticGameSettingsTab, topicChangeNotify, void(entity, entity this)) { - entity s = this.currentPanel; - s.viewportHeight = 15.5; - entity c = s.currentPanel; + entity s = NULL; + entity c = this.currentPanel; + if (c.classname == "XonoticScrollPanel") + { + s = this.currentPanel; + s.viewportHeight = 15.5; + c = s.currentPanel; + } + entity removing = this.currentItem; DataSource data = this.topicList.source; entity adding = data.getEntry(data, this.topicList.selectedItem, func_null); @@ -109,7 +115,8 @@ METHOD(XonoticGameSettingsTab, topicChangeNotify, void(entity, entity this)) this.currentItem = adding; adding.resizeNotify(adding, '0 0 0', c.size, '0 0 0', c.size); c.addItem(c, adding, '0 0 0', '1 1 0', 1); - s.resizeNotify(s, '0 0 0', s.size, '0 0 0', s.size); + if (s) + s.resizeNotify(s, '0 0 0', s.size, '0 0 0', s.size); } } METHOD(XonoticGameSettingsTab, fill, void(entity this))