From: Samual Lenks Date: Sun, 15 Sep 2013 02:38:46 +0000 (-0400) Subject: Merge remote-tracking branch 'origin/samual/menu_requires_connection' X-Git-Tag: xonotic-v0.8.0~331 X-Git-Url: http://de.git.xonotic.org/?p=xonotic%2Fxonotic-data.pk3dir.git;a=commitdiff_plain;h=e2d636eb8c05657a447aaec494ae580d1c31a4ba;hp=1c3d7f32e19b781dd1485c29fc347d904b4b502a Merge remote-tracking branch 'origin/samual/menu_requires_connection' * origin/samual/menu_requires_connection: Add requiresConnection flag to HUD panel dialogs and sandbox dialog Implement a "requiresConnect" attribute for menu dialogs --- diff --git a/qcsrc/menu/item/dialog.c b/qcsrc/menu/item/dialog.c index ed73be095..5fa010353 100644 --- a/qcsrc/menu/item/dialog.c +++ b/qcsrc/menu/item/dialog.c @@ -58,6 +58,8 @@ CLASS(Dialog) EXTENDS(InputContainer) ATTRIB(Dialog, zoomedOutTitleBarPosition, float, 0) ATTRIB(Dialog, zoomedOutTitleBar, float, 0) + ATTRIB(Dialog, requiresConnection, float, 0) // set to TRUE if the dialog requires a connection to be opened + ATTRIB(Dialog, backgroundImage, string, string_null) ATTRIB(Dialog, borderLines, float, 1) ATTRIB(Dialog, closeButtonImage, string, string_null) diff --git a/qcsrc/menu/menu.qc b/qcsrc/menu/menu.qc index 7339e6969..1afc9f85d 100644 --- a/qcsrc/menu/menu.qc +++ b/qcsrc/menu/menu.qc @@ -991,7 +991,8 @@ void m_goto(string itemname) for(e = NULL; (e = find(e, name, itemname)); ) if(e.classname != "vtbl") break; - if(e) + + if((e) && (!e.requiresConnection || (gamestatus & (GAME_ISSERVER | GAME_CONNECTED)))) { m_hide(); m_activate_window(e); diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_ammo.c b/qcsrc/menu/xonotic/dialog_hudpanel_ammo.c index 072576964..3c89d0a03 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_ammo.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_ammo.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDAmmoDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDAmmoDialog, rows, float, 15) ATTRIB(XonoticHUDAmmoDialog, columns, float, 4) ATTRIB(XonoticHUDAmmoDialog, name, string, "HUDammo") + ATTRIB(XonoticHUDAmmoDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDAmmoDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c b/qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c index 9628783b1..c4eea2eea 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_centerprint.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDCenterprintDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDCenterprintDialog, rows, float, 15) ATTRIB(XonoticHUDCenterprintDialog, columns, float, 4) ATTRIB(XonoticHUDCenterprintDialog, name, string, "HUDcenterprint") + ATTRIB(XonoticHUDCenterprintDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDCenterprintDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_chat.c b/qcsrc/menu/xonotic/dialog_hudpanel_chat.c index ba3f0d009..eb6ced2c4 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_chat.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_chat.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDChatDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDChatDialog, rows, float, 15) ATTRIB(XonoticHUDChatDialog, columns, float, 4) ATTRIB(XonoticHUDChatDialog, name, string, "HUDchat") + ATTRIB(XonoticHUDChatDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDChatDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_engineinfo.c b/qcsrc/menu/xonotic/dialog_hudpanel_engineinfo.c index b3cc7b423..bbc3f8cf3 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_engineinfo.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_engineinfo.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDEngineInfoDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDEngineInfoDialog, rows, float, 15) ATTRIB(XonoticHUDEngineInfoDialog, columns, float, 4) ATTRIB(XonoticHUDEngineInfoDialog, name, string, "HUDengineinfo") + ATTRIB(XonoticHUDEngineInfoDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDEngineInfoDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c b/qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c index 5eaf1d940..976139c8e 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_healtharmor.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDHealthArmorDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDHealthArmorDialog, rows, float, 15) ATTRIB(XonoticHUDHealthArmorDialog, columns, float, 4) ATTRIB(XonoticHUDHealthArmorDialog, name, string, "HUDhealtharmor") + ATTRIB(XonoticHUDHealthArmorDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDHealthArmorDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_infomessages.c b/qcsrc/menu/xonotic/dialog_hudpanel_infomessages.c index da63a1e16..5bd8846c5 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_infomessages.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_infomessages.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDInfoMessagesDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDInfoMessagesDialog, rows, float, 15) ATTRIB(XonoticHUDInfoMessagesDialog, columns, float, 4) ATTRIB(XonoticHUDInfoMessagesDialog, name, string, "HUDinfomessages") + ATTRIB(XonoticHUDInfoMessagesDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDInfoMessagesDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_modicons.c b/qcsrc/menu/xonotic/dialog_hudpanel_modicons.c index fd5d233dc..4c9e64c2a 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_modicons.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_modicons.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDModIconsDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDModIconsDialog, rows, float, 15) ATTRIB(XonoticHUDModIconsDialog, columns, float, 4) ATTRIB(XonoticHUDModIconsDialog, name, string, "HUDmodicons") + ATTRIB(XonoticHUDModIconsDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDModIconsDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_notification.c b/qcsrc/menu/xonotic/dialog_hudpanel_notification.c index 936a0fcb5..1239bd316 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_notification.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_notification.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDNotificationDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDNotificationDialog, rows, float, 15) ATTRIB(XonoticHUDNotificationDialog, columns, float, 4) ATTRIB(XonoticHUDNotificationDialog, name, string, "HUDnotify") + ATTRIB(XonoticHUDNotificationDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDNotificationDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_physics.c b/qcsrc/menu/xonotic/dialog_hudpanel_physics.c index aeedc492d..0144d6649 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_physics.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_physics.c @@ -8,6 +8,7 @@ CLASS(XonoticHUDPhysicsDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDPhysicsDialog, columns, float, 4) ATTRIB(XonoticHUDPhysicsDialog, name, string, "HUDphysics") ATTRIB(XonoticHUDPhysicsDialog, sliderTopspeedTime, entity, NULL) + ATTRIB(XonoticHUDPhysicsDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDPhysicsDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_powerups.c b/qcsrc/menu/xonotic/dialog_hudpanel_powerups.c index abab5d1f0..17bfe04aa 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_powerups.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_powerups.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDPowerupsDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDPowerupsDialog, rows, float, 15) ATTRIB(XonoticHUDPowerupsDialog, columns, float, 4) ATTRIB(XonoticHUDPowerupsDialog, name, string, "HUDpowerups") + ATTRIB(XonoticHUDPowerupsDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDPowerupsDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c b/qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c index b01ec1c98..2e301cc37 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_pressedkeys.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDPressedKeysDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDPressedKeysDialog, rows, float, 15) ATTRIB(XonoticHUDPressedKeysDialog, columns, float, 4) ATTRIB(XonoticHUDPressedKeysDialog, name, string, "HUDpressedkeys") + ATTRIB(XonoticHUDPressedKeysDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDPressedKeysDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_racetimer.c b/qcsrc/menu/xonotic/dialog_hudpanel_racetimer.c index 015979b21..6b2badf1c 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_racetimer.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_racetimer.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDRaceTimerDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDRaceTimerDialog, rows, float, 15) ATTRIB(XonoticHUDRaceTimerDialog, columns, float, 4) ATTRIB(XonoticHUDRaceTimerDialog, name, string, "HUDracetimer") + ATTRIB(XonoticHUDRaceTimerDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDRaceTimerDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_radar.c b/qcsrc/menu/xonotic/dialog_hudpanel_radar.c index 3e72acc8b..6ad57fa13 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_radar.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_radar.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDRadarDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDRadarDialog, rows, float, 15) ATTRIB(XonoticHUDRadarDialog, columns, float, 4) ATTRIB(XonoticHUDRadarDialog, name, string, "HUDradar") + ATTRIB(XonoticHUDRadarDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDRadarDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_score.c b/qcsrc/menu/xonotic/dialog_hudpanel_score.c index 778172aa1..676830f80 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_score.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_score.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDScoreDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDScoreDialog, rows, float, 15) ATTRIB(XonoticHUDScoreDialog, columns, float, 4) ATTRIB(XonoticHUDScoreDialog, name, string, "HUDscore") + ATTRIB(XonoticHUDScoreDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDScoreDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_timer.c b/qcsrc/menu/xonotic/dialog_hudpanel_timer.c index c1e9626dd..2624a7ecd 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_timer.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_timer.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDTimerDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDTimerDialog, rows, float, 15) ATTRIB(XonoticHUDTimerDialog, columns, float, 4) ATTRIB(XonoticHUDTimerDialog, name, string, "HUDtimer") + ATTRIB(XonoticHUDTimerDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDTimerDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_vote.c b/qcsrc/menu/xonotic/dialog_hudpanel_vote.c index 0b2c0ac07..4e4931e15 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_vote.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_vote.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDVoteDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDVoteDialog, rows, float, 15) ATTRIB(XonoticHUDVoteDialog, columns, float, 4) ATTRIB(XonoticHUDVoteDialog, name, string, "HUDvote") + ATTRIB(XonoticHUDVoteDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDVoteDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudpanel_weapons.c b/qcsrc/menu/xonotic/dialog_hudpanel_weapons.c index e3cd78eb6..07026be69 100644 --- a/qcsrc/menu/xonotic/dialog_hudpanel_weapons.c +++ b/qcsrc/menu/xonotic/dialog_hudpanel_weapons.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDWeaponsDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDWeaponsDialog, rows, float, 18) ATTRIB(XonoticHUDWeaponsDialog, columns, float, 4) ATTRIB(XonoticHUDWeaponsDialog, name, string, "HUDweapons") + ATTRIB(XonoticHUDWeaponsDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDWeaponsDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_hudsetup_exit.c b/qcsrc/menu/xonotic/dialog_hudsetup_exit.c index 0fde6e0bd..25eddc8a1 100644 --- a/qcsrc/menu/xonotic/dialog_hudsetup_exit.c +++ b/qcsrc/menu/xonotic/dialog_hudsetup_exit.c @@ -7,6 +7,7 @@ CLASS(XonoticHUDExitDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticHUDExitDialog, rows, float, 18) ATTRIB(XonoticHUDExitDialog, columns, float, 4) ATTRIB(XonoticHUDExitDialog, name, string, "HUDExit") + ATTRIB(XonoticHUDExitDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticHUDExitDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_sandboxtools.c b/qcsrc/menu/xonotic/dialog_sandboxtools.c index 9e8cb5fae..033336dc9 100644 --- a/qcsrc/menu/xonotic/dialog_sandboxtools.c +++ b/qcsrc/menu/xonotic/dialog_sandboxtools.c @@ -7,6 +7,7 @@ CLASS(XonoticSandboxToolsDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticSandboxToolsDialog, rows, float, 16) ATTRIB(XonoticSandboxToolsDialog, columns, float, 4) ATTRIB(XonoticSandboxToolsDialog, name, string, "SandboxTools") + ATTRIB(XonoticSandboxToolsDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticSandboxToolsDialog) #endif diff --git a/qcsrc/menu/xonotic/dialog_teamselect.c b/qcsrc/menu/xonotic/dialog_teamselect.c index 7fb154c8a..10efc3c25 100644 --- a/qcsrc/menu/xonotic/dialog_teamselect.c +++ b/qcsrc/menu/xonotic/dialog_teamselect.c @@ -12,6 +12,7 @@ CLASS(XonoticTeamSelectDialog) EXTENDS(XonoticRootDialog) ATTRIB(XonoticTeamSelectDialog, team2, entity, NULL) ATTRIB(XonoticTeamSelectDialog, team3, entity, NULL) ATTRIB(XonoticTeamSelectDialog, team4, entity, NULL) + ATTRIB(XonoticTeamSelectDialog, requiresConnection, float, TRUE) ENDCLASS(XonoticTeamSelectDialog) #endif