Subversion Repositories Kolibri OS

Rev

Rev 7278 | Rev 7311 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed

Rev 7278 Rev 7310
Line 38... Line 38...
38
 
38
 
Line 39... Line 39...
39
struct _SystemDiscs
39
struct _SystemDiscs
40
{
40
{
41
	collection list;
41
	collection list;
42
	void Get();
42
	byte Get();
43
	void Draw();
43
	void Draw();
44
	void Click();
44
	void Click();
45
} SystemDiscs;
45
} SystemDiscs;
Line 86... Line 86...
86
			ESBYTE[dev_icon]=3;
86
			ESBYTE[dev_icon]=3;
87
			strcpy(disc_name, T_UNC);				
87
			strcpy(disc_name, T_UNC);				
88
	}
88
	}
89
}
89
}
90
 
90
dword __countSysDiscs = 0;
91
void _SystemDiscs::Get()
-
 
-
 
91
byte _SystemDiscs::Get()
92
{
92
{
93
	char dev_name[10], sys_discs[10];
93
	byte ret = 0;
-
 
94
	char dev_name[10], sys_discs[10];
94
	int i1, j1, dev_num, dev_disc_num;
95
	int i1, j1, dev_num, dev_disc_num;
95
	dword temp_file_count, tempbuf;
96
	dword temp_file_count, tempbuf;
96
	dword devbuf;
97
	dword devbuf;
97
 
98
 
Line 98... Line 99...
98
	list.drop();
99
	list.drop();
99
	devbuf = malloc(10000);
100
	devbuf = malloc(10000);
100
	ReadDir(19, devbuf, "/");
101
	ReadDir(19, devbuf, "/");
101
	dev_num = EBX;
102
	dev_num = EBX;
-
 
103
	if (dev_num != __countSysDiscs)
-
 
104
	{
-
 
105
		__countSysDiscs = dev_num;
-
 
106
		ret = 0xFF;
-
 
107
	}
102
	for (i1=0; i1
108
	for (i1=0; i1
103
	{
109
	{
104
		sprintf(#dev_name,"/%s",i1*304+ devbuf+72);
110
		sprintf(#dev_name,"/%s",i1*304+ devbuf+72);
105
		Open_Dir(#dev_name, ONLY_OPEN);
111
		Open_Dir(#dev_name, ONLY_OPEN);
106
		dev_disc_num = files.count;
112
		dev_disc_num = files.count;
Line 116... Line 122...
116
			free(tempbuf);
122
			free(tempbuf);
117
		}
123
		}
118
	}
124
	}
119
	free(devbuf);
125
	free(devbuf);
120
}
126
	return ret;
-
 
127
}
121
 
128
 
Line 122... Line 129...
122
void _SystemDiscs::Draw()
129
void _SystemDiscs::Draw()
123
{    
130
{    
124
	char dev_name[15], disc_name[100], i, dev_icon, is_active, name_len;
131
	char dev_name[15], disc_name[100], i, dev_icon, is_active, name_len;