Commit Graph

36 Commits

Author SHA1 Message Date
Antony Male 26d905c6f0 Explicitly target net5.0-windows
Things worked when referenced from a net5.0-windows project anyway, but might as
well keep with the times
2020-11-28 12:18:14 +00:00
Antony Male 3c7639bdc8 Turns out it is possible to have a single csproj targetting both core and framework
<EnableDefaultItems>false</EnableDefaultItems> along with
<Compile Include="**\*.cs" Exclude="obj\**" /> and <None Remove="**\*.cs" />
is needed, though.
2019-09-22 17:12:54 +01:00
Antony Male f4e6e3ecf5 Split Stylet and IntegrationTests projects into Framework and Core
Annoyingly we need to have two separate projects in two separate directories,
since Framework WPF projects aren't supported in sdk-style csprojs. The
Framework and Core projects also stamp over each others' bin and obj
directories, even if you set IntermediateFilePath, hence the need to put
them in entirely separate places
2019-09-22 17:12:53 +01:00
Antony Male 31e4cb6f72 Freeze BitmapSources before returning them 2015-10-08 14:43:09 +01:00
Antony Male fdfaefa94e Implement another mechanism of backup ActionTarget, using IRootObjectProvider 2015-10-06 12:57:08 +01:00
Antony Male 54cd9cf18f Revert the BindingProxy stuff
Trying to do this properly turns out to just be unworkable
2015-10-06 11:54:33 +01:00
Antony Male 447f68f1f0 Only throw on click if action not found
It turns out there was a lovely little race with View.ActionTarget, where
either the View.ActionTarget or the corresponding {s:Action} could be
evaluated first. This meant setting View.ActionTarget was risky.

It happened to work in previous releases because the bootstrapper accessed
View.ViewManager, which caused its class ctor to run and somehow caused
View.ActionTarget to be evaluated earlier.

I don't think there's a decent way of getting around this: we can't
guarentee the order in which things in Xaml are going to be evaluated.
That's not the WPF way.

Therefore, only throw exceptions if someone actually clicks the button.
2015-10-03 15:50:55 +01:00
Antony Male 7fe21eb40b Turn s:ViewModel into a proper binding, making it vaguely useful 2015-09-24 15:43:06 +01:00
Antony Male b378027018 Introduce proper testing 2015-09-24 13:02:54 +01:00
Antony Male 4d767f0364 Refactor to add {s:ViewModel}, and use that for actions 2015-09-24 12:12:37 +01:00
Antony Male 540482a5f4 YAY IT'S WORKING 2015-09-24 12:12:36 +01:00
Antony Male f4bf876c6b Mucking about with an integration test for BindingProxy
See also SetResourceReference and
BindingOperations.SetBinding(inputBinding, CommandProperty, new Binding("."))
2015-09-24 12:12:35 +01:00
Antony Male a703659095 Playing around with BindingProxy 2015-09-24 12:12:34 +01:00
Antony Male 386b7cb035 Bring more sanity to the Bootstrapper 2015-02-09 12:39:21 +00:00
Antony Male b4b24441aa Rename TryClose to RequestClose, and put in IRequestClose 2015-01-14 20:25:01 +00:00
Antony Male 9e9355ffe0 Add StyleCop support
Most of the violations were documentation changes
2015-01-10 14:22:28 +00:00
Antony Male 509d428dc8 Move back to lots of separate arguments for ShowMessageBox - consistent with MessageBox.Show 2014-12-02 16:16:32 +00:00
Antony Male a421fc6922 Remove AssemblySource, relying instead on a List<Assembly> on BootstrapperBase 2014-11-30 15:19:13 +00:00
Antony Male 0f93eb1832 Remove the IoC class in its entirety - it's not needed any more, and it's a bad idea 2014-11-30 14:23:56 +00:00
Antony Male 83557fa29b Move ShowMessageBox onto the IWindowManager
Having it as an extension method is good architecturally, but make it harder
to change its behaviour. This way, users can override it easily if they wish.

This also means that the WindowManager does not depend on the IoC service
locator, insteady accepting a Func<IMessageBoxViewModel>
2014-11-29 20:50:21 +00:00
Antony Male f45fe0fc9a Fix the integration tests 2014-08-02 17:50:18 +01:00
Antony Male 14f1c4a4d5 Rename StyletLogManager -> LogManager and IStyletLogger -> ILogger, but put in Logger namespace 2014-07-27 18:21:14 +01:00
Antony Male 7952d15e83 Rename ILogger and LogManager to not conflict with NLog 2014-07-26 18:17:49 +01:00
Antony Male 2fa14d3d7f Add LogManager, and logging 2014-07-25 12:46:10 +01:00
Antony Male 0fb379fc77 Correct unintentional change to StyletIntegrationTests/ShellView.xaml 2014-07-25 12:38:29 +01:00
Antony Male 60aca05dd2 Simplify IViewManager, by aligning it to what someone actually wants the ViewManager to do 2014-07-24 16:39:26 +01:00
Antony Male b254f92fe8 Add OnStart hook for when Stylet starts up, and rename the existing hooks to avoid confusion 2014-07-23 13:24:12 +01:00
Antony Male 1beb6dc4d2 Cover a little more code 2014-05-21 12:27:01 +01:00
Antony Male 8a93640ad8 Catch another place were MessageBox.Show was used 2014-05-21 12:23:58 +01:00
Antony Male 719653079a Use MessageBox in the integration tests and samples 2014-05-21 11:32:51 +01:00
Antony Male fc4a7fb61c Push coverage up to 99.7% 2014-05-10 20:11:02 +01:00
Antony Male 5ca2508fc0 More test stuff 2014-05-09 15:43:55 +01:00
Antony Male 4a527c75d6 Push code coverage up to 98.7%, including integration tests 2014-05-09 14:40:40 +01:00
Antony Male 580ba7f865 Change stylet namespace to https://github.com/canton7/Stylet 2014-04-23 17:47:42 +01:00
Antony Male 7391bd6a14 Add integration tests for ActionEvents and CommandEvents 2014-04-09 12:35:59 +01:00
Antony Male b3ec49f567 Start on the integration test suite 2014-04-04 13:04:53 +01:00