Commit Graph

166 Commits

Author SHA1 Message Date
rosenfield
9409c798ab Remove ActualDatabase and ActualTable variables, plus various minor optimizations that ensued from said change. Fixes a problem where when:
- viewing data in a table
 - switching to query tab
 - pressing master refresh
some of the tabs would disappear.
2007-09-11 15:58:47 +00:00
rosenfield
c8da2bf945 Bugfix: Do not reset the enable state to something incorrect of buttons that already has been given correct state. A regression, not sure from which revision. 2007-09-11 09:55:41 +00:00
rosenfield
c8979cd114 Bugfix: A "for Cardinal(i) := 0 to -1" loop in Delphi will run for 2^32 iterations rather than 0 iterations - when a list given to AddUniqueItemsToList() is empty, avoid starting this for loop and thereby avoid a range error when clicking the '+' sign next to an empty database. 2007-09-11 09:27:17 +00:00
Ansgar Becker
25d6112666 Fix autobuild process which couldn't find compilers.inc. D10 + 11 IDE find it anyway because they have the path set in searchpaths. 2007-09-07 07:41:59 +00:00
Ansgar Becker
c44040387c Fullfill feature wish #1754228 : Sort usernames in User-Manager 2007-09-06 14:46:44 +00:00
Ansgar Becker
970d267a23 Implement feature wish #1779324 : Support for field COMMENT in ListColumns and field editor. 2007-09-06 14:39:11 +00:00
Ansgar Becker
2d20176554 Convert last TSortListView to standard TListView, so we can nuke TSortListView completely from our components list.
The ListView in tbl_properties won't support sorting by columnclicking any longer, but that was useless with such a small amount of items anyway.

Further finetuning of list:
- Disable column-click
- Avoid animation on columns + items creation
- Autosize columns correctly
- Refactor WITH .. DO statements
2007-09-05 09:03:08 +00:00
Ansgar Becker
6d72ead5dd Refactor logic in preferences dialog:
- Consistency:
  - Move all global preferences vars from mainform to childwin.
  - Get rid of unused legacy vars NativeFieldTypes + LanguageOffset
- Readability:
  - Add documentation
  - Prefix preferences vars with "pref"
  - Get rid of WITH .. DO statements
