Exemple #1
0
        public RoomControl(string room)
            : base(room)
        {
            _dockable = new DockableControl("MessageContainer");
            _dockable.OnResize += _dockable_OnResize;
            _userControl = new UserControl("UserControl", room);
            //_dockable.Options = new jQueryApi.UI.Widgets.DialogOptions()
            //{
            //	AutoOpen = true,
            //	Title = ,
            //	Width = 350,
            //	Height = 375

            //};
            _dockable.Title = "Room - " + room;

            _messageContainer = new BaseControl("MessageContainer");
            _messageContainer.CssClass = "messageContainer";
            _messenger = new MessengerControl("Messenger");
            _messenger.RoomControl = this;
            _messenger.Room = room;
            _messenger.CssClass = "messenger";
            _dockable.AddChild(_userControl);
            _dockable.AddChild(_messageContainer);
            _dockable.AddChild(_messenger);
            AddChild(_dockable);
        }
        //
        public DockableControl(string name)
            : base(name)
        {
            _launcher = new Launcher("launcher"+name);
            _launcher.Remote = this;
            PageManager.Context.dockModule.AddChild(_launcher);
            _header = new Label("Header");
            _headerContainer = new BaseControl("HeaderContainer");

            _headerContainer.CssClass = "ui-dialog-titlebar ui-widget-header ui-corner-all ui-helper-clearfix";
            _header.CssClass = "ui-dialog-title";
            CssClass = "ui-dialog ui-widget ui-widget-content ui-corner-all";

            draggableOptions = new DraggableOptions()
            {
                Handle = _headerContainer.ControlContainer,
                ZIndex = 10,
                Scope = "draggable",
                Containment = PageManager.Context.panelLayout.ControlContainer

            };
            resizableOptions = new ResizableOptions()
            {
                MinHeight = 100,
                MinWidth = 100,
                MaxHeight = Window.InnerHeight,
                MaxWidth = Window.InnerWidth
            };

            _headerContainer.AddChild(_header);
            AddChild(_headerContainer);
        }
Exemple #3
0
        internal void AddNewMessage(string user, string message, bool isAlert)
        {
            Log.log(".js.modules.chat.roomcontrol AddNewMessage", user, message);
            var newcount =  _messageContainer.Children.Count + 1;
            MessageControl msg = null;
            if (_messageContainer.Children.Count > 1)
            {

                var m = _messageContainer.Children[_messageContainer.Children.Count - 2] as MessageControl;
                if (m.Username == user && !m.CssClass.EndsWith("alert") )
                {
                    msg = m;
                    msg.Message = msg.Message + " <br/>";
                }
            }
            if(msg == null)
            {
                msg = new MessageControl("message_" +newcount);
            }

            msg.Username = user;
            msg.Message = msg.Message + message;
            msg.Parent = _messageContainer;

            if (isAlert)
            {
                msg.CssClass = " chatmessageContainer alert";
            }
            else if (user != PageManager.Context.Username)
            {
                msg.CssClass = " chatmessageContainer outsider";
            }
            _messageContainer.Children.Add(msg);
            msg.Render();
            BaseControl spacer = new BaseControl("spacer_" + newcount);
            spacer.CssClass = "clear";
            spacer.Parent = _messageContainer;
            _messageContainer.Children.Add(spacer);
            spacer.Render();
            var result = ((_messageContainer.Children.Count /2) * 41);
            _messageContainer.ScrollDown();
            //Control.ScrollDown(result, _messageContainer.ControlContainer);
        }