What you are trying to do is fundamnetally flawed since not all methods support UNIX style permissions anyway, IMO.
On Sun, 13 Feb 2005, Sudrien wrote: > From: Sudrien <[EMAIL PROTECTED]> > Subject: Setting permissions in existing files? > > Ok, I'm using gnomemm. I have a dialogue with checkboxes that are filled > according to a given files' permissions. What I currently have is at > http://svn.berlios.de/viewcvs/darimasen/trunk/src/iconmodes.cpp?rev=22 , > if more details are needed. > > Now how do I change the permissions of a file? All the tests in the code > below work, except for the try{} section. I am not finding anything to > take the new Gnome::Vfs::FilePermissions. > > What can I do? > > -Sud. > > > > > ------My Code------ > > void > DaIconModes::SetPermissionsDialogue::apply(Glib::RefPtr<Gnome::Vfs::FileInfo> > info){ > > > Gnome::Vfs::FilePermissions permissions; > //make sure I've got the stuff that doesn't change > permissions = info->get_permissions(); > > > if(u_r->get_active()){ > std::cout << "+u_r "; > }else{ > std::cout << "-u_r "; > } > if(u_w->get_active()){ > std::cout << "+u_w "; > }else{ > std::cout << "-u_w "; > } > if(u_x->get_active()){ > std::cout << "+u_x "; > }else{ > std::cout << "-u_x "; > } > std::cout << "\n"; > if(g_r->get_active()){ > std::cout << "+g_r "; > }else{ > std::cout << "-g_r "; > } > if(g_w->get_active()){ > std::cout << "+g_w "; > }else{ > std::cout << "-g_w "; > } > if(g_x->get_active()){ > std::cout << "+g_x "; > }else{ > std::cout << "-g_x "; > } > std::cout << "\n"; > if(o_r->get_active()){ > (permissions & Gnome::Vfs::PERM_OTHER_READ) == 1; > std::cout << "+o_r "; > }else{ > (permissions & Gnome::Vfs::PERM_OTHER_READ) == 0; > std::cout << "-o_r "; > } > if(o_w->get_active()){ > (permissions & Gnome::Vfs::PERM_OTHER_WRITE) == 1; > std::cout << "+o_w "; > }else{ > (permissions & Gnome::Vfs::PERM_OTHER_WRITE) == 0; > std::cout << "-o_w "; > } > if(o_x->get_active()){ > (permissions & Gnome::Vfs::PERM_OTHER_EXEC) == 1; > std::cout << "+o_x "; > }else{ > (permissions & Gnome::Vfs::PERM_OTHER_EXEC) == 0; > std::cout << "-o_x "; > } > std::cout << "\n\n"; > > > try{ > Gnome::Vfs::Handle::set_file_info(fullPath + info->get_name(), > permissions, Gnome::Vfs::SET_FILE_INFO_PERMISSIONS); > } > catch(const Gnome::Vfs::exception& ex){ > std::cout << "Could not change permissions.\n"; > } > > > hide(); > _______________________________________________ > gnome-vfs-list mailing list > [email protected] > http://mail.gnome.org/mailman/listinfo/gnome-vfs-list > Chipzz AKA Jan Van Buggenhout -- ------------------------------------------------------------------------ UNIX isn't dead - It just smells funny [EMAIL PROTECTED] ------------------------------------------------------------------------ "Baldric, you wouldn't recognize a subtle plan if it painted itself pur- ple and danced naked on a harpsicord singing 'subtle plans are here a- gain'." _______________________________________________ gnome-vfs-list mailing list [email protected] http://mail.gnome.org/mailman/listinfo/gnome-vfs-list
