public PhotoPreviewWindow(Entities.PhotoExteded photo, VKontakteApiWrapper wrapper)
        {
            InitializeComponent();

            if (photo != null) PhotoObj = photo;

            if (wrapper != null)
                this._vkWrapperWeak = new GenericWeakReference<VKontakteApiWrapper>(wrapper);

            CurrentFoto = Path.Combine((Application.Current as App).AppFolder, "Photo", Path.GetFileName(photo.SourceBig));

            if (App.Current.ImageCacheInstance.IsCached(photo.SourceBig))
                imgPreview.Source = PhotoObj.SourceBig.GetImage();
            else
            {
                WebClient web = new WebClient();
                web.DownloadDataAsync(new Uri(PhotoObj.SourceBig, UriKind.RelativeOrAbsolute));
                web.DownloadDataCompleted += web_DownloadDataCompleted;
            }

            if (!System.IO.File.Exists(CurrentFoto))
            {
                using (WebClient client = new WebClient())
                {
                    client.DownloadFileCompleted += client_DownloadFileCompleted;
                    client.DownloadFileAsync(new Uri(PhotoObj.SourceBig, UriKind.RelativeOrAbsolute), CurrentFoto);
                }
            }

            this.Loaded += new RoutedEventHandler(PhotoPreviewWindow_Loaded);
            headerLabel.MouseLeftButtonDown += new MouseButtonEventHandler(headerLabel_MouseLeftButtonDown);
        }
        private void DoLogin()
        {
            IsLoginButtonPressed = true;
            if (LoginData == null) return;

            WebClient webClient = new WebClient();
            webClient.Headers.Add("uid", LoginData.LoginName);
            webClient.Headers.Add("pass", LoginData.Password);
            webClient.Headers.Add("logonType", "0");
            GenericWeakReference<WebClient> weakClient = new GenericWeakReference<WebClient>(webClient);

            var eventStream = Observable.FromEventPattern<DownloadDataCompletedEventArgs>(weakClient.Target, "DownloadDataCompleted").
                                SubscribeOn(Scheduler.NewThread).Select(newData => newData.EventArgs.Result);

            subscription = eventStream.ObserveOn(System.Threading.SynchronizationContext.Current).Subscribe(OnDatareceived,
                //on error
                ex =>
                {
                    if (ex is AggregateException)
                        System.Windows.MessageBox.Show((ex as AggregateException).Flatten().Message);
                    else
                        System.Windows.MessageBox.Show(ex.Message);
                    ViewModel.ViewModelLocator.Logger.Error(string.Empty, ex);
                });

            webClient.DownloadDataAsync(new Uri(ConfigurationManager.AppSettings["loginUrl"]));
            weakClient.Dispose();
            weakClient = null;
        }
 public DocumentViewerWindow(VKontakteApiWrapper wrapper)
 {
     InitializeComponent();
     if (wrapper == null)
         throw new ArgumentNullException("wrapper");
     _vkWrapper = new GenericWeakReference<VKontakteApiWrapper>(wrapper);
 }
        public PhotoViewerWindow(VKontakteApiWrapper wrapper)
        {
            InitializeComponent();
            this.Closing += new System.ComponentModel.CancelEventHandler(PhotoViewerWindow_Closing);

            if (wrapper == null)
                throw new ArgumentNullException("wrapper");
            _wrapperWeak = new GenericWeakReference<VKontakteApiWrapper>(wrapper);
        }
        //private ILogger _logger = null;
        public Loader(IUnityContainer container)
        {
            _weakCont = new GenericWeakReference<IUnityContainer>(container);
            InitializeCoreServices();
            LoadCommands();
            LoadMenus();

            //LoadTheme();
            //LoadToolbar();
        }
Example #6
0
        //private ILogger _logger = null;

        public Loader(IUnityContainer container)
        {
            _weakCont = new GenericWeakReference <IUnityContainer>(container);
            InitializeCoreServices();
            LoadCommands();
            LoadMenus();

            //LoadTheme();
            //LoadToolbar();
        }
