Skip to content

windows-party tesonet assignment implementation#34

Open
OrletSoir wants to merge 11 commits intotesonet:masterfrom
OrletSoir:master
Open

windows-party tesonet assignment implementation#34
OrletSoir wants to merge 11 commits intotesonet:masterfrom
OrletSoir:master

Conversation

@OrletSoir
Copy link

Really enjoyed tackling this task, as I have never worked with Caliburn.Micro framework before, and to my horror found out that my WPF skills are so rusty I might as well get new ones. Which I did, thanks to this task!

  • Tried to follow the UI style and layout as closely to the provided assets as possible, although the .psd file gave me some headache (too new format for my PS CS2 to open, so I had to improvise).
  • Could not find exact background images used in the assets, so I grabbed some similar ones off Google. Image authors credited in filenames.
  • PasswordBox provided me with a set of quite unique challenges, some of which could only be resolved by the use of black magic.
  • The included JSON parser is from a battle-tested project of mine from a few years back, which I decided to use over 3rd-party library. I just gave it a TLC pass, as it was a bit dusty from all these years.
  • Logging uses NLog logger, configured to drop everything asynchronously into windows-party.log file in app's root directory. Logger configuration is in Core/App.config (windows-party.exe.config in binaries folder).
  • Target .NET framework: v4.7.2
  • Compiled Windows binaries for both Debug and Release configurations included in Releases.

Crude login box with bindings.
further developing the thing.

* pulled "login" out into separate IScreen
* made "main" a conductor window
* whapped "login" into conformity with IoC (via property inj.)
* added login success event
* broke and thne un-broke the password field (again)
* server list window
* logout action
* added Json parser
* added Http handler
* implemented login functionality
Moved some Datacontext files around
* more component reshuffling
* interface all the things!
* it's now actually working
* still looks like sh!t tho.
Or at least not ugly anymore! Progress, right?
* offloading the login auth onto event-based async
* ((some eurobeat mildly playing in the background))
* servers are now async-fetched too!
* added logging. Not the Amazon rainforest type of logging!
* extended the logging operation to framework
* tweaked some graphical elements around (login field borders when focused, logout button icon)
* figured out how to reset password field w/o framework throwing a hissy fit (thanks, logging)
* added a KeyPress binds for login form fields (you can now press enter to login)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant