blob: 795d198cfbb32e70a1150eed73720a8b4bfd6cf8 [file] [log] [blame]
[email protected]7d791652010-12-01 16:34:491// Copyright (c) 2010 The Chromium Authors. All rights reserved.
2// Use of this source code is governed by a BSD-style license that can be
3// found in the LICENSE file.
4
5#ifndef CHROME_BROWSER_UI_COCOA_APPLESCRIPT_BROWSERCRAPPLICATION_APPLESCRIPT_H_
6#define CHROME_BROWSER_UI_COCOA_APPLESCRIPT_BROWSERCRAPPLICATION_APPLESCRIPT_H_
7
8#import <Cocoa/Cocoa.h>
9
10#import "chrome/browser/chrome_browser_application_mac.h"
11
12@class BookmarkFolderAppleScript;
13@class WindowAppleScript;
14
15// Represent the top level application scripting object in applescript.
16@interface BrowserCrApplication (AppleScriptAdditions)
17
18// Application window manipulation methods.
19// Returns an array of |WindowAppleScript*| of all windows present in the
20// application.
21- (NSArray*)appleScriptWindows;
22
23// Inserts a window at the beginning.
24- (void)insertInAppleScriptWindows:(WindowAppleScript*)aWindow;
25
26// Inserts a window at some position in the list.
27// Called by applescript which takes care of bounds checking, make sure of it
28// before calling directly.
29- (void)insertInAppleScriptWindows:(WindowAppleScript*)aWindow
30 atIndex:(int)index;
31
32// Removes a window from the list.
33// Called by applescript which takes care of bounds checking, make sure of it
34// before calling directly.
35- (void)removeFromAppleScriptWindowsAtIndex:(int)index;
36
37// Always returns nil to indicate that it is the root container object.
38- (NSScriptObjectSpecifier*)objectSpecifier;
39
40// Returns the other bookmarks bookmark folder,
41// returns nil if there is an error.
42- (BookmarkFolderAppleScript*)otherBookmarks;
43
44// Returns the bookmarks bar bookmark folder, return nil if there is an error.
45- (BookmarkFolderAppleScript*)bookmarksBar;
46
47// Returns the Bookmarks Bar and Other Bookmarks Folders, each is of type
48// |BookmarkFolderAppleScript*|.
49- (NSArray*)bookmarkFolders;
50
51// Required functions, even though bookmarkFolders is declared as
52// read-only, cocoa scripting does not currently prevent writing.
53- (void)insertInBookmarksFolders:(id)aBookmarkFolder;
54- (void)insertInBookmarksFolders:(id)aBookmarkFolder atIndex:(int)index;
55- (void)removeFromBookmarksFoldersAtIndex:(int)index;
56
57@end
58
59#endif// CHROME_BROWSER_UI_COCOA_APPLESCRIPT_BROWSERCRAPPLICATION_APPLESCRIPT_H_