Example #7
0
        public void InsertObject(ISerializableObject iso, DbConnection connection, ISerializerTransaction transaction)
        {
            AttributeWorker w   = AttributeWorker.GetInstance(Target);
            DbCommand       com = connection.CreateCommand();

            com.CommandText = _owner.SerializeInsert(iso);
            transaction.Guard(com);
            //Console.WriteLine(com.CommandText);
            try
            {
                //Console.WriteLine(com.ExecuteNonQuery());
                com.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                throw new SerializerException("insert failed", ex);
            }



            FieldInfo autoincField;
            Guid      g = AttributeWorker.RowGuid(iso);

            if ((autoincField = w.GetAutoincField(iso.GetType())) != null)
            {
                StringBuilder b = new StringBuilder();

                b.Append("SELECT * FROM ").Append(w.GetTableMapping(iso.GetType(), _owner.Praefix)).Append(" WHERE ");
                b.Append(w.GetColumnMapping(AttributeWorker.RowGuid(iso.GetType()))).Append("='");
                b.Append(g.ToString()).Append("'");

                com.CommandText = b.ToString();
                DbDataReader r = com.ExecuteReader();

                if (r.Read())
                {
                    Object o = r[w.GetColumnMapping(w.GetAutoincField(iso.GetType()))];
                    autoincField.SetValue(iso, o);
                }
                else
                {
                    r.Close();
                    throw new SerializerException("Insert core method failed! error unknown...");
                }

                r.Close();
            }


            GenericWeakReference <ISerializableObject> tmp = new GenericWeakReference <ISerializableObject>(iso);

            _persistentObjects[g] = tmp;
            MemoriseKeys(iso, w, tmp);
        }
Example #8
0
        private static void MemoriseKeys(ISerializableObject iso, AttributeWorker w, GenericWeakReference <ISerializableObject> gwr)
        {
            IDictionary <String, FieldInfo> pkf = w.GetPrimaryKeyFields(iso.GetType());

            foreach (FieldInfo fi in pkf.Values)
            {
                if (w.IsAutoincID(fi))
                {
                    continue;
                }
                gwr.Properties[fi.Name] = fi.GetValue(iso);
            }
        }
Example #9
0
 public RecentMenuItemViewModel(string header, int priority, IUnityContainer container = null, ImageSource icon = null,
                                ICommand command = null, KeyGesture gesture = null, bool isCheckable = false)
     : base(header, priority, icon, command, gesture, isCheckable)
 {
     if (container != null)
     {
         _containerWeak = new GenericWeakReference <IUnityContainer>(container);
         IFileHistoryService service = _containerWeak.Get().Resolve <IFileHistoryService>();
         if (service != null)
         {
             _historyServWeak = new GenericWeakReference <IFileHistoryService>(service);
             _historyServWeak.Get().RecentChanged += RecentMenuItemViewModel_RecentChanged;
         }
     }
 }
        public FullViewViewModel(IFullView view, IUnityContainer cont)
            : base(view)
        {
            _container = new GenericWeakReference<IUnityContainer>(cont);
            _resourcePath = "FullViewModule.Highlightings.Default.xshd";

            if (_container.IsAlive)
                ToolbarViewModel = _container.Get().Resolve<IToolbarViewModel>();

            if ((this.View as IWindow) != null)
            {
                (View as IWindow).Loaded += FullViewViewModel_Loaded;
                (View as IWindow).Closing += FullViewViewModel_Closing;
            }
        }
Example #11
0
        public void Dispose()
        {
            if (disposed == 1)
            {
                return;
            }
            disposed = 1;

            if (_container != null)
            {
                _container = null;
            }
            (View as IWindow).Loaded  -= FullViewViewModel_Loaded;
            (View as IWindow).Closing -= FullViewViewModel_Closing;
        }
        public RecentMenuItemViewModel(string header, int priority, IUnityContainer container = null, ImageSource icon = null,
								ICommand command = null, KeyGesture gesture = null, bool isCheckable = false)
            : base(header, priority, icon, command, gesture, isCheckable)
        {
            if (container != null)
            {
                _containerWeak = new GenericWeakReference<IUnityContainer>(container);
                IFileHistoryService service = _containerWeak.Get().Resolve<IFileHistoryService>();
                if (service != null)
                {
                    _historyServWeak = new GenericWeakReference<IFileHistoryService>(service);
                    _historyServWeak.Get().RecentChanged += RecentMenuItemViewModel_RecentChanged;
                }
            }
        }
