refactor some methods from Context to SelectTool