From: Jaka K. <lyn...@us...> - 2011-03-29 21:59:52
|
gemrb: Infinity Engine emulator The branch master has been updated via 2e4d2b4edff9578c1be3fbd8c7188ea1459b9783 (commit) via 7a4a1d6f99d3ffa3e9c45b943acdea2ce2120cc3 (commit) via 709f75df74fa671ce2d75d5937ee656cb6af1f4d (commit) via 04ac43449907f15d8d8099124acc01b1a1936aed (commit) via 098ef5b5d6576f8e95fb7db831714894449bb219 (commit) Summary of changes: gemrb/GUIScripts/{bg2 => }/GUISAVE.py | 81 ++++++---- gemrb/GUIScripts/bg1/GUISAVE.py | 279 --------------------------------- gemrb/GUIScripts/iwd/GUISAVE.py | 279 --------------------------------- gemrb/GUIScripts/iwd2/GUISAVE.py | 279 --------------------------------- gemrb/GUIScripts/pst/GUISAVE.py | 4 +- 5 files changed, 53 insertions(+), 869 deletions(-) rename gemrb/GUIScripts/{bg2 => }/GUISAVE.py (78%) delete mode 100644 gemrb/GUIScripts/bg1/GUISAVE.py delete mode 100644 gemrb/GUIScripts/iwd/GUISAVE.py delete mode 100644 gemrb/GUIScripts/iwd2/GUISAVE.py from d1675754e361cef6e2be1aea0cfb0162be23e9e0 (commit) Those revisions listed above that are new to this repository have not appeared on any other notification email; so we list those revisions in full, below. - Log ----------------------------------------------------------------- http://gemrb.git.sourceforge.net/git/gitweb.cgi?p=gemrb/gemrb;a=commitdiff;h=2e4d2b4edff9578c1be3fbd8c7188ea1459b9783 commit 2e4d2b4edff9578c1be3fbd8c7188ea1459b9783 Author: Jaka Kranjc <lyn...@us...> Date: Tue Mar 29 23:58:36 2011 +0200 iwd2: merged GUISAVE into the main one diff --git a/gemrb/GUIScripts/GUISAVE.py b/gemrb/GUIScripts/GUISAVE.py index 27dc1f0..ddb9613 100644 --- a/gemrb/GUIScripts/GUISAVE.py +++ b/gemrb/GUIScripts/GUISAVE.py @@ -34,10 +34,15 @@ SaveButton = 0 TextAreaControl = 0 Games = () ScrollBar = 0 +# this lookup table is used only by bg2 str_chapter = (48007, 48006, 16205, 16206, 16207, 16208, 16209, 71020, 71021, 71022) +num_rows = 4 +ctrl_offset = (26, 30, 40, 0x10000008, 0x10000010) +sav_version = 0 def OpenSaveWindow (): global SaveWindow, TextAreaControl, Games, ScrollBar + global num_rows, ctrl_offset, sav_version if GUICommon.CloseOtherWindow (OpenSaveWindow): CloseSaveWindow () @@ -46,23 +51,32 @@ def OpenSaveWindow (): GemRB.HideGUI () GUICommon.GameWindow.SetVisible(WINDOW_INVISIBLE) - GemRB.LoadWindowPack ("GUISAVE", 640, 480) + if GUICommon.GameIsIWD2(): + GemRB.LoadWindowPack ("GUISAVE", 800, 600) + num_rows = 5 + ctrl_offset = (55, 60, 25, 0x10000005, 0x1000000a) + sav_version = 22 + else: + GemRB.LoadWindowPack ("GUISAVE", 640, 480) Window = SaveWindow = GemRB.LoadWindow (0) Window.SetFrame () - CancelButton=Window.GetControl (34) + if GUICommon.GameIsIWD2(): + CancelButton=Window.GetControl (22) + else: + CancelButton=Window.GetControl (34) CancelButton.SetText (13727) CancelButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, OpenSaveWindow) CancelButton.SetFlags (IE_GUI_BUTTON_CANCEL, OP_OR) GemRB.SetVar ("LoadIdx",0) - for i in range(4): - Button = Window.GetControl (26+i) + for i in range(num_rows): + Button = Window.GetControl (ctrl_offset[0]+i) Button.SetText (15588) Button.SetEvent (IE_GUI_BUTTON_ON_PRESS, SavePress) Button.SetState (IE_GUI_BUTTON_DISABLED) Button.SetVarAssoc ("LoadIdx",i) - Button = Window.GetControl (30+i) + Button = Window.GetControl (ctrl_offset[1]+i) Button.SetText (13957) Button.SetEvent (IE_GUI_BUTTON_ON_PRESS, DeleteGamePress) Button.SetState (IE_GUI_BUTTON_DISABLED) @@ -75,14 +89,17 @@ def OpenSaveWindow (): #PC portraits for j in range(PARTY_SIZE): - Button = Window.GetControl (40+i*PARTY_SIZE+j) + Button = Window.GetControl (ctrl_offset[2]+i*PARTY_SIZE+j) Button.SetState (IE_GUI_BUTTON_LOCKED) Button.SetFlags(IE_GUI_BUTTON_NO_IMAGE|IE_GUI_BUTTON_PICTURE,OP_SET) - ScrollBar=Window.GetControl (25) + if GUICommon.GameIsIWD2(): + ScrollBar=Window.GetControl (23) + else: + ScrollBar=Window.GetControl (25) ScrollBar.SetEvent (IE_GUI_SCROLLBAR_ON_CHANGE, ScrollBarPress) Games=GemRB.GetSaveGames () - TopIndex = max (0, len(Games) - 4 + 1) #one more for the 'new game' + TopIndex = max (0, len(Games) - num_rows + 1) #one more for the 'new game' GemRB.SetVar ("TopIndex",TopIndex) ScrollBar.SetVarAssoc ("TopIndex", TopIndex+1) ScrollBar.SetDefaultScrollBar () @@ -95,11 +112,11 @@ def ScrollBarPress(): #draw load game portraits Pos = GemRB.GetVar ("TopIndex") - for i in range(4): + for i in range(num_rows): ActPos = Pos + i - Button1 = Window.GetControl (26+i) - Button2 = Window.GetControl (30+i) + Button1 = Window.GetControl (ctrl_offset[0]+i) + Button2 = Window.GetControl (ctrl_offset[1]+i) if ActPos<=len(Games): Button1.SetState (IE_GUI_BUTTON_ENABLED) else: @@ -115,14 +132,14 @@ def ScrollBarPress(): Slotname = "" Button2.SetState (IE_GUI_BUTTON_DISABLED) - Label = Window.GetControl (0x10000008+i) + Label = Window.GetControl (ctrl_offset[3]+i) Label.SetText (Slotname) if ActPos<len(Games): Slotname = Games[ActPos].GetGameDate() else: Slotname = "" - Label = Window.GetControl (0x10000010+i) + Label = Window.GetControl (ctrl_offset[4]+i) Label.SetText (Slotname) Button=Window.GetControl (1+i) @@ -131,7 +148,7 @@ def ScrollBarPress(): else: Button.SetPicture("") for j in range(PARTY_SIZE): - Button=Window.GetControl (40+i*PARTY_SIZE+j) + Button=Window.GetControl (ctrl_offset[2]+i*PARTY_SIZE+j) if ActPos<len(Games): Button.SetSprite2D(Games[ActPos].GetPortrait(j)) else: @@ -152,9 +169,9 @@ def ConfirmedSaveGame(): Slotname = Label.QueryText () LoadScreen.StartLoadScreen() if Pos < len(Games): - GemRB.SaveGame(Games[Pos], Slotname) + GemRB.SaveGame(Games[Pos], Slotname, sav_version) else: - GemRB.SaveGame(None, Slotname) + GemRB.SaveGame(None, Slotname, sav_version) if ConfirmWindow: ConfirmWindow.Unload () OpenSaveWindow() # close window @@ -190,20 +207,21 @@ def SavePress(): Label.SetText (Slotname) #areapreview - Button=ConfirmWindow.GetControl (0) - if Pos<len(Games): - Button.SetSprite2D(Games[Pos].GetPreview()) - else: - Button.SetPicture("") - - #portraits - for j in range(PARTY_SIZE): - Button=ConfirmWindow.GetControl (40+j) + if not GUICommon.GameIsIWD2(): + Button=ConfirmWindow.GetControl (0) if Pos<len(Games): - Button.SetSprite2D(Games[Pos].GetPortrait(j)) + Button.SetSprite2D(Games[Pos].GetPreview()) else: Button.SetPicture("") + #portraits + for j in range(PARTY_SIZE): + Button=ConfirmWindow.GetControl (40+j) + if Pos<len(Games): + Button.SetSprite2D(Games[Pos].GetPortrait(j)) + else: + Button.SetPicture("") + #save SaveButton=ConfirmWindow.GetControl (7) SaveButton.SetText (save_strref) diff --git a/gemrb/GUIScripts/iwd2/GUISAVE.py b/gemrb/GUIScripts/iwd2/GUISAVE.py deleted file mode 100644 index d195089..0000000 --- a/gemrb/GUIScripts/iwd2/GUISAVE.py +++ /dev/null @@ -1,279 +0,0 @@ -# -*-python-*- -# GemRB - Infinity Engine Emulator -# Copyright (C) 2003 The GemRB Project -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# - - -# GUISAVE.py - Save window - -################################################### - -import GemRB -import GUICommon -import LoadScreen -from GUIDefines import * - -SaveWindow = 0 -ConfirmWindow = 0 -NameField = 0 -SaveButton = 0 -TextAreaControl = 0 -Games = () -ScrollBar = 0 - -def OpenSaveWindow (): - global SaveWindow, TextAreaControl, Games, ScrollBar - - if GUICommon.CloseOtherWindow (OpenSaveWindow): - CloseSaveWindow () - return - - GemRB.HideGUI () - GUICommon.GameWindow.SetVisible(WINDOW_INVISIBLE) - - GemRB.LoadWindowPack ("GUISAVE", 800, 600) - Window = SaveWindow = GemRB.LoadWindow (0) - Window.SetFrame () - CancelButton=Window.GetControl (22) - CancelButton.SetText (13727) - CancelButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, OpenSaveWindow) - CancelButton.SetFlags (IE_GUI_BUTTON_CANCEL, OP_OR) - GemRB.SetVar ("LoadIdx",0) - - for i in range(5): - Button = Window.GetControl (55+i) - Button.SetText (15588) - Button.SetEvent (IE_GUI_BUTTON_ON_PRESS, SavePress) - Button.SetState (IE_GUI_BUTTON_DISABLED) - Button.SetVarAssoc ("LoadIdx",i) - - Button = Window.GetControl (60+i) - Button.SetText (13957) - Button.SetEvent (IE_GUI_BUTTON_ON_PRESS, DeleteGamePress) - Button.SetState (IE_GUI_BUTTON_DISABLED) - Button.SetVarAssoc ("LoadIdx",i) - - #area previews - Button = Window.GetControl (1+i) - Button.SetState (IE_GUI_BUTTON_LOCKED) - Button.SetFlags(IE_GUI_BUTTON_NO_IMAGE|IE_GUI_BUTTON_PICTURE,OP_SET) - - #PC portraits - for j in range(PARTY_SIZE): - Button = Window.GetControl (25+i*PARTY_SIZE+j) - Button.SetState (IE_GUI_BUTTON_LOCKED) - Button.SetFlags(IE_GUI_BUTTON_NO_IMAGE|IE_GUI_BUTTON_PICTURE,OP_SET) - - ScrollBar=Window.GetControl (23) - ScrollBar.SetEvent (IE_GUI_SCROLLBAR_ON_CHANGE, ScrollBarPress) - Games=GemRB.GetSaveGames () - TopIndex = max (0, len(Games) - 5 + 1) #one more for the 'new game' - GemRB.SetVar ("TopIndex",TopIndex) - ScrollBar.SetVarAssoc ("TopIndex", TopIndex+1) - ScrollBar.SetDefaultScrollBar () - ScrollBarPress () - Window.SetVisible (WINDOW_VISIBLE) - return - -def ScrollBarPress(): - Window = SaveWindow - - #draw load game portraits - Pos = GemRB.GetVar ("TopIndex") - for i in range(5): - ActPos = Pos + i - - Button1 = Window.GetControl (55+i) - Button2 = Window.GetControl (60+i) - if ActPos<=len(Games): - Button1.SetState (IE_GUI_BUTTON_ENABLED) - else: - Button1.SetState (IE_GUI_BUTTON_DISABLED) - - if ActPos<len(Games): - Slotname = Games[ActPos].GetName() - Button2.SetState (IE_GUI_BUTTON_ENABLED) - elif ActPos == len(Games): - Slotname = 15304 - Button2.SetState (IE_GUI_BUTTON_DISABLED) - else: - Slotname = "" - Button2.SetState (IE_GUI_BUTTON_DISABLED) - - Label = Window.GetControl (0x10000005+i) - Label.SetText (Slotname) - - if ActPos<len(Games): - Slotname = Games[ActPos].GetGameDate() - else: - Slotname = "" - Label = Window.GetControl (0x1000000a+i) - Label.SetText (Slotname) - - Button=Window.GetControl (1+i) - if ActPos<len(Games): - Button.SetSprite2D(Games[ActPos].GetPreview()) - else: - Button.SetPicture("") - for j in range(PARTY_SIZE): - Button=Window.GetControl (25+i*PARTY_SIZE+j) - if ActPos<len(Games): - Button.SetSprite2D(Games[ActPos].GetPortrait(j)) - else: - Button.SetPicture("") - return - -def AbortedSaveGame(): - if ConfirmWindow: - ConfirmWindow.Unload () - SaveWindow.SetVisible (WINDOW_VISIBLE) - return - -def ConfirmedSaveGame(): - global ConfirmWindow - - Pos = GemRB.GetVar ("TopIndex")+GemRB.GetVar ("LoadIdx") - Label = ConfirmWindow.GetControl (3) - Slotname = Label.QueryText () - LoadScreen.StartLoadScreen() - if Pos < len(Games): - GemRB.SaveGame(Games[Pos], Slotname, 22) #saves a game with version 2.2 - else: - GemRB.SaveGame(None, Slotname, 22) #saves a game with version 2.2 - if ConfirmWindow: - ConfirmWindow.Unload () - OpenSaveWindow() # close window - return - -def SavePress(): - global ConfirmWindow, NameField, SaveButton - - Pos = GemRB.GetVar ("TopIndex")+GemRB.GetVar ("LoadIdx") - ConfirmWindow = GemRB.LoadWindow (1) - - #slot name - if Pos<len(Games): - Slotname = Games[Pos].GetName() - save_strref = 15306 - else: - Slotname = "" - save_strref = 15588 - NameField = ConfirmWindow.GetControl (3) - NameField.SetText (Slotname) - NameField.SetEvent (IE_GUI_EDIT_ON_CHANGE, EditChange) - - #game hours (should be generated from game) - if Pos<len(Games): - Slotname = Games[Pos].GetGameDate() - else: - Slotname = "" - Label = ConfirmWindow.GetControl (0x10000004) - Label.SetText (Slotname) - - #areapreview - #Button=ConfirmWindow.GetControl (0) - #if Pos<len(Games): - # Button.SetSprite2D(Games[Pos].GetPreview()) - #else: - # Button.SetPicture("") - - #portraits - #for j in range(PARTY_SIZE): - # Button=ConfirmWindow.GetControl (25+j) - # if Pos<len(Games): - # Button.SetSprite2D(Games[ActPos].GetPortrait(j)) - # else: - # Button.SetPicture("") - - #save - SaveButton=ConfirmWindow.GetControl (7) - SaveButton.SetText (save_strref) - SaveButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, ConfirmedSaveGame) - SaveButton.SetFlags (IE_GUI_BUTTON_DEFAULT, OP_OR) - #SaveButton.SetState (IE_GUI_BUTTON_DISABLED) - if Slotname == "": - SaveButton.SetState (IE_GUI_BUTTON_DISABLED) - - #cancel - CancelButton=ConfirmWindow.GetControl (8) - CancelButton.SetText (13727) - CancelButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, AbortedSaveGame) - CancelButton.SetFlags (IE_GUI_BUTTON_CANCEL, OP_OR) - - ConfirmWindow.SetVisible (WINDOW_VISIBLE) - NameField.SetStatus (IE_GUI_CONTROL_FOCUSED) - return - -def EditChange(): - Name = NameField.QueryText () - if len(Name)==0: - SaveButton.SetState (IE_GUI_BUTTON_DISABLED) - else: - SaveButton.SetState (IE_GUI_BUTTON_ENABLED) - return - -def DeleteGameConfirm(): - global Games - - TopIndex = GemRB.GetVar ("TopIndex") - Pos = TopIndex +GemRB.GetVar ("LoadIdx") - GemRB.DeleteSaveGame(Games[Pos]) - del Games[Pos] - if TopIndex>0: - GemRB.SetVar ("TopIndex",TopIndex-1) - ScrollBar.SetVarAssoc ("TopIndex", len(Games)) - ScrollBarPress() - if ConfirmWindow: - ConfirmWindow.Unload () - SaveWindow.SetVisible (WINDOW_VISIBLE) - return - -def DeleteGameCancel(): - if ConfirmWindow: - ConfirmWindow.Unload () - SaveWindow.SetVisible (WINDOW_VISIBLE) - return - -def DeleteGamePress(): - global ConfirmWindow - - SaveWindow.SetVisible (WINDOW_INVISIBLE) - ConfirmWindow=GemRB.LoadWindow (2) - Text=ConfirmWindow.GetControl (0) - Text.SetText (15305) - DeleteButton=ConfirmWindow.GetControl (1) - DeleteButton.SetText (13957) - DeleteButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, DeleteGameConfirm) - CancelButton=ConfirmWindow.GetControl (2) - CancelButton.SetText (13727) - CancelButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, DeleteGameCancel) - CancelButton.SetFlags (IE_GUI_BUTTON_CANCEL, OP_OR) - - ConfirmWindow.SetVisible (WINDOW_VISIBLE) - return - -def CloseSaveWindow (): - if SaveWindow: - SaveWindow.Unload () - if GemRB.GetVar ("QuitAfterSave"): - GemRB.QuitGame () - GemRB.SetNextScript ("Start") - return - - GUICommon.GameWindow.SetVisible(WINDOW_VISIBLE) #enabling the game control screen - GemRB.UnhideGUI () #enabling the other windows - return http://gemrb.git.sourceforge.net/git/gitweb.cgi?p=gemrb/gemrb;a=commitdiff;h=7a4a1d6f99d3ffa3e9c45b943acdea2ce2120cc3 commit 7a4a1d6f99d3ffa3e9c45b943acdea2ce2120cc3 Author: Jaka Kranjc <lyn...@us...> Date: Tue Mar 29 23:32:36 2011 +0200 merged bg1, bg2 and iwd GUISAVE, moving it to the top dir diff --git a/gemrb/GUIScripts/bg2/GUISAVE.py b/gemrb/GUIScripts/GUISAVE.py similarity index 97% rename from gemrb/GUIScripts/bg2/GUISAVE.py rename to gemrb/GUIScripts/GUISAVE.py index ced12cd..27dc1f0 100644 --- a/gemrb/GUIScripts/bg2/GUISAVE.py +++ b/gemrb/GUIScripts/GUISAVE.py @@ -179,8 +179,11 @@ def SavePress(): #game hours (should be generated from game) if Pos<len(Games): - Chapter = GemRB.GetGameVar ("CHAPTER") & 0x7fffffff - Slotname = GemRB.GetString(str_chapter[Chapter-1]) + " " + Games[Pos].GetGameDate() + if GUICommon.GameIsBG2(): + Chapter = GemRB.GetGameVar ("CHAPTER") & 0x7fffffff + Slotname = GemRB.GetString(str_chapter[Chapter-1]) + " " + Games[Pos].GetGameDate() + else: + Slotname = Games[Pos].GetGameDate() else: Slotname = "" Label = ConfirmWindow.GetControl (0x10000004) diff --git a/gemrb/GUIScripts/bg1/GUISAVE.py b/gemrb/GUIScripts/bg1/GUISAVE.py deleted file mode 100644 index aed7a1b..0000000 --- a/gemrb/GUIScripts/bg1/GUISAVE.py +++ /dev/null @@ -1,279 +0,0 @@ -# -*-python-*- -# GemRB - Infinity Engine Emulator -# Copyright (C) 2003 The GemRB Project -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# - - -# GUISAVE.py - Save window - -################################################### - -import GemRB -import GUICommon -import LoadScreen -from GUIDefines import * - -SaveWindow = 0 -ConfirmWindow = 0 -NameField = 0 -SaveButton = 0 -TextAreaControl = 0 -Games = () -ScrollBar = 0 - -def OpenSaveWindow (): - global SaveWindow, TextAreaControl, Games, ScrollBar - - if GUICommon.CloseOtherWindow (OpenSaveWindow): - CloseSaveWindow () - return - - GemRB.HideGUI () - GUICommon.GameWindow.SetVisible(WINDOW_INVISIBLE) - - GemRB.LoadWindowPack ("GUISAVE", 640, 480) - Window = SaveWindow = GemRB.LoadWindow (0) - Window.SetFrame () - CancelButton=Window.GetControl (34) - CancelButton.SetText (13727) - CancelButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, OpenSaveWindow) - CancelButton.SetFlags (IE_GUI_BUTTON_CANCEL, OP_OR) - GemRB.SetVar ("LoadIdx",0) - - for i in range(4): - Button = Window.GetControl (26+i) - Button.SetText (15588) - Button.SetEvent (IE_GUI_BUTTON_ON_PRESS, SavePress) - Button.SetState (IE_GUI_BUTTON_DISABLED) - Button.SetVarAssoc ("LoadIdx",i) - - Button = Window.GetControl (30+i) - Button.SetText (13957) - Button.SetEvent (IE_GUI_BUTTON_ON_PRESS, DeleteGamePress) - Button.SetState (IE_GUI_BUTTON_DISABLED) - Button.SetVarAssoc ("LoadIdx",i) - - #area previews - Button = Window.GetControl (1+i) - Button.SetState (IE_GUI_BUTTON_LOCKED) - Button.SetFlags(IE_GUI_BUTTON_NO_IMAGE|IE_GUI_BUTTON_PICTURE,OP_SET) - - #PC portraits - for j in range(PARTY_SIZE): - Button = Window.GetControl (40+i*PARTY_SIZE+j) - Button.SetState (IE_GUI_BUTTON_LOCKED) - Button.SetFlags(IE_GUI_BUTTON_NO_IMAGE|IE_GUI_BUTTON_PICTURE,OP_SET) - - ScrollBar=Window.GetControl (25) - ScrollBar.SetEvent (IE_GUI_SCROLLBAR_ON_CHANGE, ScrollBarPress) - Games=GemRB.GetSaveGames () - TopIndex = max (0, len(Games) - 4 + 1) #one more for the 'new game' - GemRB.SetVar ("TopIndex",TopIndex) - ScrollBar.SetVarAssoc ("TopIndex", TopIndex+1) - ScrollBar.SetDefaultScrollBar () - ScrollBarPress () - Window.SetVisible (WINDOW_VISIBLE) - return - -def ScrollBarPress(): - Window = SaveWindow - - #draw load game portraits - Pos = GemRB.GetVar ("TopIndex") - for i in range(4): - ActPos = Pos + i - - Button1 = Window.GetControl (26+i) - Button2 = Window.GetControl (30+i) - if ActPos<=len(Games): - Button1.SetState (IE_GUI_BUTTON_ENABLED) - else: - Button1.SetState (IE_GUI_BUTTON_DISABLED) - - if ActPos<len(Games): - Slotname = Games[ActPos].GetName() - Button2.SetState (IE_GUI_BUTTON_ENABLED) - elif ActPos == len(Games): - Slotname = 15304 - Button2.SetState (IE_GUI_BUTTON_DISABLED) - else: - Slotname = "" - Button2.SetState (IE_GUI_BUTTON_DISABLED) - - Label = Window.GetControl (0x10000008+i) - Label.SetText (Slotname) - - if ActPos<len(Games): - Slotname = Games[ActPos].GetGameDate() - else: - Slotname = "" - Label = Window.GetControl (0x10000010+i) - Label.SetText (Slotname) - - Button=Window.GetControl (1+i) - if ActPos<len(Games): - Button.SetSprite2D(Games[ActPos].GetPreview()) - else: - Button.SetPicture("") - for j in range(PARTY_SIZE): - Button=Window.GetControl (40+i*PARTY_SIZE+j) - if ActPos<len(Games): - Button.SetSprite2D(Games[ActPos].GetPortrait(j)) - else: - Button.SetPicture("") - return - -def AbortedSaveGame(): - if ConfirmWindow: - ConfirmWindow.Unload () - SaveWindow.SetVisible (WINDOW_VISIBLE) - return - -def ConfirmedSaveGame(): - global ConfirmWindow - - Pos = GemRB.GetVar ("TopIndex")+GemRB.GetVar ("LoadIdx") - Label = ConfirmWindow.GetControl (3) - Slotname = Label.QueryText () - LoadScreen.StartLoadScreen() - if Pos < len(Games): - GemRB.SaveGame(Games[Pos], Slotname) - else: - GemRB.SaveGame(None, Slotname) - if ConfirmWindow: - ConfirmWindow.Unload () - OpenSaveWindow() # close window - return - -def SavePress(): - global ConfirmWindow, NameField, SaveButton - - Pos = GemRB.GetVar ("TopIndex")+GemRB.GetVar ("LoadIdx") - ConfirmWindow = GemRB.LoadWindow (1) - - #slot name - if Pos<len(Games): - Slotname = Games[Pos].GetName() - save_strref = 15306 - else: - Slotname = "" - save_strref = 15588 - NameField = ConfirmWindow.GetControl (3) - NameField.SetText (Slotname) - NameField.SetEvent (IE_GUI_EDIT_ON_CHANGE, EditChange) - - #game hours (should be generated from game) - if Pos<len(Games): - Slotname = Games[Pos].GetGameDate() - else: - Slotname = "" - Label = ConfirmWindow.GetControl (0x10000004) - Label.SetText (Slotname) - - #areapreview - Button=ConfirmWindow.GetControl (0) - if Pos<len(Games): - Button.SetSprite2D(Games[Pos].GetPreview()) - else: - Button.SetPicture("") - - #portraits - for j in range(PARTY_SIZE): - Button=ConfirmWindow.GetControl (40+j) - if Pos<len(Games): - Button.SetSprite2D(Games[Pos].GetPortrait(j)) - else: - Button.SetPicture("") - - #save - SaveButton=ConfirmWindow.GetControl (7) - SaveButton.SetText (save_strref) - SaveButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, ConfirmedSaveGame) - SaveButton.SetFlags (IE_GUI_BUTTON_DEFAULT, OP_OR) - #SaveButton.SetState (IE_GUI_BUTTON_DISABLED) - if Slotname == "": - SaveButton.SetState (IE_GUI_BUTTON_DISABLED) - - #cancel - CancelButton=ConfirmWindow.GetControl (8) - CancelButton.SetText (13727) - CancelButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, AbortedSaveGame) - CancelButton.SetFlags (IE_GUI_BUTTON_CANCEL, OP_OR) - - ConfirmWindow.SetVisible (WINDOW_VISIBLE) - NameField.SetStatus (IE_GUI_CONTROL_FOCUSED) - return - -def EditChange(): - Name = NameField.QueryText () - if len(Name)==0: - SaveButton.SetState (IE_GUI_BUTTON_DISABLED) - else: - SaveButton.SetState (IE_GUI_BUTTON_ENABLED) - return - -def DeleteGameConfirm(): - global Games - - TopIndex = GemRB.GetVar ("TopIndex") - Pos = TopIndex +GemRB.GetVar ("LoadIdx") - GemRB.DeleteSaveGame(Games[Pos]) - del Games[Pos] - if TopIndex>0: - GemRB.SetVar ("TopIndex",TopIndex-1) - ScrollBar.SetVarAssoc ("TopIndex", len(Games)) - ScrollBarPress() - if ConfirmWindow: - ConfirmWindow.Unload () - SaveWindow.SetVisible (WINDOW_VISIBLE) - return - -def DeleteGameCancel(): - if ConfirmWindow: - ConfirmWindow.Unload () - SaveWindow.SetVisible (WINDOW_VISIBLE) - return - -def DeleteGamePress(): - global ConfirmWindow - - SaveWindow.SetVisible (WINDOW_INVISIBLE) - ConfirmWindow=GemRB.LoadWindow (2) - Text=ConfirmWindow.GetControl (0) - Text.SetText (15305) - DeleteButton=ConfirmWindow.GetControl (1) - DeleteButton.SetText (13957) - DeleteButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, DeleteGameConfirm) - CancelButton=ConfirmWindow.GetControl (2) - CancelButton.SetText (13727) - CancelButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, DeleteGameCancel) - CancelButton.SetFlags (IE_GUI_BUTTON_CANCEL, OP_OR) - - ConfirmWindow.SetVisible (WINDOW_VISIBLE) - return - -def CloseSaveWindow (): - if SaveWindow: - SaveWindow.Unload () - if GemRB.GetVar ("QuitAfterSave"): - GemRB.QuitGame () - GemRB.SetNextScript ("Start") - return - - GUICommon.GameWindow.SetVisible(WINDOW_VISIBLE) #enabling the game control screen - GemRB.UnhideGUI () #enabling the other windows - return diff --git a/gemrb/GUIScripts/iwd/GUISAVE.py b/gemrb/GUIScripts/iwd/GUISAVE.py deleted file mode 100644 index aed7a1b..0000000 --- a/gemrb/GUIScripts/iwd/GUISAVE.py +++ /dev/null @@ -1,279 +0,0 @@ -# -*-python-*- -# GemRB - Infinity Engine Emulator -# Copyright (C) 2003 The GemRB Project -# -# This program is free software; you can redistribute it and/or -# modify it under the terms of the GNU General Public License -# as published by the Free Software Foundation; either version 2 -# of the License, or (at your option) any later version. -# -# This program is distributed in the hope that it will be useful, -# but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the -# GNU General Public License for more details. -# -# You should have received a copy of the GNU General Public License -# along with this program; if not, write to the Free Software -# Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA. -# - - -# GUISAVE.py - Save window - -################################################### - -import GemRB -import GUICommon -import LoadScreen -from GUIDefines import * - -SaveWindow = 0 -ConfirmWindow = 0 -NameField = 0 -SaveButton = 0 -TextAreaControl = 0 -Games = () -ScrollBar = 0 - -def OpenSaveWindow (): - global SaveWindow, TextAreaControl, Games, ScrollBar - - if GUICommon.CloseOtherWindow (OpenSaveWindow): - CloseSaveWindow () - return - - GemRB.HideGUI () - GUICommon.GameWindow.SetVisible(WINDOW_INVISIBLE) - - GemRB.LoadWindowPack ("GUISAVE", 640, 480) - Window = SaveWindow = GemRB.LoadWindow (0) - Window.SetFrame () - CancelButton=Window.GetControl (34) - CancelButton.SetText (13727) - CancelButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, OpenSaveWindow) - CancelButton.SetFlags (IE_GUI_BUTTON_CANCEL, OP_OR) - GemRB.SetVar ("LoadIdx",0) - - for i in range(4): - Button = Window.GetControl (26+i) - Button.SetText (15588) - Button.SetEvent (IE_GUI_BUTTON_ON_PRESS, SavePress) - Button.SetState (IE_GUI_BUTTON_DISABLED) - Button.SetVarAssoc ("LoadIdx",i) - - Button = Window.GetControl (30+i) - Button.SetText (13957) - Button.SetEvent (IE_GUI_BUTTON_ON_PRESS, DeleteGamePress) - Button.SetState (IE_GUI_BUTTON_DISABLED) - Button.SetVarAssoc ("LoadIdx",i) - - #area previews - Button = Window.GetControl (1+i) - Button.SetState (IE_GUI_BUTTON_LOCKED) - Button.SetFlags(IE_GUI_BUTTON_NO_IMAGE|IE_GUI_BUTTON_PICTURE,OP_SET) - - #PC portraits - for j in range(PARTY_SIZE): - Button = Window.GetControl (40+i*PARTY_SIZE+j) - Button.SetState (IE_GUI_BUTTON_LOCKED) - Button.SetFlags(IE_GUI_BUTTON_NO_IMAGE|IE_GUI_BUTTON_PICTURE,OP_SET) - - ScrollBar=Window.GetControl (25) - ScrollBar.SetEvent (IE_GUI_SCROLLBAR_ON_CHANGE, ScrollBarPress) - Games=GemRB.GetSaveGames () - TopIndex = max (0, len(Games) - 4 + 1) #one more for the 'new game' - GemRB.SetVar ("TopIndex",TopIndex) - ScrollBar.SetVarAssoc ("TopIndex", TopIndex+1) - ScrollBar.SetDefaultScrollBar () - ScrollBarPress () - Window.SetVisible (WINDOW_VISIBLE) - return - -def ScrollBarPress(): - Window = SaveWindow - - #draw load game portraits - Pos = GemRB.GetVar ("TopIndex") - for i in range(4): - ActPos = Pos + i - - Button1 = Window.GetControl (26+i) - Button2 = Window.GetControl (30+i) - if ActPos<=len(Games): - Button1.SetState (IE_GUI_BUTTON_ENABLED) - else: - Button1.SetState (IE_GUI_BUTTON_DISABLED) - - if ActPos<len(Games): - Slotname = Games[ActPos].GetName() - Button2.SetState (IE_GUI_BUTTON_ENABLED) - elif ActPos == len(Games): - Slotname = 15304 - Button2.SetState (IE_GUI_BUTTON_DISABLED) - else: - Slotname = "" - Button2.SetState (IE_GUI_BUTTON_DISABLED) - - Label = Window.GetControl (0x10000008+i) - Label.SetText (Slotname) - - if ActPos<len(Games): - Slotname = Games[ActPos].GetGameDate() - else: - Slotname = "" - Label = Window.GetControl (0x10000010+i) - Label.SetText (Slotname) - - Button=Window.GetControl (1+i) - if ActPos<len(Games): - Button.SetSprite2D(Games[ActPos].GetPreview()) - else: - Button.SetPicture("") - for j in range(PARTY_SIZE): - Button=Window.GetControl (40+i*PARTY_SIZE+j) - if ActPos<len(Games): - Button.SetSprite2D(Games[ActPos].GetPortrait(j)) - else: - Button.SetPicture("") - return - -def AbortedSaveGame(): - if ConfirmWindow: - ConfirmWindow.Unload () - SaveWindow.SetVisible (WINDOW_VISIBLE) - return - -def ConfirmedSaveGame(): - global ConfirmWindow - - Pos = GemRB.GetVar ("TopIndex")+GemRB.GetVar ("LoadIdx") - Label = ConfirmWindow.GetControl (3) - Slotname = Label.QueryText () - LoadScreen.StartLoadScreen() - if Pos < len(Games): - GemRB.SaveGame(Games[Pos], Slotname) - else: - GemRB.SaveGame(None, Slotname) - if ConfirmWindow: - ConfirmWindow.Unload () - OpenSaveWindow() # close window - return - -def SavePress(): - global ConfirmWindow, NameField, SaveButton - - Pos = GemRB.GetVar ("TopIndex")+GemRB.GetVar ("LoadIdx") - ConfirmWindow = GemRB.LoadWindow (1) - - #slot name - if Pos<len(Games): - Slotname = Games[Pos].GetName() - save_strref = 15306 - else: - Slotname = "" - save_strref = 15588 - NameField = ConfirmWindow.GetControl (3) - NameField.SetText (Slotname) - NameField.SetEvent (IE_GUI_EDIT_ON_CHANGE, EditChange) - - #game hours (should be generated from game) - if Pos<len(Games): - Slotname = Games[Pos].GetGameDate() - else: - Slotname = "" - Label = ConfirmWindow.GetControl (0x10000004) - Label.SetText (Slotname) - - #areapreview - Button=ConfirmWindow.GetControl (0) - if Pos<len(Games): - Button.SetSprite2D(Games[Pos].GetPreview()) - else: - Button.SetPicture("") - - #portraits - for j in range(PARTY_SIZE): - Button=ConfirmWindow.GetControl (40+j) - if Pos<len(Games): - Button.SetSprite2D(Games[Pos].GetPortrait(j)) - else: - Button.SetPicture("") - - #save - SaveButton=ConfirmWindow.GetControl (7) - SaveButton.SetText (save_strref) - SaveButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, ConfirmedSaveGame) - SaveButton.SetFlags (IE_GUI_BUTTON_DEFAULT, OP_OR) - #SaveButton.SetState (IE_GUI_BUTTON_DISABLED) - if Slotname == "": - SaveButton.SetState (IE_GUI_BUTTON_DISABLED) - - #cancel - CancelButton=ConfirmWindow.GetControl (8) - CancelButton.SetText (13727) - CancelButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, AbortedSaveGame) - CancelButton.SetFlags (IE_GUI_BUTTON_CANCEL, OP_OR) - - ConfirmWindow.SetVisible (WINDOW_VISIBLE) - NameField.SetStatus (IE_GUI_CONTROL_FOCUSED) - return - -def EditChange(): - Name = NameField.QueryText () - if len(Name)==0: - SaveButton.SetState (IE_GUI_BUTTON_DISABLED) - else: - SaveButton.SetState (IE_GUI_BUTTON_ENABLED) - return - -def DeleteGameConfirm(): - global Games - - TopIndex = GemRB.GetVar ("TopIndex") - Pos = TopIndex +GemRB.GetVar ("LoadIdx") - GemRB.DeleteSaveGame(Games[Pos]) - del Games[Pos] - if TopIndex>0: - GemRB.SetVar ("TopIndex",TopIndex-1) - ScrollBar.SetVarAssoc ("TopIndex", len(Games)) - ScrollBarPress() - if ConfirmWindow: - ConfirmWindow.Unload () - SaveWindow.SetVisible (WINDOW_VISIBLE) - return - -def DeleteGameCancel(): - if ConfirmWindow: - ConfirmWindow.Unload () - SaveWindow.SetVisible (WINDOW_VISIBLE) - return - -def DeleteGamePress(): - global ConfirmWindow - - SaveWindow.SetVisible (WINDOW_INVISIBLE) - ConfirmWindow=GemRB.LoadWindow (2) - Text=ConfirmWindow.GetControl (0) - Text.SetText (15305) - DeleteButton=ConfirmWindow.GetControl (1) - DeleteButton.SetText (13957) - DeleteButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, DeleteGameConfirm) - CancelButton=ConfirmWindow.GetControl (2) - CancelButton.SetText (13727) - CancelButton.SetEvent (IE_GUI_BUTTON_ON_PRESS, DeleteGameCancel) - CancelButton.SetFlags (IE_GUI_BUTTON_CANCEL, OP_OR) - - ConfirmWindow.SetVisible (WINDOW_VISIBLE) - return - -def CloseSaveWindow (): - if SaveWindow: - SaveWindow.Unload () - if GemRB.GetVar ("QuitAfterSave"): - GemRB.QuitGame () - GemRB.SetNextScript ("Start") - return - - GUICommon.GameWindow.SetVisible(WINDOW_VISIBLE) #enabling the game control screen - GemRB.UnhideGUI () #enabling the other windows - return http://gemrb.git.sourceforge.net/git/gitweb.cgi?p=gemrb/gemrb;a=commitdiff;h=709f75df74fa671ce2d75d5937ee656cb6af1f4d commit 709f75df74fa671ce2d75d5937ee656cb6af1f4d Author: Jaka Kranjc <lyn...@us...> Date: Tue Mar 29 23:28:53 2011 +0200 GUISAVE: prepare for merging, except for pst diff --git a/gemrb/GUIScripts/bg1/GUISAVE.py b/gemrb/GUIScripts/bg1/GUISAVE.py index 045eae4..aed7a1b 100644 --- a/gemrb/GUIScripts/bg1/GUISAVE.py +++ b/gemrb/GUIScripts/bg1/GUISAVE.py @@ -150,7 +150,7 @@ def ConfirmedSaveGame(): Label = ConfirmWindow.GetControl (3) Slotname = Label.QueryText () LoadScreen.StartLoadScreen() - if Pos<len(Games): + if Pos < len(Games): GemRB.SaveGame(Games[Pos], Slotname) else: GemRB.SaveGame(None, Slotname) diff --git a/gemrb/GUIScripts/bg2/GUISAVE.py b/gemrb/GUIScripts/bg2/GUISAVE.py index 5f3d0f3..ced12cd 100644 --- a/gemrb/GUIScripts/bg2/GUISAVE.py +++ b/gemrb/GUIScripts/bg2/GUISAVE.py @@ -9,7 +9,7 @@ # # This program is distributed in the hope that it will be useful, # but WITHOUT ANY WARRANTY; without even the implied warranty of -# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the # GNU General Public License for more details. # # You should have received a copy of the GNU General Public License @@ -168,7 +168,7 @@ def SavePress(): #slot name if Pos<len(Games): - Slotname = Games[Pos].GetName(); + Slotname = Games[Pos].GetName() save_strref = 15306 else: Slotname = "" http://gemrb.git.sourceforge.net/git/gitweb.cgi?p=gemrb/gemrb;a=commitdiff;h=04ac43449907f15d8d8099124acc01b1a1936aed commit 04ac43449907f15d8d8099124acc01b1a1936aed Author: Jaka Kranjc <lyn...@us...> Date: Tue Mar 29 23:24:49 2011 +0200 iwd*: close the save window after saving diff --git a/gemrb/GUIScripts/iwd/GUISAVE.py b/gemrb/GUIScripts/iwd/GUISAVE.py index 68d3a44..aed7a1b 100644 --- a/gemrb/GUIScripts/iwd/GUISAVE.py +++ b/gemrb/GUIScripts/iwd/GUISAVE.py @@ -156,7 +156,7 @@ def ConfirmedSaveGame(): GemRB.SaveGame(None, Slotname) if ConfirmWindow: ConfirmWindow.Unload () - SaveWindow.SetVisible (WINDOW_VISIBLE) + OpenSaveWindow() # close window return def SavePress(): diff --git a/gemrb/GUIScripts/iwd2/GUISAVE.py b/gemrb/GUIScripts/iwd2/GUISAVE.py index 0f36337..d195089 100644 --- a/gemrb/GUIScripts/iwd2/GUISAVE.py +++ b/gemrb/GUIScripts/iwd2/GUISAVE.py @@ -156,7 +156,7 @@ def ConfirmedSaveGame(): GemRB.SaveGame(None, Slotname, 22) #saves a game with version 2.2 if ConfirmWindow: ConfirmWindow.Unload () - SaveWindow.SetVisible (WINDOW_VISIBLE) + OpenSaveWindow() # close window return def SavePress(): http://gemrb.git.sourceforge.net/git/gitweb.cgi?p=gemrb/gemrb;a=commitdiff;h=098ef5b5d6576f8e95fb7db831714894449bb219 commit 098ef5b5d6576f8e95fb7db831714894449bb219 Author: Jaka Kranjc <lyn...@us...> Date: Tue Mar 29 23:20:21 2011 +0200 GUISAVE: fixed bad array index in deletion confirmation in pst a previous fix is reworked, since the other code is identical diff --git a/gemrb/GUIScripts/bg1/GUISAVE.py b/gemrb/GUIScripts/bg1/GUISAVE.py index d5673e7..045eae4 100644 --- a/gemrb/GUIScripts/bg1/GUISAVE.py +++ b/gemrb/GUIScripts/bg1/GUISAVE.py @@ -232,9 +232,9 @@ def DeleteGameConfirm(): TopIndex = GemRB.GetVar ("TopIndex") Pos = TopIndex +GemRB.GetVar ("LoadIdx") GemRB.DeleteSaveGame(Games[Pos]) + del Games[Pos] if TopIndex>0: GemRB.SetVar ("TopIndex",TopIndex-1) - del Games[pos] ScrollBar.SetVarAssoc ("TopIndex", len(Games)) ScrollBarPress() if ConfirmWindow: diff --git a/gemrb/GUIScripts/iwd/GUISAVE.py b/gemrb/GUIScripts/iwd/GUISAVE.py index e6a2091..68d3a44 100644 --- a/gemrb/GUIScripts/iwd/GUISAVE.py +++ b/gemrb/GUIScripts/iwd/GUISAVE.py @@ -232,9 +232,9 @@ def DeleteGameConfirm(): TopIndex = GemRB.GetVar ("TopIndex") Pos = TopIndex +GemRB.GetVar ("LoadIdx") GemRB.DeleteSaveGame(Games[Pos]) + del Games[Pos] if TopIndex>0: GemRB.SetVar ("TopIndex",TopIndex-1) - del Games[pos] ScrollBar.SetVarAssoc ("TopIndex", len(Games)) ScrollBarPress() if ConfirmWindow: diff --git a/gemrb/GUIScripts/iwd2/GUISAVE.py b/gemrb/GUIScripts/iwd2/GUISAVE.py index 71d14cd..0f36337 100644 --- a/gemrb/GUIScripts/iwd2/GUISAVE.py +++ b/gemrb/GUIScripts/iwd2/GUISAVE.py @@ -232,9 +232,9 @@ def DeleteGameConfirm(): TopIndex = GemRB.GetVar ("TopIndex") Pos = TopIndex +GemRB.GetVar ("LoadIdx") GemRB.DeleteSaveGame(Games[Pos]) + del Games[Pos] if TopIndex>0: GemRB.SetVar ("TopIndex",TopIndex-1) - del Games[pos] ScrollBar.SetVarAssoc ("TopIndex", len(Games)) ScrollBarPress() if ConfirmWindow: diff --git a/gemrb/GUIScripts/pst/GUISAVE.py b/gemrb/GUIScripts/pst/GUISAVE.py index 07c6fd8..c71e188 100644 --- a/gemrb/GUIScripts/pst/GUISAVE.py +++ b/gemrb/GUIScripts/pst/GUISAVE.py @@ -156,10 +156,10 @@ def DeleteGameConfirm(): TopIndex = GemRB.GetVar("TopIndex") Pos = TopIndex +GemRB.GetVar("SaveIdx") GemRB.DeleteSaveGame (Games[Pos]) + del Games[Pos] if TopIndex>0: GemRB.SetVar("TopIndex",TopIndex-1) - Games = GemRB.GetSaveGames() - #del Games[pos] + #Games = GemRB.GetSaveGames() ScrollBar.SetVarAssoc("TopIndex", len(Games)) ScrollBarPress() if ConfirmWindow: ----------------------------------------------------------------------- This is an automated email from the git hooks/post-receive script. -- gemrb: Infinity Engine emulator |