063099b0c9Upgrade to .NET 6.0 with updated project file
cygon
2024-07-25 13:07:52 +0200
6d6c382870Moved all unit tests into a separate directory
cygon
2024-07-24 18:38:59 +0200
b96e16f027Updated .gitignore in case I ever do a CMake build
Markus Ewald
2024-06-18 19:07:09 +0200
ac82e2f1f6Clarified library dependencies; added Markdown documentation to projects
Markus Ewald
2024-06-18 19:06:01 +0200
01965038dfUsed NuGet to link NUnit
cygon
2024-06-17 23:45:40 +0200
734d06f7bbDissolved dependency on Nuclex.Support.Transactions by dropping two progress reporting helpers
cygon
2024-06-14 17:39:10 +0200
e1a6a8cde7Added proper license and attribution statements
cygon
2024-06-14 17:04:40 +0200
1bb2363a07Changed license to Apache License 2.0
cygon
2024-06-14 16:42:33 +0200
857917aad5Added alternative .NET 4.6.2 project; MultiPageViewForm now has a default constructor just so it doesn't upset the Windows Forms designer
Markus Ewald
2023-10-03 12:35:14 +0000
db68a9741eThe multi page view can now deal with multi page view models that change the active page from a different thread (as it should be, in WPF all bound property change notifications are allowed to come from any thread)
Markus Ewald
2019-02-16 20:06:34 +0000
e16af9dee9Added properties to access the active page view and page view model
Markus Ewald
2019-02-13 22:23:28 +0000
b69488f9a6Page switching now with 100% less flickering; page switching to a null view model is allowed now
Markus Ewald
2019-02-13 22:07:48 +0000
91432c5209The progress spinner can now tell its optimal size required to show the entire status text but overlap as few controls as possible; began implementing a generic version of a multi page view model and matching view with caching
Markus Ewald
2019-02-13 21:26:12 +0000
17ec2d0f69The progress spinner can now also show a status message beneath it (optional)
Markus Ewald
2019-02-13 11:57:01 +0000
bb672c59f8Code cleanup; added one of my long-winded explanations for why the progress spinner does things the way it's doing
Markus Ewald
2019-02-13 11:31:05 +0000
7439c31390Added a progress spinner control that should work on top of WinForms even with its poor transparent control support
Markus Ewald
2019-02-13 11:20:18 +0000
2b908f18ebThe window manager can now also create just view models (without immediately binding a view); added MultiPageViewModel as a base class for the common case of view models that embed multi pages they can switch between; added missing copyright statement for the late checked synchronization context
Markus Ewald
2019-02-13 10:30:19 +0000
a17926d02eViewControl and ViewForm were not actually reacting when their data context changed -- fixed; view models can now delay their search for a main window (needed to synchronize change notifications to the main threads because of those shitty WinForms controls); WindowManager now accepts ...Page as a postfix for a view name, too
Markus Ewald
2019-02-11 18:05:06 +0000
b405fe957bWrapped WinForms' common dialogs into a service, too, in case a view model wants to ask the user to select a file (view models requesting views by activating other view models or services is okay -- it's testable, decoupled and said views/services are fully replaceable)
Markus Ewald
2019-02-07 18:32:14 +0000
0f70f53f18Created a service to display message boxes (view models that want to report errors are usually in a shitty situation - now for simple applications view models can send and error message that will either be displayed or used by a unit test to check the view model is actually failing as expected)
Markus Ewald
2019-02-07 18:03:11 +0000
14d0ea1371Added threaded action to wrap sub-actions a view model can perform (this can either be scheduled individually or on the parent threaded view model); added missing copyright statement; more unit tests
Markus Ewald
2019-02-07 17:36:40 +0000
9aa64c4dacAdded a placeholder auto binding system to automate binding of views to view models without writing so much boilerplate code
Markus Ewald
2019-02-06 18:34:47 +0000
826f2eb763Created a window manager that will automatically locate the matching view to a view model and set up the view's data context for binding; also added an interface through which other services can track the active window (i.e. to display message boxes so view models don't have to drag around a view reference just for that)
Markus Ewald
2019-02-06 18:04:10 +0000
e728a182c5Added some 'dialog view models' that fire events when a dialog is to be closed (this allows ok and cancel buttons to be normally bound, allowing the view model to be unit tested and to run code upon receiving an ok click, the event then signaling to the dialog that it should close with the specified result)
Markus Ewald
2019-02-06 07:30:41 +0000
4ef5dd9430Cleaned and added a base class for view models with background processing tha uses the new ThreadedAction class to do its background processing; added a view binding interface for WinForms that emulates the WPF design
Markus Ewald
2019-02-06 07:00:27 +0000
435935691aUpdated copyright statement and pasted it where it was missing; some cosmetic fixes
Markus Ewald
2019-02-01 20:06:36 +0000
c71700f8e6ContainerListView unit test is now also explicit so the test suite can run on headless systems
Markus Ewald
2014-07-21 16:26:45 +0000
d5895e2e7dMade more tests explicit so this library can be compiled on a headless system
Markus Ewald
2014-07-21 15:50:07 +0000
ac9431bb4bMade the TestProgressAssignment test explicit because it cannot run in headless mode
Markus Ewald
2014-07-21 15:33:39 +0000
76758fe357Updated svn:ignore list to include NCrunch
Markus Ewald
2012-03-11 09:09:53 +0000
b635bb21deSwitched to an ObservableList in response to the change to Nuclex.Support
Markus Ewald
2011-10-25 14:59:46 +0000
e504124d73Updated projects to reference the new Nuclex.Support.Transactions assembly
Markus Ewald
2011-08-14 11:06:39 +0000
3a847b07d6Assembly is now signed with a strong name key
Markus Ewald
2011-02-14 18:15:40 +0000
c8fe6ed289Removed XNA 3.1 and .NET 2.0 projects
Markus Ewald
2010-11-20 11:39:20 +0000
79dc343d9bAdded .NET 4.0 project; renamed .NET 2.0 project in accordance with new naming convention
Markus Ewald
2010-05-18 12:54:42 +0000
082e73aab5Minor documentation change for readability
Markus Ewald
2010-03-30 11:05:26 +0000
8d092bd9e8Removed the EmbeddedControlCollection (it's not being used anymore at all); fixed flickering of the ContainerListView control
Markus Ewald
2010-02-18 18:40:44 +0000
9a5252f461Fixed the remaining issues in the ContainerListView control; minor documentation improvements
Markus Ewald
2009-11-03 19:41:14 +0000
985f2622aaSwitched ContainerListView to use the new ObservableCollection class for embedded controls instead of its custom collection; updated ProgressReporterForm to match current coding conventions
Markus Ewald
2009-04-01 19:38:32 +0000
112e5993efFollowup-Change to the rename from Waitable to Transaction; fixes several comments which were still referring to "Progression", the stone-age name of the concept; fixed a minor grammatical error in the comments
Markus Ewald
2008-12-14 18:06:31 +0000
4c24b82836The ProgressReporterForm was still referring to "progressions" (old name for the request class) in some places - fixed; improved code documentation
Markus Ewald
2008-10-29 20:50:55 +0000
39f1e6a4c9Project is now architecture-independent since Nuclex.Support (which is used by Nuclex.Windows.Forms) is no longer bound to x86 (XNA dependencies have been moved to Nuclex.Game)
Markus Ewald
2008-08-14 21:19:02 +0000
0d150722b1Followed the rename of "Nuclex.Support (x86)" to "Nuclex.Support" is all projects referring to the support library; some minor documentation improvements; the fonts demo no longer displays text at an almost invisible transparency level
Markus Ewald
2008-08-03 18:41:23 +0000
4c0a432b44Renamed Nuclex.Windows.Forms project to Nuclex.Windows.Forms (x86) since it will only work on x86 mode (due to the reference to Nuclex.Support)
Markus Ewald
2008-06-24 19:44:32 +0000
1063c4f0f2Fixed a glaring bug in the ProgressReporter which could throw exceptions into the ProgressChanged event handler (race condition between dialog setup and first progress message)
Markus Ewald
2008-06-18 19:20:25 +0000
6ab7e999adUpgraded project to Visual C# 2008 Express (still using .NET Framework 2.0)
Markus Ewald
2008-05-14 19:53:43 +0000
2a7d04ce45Updated ProgressReporterForm to reflect the latest changes to the Tracking framework; renamed WeightedProgression.cs to WeightedWaitable.cs in order to match the previous name changed of the class contained therein; improved documentation of the Camera class
Markus Ewald
2008-03-27 18:34:17 +0000
7b46b57833Renamed Gui to Screen in the UserInterface library; improved documentation in ProgressionTracker
Markus Ewald
2007-12-20 19:15:33 +0000
f9e7579f23Added missing content project in Nuclex.Fonts.Demo; fixed solution and NAnt build script; added *.user to the ignore lists of all XNA content projects as it seems these are generating those annoying files, too; fixed build configuration for any remaining projects that have shown issues in the test builds
Markus Ewald
2007-12-14 21:08:35 +0000
cc8688917fUpgraded all projects to XNA 2.0; project files now use (x86) instead of (PC) to indicate an x86 build (more logical and readily associated with the build platform); moved all text files into their project's documents folder; fixed any build configuration inconsistencies encountered along the way; renamed Nuclex.Graphics.Effects to Nuclex.Graphics.SpecialEffects to avoid confusion with the XNA 'Effect' class
Markus Ewald
2007-12-14 20:43:34 +0000
0c72fe2d9eFixed Box3 which still had a 'center' argument in its constructor despite the transformation matrix being given; set all projects to always use the x86 configuration to avoid trouble on Windows Vista x64 (all of them are directly or indirectly dependent on XNA, which only works in an x86 environment); improve GeoAssert unit tests for Nuclex.Geometry to provide more meaningful fail messages for the unit tests
Markus Ewald
2007-12-10 21:22:14 +0000
b93bb04f5fSwitched assemblies to always use 32 bit runtime (most are using the XNA runtime, so the AnyCPU configuration would only wreak havoc on x64 platforms); progress reporter window is no longer resizable
Markus Ewald
2007-12-10 20:22:55 +0000
1de87c2c00Added a tool strip host for the tracking bar, allowing it to be embedded inside a status bar; fixed a bug in the progress reporter form that would prevent AsyncAbort() from actually being called when the user clicked on the cancel button; AsyncProgressBar no longer changes the style of the progress bar, this is now up to the user; ProgressReporterForm now switches ProgressBar between Marquee and Blocks styles on its own; various formatting enhancements
Markus Ewald
2007-12-04 20:54:42 +0000
f37b946a3dSwitching to new project layout to lessen the size of the workspace and therefore reduce server load and patch size of CI server; Removed all assembly references from all projects as these will now be set up only once in the workspaces instead
Markus Ewald
2007-10-16 20:49:04 +0000
5c913cc48aImproved AsyncProgressBar documentation and fine tuned the progress bar's behavior
Markus Ewald
2007-09-12 18:52:41 +0000
4261d9b449Ported the ProgressReporter and the TrackingBar to the AsyncProgressBar control to eliminate the very similar code both controls were using to perform thread synchronization
Markus Ewald
2007-07-22 21:55:35 +0000
4734c35111Extracted and improved the code used to asynchronously update a progress bar without blocking in order to remove similar code from the progress dialog and the tracking bar
Markus Ewald
2007-07-19 21:16:20 +0000
c5fba24733Added a progress reporting form that provides a convenient way to lock up the user interface during all-exclusive background processes
Markus Ewald
2007-07-17 19:33:18 +0000
19c55f370eFully implemented the tracking bar control which will now act as a specialized progress bar for tracking progressions
Markus Ewald
2007-07-16 19:00:02 +0000
e48d9d3643Made adjustments to reflect the recent name change of Nuclex.SpecialFx to Nuclex.Graphics.Effects; fixed all remaining compiler warnings
Markus Ewald
2007-07-02 18:54:34 +0000
6af905e107Fixed a small typo
Markus Ewald
2007-05-22 18:17:01 +0000
b6257ae0e9Added empty class for planned TrackingBar control; copied CPL statement in front of all source files
Markus Ewald
2007-05-11 21:23:35 +0000
f36cfeb68fUpgraded to NUnit 2.4.0
Markus Ewald
2007-04-13 19:31:53 +0000
ed2eb1443eThe ContainerListView control should now be working the way it way intended to
Markus Ewald
2007-04-02 18:49:05 +0000
a82371fa93Initial import of Nuclex.Windows.Forms, containing a special ListView control that can contain embedded controls in its cells
Markus Ewald
2007-03-30 19:52:40 +0000