Example #13
0
        public FullViewViewModel(IFullView view, IUnityContainer cont)
            : base(view)
        {
            _container    = new GenericWeakReference <IUnityContainer>(cont);
            _resourcePath = "FullViewModule.Highlightings.Default.xshd";

            if (_container.IsAlive)
            {
                ToolbarViewModel = _container.Get().Resolve <IToolbarViewModel>();
            }

            if ((this.View as IWindow) != null)
            {
                (View as IWindow).Loaded  += FullViewViewModel_Loaded;
                (View as IWindow).Closing += FullViewViewModel_Closing;
            }
        }
Example #14
0
        public ISerializableObject RetrieveObject(Type objectType, DbDataReader reader, ref bool isLoaded)
        {
            if (_cleaner == null)
            {
                throw new NullReferenceException("No cleaner attached SerializableObjectPool needs a Cleaner to work...");
            }

            ISerializableObject ret = null;



            FieldInfo fi = AttributeWorker.RowGuid(objectType);
            Object    o  = reader[AttributeWorker.GetInstance(Target).GetColumnMapping(fi)];
            Guid      g  = (Guid)o;



            try
            {
                ret      = _persistentObjects[g].Target;
                isLoaded = false;

                if (ret == null)
                {
                    throw new KeyNotFoundException();
                }
            }
            catch (KeyNotFoundException)
            {
                ret = Deserialize(objectType, reader);
                GenericWeakReference <ISerializableObject> tmp = new GenericWeakReference <ISerializableObject>(ret);
                _persistentObjects[AttributeWorker.RowGuid(ret)] = tmp;
                MemoriseKeys(ret, AttributeWorker.GetInstance(Target), tmp);
                isLoaded = true;
            }

            _cleaner.Cleanup();

            return(ret);
        }
        private static void MemoriseKeys(ISerializableObject iso, AttributeWorker w, GenericWeakReference<ISerializableObject> gwr)
        {
            IDictionary<String, FieldInfo> pkf = w.GetPrimaryKeyFields(iso.GetType());

            foreach (FieldInfo fi in pkf.Values)
            {
                if (w.IsAutoincID(fi)) continue;
                gwr.Properties[fi.Name] = fi.GetValue(iso);
            }
        }
        public void Dispose()
        {
            if (disposed == 1) return;
            disposed = 1;

            if (_container != null) _container = null;
            (View as IWindow).Loaded -= FullViewViewModel_Loaded;
            (View as IWindow).Closing -= FullViewViewModel_Closing;
        }
        public void InsertObject(ISerializableObject iso, DbConnection connection, ISerializerTransaction transaction, string table)
        {
            AttributeWorker w = AttributeWorker.GetInstance(Target);
            DbCommand com = connection.CreateCommand();
            com.CommandText = _owner.SerializeInsert(iso,table);
            transaction.Guard(com);
            //Console.WriteLine(com.CommandText);
            try
            {
                //Console.WriteLine(com.ExecuteNonQuery());
                com.ExecuteNonQuery();
            }
            catch (Exception ex)
            {
                throw new SerializerException("insert failed", ex);
            }




            FieldInfo autoincField;
            Guid g = AttributeWorker.RowGuid(iso);

            if ((autoincField = w.GetAutoincField(iso.GetType())) != null)
            {
                StringBuilder b = new StringBuilder();

                b.Append("SELECT * FROM ").Append(w.GetTableMapping(iso.GetType(),_owner.Praefix)).Append(" WHERE ");
                b.Append(w.GetColumnMapping(AttributeWorker.RowGuid(iso.GetType()))).Append("='");
                b.Append(g.ToString()).Append("'");

                com.CommandText = b.ToString();
                DbDataReader r = com.ExecuteReader();

                if (r.Read())
                {
                    Object o = r[w.GetColumnMapping(w.GetAutoincField(iso.GetType()))];
                    autoincField.SetValue(iso, o);
                }
                else
                {
                    r.Close();
                    throw new SerializerException("Insert core method failed! error unknown...");
                }

                r.Close();

                /*com.CommandText = "SELECT @@IDENTITY";
                    Object o = com.ExecuteScalar();
                    Console.WriteLine("---->"+o);
                    if (o is DBNull)
                    {
                        throw new SerializerException();
                    }
                    
                    autoincField.SetValue(iso, Decimal.ToInt32((Decimal)o));
                 */


            }


            GenericWeakReference<ISerializableObject> tmp = new GenericWeakReference<ISerializableObject>(iso);
            _persistentObjects[g] = tmp;
            MemoriseKeys(iso, w, tmp);
        }
        public ISerializableObject RetrieveObject(Type objectType, DbDataReader reader, ref bool isLoaded)
        {
            if (_cleaner == null)
            {
                throw new NullReferenceException("No cleaner attached SerializableObjectPool needs a Cleaner to work...");
            }

            ISerializableObject ret = null;



            FieldInfo fi = AttributeWorker.RowGuid(objectType);
            Object o = reader[AttributeWorker.GetInstance(Target).GetColumnMapping(fi)];
            Guid g = (Guid)o;


            
            try
            {
                ret = _persistentObjects[g].Target;
                isLoaded = false;

                if (ret == null) throw new KeyNotFoundException();
            }
            catch (KeyNotFoundException)
            {
                ret = Deserialize(objectType, reader);
                GenericWeakReference<ISerializableObject> tmp = new GenericWeakReference<ISerializableObject>(ret);
                _persistentObjects[AttributeWorker.RowGuid(ret)] = tmp;
                MemoriseKeys(ret, AttributeWorker.GetInstance(Target), tmp);
                isLoaded = true;
            }

            _cleaner.Cleanup();

            return ret;
        }
