1. #21
    Sencha User
    Join Date
    Oct 2007
    Location
    Iran
    Posts
    155
    Vote Rating
    0
    vahid4134 is on a distinguished road

      0  

    Default


    change
    Code:
    .x-form-item label { float:right; }
    .x-form-label-left label { text-align: right }
    to

    Code:
    .x-form-item label.x-form-item-label  { float:right; }
    .x-form-label-left label.x-form-item-label { text-align: right }
    and add
    Code:
    .x-form-element{padding-left:0;padding-right:105px;}
    I dont know why Ext team no plan RTL for extjs?
    No honor is like knowledge

  2. #22
    Ext JS Premium Member
    Join Date
    Feb 2008
    Posts
    51
    Vote Rating
    0
    noamway is on a distinguished road

      0  

    Default Vote here for RTL support


  3. #23
    Sencha User
    Join Date
    Feb 2009
    Posts
    18
    Vote Rating
    0
    mksoft is on a distinguished road

      0  

    Default


    Hi, missed me ?

    I'm back at helm, as another project of ours needs Ext and RTL. Latest commits @github:


    Form label fixes for ext 3.1
    Adjust messagebox content margin
    Fix comobobox in a toolbar
    icon position in panel title
    Fix RTL images for tree nodes with lines

    If you have modification/fixes and want them added to the repo, send me the patches or generate pull requests if your repo is @github.

  4. #24
    Sencha User elnove's Avatar
    Join Date
    Nov 2007
    Location
    Canada
    Posts
    110
    Vote Rating
    0
    elnove is on a distinguished road

      0  

    Thumbs up


    Thanks MK,
    As always, you did a GREAT WORK.
    Live Long And Prosper \\//

    el

  5. #25
    Sencha User
    Join Date
    Oct 2007
    Location
    Iran
    Posts
    155
    Vote Rating
    0
    vahid4134 is on a distinguished road

      0  

    Default


    Hi mksoft
    very very very very Thx.
    I can help
    No honor is like knowledge

  6. #26
    Sencha User
    Join Date
    Oct 2007
    Location
    Iran
    Posts
    155
    Vote Rating
    0
    vahid4134 is on a distinguished road

      0  

    Default scroll tab in adobe air

    scroll tab in adobe air


    Hi mksoft
    in adobe air in Tab when scrolling problem. I dont now khow ro fix this. please help
    No honor is like knowledge

  7. #27
    Sencha User
    Join Date
    Oct 2007
    Location
    Iran
    Posts
    155
    Vote Rating
    0
    vahid4134 is on a distinguished road

      0  

    Default


    I fix this problem ( I dont know this is best way)
    PHP Code:
    Ext.override(Ext.TabPanel, {
        
    delegateUpdates : function(){
            if(
    this.suspendUpdates){
                return;
            }
            if(
    this.resizeTabs && this.rendered){
                
    this.autoSizeTabs();
            }
            if(
    this.enableTabScroll && this.rendered){
                
    this.autoScrollTabs();
                if(
    Ext.isAir || Ext.isWebKit){
                    
    this.on("resize",function(){
                        
    this.onScrollRight();
                    },
    this);
                    
    this.on("resize",function(){
                        
    this.onScrollLeft();
                    },
    this,{scope:this,delay:500});
                }
            }
        },
        
    autoScrollTabs : function(){        
            
    this.pos this.tabPosition=='bottom' this.footer this.header;
            var 
    count this.items.length;
            var 
    ow this.pos.dom.offsetWidth;
            var 
    tw this.pos.dom.clientWidth;

            var 
    wrap this.stripWrap;
            var 
    wd wrap.dom;
            var 
    cw wd.offsetWidth;
            var 
    pos this.getScrollPos();
            var 
    =  cw -(this.edge.getOffsetsTo(this.stripWrap)[0] + pos);
            if(
    Ext.isAir || Ext.isWebKitl*=-1;
            if(!
    this.enableTabScroll || count || cw 20){ // 20 to prevent display:none issues
                
    return;
            }
            if(
    <= tw){
                
    wrap.setWidth(tw);
                if(
    this.scrolling){
                    
    this.scrolling false;
                    
    this.pos.removeClass('x-tab-scrolling');
                    
    this.scrollLeft.hide();
                    
    this.scrollRight.hide();
                    
    // See here: http://extjs.com/forum/showthread.php?t=49308&highlight=isSafari
                    
    if(Ext.isAir || Ext.isWebKit){
                        
    wd.style.marginLeft '';
                        
    wd.style.marginRight '';
                    }
                }
                
    wd.scrollLeft 0;
            }else{
                if(!
    this.scrolling){
                    
    this.pos.addClass('x-tab-scrolling');
                    
    // See here: http://extjs.com/forum/showthread.php?t=49308&highlight=isSafari
                    
    if(Ext.isAir || Ext.isWebKit){
                        
    wd.style.marginLeft '18px';
                        
    wd.style.marginRight '18px';
                    }
                }
                
    tw -= wrap.getMargins('lr');
                
    wrap.setWidth(tw 20 tw 20);
                if(!
    this.scrolling){
                    if(!
    this.scrollLeft){
                        
    this.createScrollers();
                    }else{
                        
    this.scrollLeft.show();
                        
    this.scrollRight.show();
                    }
                }
                
    this.scrolling true;
                if(
    pos > (l-tw)){ // ensure it stays within bounds
                    
    wd.scrollLeft l-tw;
                }else{ 
    // otherwise, make sure the active tab is still visible
                    
    this.scrollToTab(this.activeTabfalse);
                }
                
    this.updateScrollButtons();
            }
        },
        
    onScrollRight : function(){
            var 
    pos this.getScrollPos();
            var 
    Math.max(this.getScrollWidth(), pos this.getScrollIncrement());
            if(
    != pos){
                
    this.scrollTo(sthis.animScroll);
            }
        },
        
    onScrollLeft : function(){
            var 
    pos this.getScrollPos();
            if(
    Ext.isAir || Ext.isWebKit)
                var 
    Math.max(0pos this.getScrollIncrement());
            else
                var 
    Math.min(0pos this.getScrollIncrement());
            if(
    != pos){
                
    this.scrollTo(sthis.animScroll);
            }
        },

        
    // private
        
    updateScrollButtons : function(){
            var 
    pos this.getScrollPos();
            if(
    Ext.isAir || Ext.isWebKit)
                
    this.scrollLeft[pos this.getScrollWidth() ? 'addClass' 'removeClass']('x-tab-scroller-left-disabled');
            else
                
    this.scrollLeft[pos == 'addClass' 'removeClass']('x-tab-scroller-left-disabled');
            
    this.scrollRight[pos <= this.getScrollWidth() ? 'addClass' 'removeClass']('x-tab-scroller-right-disabled');
        }
    }); 
    No honor is like knowledge

  8. #28
    Sencha User
    Join Date
    Oct 2007
    Location
    Iran
    Posts
    155
    Vote Rating
    0
    vahid4134 is on a distinguished road

      0  

    Default


    some fix
    Code:
    .x-form-check-group-label {
    	padding-left: 0 !important;
    	padding-right: 3px !important;
    }
    
    .x-form-clear-left {
        clear:right;
    }
    
    .x-form-cb-label {
    	margin-left:0;
    	margin-right:4px;
    }
    
    .x-form-column {
        float:right;
    }
    
    
    .x-fieldset legend .x-tool-toggle {
        margin-left:3px;
        margin-right:0;
        float:right !important;
    }
    .x-fieldset legend input {
    	margin-left:3px;
    	margin-right:0;
    	float:right !important;
    }
    
    fieldset.x-panel-collapsed .x-fieldset-bwrap {
    	right:-1000px;
    	left:auto;
    }
    
    .x-fieldset-noborder legend {
    	margin-left:0px;
    	margin-right:-3px;
    }
    
    /* IE legend positioing bug */
    .ext-ie .x-fieldset-noborder legend span {
    	left:auto;
    	right:16px;
    }
    .x-hide-label .x-form-element {
         padding-right: 0 !important;
    }
    No honor is like knowledge

  9. #29
    Sencha User
    Join Date
    Oct 2007
    Location
    Iran
    Posts
    155
    Vote Rating
    0
    vahid4134 is on a distinguished road

      0  

    Default fix Hbox and Vbox for Ext 3.1.1

    fix Hbox and Vbox for Ext 3.1.1


    Code:
    Ext.override(Ext.layout.HBoxLayout,{
    	 onLayout : function(ct, target){
    		    Ext.layout.HBoxLayout.superclass.onLayout.call(this, ct, target);
    		
    		    var cs = this.getRenderedItems(ct), csLen = cs.length,
    		        c, i, cm, cw, ch, diff, availWidth,
    		        size = this.getLayoutTargetSize(),
    		        w = size.width - this.scrollOffset,
    		        h = size.height,
    		        l = this.padding.left,
    		        t = this.padding.top,
    		        isStart = this.pack == 'start',
    		        isRestore = ['stretch', 'stretchmax'].indexOf(this.align) == -1,
    		        extraWidth = 0,
    		        maxHeight = 0,
    		        totalFlex = 0,
    		        usedWidth = 0;
    		
    		    for (i = 0 ; i < csLen; i++) {
    		        c = cs[i];
    		        // Total of all the flex values
    		        totalFlex += c.flex || 0;
    		        // Don't run width calculations on flexed items
    		        if (!c.flex) {
    		            // Render and layout sub-containers without a flex or width, once
    		            if (!c.width && !c.hasLayout && c.doLayout) {
    		                c.doLayout();
    		            }
    		            cw = c.getWidth();
    		        } else {
    		            cw = 0;
    		        }
    		        cm = c.margins;
    		        // Determine how much width is available to flex
    		        extraWidth += cw + cm.left + cm.right;
    		        // Max height for align
    		        maxHeight = Math.max(maxHeight, c.getHeight() + cm.top + cm.bottom);
    		    }
    		    // Final avail width calc
    		    availWidth = Math.max(0, (w - extraWidth - this.padding.left - this.padding.right));
    		
    		    var innerCtHeight = maxHeight + this.padding.top + this.padding.bottom;
    		    switch(this.align){
    		        case 'stretch':
    		            this.innerCt.setSize(w, h);
    		            break;
    		        case 'stretchmax':
    		        case 'top':
    		            this.innerCt.setSize(w, innerCtHeight);
    		            break;
    		        case 'middle':
    		            this.innerCt.setSize(w, h = Math.max(h, innerCtHeight));
    		            break;
    		    }
    		
    		    var leftOver = availWidth,
    		        widths = [],
    		        restore = [],
    		        idx = 0,
    		        availableHeight = Math.max(0, h - this.padding.top - this.padding.bottom);
    		
    		    for (i = 0 ; i < csLen; i++) {
    		        c = cs[i];
    		        if(isStart && c.flex){
    		            cw = Math.floor(availWidth * (c.flex / totalFlex));
    		            leftOver -= cw;
    		            widths.push(cw);
    		        }
    		    }
    		
    		    if(this.pack == 'center'){
    		        l += availWidth ? availWidth / 2 : 0;
    		    }else if(this.pack == 'end'){
    		        l += availWidth;
    		    }
    		    for (i = 0 ; i < csLen; i++) {
    		        c = cs[i];
    		        cm = c.margins;
    		        l += cm.right;
    		        c.setPosition(l, t + cm.top);
    		        if(isStart && c.flex){
    		            cw = Math.max(0, widths[idx++] + (leftOver-- > 0 ? 1 : 0));
    		            if(isRestore){
    		                restore.push(c.getHeight());
    		            }
    		            c.setSize(cw, availableHeight);
    		        }else{
    		            cw = c.getWidth();
    		        }
    		        l += cw + cm.left;
    		    }
    		
    		    idx = 0;
    		    for (i = 0 ; i < csLen; i++) {
    		        c = cs[i];
    		        cm = c.margins;
    		        ch = c.getHeight();
    		        if(isStart && c.flex){
    		            ch = restore[idx++];
    		        }
    		        if(this.align == 'stretch'){
    		            c.setHeight(((h - (this.padding.top + this.padding.bottom)) - (cm.top + cm.bottom)).constrain(
    		                c.minHeight || 0, c.maxHeight || 1000000));
    		        }else if(this.align == 'stretchmax'){
    		            c.setHeight((maxHeight - (cm.top + cm.bottom)).constrain(
    		                c.minHeight || 0, c.maxHeight || 1000000));
    		        }else{
    		            if(this.align == 'middle'){
    		                diff = availableHeight - (ch + cm.top + cm.bottom);
    		                ch = t + cm.top + (diff/2);
    		                if(diff > 0){
    		                    c.setPosition(c.x, ch);
    		                }
    		            }
    		            if(isStart && c.flex){
    		                c.setHeight(ch);
    		            }
    		        }
    		    }
    		    // Putting a box layout into an overflowed container is NOT correct and will make a second layout pass necessary.
    		    if (i = target.getStyle('overflow') && i != 'hidden' && !this.adjustmentPass) {
    		        var ts = this.getLayoutTargetSize();
    		        if (ts.width != size.width || ts.height != size.height){
    		            this.adjustmentPass = true;
    		            this.onLayout(ct, target);
    		        }
    		    }
    		    delete this.adjustmentPass;
    		}
    });
    
    Ext.override(Ext.layout.VBoxLayout, {
    	onLayout : function(ct, target){
    	    Ext.layout.VBoxLayout.superclass.onLayout.call(this, ct, target);
    	
    	    var cs = this.getRenderedItems(ct), csLen = cs.length,
    	        c, i, cm, ch, margin, cl, diff, aw, availHeight,
    	        size = this.getLayoutTargetSize(),
    	        w = size.width,
    	        h = size.height - this.scrollOffset,
    	        l = this.padding.left,
    	        t = this.padding.top,
    	        isStart = this.pack == 'start',
    	        extraHeight = 0,
    	        maxWidth = 0,
    	        totalFlex = 0,
    	        usedHeight = 0,
    	        idx = 0,
    	        heights = [],
    	        restore = [];
    	
    	    // Do only width calculations and apply those first, as they can affect height
    	    for (i = 0 ; i < csLen; i++) {
    	        c = cs[i];
    	        cm = c.margins;
    	        margin = cm.top + cm.bottom;
    	        // Max height for align
    	        maxWidth = Math.max(maxWidth, c.getWidth() + cm.left + cm.right);
    	    }
    	
    	    var innerCtWidth = maxWidth + this.padding.left + this.padding.right;
    	    switch(this.align){
    	        case 'stretch':
    	            this.innerCt.setSize(w, h);
    	            break;
    	        case 'stretchmax':
    	        case 'left':
    	            this.innerCt.setSize(innerCtWidth, h);
    	            break;
    	        case 'center':
    	            this.innerCt.setSize(w = Math.max(w, innerCtWidth), h);
    	            break;
    	    }
    	
    	    var availableWidth = Math.max(0, w - this.padding.left - this.padding.right);
    	    // Apply widths
    	    for (i = 0 ; i < csLen; i++) {
    	        c = cs[i];
    	        cm = c.margins;
    	        if(this.align == 'stretch'){
    	            c.setWidth(((w - (this.padding.left + this.padding.right)) - (cm.left + cm.right)).constrain(
    	                c.minWidth || 0, c.maxWidth || 1000000));
    	        }else if(this.align == 'stretchmax'){
    	            c.setWidth((maxWidth - (cm.left + cm.right)).constrain(
    	                c.minWidth || 0, c.maxWidth || 1000000));
    	        }else if(isStart && c.flex){
    	            c.setWidth();
    	        }
    	
    	    }
    	
    	    // Height calculations
    	    for (i = 0 ; i < csLen; i++) {
    	        c = cs[i];
    	        // Total of all the flex values
    	        totalFlex += c.flex || 0;
    	        // Don't run height calculations on flexed items
    	        if (!c.flex) {
    	            // Render and layout sub-containers without a flex or height, once
    	            if (!c.height && !c.hasLayout && c.doLayout) {
    	                c.doLayout();
    	            }
    	            ch = c.getHeight();
    	        } else {
    	            ch = 0;
    	        }
    	
    	        cm = c.margins;
    	        // Determine how much height is available to flex
    	        extraHeight += ch + cm.top + cm.bottom;
    	    }
    	    // Final avail height calc
    	    availHeight = Math.max(0, (h - extraHeight - this.padding.top - this.padding.bottom));
    	
    	    var leftOver = availHeight;
    	    for (i = 0 ; i < csLen; i++) {
    	        c = cs[i];
    	        if(isStart && c.flex){
    	            ch = Math.floor(availHeight * (c.flex / totalFlex));
    	            leftOver -= ch;
    	            heights.push(ch);
    	        }
    	    }
    	    if(this.pack == 'center'){
    	        t += availHeight ? availHeight / 2 : 0;
    	    }else if(this.pack == 'end'){
    	        t += availHeight;
    	    }
    	    idx = 0;
    	    // Apply heights
    	    for (i = 0 ; i < csLen; i++) {
    	        c = cs[i];
    	        cm = c.margins;
    	        t += cm.top;
    	        aw = availableWidth;
    	        cl = l + cm.right // default left pos
    	
    	        // Adjust left pos for centering
    	        if(this.align == 'center'){
    	            if((diff = availableWidth - (c.getWidth() + cm.left + cm.right)) > 0){
    	                cl += (diff/2);
    	                aw -= diff;
    	            }
    	        }
    	
    	        c.setPosition(cl, t);
    	        if(isStart && c.flex){
    	            ch = Math.max(0, heights[idx++] + (leftOver-- > 0 ? 1 : 0));
    	            c.setSize(aw, ch);
    	        }else{
    	            ch = c.getHeight();
    	        }
    	        t += ch + cm.bottom;
    	    }
    	    // Putting a box layout into an overflowed container is NOT correct and will make a second layout pass necessary.
    	    if (i = target.getStyle('overflow') && i != 'hidden' && !this.adjustmentPass) {
    	        var ts = this.getLayoutTargetSize();
    	        if (ts.width != size.width || ts.height != size.height){
    	            this.adjustmentPass = true;
    	            this.onLayout(ct, target);
    	        }
    	    }
    	    delete this.adjustmentPass;
    	}
    });
    No honor is like knowledge

  10. #30
    Ext User
    Join Date
    Apr 2010
    Posts
    1
    Vote Rating
    0
    whitefawn is on a distinguished road

      0  

    Thumbs up RTL support.

    RTL support.


    mksoft, vahid1434 - you're doing good job!
    There's a need for RTL support, without it there will be no enterprise adoption of Extjs in Middle Eastern countries.

film izle

hd film izle

film sitesi

takipci kazanma sitesi

takipci kazanma sitesi

güzel olan herşey

takipci alma sitesi

komik eğlenceli videolar