┌   ┐
54
└   ┘

summaryrefslogtreecommitdiff
path: root/src/THOUGHTS.zecke
diff options
context:
space:
mode:
authorHolger Freyther <[email protected]>2006-11-29 00:02:19 +0000
committerHolger Freyther <[email protected]>2006-11-29 00:02:19 +0000
commitf31a541925033c2ef5e27b85c099d47791b50121 (patch)
tree11cc728aa7d247ca5b075776c438be0f381be765 /src/THOUGHTS.zecke
parent68e81f7280c810e26cabf6cd2897b9dc8466f458 (diff)
Make it (almost) possible to have more than one Dolphin KMainWindow
Create a DolphinApplication, holding DolphinMainWindows and update the code to use the DolphinView to get the MainWindow, or get a ptr to the MainWindow directly. Or if all windows are effected go through the DolphinApplication to update every mainwindow. The UndowManager and ProgressIndicator have a rather strange relationship and will need some more attention but as UndoManager will be killed anyway I have skipped this. More cleanup, debugging and thinking is needed. svn path=/trunk/playground/utils/dolphin/; revision=608945
Diffstat (limited to 'src/THOUGHTS.zecke')
-rw-r--r--src/THOUGHTS.zecke36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/THOUGHTS.zecke b/src/THOUGHTS.zecke
new file mode 100644
index 000000000..3b9f383fc
--- /dev/null
+++ b/src/THOUGHTS.zecke
@@ -0,0 +1,36 @@
+Zecke's Implementation Thoughts
+
+
+Task: Kill the Dolphin Singleton
+Reasoning: Have more than one Dolphin TLW
+Approach:
+ 1. Create DolphinApplication to hold all TLW's.
+ 2. Make dolphin.h dolphomainwindow.h
+ 3. Change the Views to have a DolphinMainWindow
+ parameter
+
+Reasoning:
+ I find it more natural that the DolphinApplication
+ holds and controls the list of managed MainWindows and
+ will control the life time of them, specially deleting
+ them on exit.
+ The downside is that DolphinApplication and DolphinMainWindow
+ need to work together but this is managable
+
+ Making DolphinView::mainWindow() public. Most users of the
+ current Dolphin::mainView have a pointer to the current view
+ already. We could pass a second pointer for the mainwindow each
+ time but the same can be achieved by using the appropriate
+ DolphinView::mainWindow.
+ Another approach would be to ask the DolphinView to execute
+ actions on the MainWindow like it is done with declareViewActive
+ in DolphinView. I'm not entirely sure which one wins but currently
+ using mainWindow() does not show any negative impact.
+
+ 2 times Dolphin::mainWin was used to check if the view is current.
+ this can be made a method of of the view
+
+ 1 time we want the viewChanged signal of our mainwindow to update,
+ the UrlNavigator could connect a signal to a signal to allow this
+
+ 12 times this was used to access the actionCollection