Example #19
0
        internal virtual String SerializeUpdate(ISerializableObject iso, ref UpdateStates state, GenericWeakReference <ISerializableObject> tmp)
        {
            AttributeWorker w   = AttributeWorker.GetInstance(Target);
            StringBuilder   sql = new StringBuilder();

            StringBuilder where = new StringBuilder();

            Guid      g = AttributeWorker.RowGuid(iso);
            FieldInfo f = AttributeWorker.RowGuid(iso.GetType());

            sql.Append("UPDATE ").Append(w.GetTableMapping(iso.GetType(), _praefix));
            sql.Append(" SET ");
            where.Append(" WHERE ").Append(AttributeWorker.GetInstance(Target).GetColumnMapping(f));
            where.Append("='").Append(g).Append("'");;

            FieldInfo[] fis = AttributeWorker.RetrieveAllFields(iso.GetType());



            bool start = true;

            foreach (FieldInfo fi in fis)
            {
                try
                {
                    String col = w.GetColumnMapping(fi);
                    Object val = fi.GetValue(iso);
                    Object oldVal;


                    if (w.IsAutoincID(fi))
                    {
                        continue;
                    }
                    if (AttributeWorker.IsRowGuid(fi))
                    {
                        continue;
                    }

                    if (w.IsID(fi))
                    {
                        oldVal = tmp.Properties[fi.Name];
                        if (!Object.Equals(val, oldVal))
                        {
                            state = UpdateStates.PRIMARYKEY_MODIFIED;
                        }
                        tmp.Properties[fi.Name] = val;
                    }

                    if (!start)
                    {
                        sql.Append(", ");
                    }
                    else
                    {
                        start = false;
                    }

                    sql.Append(col).Append("=").Append(SqlUtil.SqlConvert(val));
                }
                catch (SerializerException) { }
            }

            sql.Append(where);
            return(sql.ToString());
        }
Example #20
0
 public FullViewModule(IUnityContainer container)
 {
     _weak = new GenericWeakReference <IUnityContainer>(container);
 }
        private void closeButton_Click(object sender, RoutedEventArgs e)
        {
            headerLabel.MouseLeftButtonDown -= new MouseButtonEventHandler(headerLabel_MouseLeftButtonDown);
            PhotoObj = null;
            _vkWrapperWeak = null;
            this.DialogResult = false;

            this.Close();
        }
 private void PhotoViewerWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e)
 {
     _wrapperWeak = null;
     Friends = null;
 }
 private void DocumentViewerWindow_Closing(object sender, System.ComponentModel.CancelEventArgs e)
 {
     Friends = null;
     _vkWrapper = null;
 }
 public FullViewModule(IUnityContainer container)
 {
     _weak = new GenericWeakReference<IUnityContainer>(container);
 }