2007-09-03 15:44:18 +00:00
Ansgar Becker
b3b0225f8b Code clean up in ReadWindowOptions:
- Get rid of confusing WITH .. DO statement
- Make code more compact and readable (reverts parts of the dodgy revision 620)
2007-09-03 14:39:53 +00:00
Ansgar Becker
cfc49dc186 Fix broken rev 878: Restore preference "Remember WHERE filters" on startup was using the registry folder of the session although it's a global preference. 2007-09-03 14:23:56 +00:00
Ansgar Becker
d095fdb7cb Revamp "Advanced table properties" dialog:
- Synchronize height of all listviews after moving the splitter on one page.
- Drop maximum dimensions of form.
- Store/restore form and list dimensions via registry
- Documentation
- Simplify code
- Add useful popupmenu with items "Copy" + "Select all" to SynMemos which display the CREATE statements
- Rely on modalresult of form, drop OnClick handler of Close-button
- Format sum of table sizes using FormatByteNumber instead of always using KB as the unit of choice.
- Add a statusbar to the form to signalize that the form can be resized.
2007-09-03 13:59:29 +00:00
Ansgar Becker
16c0ac36b3 MySQL 4.0.1 and above allow moving a columns position within an ALTER TABLE statement. Use that to overcome various risks of the manual mechanism for older servers. 2007-09-03 09:38:20 +00:00
Ansgar Becker
21a7d22af9 TimerProcesslist should not exclusively refresh ListProcesses. Instead it look useful that the other two subtabs ListVariables + ListCommandstats have this auto-refresh feature too. 2007-09-03 09:17:08 +00:00
Ansgar Becker
67a4887e0e Make the id-column in ListProcesses slightly wider so large numbers can be viewed without resizing the column. 2007-09-02 23:08:16 +00:00
Ansgar Becker
f279d9cc3f Add support for killing more than one process in one go. 2007-09-02 23:04:42 +00:00
Ansgar Becker
f4ce711c4c Empty table using faster TRUNCATE statement on newer servers. Fullfills feature request #1644143 2007-09-02 22:18:20 +00:00
Ansgar Becker
a140b4d1d6 Fullfill feature request #1724941 Add option "Remember data pane filters across sessions" 2007-09-02 21:54:29 +00:00
Ansgar Becker
544ff577c0 Followup to rev 740: Refresh table cache also after relevant properties of one or more tables got changed by
- TTableComment.ButtonOKClick()
- TMDIChild.EmptyTable()
- TMDIChild.MenuChangeTypeClick()
- TMDIChild.MenuChangeTypeOtherClick()
- TMDIChild.MenuOptimizeClick()
- TMDIChild.MenuRepairClick()
2007-09-02 19:00:28 +00:00
Ansgar Becker
4e9336d10d Minor code simplification: use "continue" instead of large begin/end block 2007-09-02 14:09:20 +00:00
Ansgar Becker
895e69269f Fix AV on comparing mixed column content in VirtualTrees (strings compared to integers) 2007-09-02 13:46:07 +00:00
Ansgar Becker
0f361d5af0 Avoid time consuming animation when DBtree items are deleted and restored in databases with many tables. 2007-09-02 10:36:55 +00:00
Ansgar Becker
bab0a38fe4 MakeInt(): Correctly backconvert strings which were previously formatted by FormatByteNumber() . Fixes incorrect sorting of columns in VirtualTrees which contain some byte values. Also enables us to call FormatToByteNumber() in "Size" column of ListTables. 2007-09-02 10:05:09 +00:00
Ansgar Becker
23a97d93a6 Add accidently deleted icons for SQL help. 2007-09-01 06:17:13 +00:00
Ansgar Becker
40c41d3cbe Add support for TeraByte and PetaByte in FormatByteNumber.
Overcomes a "E2099 Overflow in conversion or arithmetic operation" compiler error by using constants instead of calculating the limits.
2007-08-31 00:03:55 +00:00
Ansgar Becker
8ab0b95440 Implement a more effective solution for hiding and unhiding columns in ListColumns.
Pros:
- ShowDBProperties doesn't reset column layout
- Sort direction is remembered automatically
- Reading columnlist from registry is done once in a TMDIChild, not on each ShowDBProperties
- Hiding/unhiding columns doesn't call ShowDBProperties
- No more hassling with what is called a "default column" or not. popupDBGrid is usable like in Windows Explorer.
- Column layout is stored global, not per session.
Cons:
- Column layout from old settings logic needed to be discarded

Side effect:
- Fixes a potential AV in FormatNumber(str) with empty strings.
- Created an overloaded FormatByteNumber() which can take a string as input
2007-08-30 23:49:38 +00:00
rosenfield
2dee4b326f Fix todo: Replace Ansgar's otherwise adorable icons with a couple of free ones from Mark James.
Scheme:
 * Green arrow means "current window"
 * Computer means "is connected"
 * Lightning means "connect"
 * Plug pull means "disconnect"
