* Brush factory: Drive entries in fileselector don't have an icon on some platforms
* File selector: remove BeOS quirk for getting home directory (the OS was fixed), and try to guess the drive type for UNIX OSes (untested) Fixes #492. git-svn-id: svn://pulkomandy.tk/GrafX2/trunk@2015 416bcca6-2ee7-4201-b75f-2eb2f807beb1
This commit is contained in:
parent
26613ec440
commit
76222af12a
@ -1541,9 +1541,12 @@ void Draw_script_name(word x, word y, word index, byte highlighted)
|
|||||||
fg=(highlighted)?MC_Light:MC_Dark;
|
fg=(highlighted)?MC_Light:MC_Dark;
|
||||||
bg=(highlighted)?MC_Dark:MC_Black;
|
bg=(highlighted)?MC_Dark:MC_Black;
|
||||||
|
|
||||||
|
if (current_item->Icon != ICON_NONE)
|
||||||
|
{
|
||||||
Window_display_icon_sprite(x,y,current_item->Icon);
|
Window_display_icon_sprite(x,y,current_item->Icon);
|
||||||
x+=8;
|
x+=8;
|
||||||
}
|
}
|
||||||
|
}
|
||||||
|
|
||||||
Print_in_window(x, y, current_item->Short_name, fg,bg);
|
Print_in_window(x, y, current_item->Short_name, fg,bg);
|
||||||
|
|
||||||
|
|||||||
@ -635,11 +635,7 @@ void Read_list_of_drives(T_Fileselector *list, byte name_length)
|
|||||||
struct mount_entry* mount_points_list;
|
struct mount_entry* mount_points_list;
|
||||||
struct mount_entry* next;
|
struct mount_entry* next;
|
||||||
|
|
||||||
#if defined(__BEOS__) || defined(__HAIKU__)
|
|
||||||
char * home_dir = getenv("$HOME");
|
|
||||||
#else
|
|
||||||
char * home_dir = getenv("HOME");
|
char * home_dir = getenv("HOME");
|
||||||
#endif
|
|
||||||
Add_element_to_list(list, "/", Format_filename("/",name_length,2), 2, ICON_NONE);
|
Add_element_to_list(list, "/", Format_filename("/",name_length,2), 2, ICON_NONE);
|
||||||
list->Nb_directories++;
|
list->Nb_directories++;
|
||||||
if(home_dir)
|
if(home_dir)
|
||||||
@ -652,9 +648,20 @@ void Read_list_of_drives(T_Fileselector *list, byte name_length)
|
|||||||
|
|
||||||
while(mount_points_list != NULL)
|
while(mount_points_list != NULL)
|
||||||
{
|
{
|
||||||
|
byte icon = ICON_NONE;
|
||||||
|
if (strcmp(mount_points_list->me_type, "cd9660") == 0)
|
||||||
|
icon = ICON_CDROM;
|
||||||
|
else if (strcmp(mount_points_list->me_type, "nfs") == 0)
|
||||||
|
icon = ICON_NETWORK;
|
||||||
|
else if (strcmp(mount_points_list->me_type, "msdos") == 0)
|
||||||
|
icon = ICON_FLOPPY_3_5; // Only a guess...
|
||||||
|
else if (strcmp(mount_points_list->me_type, "ext2fs") == 0)
|
||||||
|
icon = ICON_HDD; // Only a guess...
|
||||||
|
|
||||||
if(mount_points_list->me_dummy == 0 && strcmp(mount_points_list->me_mountdir,"/") && strcmp(mount_points_list->me_mountdir,"/home"))
|
if(mount_points_list->me_dummy == 0 && strcmp(mount_points_list->me_mountdir,"/") && strcmp(mount_points_list->me_mountdir,"/home"))
|
||||||
{
|
{
|
||||||
Add_element_to_list(list, mount_points_list->me_mountdir, Format_filename(mount_points_list->me_mountdir, name_length, 2), 2, ICON_NONE);
|
Add_element_to_list(list, mount_points_list->me_mountdir,
|
||||||
|
Format_filename(mount_points_list->me_mountdir, name_length, 2), 2, icon);
|
||||||
list->Nb_directories++;
|
list->Nb_directories++;
|
||||||
}
|
}
|
||||||
next = mount_points_list -> me_next;
|
next = mount_points_list -> me_next;
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user