예제 #1
0
        public IDE()
        {
            InitializeComponent();
            Console output = new Console();

            output.Text = "Sortie";
            output.Show(dockPanel1, DockState.DockBottom);

            WelcomeFrame welcomepage = new WelcomeFrame();

            welcomepage.Text = "Bienvenue";
            welcomepage.Show(dockPanel1, DockState.Document);

            explo.Text = "Explorateur";
            explo.Show(dockPanel1, DockState.DockLeft);

            ListingFrame errors = new ListingFrame();

            errors.Text = "Liste d'erreurs";
            errors.Show(dockPanel1, DockState.DockBottom);

            output.consoleText = "Checking PawnCC updates..\nPawnCC is up to date! (3.10.9)\nPawnEE succesfully loaded!";


            this.FormBorderStyle = FormBorderStyle.None;
            this.DoubleBuffered  = true;
            this.SetStyle(ControlStyles.ResizeRedraw, true);
        }
예제 #2
0
        private void Handshake(byte[] data, int dataOffset, int dataLength)
        {
            ActorFrameHeader actorHandshakeRequestFrameHeader = null;
            bool             isHeaderDecoded = _channelConfiguration.FrameBuilder.TryDecodeFrameHeader(
                data, dataOffset, dataLength,
                out actorHandshakeRequestFrameHeader);

            if (isHeaderDecoded && actorHandshakeRequestFrameHeader.OpCode == OpCode.Hello)
            {
                byte[] payload;
                int    payloadOffset;
                int    payloadCount;
                _channelConfiguration.FrameBuilder.DecodePayload(
                    data, dataOffset, actorHandshakeRequestFrameHeader,
                    out payload, out payloadOffset, out payloadCount);
                var actorHandshakeRequestData =
                    _channelConfiguration
                    .FrameBuilder
                    .ControlFrameDataDecoder
                    .DecodeFrameData <ActorIdentity>(payload, payloadOffset, payloadCount);

                _remoteActor = actorHandshakeRequestData;
            }

            if (_remoteActor == null)
            {
                _log.ErrorFormat("Handshake with remote [{0}] failed, invalid actor description.", this.SessionKey);
                Close();
            }
            else
            {
                var actorHandshakeResponseData   = _channelConfiguration.FrameBuilder.ControlFrameDataEncoder.EncodeFrameData(_localActor);
                var actorHandshakeResponse       = new WelcomeFrame(actorHandshakeResponseData);
                var actorHandshakeResponseBuffer = _channelConfiguration.FrameBuilder.EncodeFrame(actorHandshakeResponse);

                _innerSession.Send(actorHandshakeResponseBuffer);
                IsHandshaked = true;

                _log.DebugFormat("Handshake with remote [{0}] successfully, SessionKey[{1}].", _remoteActor, this.SessionKey);
                if (SessionHandshaked != null)
                {
                    SessionHandshaked(this, new ActorChannelSessionHandshakedEventArgs(this, _remoteActor));
                }

                _keepAliveTracker.StartTimer();
            }
        }
예제 #3
0
        public WelcomePage()
        {
            this.InitializeComponent();

            WelcomeFrame.Navigate(typeof(WelcomePage1));
        }