2007-08-29 16:09:09 +00:00
rosenfield
996de281d7 * Bugfix: Properly propagate exception when editing forbidden (access denied) data in a grid.
* Cosmetic: Fix haywire indentation in TMysqlQueryThread.Execute.
2007-08-29 01:48:28 +00:00
rosenfield
bf401df253 * Implement Pos2, which takes a start parameter.
* Mask USING {BTREE,HASH,RTREE} from older servers. I wonder why mysqld doesn't do this by itself. Fixes issue #1779065.
2007-08-29 00:49:40 +00:00
rosenfield
80a64fff0b Produce less spam when exporting empty tables. Set your differ to ignore whitespace. Fixes issue #1779063. 2007-08-29 00:20:57 +00:00
rosenfield
0ee7e15e4b Only show tables in the "export tables" window, do not include views.
(Views need to be exported last for an import to work properly, which is a better solution - should do that at some point.  Other stuff needs to be exported too, stored procedures etc).  Fixes issue #1779068.
2007-08-29 00:12:57 +00:00
rosenfield
de147880c4 Bugfix: Fix (improve) positioning of TToolBar elements on Windows Vista. 2007-08-28 23:57:44 +00:00
rosenfield
627bd0b51c Bugfix: Switch to database selected in db tree before firing user query. 2007-08-28 23:23:52 +00:00
Ansgar Becker
e77a3ec06d Fix displaying the current database in childwins window caption. 2007-08-28 23:18:25 +00:00
Ansgar Becker
b9d7377b64 Fix firing various queries via GUI or query-editor on the current database after selecting a db which was cached before. 2007-08-28 23:16:23 +00:00
Ansgar Becker
028790d3e6 Minor simplification of legacy code. I'm sure this change has no visible effect. 2007-08-28 19:39:08 +00:00
Ansgar Becker
98e2fb7541 Minor fix for sorting columns in list which contain large numbers which exceed Integer (fx "Max_data_length"). 2007-08-28 19:35:06 +00:00
Ansgar Becker
e40df52ead Don't call sorting procedure on right clicking header columns. Some list-headers have a contextmenu which should popup then. 2007-08-28 19:32:01 +00:00
Ansgar Becker
7b6e142c60 Get printing function to work with VirtualTrees. 2007-08-27 21:20:39 +00:00
Ansgar Becker
c4f7ada3cb Paint background of sorted columns light grey. Imitates behaviour of the Windows XP Explorer and adds a clear signal to the user that the list is somehow sorted currently. 2007-08-27 20:58:33 +00:00
Ansgar Becker
5d718e5152 Iterate through data arrays of VirtualTrees rather than through the nodes to get their captions. Fixes sorting in ColumnSelection-dialog and other places where GetVTCaptions is called to get all captions (not the selection). 2007-08-27 18:46:21 +00:00
Ansgar Becker
cc470b33fe Fix previous revision: The compiler complains about declaring properties after functions and procedures. 2007-08-27 18:36:26 +00:00
Ansgar Becker
2977bcb735 Encapsulate detection of data array for a VirtualTree in a new function "GetVTreeDataArray". Should make it easier to read data from these arrays instead of the nodes. 2007-08-27 18:32:08 +00:00
Ansgar Becker
46cad8f9eb The right place to call ValidateControls is in ListTables.OnChange rather than in ListTables.OnClick + popupDbGrid.OnPopup. 2007-08-27 18:10:24 +00:00
Ansgar Becker
20ce6fc803 Adjust the withs of columns in ListColumns so they're more usable. Autosizing rightmost column only. 2007-08-27 18:02:22 +00:00
Ansgar Becker
ad14e12595 Don't call VT.SortTree manually. Let AutoSort do the work for us. 2007-08-27 17:55:43 +00:00
Ansgar Becker
bc6c65d28b Call VT.Clear before filling it rather than manually calling ReInitNode after filling data. Seems more consistent and less hackish. 2007-08-27 17:51:02 +00:00
Ansgar Becker
4f2246d598 Fix a minor compiler warning, introduced in previous revision. 2007-08-27 00:04:24 +00:00
Ansgar Becker
3f0b70c409 Switch ListColumns from TSortListView to TVirtualStringTree
Additionally/Sideeffects:
- Fix vstFreeNode to delete the item from the array, not only free the item itself
- Change/Rename GetSelectedNodesFromVT to GetVTCaptions and give it the ability to return all captions, not only the selected. This function is very useful now and saves writing much redundant code.

A table with 500 columns needed 3 seconds to display in the TSortListView, now that takes less than a half second.
2007-08-27 00:01:53 +00:00
Ansgar Becker
1fa1837ec8 Revert revision 841 as discussed on the devels list:
"The example SQL is not proper SQL, so SingleLine mode might [is] be intentional."
2007-08-26 18:10:28 +00:00
Ansgar Becker
f67200157b Fix a focus-issue for rightclicking in ListTables. ValidateControls is called by OnClick, but rightclicking doesn't seem to call OnClick. So, add ValidateControls to popupDbGrid.OnPopup.
Also checking the focused node doesn't say if some nodes are selected. A focused node can even be unselected in the way that its background is not highlighted. So, rather check the selection in ValidateControls.
2007-08-26 06:19:34 +00:00