Commit Graph

4341 Commits

Author SHA1 Message Date
Nathan Sobo
ba18614c2f Bind DOM events to view methods based on element attributes.
For example, if you give an element the attribute click: 'elementClicked', the template will bind a click event to that element which calls the elementClicked method on the view.
2011-12-27 19:00:00 -06:00
Nathan Sobo
7948543a5b Template extends view with @viewProperties and calls initialize with attributes passed to build. 2011-12-27 18:36:54 -06:00
Corey Johnson
a0fc994dcb addMenuItem can take a key pattern and set it as the key equivalent. 2011-12-27 16:30:48 -08:00
Corey Johnson
4560eff154 Factor out parseKeyPattern from keyEventMatchesPattern method 2011-12-27 16:30:04 -08:00
Nathan Sobo
08c1d33836 Switch Template to use builder. Wire outlets in Template. 2011-12-27 18:21:00 -06:00
Nathan Sobo
43ddb6b16a Builder.toFragment creates outlet references on the fragment. 2011-12-27 17:43:05 -06:00
Nathan Sobo
a7aa1d2b75 Add jasmine jquery matchers. 2011-12-27 17:42:29 -06:00
Nathan Sobo
bd79d9cd5d Builder correctly generates void (self-closing) tags. 2011-12-27 16:43:28 -06:00
Nathan Sobo
21fb88141e Builder can generate tags with attributes. 2011-12-27 16:16:35 -06:00
Nathan Sobo
b5a06c288e Tags can take textual content. 2011-12-27 16:05:01 -06:00
Nathan Sobo
e570c5d454 Tags can take a function for their content. 2011-12-27 15:57:29 -06:00
Nathan Sobo
22167faf28 Add template/Builder. It generates basic tags. 2011-12-27 15:50:39 -06:00
Corey Johnson
6001081d44 Add meta-w keybinding to close window 2011-12-27 13:44:42 -08:00
Nathan Sobo
a48a1b24f4 Don't add the same menu item more than once. 2011-12-26 23:33:05 -06:00
Nathan Sobo
b9f844ab18 Listen for focus/blur on window, not document. 2011-12-26 23:32:54 -06:00
Nathan Sobo
90188a871c Only show menu items for a window/document when it is the key window.
Also add "File > Save" menu item. When document is focused, all menu items associated with its window are added to the main menu. When it is blurred, main menu is reset.
2011-12-26 14:49:51 -06:00
Nathan Sobo
a010c8e3c6 Add window.bindMenuItem, which adds a menu item that invokes a given function.
Every menu item is created with a path (File > Save). The functions are stored in a hash from (menu item path -> action) on the window. When an AtomMenuItem is selected, it looks up the action on the current window based on its path.
2011-12-26 13:12:27 -06:00
Nathan Sobo
0cc29a0319 Beef up Native.addMenuItem spec 2011-12-23 16:59:02 -06:00
Nathan Sobo
11d502b511 Unfocus spec. Fix spec. 2011-12-23 16:50:35 -06:00
Nathan Sobo
00bccdca96 Add partial implementation Native.addMenuItem.
It takes a path like "Menu 1 > Menu 2 > Item", and builds a series of submenus if needed along that path, then adds the final item at its terminus. Specs still need to be fleshed out further.
2011-12-23 16:45:04 -06:00
Nathan Sobo
68ce5544a7 Merge branch 'master' into wip 2011-12-23 15:58:11 -06:00
Nathan Sobo
a993f978e9 Add 'rake nof' task to remove focused describes and its 2011-12-23 15:56:53 -06:00
Nathan Sobo
c2b102d9f4 💄 2011-12-23 15:38:38 -06:00
Nathan Sobo
5b7a80f707 fdescribe / fit can be used to focus specs manually 2011-12-23 15:38:22 -06:00
Nathan Sobo
ae4fdf8812 Add Native.resetMainMenu and call it in global afterEach
This method removes any AtomMenuItems that aren't marked as 'global'. It ignores menu items that aren't instances of our custom subclass. This is needed by specs to clear any menu items added during tests. It will also be needed when a window loses focus and we want to remove any non-global menus associated with the window.
2011-12-23 12:43:32 -06:00
Nathan Sobo
deb088f1ed Merge branch 'master' of github.com:probablycorey/Atomicity 2011-12-23 10:48:22 -06:00
Nathan Sobo
7d524f5f54 Editor.open assigns the url on the atom controller so refresh works properly. 2011-12-23 10:48:11 -06:00
Corey Johnson
09510f60a6 wip 2011-12-22 16:58:27 -08:00
Corey Johnson
2d6ddcedfd Add window.bindKey which matches a pattern to an action. 2011-12-22 16:24:09 -08:00
Corey Johnson
b15c493693 Remove meta-o handler from window. 2011-12-22 14:58:34 -08:00
Corey Johnson
ee0bf2e553 Rename open and new methods. 2011-12-22 14:58:06 -08:00
Corey Johnson
66b066fbaf Trim Menu down to new/open/quit/run specs.
Implement those methods in AtomApp.
2011-12-22 14:04:39 -08:00
Corey Johnson
d3de4bd569 Added more language modes. 2011-12-20 12:10:06 -08:00
Corey Johnson
d0ed5992ca 'meta-o' presents open dialog. 2011-12-20 10:41:31 -08:00
Corey Johnson
f2d9f818a8 Add spec to verify mode is set on the aceEditor session. 2011-12-20 09:27:32 -08:00
Corey Johnson
f78d1461d3 Sobo'd the spec. 2011-12-20 09:25:15 -08:00
Corey Johnson
1abccbf9eb Buffer with no url returns Text as its mode. 2011-12-19 16:40:55 -08:00
Corey Johnson
a72fb416f8 Buffer.getMode returns the ace mode based on the url. 2011-12-19 16:26:55 -08:00
Corey Johnson
c679df770b CoffeeScript compiler is slow. Take steps to avoid it. 2011-12-19 14:56:11 -08:00
Corey Johnson
33f125a8e6 Removed unused code. 2011-12-19 13:25:46 -08:00
Corey Johnson
ce9f5b7f5d Better spec name 2011-12-19 13:20:45 -08:00
Corey Johnson
cf18c4b550 Autorun tests if AUTO-RUN env is set. 2011-12-19 13:10:02 -08:00
Corey Johnson
8efbd8c281 Move keybindings to window.
Window has startup and shutdown methods.
2011-12-19 12:59:11 -08:00
Corey Johnson
5ec94fc28c Triggers the event created with window.keydown. 2011-12-19 12:58:35 -08:00
Corey Johnson
f0bfe17572 Attach globally. 2011-12-19 12:58:03 -08:00
Nathan Sobo
7dcb00f0ec When saving buffer with no url, pop up 'save as' dialog.
Remove a lot of old code.
2011-12-16 16:31:02 -08:00
Nathan Sobo
ff57cbc8f6 Make "Run Specs" menu item w/ key equivalent. 2011-12-16 16:30:55 -08:00
Nathan Sobo
30adef91fc Using hotkeys JQuery plugin. 2011-12-16 16:30:53 -08:00
Nathan Sobo
c75c3555bb Meta+s triggers save on Editor.
Still can't save buffers that don't have a url.
2011-12-16 16:30:51 -08:00
Nathan Sobo
79fbc0118c WebView re-initializes JSCocoa on reload. 2011-12-16 16:30:49 -08:00