basic fuction complete(new & save & save as)