示例#1
0
文件: Photo.cs 项目: mitim/sps
 protected Photo(Stream stm, string path, Enlister own)
 {
     Path = path;
     FileName = System.IO.Path.GetFileName(Path);
     Owner = own;
     Image = ReadBitmapFromStream(stm);
     BackGroundTop = Colors.Silver;
     BackGroundCenter = Colors.Silver;
     BackGroundBottom = Colors.Silver;
     BlendBackgroundColor();
     _isSelected = false;
     _scale = DEFAULT_SCALE;
     _rotate = DEFAULT_ROTATE;
     CenterX = Image.PixelWidth / 2;
     CenterY = Image.PixelHeight / 2;
     MapSpan = (Image.PixelHeight < Image.PixelWidth) ? Image.PixelWidth * 2 : Image.PixelHeight * 2;
     MapLeft = (MapSpan - Image.PixelWidth) / 2;
     MapTop = (MapSpan - Image.PixelHeight) / 2;
     _windowPosition = UNINITIALIZED_POINT;
     _mapRect = new Rect
     (
         (MapSpan - Image.PixelWidth) / 2,
         (MapSpan - Image.PixelHeight) / 2,
         Image.PixelWidth,
         Image.PixelHeight
     );
     _flipVertical = 1;
     _flipHorizontal = 1;
     log.Debug("Create new photo. File:" + FileName + " Size:" + Image.StreamSource.Length);
 }
示例#2
0
 public FileRecieveException(Enlister en)
     : base(String.Format(Properties.Resources.ERROR_FILE_CANT_RECIEVE, en.Name))
 {
 }
示例#3
0
 public void WritePacket(string data, Enlister partner)
 {
     _packets.Enqueue(new SkyPacket(partner.Handle, data));
     log.Debug("Write packet scheduled. handle:" + partner.Handle + " size:" + data.Length);
 }
示例#4
0
 public void Disconnect(Enlister partner)
 {
     log.Debug("Disconnect at user. :" + partner.Handle);
     var c = GetConnectingStream(partner.Handle);
     if (c == null) return;
     c.Disconnect();
 }
示例#5
0
文件: Enlisters.cs 项目: mitim/sps
 public void RaiseConnected(User usr)
 {
     var re = SearchForHandle(usr.Handle);
     if (re != null) return;
     var ne = new Enlister(usr);
     ne.Delivery.EventRaiseDisconnect += RaiseDisconnect;
     _enlisters.Add(ne);
     log.Debug("Connected. handle:" + ne.Handle);
 }
示例#6
0
文件: Enlisters.cs 项目: mitim/sps
 private void RaiseDisconnect(Enlister en)
 {
     ConnectedList.Remove(en);
 }
示例#7
0
 public FileSendException(string file, Enlister en)
     : base(String.Format(Properties.Resources.ERROR_FILE_CANT_SEND, file, en.Name))
 {
 }
 public TransactionDisconnectException(Enlister en)
     : base(String.Format(Properties.Resources.ERROR_FILE_TRANSFER_DISCONNECT, en.Name))
 {
 }
示例#9
0
 public FileTimeoutException(Enlister en, string mode)
     : base(String.Format(Properties.Resources.ERROR_FILE_TRANSFER_TIMEOUT, en.Name, mode))
 {
 }
示例#10
0
文件: Photo.cs 项目: mitim/sps
 public static Photo Create(SkypeCargo data, Enlister own)
 {
     Photo p = new Photo(data.GetData(), data.FileName, own);
     p.CreateTime = data.CreateTime;
     p.UpdateTime = data.UpdateTime;
     p.AccessTime = data.AccessTime;
     p.CanSave = true;
     return p;
 }
示例#11
0
文件: Photo.cs 项目: mitim/sps
 public static Photo Create(string path, Enlister own)
 {
     Photo p = null;
     using (FileStream fs = new FileStream(path, FileMode.Open, FileAccess.Read))
     {
         try
         {
             p = new Photo(fs, path, own);
             log.Debug(p.Owner.Handle + "'s " + p.Path + " is " + (p.Image != null ? "exist." : "missing."));
             log.Debug("Bitmap size is x:" + p.Image.PixelWidth + " y:" + p.Image.PixelHeight);
         }
         catch (Exception ex) {
             log.Error("Local file '" + path + "' can't open.", ex);
             throw ex;
         }
     }
     p.CreateTime = File.GetCreationTime(path);
     p.UpdateTime = File.GetLastWriteTime(path);
     p.AccessTime = File.GetLastAccessTime(path);
     p.CanSave = true;
     if (path.StartsWith(Configuration.Instance.SaveFolder)) p.CanSave = false;
     return p;
 }
示例#12
0
 public SkypeDelivery(Enlister target)
 {
     _target = target;
     AliveSender = new DispatcherTimer();
 }