I just downloaded the last TDM3’s beta and I found that some of the sugestions I (and other users) gave have been implemented. This is what I call a great customers care.
Hoping to be useful, this is a list of some other suggestions.
Overview (View/Overview) cannot be docked
Overview (View/Overview) is not synchronized with the current model: let’s suppose you’re working on a model A and you open the Overview for that model. After that, you start working on another model B: the Overview panel still shows the model A (which is quite useless, because it shows a thumbnail of something that is not on the screen anymore: even clicking on that Overview, dragging the zoom pane and so on nothing happens, because the corresponding model is not active). If you want an overview of the model B you have to select again View/Overview. That is uncofortable, because now you have two Overview panels, one (useful) for the active model B and one (useless) for the model A.
My suggestion: just use ONE overview pane, showing the overview for the currently active model.
Model verification: double clicking on an error, it could open the entity with errors
Database not copied: When you copy an entity, General/Database field is not copied
Page scroll - TDM3 does a strange use of scroll bars. The wide accepted Windows, Mac and Linux standard is that clicking on the space between the scroll arrows and the solid bar you obtain a page scroll, while clicking on the scroll arrows you have a single step scroll. Well, in Workspace window, TDM3 does a single step scroll with both the operations. My suggestion is: adopt the Window’s standard, single step scroll with scroll arrows, page scroll clicking in the empty space of the scroll bar.
Deleting entities: when you press “canc” and you have an entity selected, a sort of confirmation alert appears, asking if you want to delete the entity from the workspace or if you also want to delete it physically. There’s a shortcut for the latter option, SHIFT-Canc, which you can use to delete physically the entity. I think in that case a confirmation alert should be useful (actually, I’m not that sure about this suggestion: even without any alerts, you can use ctrl-z in any case).
Enhanced zoom: TDMBeta3’s CTRL+mouse wheel to zoom in/out is a great idea. Nevertheless, I still think that the old zoom tool too should be improved. I still believe that the two toolbar buttons “Zoom in” and “Zoom out” should work in a different way. (I cannot use the mouse wheel, because I installed TDM3 on a laptop and the emulated mouse wheel seems not working on TDM3). At the moment, if you want to zoomin, you have to
- Click on zoom-in button
- Move to workspace and click once
- Move again to toolbar and click on the tool you were using (you have to remember it)
3 clicks and mouse movemements just for a zoom-in.
My first suggestion is the have an “instant” zoom-in button: just click on it to zoom-in, then you can go on working.
I think that this behaviour is ok for “Zoom box” button, but really useless for the other two, “Zoom in” and “Zoom out”
My second suggestion is: also add the quasi-standard shortcuts (like in Firefox); ctrl + and ctrl - to zoom-in and zoom-out
- DDL scripts for database updates: My most desired feature would be the ability to compare a database A and a database B obtaining not just an HTML report, but the SQL script to be executed against the database A to make it exactly like the database B. Let’s say, for example, I designed a model with TDM3, I used “Generate DDL script” and executed the resulting script against a db client. Doing that, I have a model on TDM3 and the exact coresponding database running on my RDBMS. I can even populate this last. Now, let’s suppose I alter my model using TDM3, adding the attribute “name char(10)” to the entity “customers”, converting the attribute “secondname” in the entity “friends” from “char(5)” to “char(20)” and so on. What I’d really like would be a tool similar to “Model compare” or “Model merge”, able to compare the modified model and the database on my RDBMS (or a corresponing model, obtained with Reverse Engineering) and able to produce
ALTER TABLE customers
ADD COLUMN name char(20);
ALTER TABLE friends ALTER secondname TYPE char(20);
I understand that not every script could be executed (you won’t be able to convert the type of a populated field from text to float without a runtime RDBMS’s error, for example), but I do think there would be a lot of opportunities to use this tool. I also understand this is a really huge request. Let’s say it would be my dream.
And, of course, thank you again.