Commit Graph

77 Commits

Author SHA1 Message Date
Chris Jones
789092bb07 Refactor some code from Notebook into a standalone function that finds all descendant widgets of a given container that are Containers or Terminals and returns lists of them, and use this when closing a tab. This function will form the basis of layout enumeration 2010-01-28 13:41:44 +00:00
Chris Jones
0817d2651d refactor tab creation signals to propagate to the Window of a Terminal, not Terminator 2010-01-28 12:49:38 +00:00
Chris Jones
b3435e534f tidy up some FIXME stuff, including removing a duplicate call to gtk.Button.set_relief() that can't possibly be needed 2010-01-26 12:39:44 +00:00
Chris Jones
23ccad813d Call Signalman::remove_all() when each of the Container subclasses commits suicide. SHould stop any stale signal handler connections existing 2010-01-25 12:55:38 +00:00
Chris Jones
8d8681e63f This makes us very UNIX dependent (as if we weren't before anyway), but we now specifically send a SIGHUP to the child of a terminal when that terminal is explicitly close()d 2010-01-25 12:35:34 +00:00
Chris Jones
ab02add397 Make the move-tab keyboard shortcuts work 2010-01-24 22:15:54 +00:00
Chris Jones
489bc2cbb6 Slight refactoring of each derived Container's add() to handle all the Terminal signals the same way. 2010-01-24 12:55:03 +00:00
Chris Jones
5c0a882aaa minor pylint adjustements 2010-01-22 19:03:58 +00:00
Chris Jones
0eb6994620 Add the (un)group_(all|tab) connections that should have been in the previous commit 2010-01-21 13:00:50 +00:00
Chris Jones
14f98c1b89 Implement (un)group_all and (un)group_tab 2010-01-21 12:55:57 +00:00
Chris Jones
9c72b6287d Implement tab changing keyboard shortcuts 2010-01-21 12:33:42 +00:00
Chris Jones
36631b20e4 Teach Notebook how to hoover itself since it might be called during drag&drop, and refactor its suicide detection into that function 2010-01-19 22:44:05 +00:00
Chris Jones
257cc3ead6 Remove the old terminator.py, rename newterminator.py accordingly and update all the references to it 2010-01-11 20:06:53 +00:00
Chris Jones
be224f3016 Undo previous change that had Factory registering windows and terminals. Instead make them self-register since they already have a Terminator reference anyway. Remove calls to register_terminla from elsewhere. 2010-01-04 13:11:16 +00:00
Chris Jones
7d897eaef7 Make title propagation work properly 2009-12-10 23:25:52 +00:00
Chris Jones
602c6a3b57 Make title changes propagate better, albeit not perfectly yet 2009-12-10 13:20:03 +00:00
Chris Jones
24b6082155 Add more debugging and make sure we don't fall into the trap of iterating over a list we're modifying 2009-12-09 13:02:13 +00:00
Chris Jones
34da8ffe3a fix a bunch of bugs in tab handling and attempt to handle closing a tab with multiple children, but all of this is still entirely buggy 2009-12-08 13:57:29 +00:00
Chris Jones
f9725242ec Make tab opening conext menu work 2009-12-08 13:01:13 +00:00
Chris Jones
2db2e0f75e Beginnings of making the tab close button work, only handles the simplest case so far 2009-12-08 09:10:39 +00:00
Chris Jones
0796e70808 Don't create a one-off TabLabel for the first tab, Notebook.newtab() makes them and now the order of creation is fixed they even show up properly 2009-12-07 20:32:47 +00:00
Chris Jones
05fb49bed6 Make Paned widgets eat themselves when they go from 2 to 1 tabs 2009-11-25 12:51:14 +00:00
Chris Jones
4577c14c6e Only connect terminal signals to terminals 2009-11-25 09:07:48 +00:00
Chris Jones
2a76382e47 migrate to using the factory and extend it to have an isinstance() 2009-11-25 00:37:29 +00:00
Chris Jones
1d7adc8283 Port TabLabel across and integrate it. 2009-11-23 15:17:33 +00:00
Chris Jones
9cbc6f1282 Add the very barest of support for tabs. 2009-11-21 22:28:39 -06:00
Chris Jones
b6703153a1 Start a new class derived from Container for gtk.Notebook 2009-11-21 21:53:38 -06:00