Commit Graph

199 Commits

Author SHA1 Message Date
CrushedPixel
a218c13b44 GuiElement interface's mouseClick method returns a boolean which is handled by ComposedElement to prevent mouse clicks on multiple elements at once
ComposedElement's entries are sorted so that GuiDropdown are always drawn on top
Modified thrown UnsupportedOperationExceptions in CustomImageObject to not be thrown if asset is null
2015-07-10 14:26:51 +02:00
CrushedPixel
ef39c7466d Renamed the commonly used Position POJO into AdvancedPosition, as it also hold pitch, yaw and roll
Made GuiDropdown only accept instances of GuiEntryListEntry to avoid unneccessary toString() methods returning the name
Added GuiEntryListValueEntry which holds a Value and a Name to be displayed
Continued work on GuiObjectManager
2015-07-10 04:27:15 +02:00
CrushedPixel
30ebfe96bd Allowed GuiTimeline instances to have any height (instead of fixed 22px height) and updated draw() method accordingly
Added HSV noise to GuiTimeline's textures to somewhat hide the repeating body texture
Implemented GuiTimeline in GuiObjectManager's GuiObjectKeyframeTimeline
Added asInt() method to TimestampValue, to avoid int casts of value field
2015-07-10 03:37:13 +02:00
CrushedPixel
5828b04596 "The Commit that properly implements the disabling of Gui Elements"
Added enabled Field to DelegatingElement, which every instance can handle itself
Made isEnabled Field in GuiAdvancedTextField protected for subclasses to access
Made GuiDraggingNumberInput only draggable while enabled
Made GuiDropdown check enabled field before accepting mouse clicks
Properly tints GuiTexturedButton if disabled
2015-07-10 03:37:13 +02:00
johni0702
59e6b87935 Use new Gui API for GuiReplayDownloading 2015-07-09 18:30:31 +02:00
johni0702
d4e04feaeb Use new Gui API for GuiLoginPrompt and GuiRegister 2015-07-09 18:24:15 +02:00
CrushedPixel
4ebf6c5b21 GuiKeyframeRepository always loads the Presets from its current Data set (to respect removed/newly added presets) 2015-07-09 16:41:13 +02:00
CrushedPixel
16b74d9824 Included Path Interpolation methods in KeyframeList and uses it in PathPreviewRenderer
Created newInstance() method in KeyframeValue interface
2015-07-08 23:55:48 +02:00
CrushedPixel
2d19b17626 Finished Layout of GuiObjectManager 2015-07-08 16:54:14 +02:00
CrushedPixel
80a47a61c8 Made GuiDropdown a subclass of GuiAdvancedTextfield, updating the Constructor and removing the now redundant GuiConstants entries 2015-07-08 15:50:12 +02:00
CrushedPixel
e26e09a264 Made GuiDraggingNumberInput fully functional
Linked GuiObjectManager to new Keybinding
Renamed RoundUtils#round to RoundUtils#round2Decimals for easier understanding
2015-07-08 12:13:23 +02:00
CrushedPixel
54f35eca03 Made GuiNumberInput a subclass of GuiAdvancedTextField and removed unneccessary IDs from Constructor and GuiConstants 2015-07-08 11:54:47 +02:00
CrushedPixel
901b175efe Created GuiMarkerTimeline to display Markers again
Created helper methods in ReplayHandler to provide information about MarkerKeyframes
2015-07-08 04:46:44 +02:00
CrushedPixel
5100b63964 Warning, GIGANTIC COMMIT!
Replaced Keyframe subclasses with Generic Types of Keyframe and replaced all instanceof calls
Replaced implementations of Linear and Spline interpolation to interpolate any Object that extends KeyframeValue and contains at least one public double Field. I'll need this for Keyframe interpolation in CustomImageObject Transformations
Made MarkerKeyframe *no* subclass of Keyframe to avoid conflicts with PositionKeyframe in instanceof checks for Keyframe#getValue
Created KeyframeList which extends ArrayList to provide some helping functions which DRY up the ReplayHandler
Split up ReplayHandler's keyframeList into timeKeyframeList and positionKeyframeList
2015-07-08 04:13:24 +02:00
CrushedPixel
89cc6938f8 Reworked AssetRepository to link every Asset to a UUID
UUIDs are now being stored in the Replay File and loaded
2015-07-07 20:14:40 +02:00
CrushedPixel
e22b37babe Created ReplayAsset interface and AssetRepository class which can contain such ReplayAssets. ReplayAssets allow users to add custom Files (so far only images, might be extended by .obj files) to the Replay which will later be used for CustomImageObjects.
Created GuiReplayManager to allow users to manage their assets.
Created BoundingUtils class to provide a simple method to fit an image into given bounds. This implementation fixes https://trello.com/c/WTnicWkJ/
2015-07-07 18:45:48 +02:00
CrushedPixel
5e70eece49 Fixed GuiAdvancedTextField being focusable while disabled. This behaviour was inherited from GuiTextField. 2015-07-07 17:23:22 +02:00
CrushedPixel
cf2a8adb4c Removed backVisible field from CustomImageObject
Updated new instance creations of GuiEntryListEntry whose constructor changed in last commit
2015-07-07 17:04:01 +02:00
CrushedPixel
aa3a13b5a8 Updated GuiEntryList to extend GuiAdvancedTextField instead of GuiTextField 2015-07-07 17:02:39 +02:00
CrushedPixel
9a0c5366e1 Updated ExtendedPosition to include a scale value and added it to GuiAssetAdder (which will be renamed soon) 2015-07-07 17:00:35 +02:00
CrushedPixel
1b189c0dac Added setEnabled() method to GuiElement interface and implemented it everywhere
Made GuiFileChooser a child of GuiAdvancedButton instead of GuiButton
2015-07-07 16:55:49 +02:00
johni0702
392db29b34 Fix toggle buttons no longer working with GuiElement API 2015-07-07 16:38:05 +02:00
johni0702
37c1796dca Move features from GuiTexturedButton to GuiAdvancedButton 2015-07-07 16:30:53 +02:00
johni0702
9867dce79c Fix NPE when there is no hint set 2015-07-07 12:20:00 +02:00
CrushedPixel
948803571d GuiAssetAdder now allows to add/remove/edit Assets in a Replay. These Assets are not being saved yet. 2015-07-06 16:39:40 +02:00
CrushedPixel
a5eadd2d01 Created GuiEntryListEntry interface for GuiEntryList contained classes to avoid toString() methods from having to be abused
Created GuiFileChooser and according Listeners
Added (non-functional) GuiAssetAdder for CustomImageObjects
2015-07-06 13:44:50 +02:00
CrushedPixel
a444d49d70 Doesn't allow rendering if Optifine is installed and shows error screen 2015-07-05 18:16:18 +02:00
CrushedPixel
6e470fb812 Deselects Items in List after deleting Replay File using ReplayViewer 2015-07-05 18:14:32 +02:00
CrushedPixel
5f76577eed Properly multi-threaded File Reloading in GuiReplayViewer | https://trello.com/c/shUBbD2z/ 2015-07-05 15:36:05 +02:00
CrushedPixel
d62e74a6f7 updateCurrentList() Method in GuiReplayCenter properly checks for Thread.interrupted() to avoid long freeze screens when switching Tab 2015-07-05 01:51:38 +02:00
CrushedPixel
5883dbc9be Added Search Tab to Replay Center | https://trello.com/c/13VNghWz/ 2015-07-05 01:43:59 +02:00
CrushedPixel
c7bb053566 Only load Replay Files once in Replay Viewer to prevent the loader Thread from clashing with itself 2015-07-04 22:24:09 +02:00
CrushedPixel
57f094dddb Prevents duplicates from being added when resizing the Replay Viewer 2015-07-04 21:41:56 +02:00
CrushedPixel
da4857ad8e Properly resize Replay List in Replay Center when resizing the video | https://trello.com/c/AcXGDXYY/ 2015-07-04 21:41:25 +02:00
CrushedPixel
770c1da071 Only limit character count in GuiTextArea if it's positive 2015-07-04 21:40:44 +02:00
CrushedPixel
3813673ef6 Added a way to limit a GuiTextArea's maximum character count and used it in GuiUploadFile's Description Text Area
Set GuiUploadFile's Description Text Area's line and width limit to a high value for better results on the website | https://trello.com/c/YS9EyYPF/
2015-07-04 21:16:27 +02:00
CrushedPixel
0743b3e1ac Added Progress Bar and Cancel Button when downloading a Replay File from Replay Center (GuiReplayDownloading) | https://trello.com/c/1ZPhwmp8/ 2015-07-04 17:13:02 +02:00
CrushedPixel
22be6d193a Fixed https://trello.com/c/wwJ2XyGN/ | Jumping in time also moves cursor on Keyframe Timeline 2015-07-04 14:54:49 +02:00
CrushedPixel
ab51cad1fc Resets color before drawing Eye Icon in GuiReplayOverlay | https://trello.com/c/IxHVkYQ8/ 2015-07-03 12:31:14 +02:00
CrushedPixel
d2cead161d Made GuiKeyframeRepository a lot slimmer (it's so sexy now *__*) 2015-07-03 12:25:56 +02:00
CrushedPixel
5960632354 Added Clean Callback Setting to GuiReplaySettings 2015-07-03 11:59:27 +02:00
CrushedPixel
a1941a8be5 Declared several variables in Method declaration final to make the code Java 1.6 compatible 2015-07-03 11:31:50 +02:00
CrushedPixel
c5924dd570 Reworked GuiKeyframeRepository, resolving https://trello.com/c/rEuxk1ls/ 2015-07-03 01:34:53 +02:00
CrushedPixel
6a3104c6bc Moved "Main Menu" Button in Replay Center to the right side because it annoyed Hudeler | https://trello.com/c/wUiKfybu/ 2015-07-03 00:26:26 +02:00
CrushedPixel
ff9e341c9a Added a way to customize the main Command | https://trello.com/c/PAFUGf6x/ 2015-07-03 00:08:19 +02:00
CrushedPixel
071a44e526 Uses ProgressUpdateListener interface in GuiUploadFile 2015-07-02 23:17:59 +02:00
CrushedPixel
8c81dd414e Added new Gui with Progress Bar when editing a Replay using the ReplayEditor | https://trello.com/c/uGFDgv6E/
Added ProgressUpdateListener interface for the use with ProgressBars
2015-07-02 23:08:09 +02:00
CrushedPixel
088bb00ab3 Fixed the GuiLoadingListEntry in the ReplayViewer List being removed at a completely wrong time | https://trello.com/c/O26k7DTC/ 2015-07-02 15:08:51 +02:00
CrushedPixel
e1c19d7537 Made custom command line arguments respect placeholders like %FPS% 2015-07-02 13:25:29 +02:00
CrushedPixel
bfe721c00c Enabled Keyboard.enableRepeatEvents in GuiRenderSettings 2015-07-01 21:12:55 +02:00