Commit Graph

210 Commits

Author SHA1 Message Date
Andreas Schneider 6c9a474003 - Changed handling of CurrentTile and SelectedTile to avoid unnecessary invalidations 2009-09-30 19:29:32 +02:00
Andreas Schneider 94d77d4a00 - Changed TVirtualTile to inherit directly from TWorldItem
- Added FRepaintNeeded to minimize unnecessary repaints
2009-09-29 16:06:52 +02:00
Andreas Schneider 0cee996fbc - Reimplemented the Virtual Layer 2009-09-29 02:25:19 +02:00
Andreas Schneider 99c21fa951 - Added Logging unit and MultiLog dependency
- Removed StaticsFilter parameter from FillDrawList
2009-09-28 18:16:29 +02:00
Andreas Schneider b9ef61c0db - Added UfrmToolWindow
- Changed the tool windows to inherit from TfrmToolWindow
- Added a "close timer" to TfrmToolWindow to handle different focus behaviours of window managers
- Moved position changes for the tool windows to the appropriate TfrmToolWindow.FormShow event
2009-09-02 03:21:39 +02:00
Andreas Schneider d769c7ddc3 - Added version info to the project options
- Added new icon
2009-08-31 22:24:54 +02:00
Andreas Schneider 237c9765cd - Added filter management to TfrmMain
- Changed screen buffer state handling to enums
2009-08-06 17:34:55 +02:00
Andreas Schneider 2cfde3eea5 - Changed TfrmFilter to enable tile and hue filter on tile/hue list changes
- Changed TfrmFilter placement to be off by -4 in x and y direction
- Disabled "scroll to center" in TfrmMain's TileList
- Disabled unncessary drag operations in TfrmMain's TileList
2009-08-06 15:42:19 +02:00
Andreas Schneider 2b040fc5e3 - Disabled use of normals (weren't really in use anyway)
- Added updating of the last shortcut in TScreenBuffer
2009-08-06 15:04:09 +02:00
Andreas Schneider 28969d94f7 - Removed merge sort implementation
- Use a temporary array and QuickSort (TList.Sort) to sort the initial drawlist
- Clear the drawlist in the TLandscape.FillDrawList method
2009-08-04 18:02:39 +02:00
Andreas Schneider 1f1f5ac7b4 - Added TLandscape.OnMapChanged to handle changes to map tiles
- Reenabled terrain, statics, nodraw and flat toggles
- Fixed editing target list generation (in OnMouseUp) to only consider "normal" tiles, use their correct new order and the CanBeEdited attribute
- Removed obsolete TfrmMain.CanBeModified
2009-08-03 19:32:03 +02:00
Andreas Schneider 2ea8601402 - Added handling for hue changes (OnStaticHued) 2009-08-03 18:55:54 +02:00
Andreas Schneider a71c1bd570 - Added fpdoc paths
- Started some documenting
- Added TScreenBuffer.UpdateSortOrder to handle elevations
2009-08-03 18:40:31 +02:00
Andreas Schneider 1bc9ad3fe1 - Added handling of new blocks (OnNewBlock event) 2009-08-03 00:29:55 +02:00
Andreas Schneider 2e16269397 - Extracted TfrmMain.PrepareScreenBlock from RebuildScreenBuffer
- Added events for OnStatic-Inserted, -Deleted and -Elevated
2009-08-02 20:45:23 +02:00
Andreas Schneider fbbe988dd6 - Replaced usages of UListSort with TList.Sort
- Removed now obsolete UListSort.pas
- Removed GameResourceManager dependency from TStatics
- Moved TSeperatedStaticBlock to the according ULandscape units
- Cleanup some unnecessary <> nil checks
2009-08-02 19:08:56 +02:00
Andreas Schneider dc932985e2 - Made cedserver compile with FPC 2.2.3 2009-08-02 18:43:32 +02:00
Andreas Schneider b70f03ba2a - Added iterator to TCacheManager
- Added access (CanBeWritten) tracking to TStaticItem
- Moved TLandscape.UpdateStaticsPriorities to TStaticItem.UpdatePriorities
- Moved ULandscape.CompareWorldItems to UWorldItem
- Renamed TSeperatedStaticBlock.RefreshList to RebuildList
- Changed TStaticBlock.Sort to use CompareWorldItems and TList.Sort
- Some code style changes
2009-08-02 13:45:26 +02:00
Andreas Schneider f3888db49c - Removed several unnecessary panels from frmMain (using Anchors instead) 2009-07-31 17:03:26 +02:00
Andreas Schneider dc1f425353 - Added tracking of "Highlighted" state in the screen buffer 2009-07-30 20:31:29 +02:00
Andreas Schneider 01d5fb98d1 - Optimized blockInfo.ScreenRect calculation for static tiles
- Fixed TScreenBuffer.Find to correctly handle the new buffer usage (search at the end, not the beginning)
2009-07-30 17:04:49 +02:00
Andreas Schneider 1196ad6425 - Fix Z-order calculation for terrain tiles (thanks Turley) 2009-06-12 12:31:14 +02:00
Andreas Schneider 31d2623df9 - Changed terrain rendering from GL_TRIANGLES to GL_QUADS to fix coastlines and other overlapping (thanks Turley) 2009-06-11 14:41:30 +02:00
Andreas Schneider 7fdfd1ee23 - Merged TTileList into TScreenBuffer
- Added shortcuts to TScreenBuffer to speed up the InsertionSort
- Renamed TScreenBuffer.Store to TScreenBuffer.Insert
- Added TScreenBuffer.Add to append to the list
- Added TScreenBuffer.Sort to sort the list using MergeSort
- Changed TLandscape.FillDrawList to just append to the list and sort afterwards
- Added screen buffer invalidation on TfrmMain.OnLandscapeChanged
2009-05-20 18:16:18 +02:00
Andreas Schneider 0d6c151c5f - Removed TVector2D
- Added screen buffer (in)validation
- Moved distance calculations to RebuildScreenBuffer
- Added tile drawing to the Render method
- Added DrawQuad precalculation to the post processing of the screen buffer
- Renamed the members of TScreenState
- Changed the DrawQuad to consist of TGLfloats for direct pointer passing
- Fixed the while loop condition in TScreenBuffer.Store
2009-05-18 00:33:59 +02:00
Andreas Schneider 561104a924 - Added screen buffer pre processing (prepare materials and normals)
- Added 2D Vector to store the points for drawing terrain
- Added additional GetNormals function to TLandscape to fill an existing array
2009-05-17 22:06:42 +02:00
Andreas Schneider fee66eada8 - Refined state handling for TBlockInfo
- Added caching of normals into TBlockInfo
- Added differentiation for low and high res materials to TBlockInfo
- Removed draw list clearing from FillDrawList
- Changed TScreenBuffer.Store to return a reference to the stored TBlockInfo
- Added missing ; to GetSerial
- More cleanups in ULandscape.pas
- Moved several local variables of TfrmMain.Render into TfrmMain members
- Moved several size related variable initializations from Render into OnResize
- Extracted GetDrawOffset
- Added seperate RebuildScreenBuffer
2009-05-17 15:32:51 +02:00
Andreas Schneider 61db743ee5 - Cleanup in ULandscape.pas
- Removed unncessary virtual and ghost tile handling from FillDrawList
- Added serial generation and tracking to TScreenBuffer
- Added editing state tracking to TScreenBuffer
- Changed TScreenBuffer.Store to perform an InsertSort
- Changed TScreenBuffer.Store to handle only the most necessary parameters
2009-05-17 14:12:52 +02:00
Andreas Schneider 2f560a7738 - Changed rendering to build the draw list for the whole range
- Added CanBeEdited flag to TWorldItem
- Changed list sorting from custom heap sort implementation to the FCL standard (QuickSort)
2009-05-15 23:37:10 +02:00
Andreas Schneider c20a160543 - Some cleanups in UArt.pas
- Changed the console command for the cedserver project
2009-05-15 22:10:51 +02:00
Andreas Schneider 7e86c7400c - Added more checks to statics loading and saving and replaced unnecessary LongInt casts 2009-03-09 17:24:53 +01:00
Andreas Schneider 114c218ca6 - Added some more comments to ULandscape.pas
- Renamed a somewhat unclearly named series of local variables ("item" --> "subscriptionItem") to better suite its context
2009-02-15 18:04:54 +01:00
Andreas Schneider 45537315b5 - Updated to a recent VirtualTrees revision
- Updated README accordingly
2009-01-27 10:45:01 +01:00
Andreas Schneider e727aadcf2 - Fixed TfrmEditAccount.RegionDeleted to check, if the region is known (to prevent index out of bounds errors)
- Fixed UfrmMain to be compatible with newer versions of FPC
- Added a slider to frmRegionControl
- Added buttons to add and delete regions to frmRegionControl
- Fixed unsaved regions not being removed in TfrmRegionControl
- Extracted TfrmRegionControl.CheckUnsaved
2008-09-28 22:00:32 +02:00
Andreas Schneider 01f5b2ca58 - Removed an unnecessary file from the project file 2008-10-22 11:46:50 +02:00
Andreas Schneider da87485fc5 - Changed TTileData.FFileName to get trimmed after initialization 2008-09-15 22:58:46 +02:00
Andreas Schneider ac37625746 Added tag 0.4.1 for changeset 49a3b10841f0 2008-09-07 15:41:58 +02:00
Andreas Schneider 8a3f00fd4c - Updated version to 0.4.1
- Updated changelog
2008-09-07 15:40:23 +02:00
Andreas Schneider 7399b13fd0 - Fixed WheelDelta not being adjusted right 2008-09-06 23:08:50 +02:00
Andreas Schneider cc8eee1b1b - Fixed VirtualLayer preparation for corner cases (where the size would have been too small) 2008-08-29 14:55:00 +02:00
Andreas Schneider 0e841f864d - Merged changes from Turley (elevate with random altitude)
- Rearranged the TfrmElevateSettings dialog
- Fixed transparency settings of the images in the TfrmLogin dialog
- Fixed TfrmRegionControl to not react on mouse clicks if no region is selected
- Updated Vampyre Imaging Lib to recent SVN
- Added missing cedserver_config_2_3 project file
2008-08-29 12:09:26 +02:00
Andreas Schneider fcb7c8a794 Added tag 0.4.0 for changeset 7fc49d217f99 2008-08-27 20:59:06 +02:00
Andreas Schneider d0c65f912b - Fixed a missing event assignment in TfrmBoundaries (Min/Max spinedits didn't react to OnChange)
- Fixed a typo in cedserver_config_2_3.lpr ("Accesslevel" <> "AccessLevel")
2008-08-27 20:56:31 +02:00
Andreas Schneider de21e6efde - Added converter for cedserver configs from version 2 to 3
- Updated changelog
- Updated installer
- Updated version to 0.4.0 and revision to 64
- Fixed about dialog
- Added some more exclusions to .hgignore
2008-08-27 13:18:09 +02:00
Andreas Schneider 1c3d624949 - Added client side visualization of area restrictions
- Added an icon to the "Region control" menu item
- Changed the former TAccessLevelChangedPacket and the TLoginResponsePacket to add informations about the writeable areas
- Changed OnModifyUserPacket to update clients according to new accesslevel/area restrictions
- Changed OnModifyRegionPacket to update clients using that particular region
- Fixed UPacketHandlers.ValidateAccess to check the region bounds according to the PtInRect function
2008-08-26 22:48:48 +02:00
Andreas Schneider 91af86a294 - Added ability to edit regions for accounts
- Added AccessChangedListener to allow several listeners to react on accesslevel changes
- Changed TModifyUserPacket to support the region lists
- Fixed a region list parsing bug in TfrmAccountControl.OnListUsersPacket (Unsigned vs. Signed Integer)
- Fixed the order of form creation in TdmNetwork to assure the functionality of the region and account control
- Added some glob entries to .hgignore
2008-08-25 17:33:38 +02:00
Andreas Schneider 85cc0c0066 - Fixed/Removed some compiler warnings and hints
- Some more syntactic changes to UfrmRegionControl.pas
- Implemented region modification and deletion
- Changed the server side region handling to broadcast the changes
- Added safer admin packet registration
- Added some more units to the project files
2008-08-23 23:09:20 +02:00
Andreas Schneider 49e095a83f - Added missing URegions.pas
- Disabled .hgignore for now
2008-08-19 15:35:14 +02:00
Andreas Schneider d5069bbb50 - Fixed memory leak in TfrmFilter (not freeing FCheckedHues)
- Fixed memory leak in TfrmMain (not freeing the strings in the location info nodes)
- Rearranged frmEditAccount to allow region handling
- Added region handling to the client side account specific network packets
- Fixed some more code style inconsistencies in UfrmRegionControl.pas
- Fixed redrawing in TfrmRegionControl
- Fixed memory leak in TAccount (not freeing FRegions)
- Fixed the TModifyRegionResponsePacket ID
- Fixed the content of the TUserListPacket to not contain the list of all regions
2008-08-17 20:12:36 +02:00
Andreas Schneider c7d845997e - Changed alignment of frmBoundaries and frmVirtualLayer
- Added ParentFont to all controls to keep a consistent look among all widgetsets and DE settings
2008-08-17 15:38:54 +02:00