Corretto caricamento immagini
git-svn-id: svn://10.65.10.50/trunk@1237 c028cbd2-c16b-5b4b-a496-9718f37d4682
This commit is contained in:
		
							parent
							
								
									5f0cd593f2
								
							
						
					
					
						commit
						4523e4c068
					
				
							
								
								
									
										36
									
								
								ba/ba0.cpp
									
									
									
									
									
								
							
							
						
						
									
										36
									
								
								ba/ba0.cpp
									
									
									
									
									
								
							@ -29,28 +29,23 @@
 | 
			
		||||
 | 
			
		||||
class TPicture_mask : public TMask
 | 
			
		||||
{
 | 
			
		||||
  TImage _image;
 | 
			
		||||
  TImage & _image;
 | 
			
		||||
 | 
			
		||||
protected:
 | 
			
		||||
  virtual void handler(WINDOW win, EVENT* ep);
 | 
			
		||||
 | 
			
		||||
public:
 | 
			
		||||
  TPicture_mask(const char* name, int dx, int dy, short id);
 | 
			
		||||
  TPicture_mask(const char* name, int dx, int dy, TImage & image, bool remap);
 | 
			
		||||
  virtual ~TPicture_mask() {}
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
TPicture_mask::TPicture_mask(const char* name, int dx, int dy, short id)
 | 
			
		||||
: TMask(name, 1, dx, dy), _image("")
 | 
			
		||||
TPicture_mask::TPicture_mask(const char* name, int dx, int dy, TImage & image, bool remap)
 | 
			
		||||
: TMask(name, 1, dx, dy), _image(image)
 | 
			
		||||
{  
 | 
			
		||||
  char* n = format("ba%02d.bmp", id);
 | 
			
		||||
  if (id > 0 && !fexist(n))
 | 
			
		||||
    n = format("ba%02d.bmp", id = 0);
 | 
			
		||||
  _image.load(n);
 | 
			
		||||
  
 | 
			
		||||
  if (_image.ok())
 | 
			
		||||
  {
 | 
			
		||||
    if (id == 0 && MASK_BACK_COLOR != COLOR_DKCYAN)
 | 
			
		||||
    if (!remap && MASK_BACK_COLOR != COLOR_DKCYAN)
 | 
			
		||||
      _image.set_clut(6, MASK_BACK_COLOR);
 | 
			
		||||
    else
 | 
			
		||||
      _image.set_palette(win());
 | 
			
		||||
@ -100,7 +95,7 @@ class TMenu_application : public TApplication
 | 
			
		||||
  int _first[MAXLEVEL];
 | 
			
		||||
  TArray _menu;         // TAG|DESCRIPTION|ACTION
 | 
			
		||||
  TBit_array _enabled;
 | 
			
		||||
  TArray _modules;
 | 
			
		||||
  TArray _modules, _images;
 | 
			
		||||
 | 
			
		||||
  int _level, _max;
 | 
			
		||||
  bool _ditta_asked;
 | 
			
		||||
@ -143,7 +138,7 @@ bool TMenu_application::build_firm_data(long codditta, bool flagcom)
 | 
			
		||||
  
 | 
			
		||||
  if (!exist)
 | 
			
		||||
  {
 | 
			
		||||
    s = s.path(); s << ntrc;
 | 
			
		||||
    s = s.path(); s.rtrim(1); s << ntrc;
 | 
			
		||||
    exist = fexist(s);
 | 
			
		||||
  }
 | 
			
		||||
  if (exist)
 | 
			
		||||
@ -151,7 +146,7 @@ bool TMenu_application::build_firm_data(long codditta, bool flagcom)
 | 
			
		||||
  if (!yesno_box("Gli archivi della ditta %ld non esistono: si desidera generarli?", codditta))
 | 
			
		||||
    return FALSE; 
 | 
			
		||||
  set_autoload_new_files(yesno_box("Si desidera precaricare gli archivi standard"));
 | 
			
		||||
  s = s.path();
 | 
			
		||||
  s = s.path();   s.rtrim(1);
 | 
			
		||||
  
 | 
			
		||||
  if (!fexist(s))
 | 
			
		||||
  {
 | 
			
		||||
@ -382,8 +377,19 @@ int TMenu_application::do_level()
 | 
			
		||||
  const int height = 18;
 | 
			
		||||
  const int bwidth = 20;
 | 
			
		||||
  const int x = width-bwidth-12;
 | 
			
		||||
  const short pic = (short)row.get_int();
 | 
			
		||||
  TPicture_mask menu(head, width, height, pic);
 | 
			
		||||
  short id = (short)row.get_int();
 | 
			
		||||
  
 | 
			
		||||
  if (_images.objptr(id) == NULL)
 | 
			
		||||
  { 
 | 
			
		||||
    char* n = format("ba%02d.bmp", id);
 | 
			
		||||
    if (id > 0 && !fexist(n))
 | 
			
		||||
      n = format("ba%02d.bmp", id = 0);
 | 
			
		||||
    TImage * image = new TImage(n);  
 | 
			
		||||
    
 | 
			
		||||
    _images.add(image, id);
 | 
			
		||||
  }
 | 
			
		||||
 | 
			
		||||
  TPicture_mask menu(head, width, height, (TImage &) _images[id], id != 0);
 | 
			
		||||
 | 
			
		||||
  int y = 1;
 | 
			
		||||
 | 
			
		||||
 | 
			
		||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user