ViewVC Help
View File | Revision Log | View Changeset | Root Listing
root/Oni2/oup/current/Tools/TxmpReplace.pas
(Generate patch)

Comparing oup/current/Tools/TxmpReplace.pas (file contents):
Revision 193 by alloc, Sat May 26 14:24:55 2007 UTC vs.
Revision 194 by alloc, Sat May 26 18:26:48 2007 UTC

# Line 27 | Line 27 | type
27      procedure btn_saveClick(Sender: TObject);
28      procedure btn_loadClick(Sender: TObject);
29      procedure btn_replaceClick(Sender: TObject);
30 +    procedure Splitter1Moved(Sender: TObject);
31    private
32      OniImage_Old: TOniImage;
33      OniImage_New: TOniImage;
# Line 56 | Line 57 | begin
57  
58    OniImage_Old.LoadFromTXMP(ConnectionID, fileid);
59    old_size := OniImage_Old.GetImageSize(True);
60 <  OniImage_Old.DrawOnCanvas(image_txmppreview.Canvas, 2);
60 >  OniImage_Old.DrawOnCanvas(image_txmppreview.Canvas, 1);
61  
62    check_fading.Checked := OniImage_Old.HasMipMaps;
63   //  check_transparency.Checked := (depthbyte and $04) > 0;
# Line 66 | Line 67 | begin
67   end;
68  
69  
70 + procedure TForm_TxmpReplace.Splitter1Moved(Sender: TObject);
71 + begin
72 +  inherited;
73 +  image_txmppreview.Picture.Assign(nil);
74 +  image_bmppreview.Picture.Assign(nil);
75 +  if Length(OniImage_Old.Images) > 0 then
76 +    OniImage_Old.DrawOnCanvas(image_txmppreview.Canvas, 1);
77 +  if Length(OniImage_New.Images) > 0 then
78 +    OniImage_New.DrawOnCanvas(image_bmppreview.Canvas, 1);
79 + end;
80 +
81   procedure TForm_TxmpReplace.btn_loadClick(Sender: TObject);
82   var
83    mem:   TMemoryStream;
# Line 89 | Line 101 | var
101    datbyte: Word;
102    mem: TMemoryStream;
103    new_storetype: Byte;
104 +  formatinfo: TImageFormatInfo;
105   begin
106    if filelist.ItemIndex >= 0 then
107    begin
# Line 126 | Line 139 | begin
139        ifX8R8G8B8: new_storetype := 8;
140        ifDXT1: new_storetype := 9;
141      else
142 +      if OniImage_New.FormatInfo.HasAlphaChannel then
143 +        ShowMessage('Loaded image has an alpha-channel.' + #13#10 +
144 +                    'Because the format is neither ARGB1555' +#13#10 +
145 +                    'nor ARGB4444 it can not be imported without conversion.' + #13#10 +
146 +                    'It is converted to RGB888, so alpha gets dropped.' + #13#10 +
147 +                    'If you need alpha you have to save your image in' + #13#10 +
148 +                    'one of the previously named formats.');  
149        OniImage_New.Format := ifX8R8G8B8;
150        new_storetype := 8;
151      end;
# Line 163 | Line 183 | begin
183        ConManager.Connection[ConnectionID].UpdateDatFilePart(fileid, $9C, 4, @new_rawaddr);
184  
185      ShowMessage('TXMP-image replaced');
186 +    Self.listClick(Self);
187    end;
188   end;
189  

Diff Legend

Removed lines
+ Added lines
< Changed lines (old)
> Changed lines (new)