public OptionsLoaderViewModel(QueryEditorViewModel queryeditor, OptionsLoader loader, ISession session, bool useBuffer = false) { this.master = queryeditor; this.useBuffer = useBuffer; this.loader = loader; this.session = session; handler = this.Subscribe(Event.NewSession, (e) => { var s = e.GetValue <ISession>(MessageKeys.Session); ReplaceSession(s); }); }
public HrListViewModel(IHrsHolder holder, ISession session, HrViewColumn sorting = HrViewColumn.Ord, HrViewColumn grouping = HrViewColumn.Category) { Contract.Requires(holder != null); Contract.Requires(session != null); this.session = session; this.holder = holder; HolderVm = new HolderViewModel(holder); doNotNotifyLastSelectedChanged = new FlagActionWrapper(() => { OnPropertyChanged(() => LastSelected); logger.DebugFormat("(bulk) selected in order\n{0}", string.Join("\n", selectedOrder)); }); preserveSelected = new FlagActionWrapper <IList <ShortHealthRecordViewModel> >((hrs) => { hrs.ForEach(vm => vm.IsSelected = true); // fix new selected item appears in listbox after movement hrs from diff categories in grouped by category // TODO fix when diff createdAt HealthRecords.Except(hrs).ForEach(x => x.IsSelected = false); }); handler = this.Subscribe(Event.NewSession, (e) => { var s = e.GetValue <ISession>(MessageKeys.Session); ReplaceSession(s); }); hrManager = new HealthRecordManager(holder, OnHrVmPropChanged); hrManager.DeletedHealthRecords.CollectionChangedWrapper += DeletedHrsCollectionChanged; hrManager.HealthRecords.CollectionChangedWrapper += HrsCollectionChanged; view = (ListCollectionView)CollectionViewSource.GetDefaultView(HealthRecords); DropHandler = new DropTargetHandler(this); DragHandler = new DragSourceHandler(); IsDragSourceEnabled = true; IsDropTargetEnabled = true; IsRectSelectEnabled = true; Grouping = grouping; Sorting = sorting; SetHrExtra(HealthRecords); }
public QueryEditorViewModel(ISession session, Action onQbEnter = null) { Contract.Requires(session != null); this.session = session; this.onQbEnter = onQbEnter ?? (Action)(() => { }); var loader = new JsonOptionsLoader(); Loader = new OptionsLoaderViewModel(this, loader, session); var hist = new History <SearchOptions>(); History = new HistoryViewModel <SearchOptions>(hist); QueryBlocks = new ObservableCollection <QueryBlockViewModel>(); QueryBlocks.CollectionChanged += (s, e) => { OnPropertyChanged(() => AllEmpty); }; hist.PropertyChanged += (s, e) => { if (e.PropertyName == "CurrentState") { SetOptions(hist.CurrentState); } }; handler = this.Subscribe(Event.NewSession, (e) => { var s = e.GetValue <ISession>(MessageKeys.Session); ReplaceSession(s); }); AuthorityController.LoggedIn += (s, e) => { SetupQueryBlocks(); }; AuthorityController.LoggedOut += (s, e) => { QueryBlocks.ForAll(x => x.Dispose()); QueryBlocks.Clear(); }; SetupQueryBlocks(); }
public void InMemoryDatabaseTestInit() { Diagnosis.Data.Mappings.MappingHelper.Reset(); NHibernateHelper.Default.InMemory = true; NHibernateHelper.Default.ShowSql = true; Constants.IsClient = true; session = NHibernateHelper.Default.OpenSession(); Load <Doctor>(); AuthorityController = AuthorityController.Default; AuthorityController.TryLogIn(d1); handler = this.Subscribe(Event.NewSession, (e) => { var s = e.GetValue <ISession>(MessageKeys.Session); if (session.SessionFactory == s.SessionFactory) { session = s; } }); }