Jump to content

delagoutte

uniGUI Subscriber
  • Posts

    587
  • Joined

  • Last visited

  • Days Won

    12

Posts posted by delagoutte

  1. @Hayri ASLAN ithink i found the solution in the property :

    i use this :

    if aObject.ClassName = 'TJSMenuItem' then
              begin
                OurComponent:= TJSMenuItem(aObject).AttachedMenuItem;
              end
              else
              begin
                OurComponent:= TExtObject(aObject).AttachedComponent;
                if OurComponent is TUniMenuControl then
                  OurComponent:= TUniMenuControl(OurComponent).AttachedComponent;
              end;

     

  2. it seems i finish to find a solution for my problem i  use this :

     procedure HighligthTabSheet(aTest : Boolean; var aUniTabSheet : TUniTabSheet);
       var C : TComponent;
      begin
        C :=  FindComponentUni(aUniTabSheet.Name);
        if aTest then
        begin
          if C <> nil then
          begin
           UniSession.AddJS(PCMain.Pages[seTsAdd.Value].JSName+'.tab.addCls(''TabNew'')');
           UniSession.AddJS(PCMain.Pages[seTsAdd.Value].JSName+'.tab.addOverCls(''TabNew'')');
         end
        end
        else
        begin
          if C <> nil then
          begin
           UniSession.AddJS(PCMain.Pages[seTsAdd.Value].JSName+'.tab.removeCls(''TabNew'')');
           UniSession.AddJS(PCMain.Pages[seTsAdd.Value].JSName+'.tab.removeOverCls(''TabNew'')');
          end
        end;
      end;

     

  3. @Sherzod

    I hope it will be clearer with this recording

    as you can see, i add class on some tabsheet but when the mouse over the title tabsheet the class is remove and lost. i would like the class stay assigned to the tabsheet.

    tabsheet_lose_addcls.gif.ef4189eebd16881e0b1f6f411ba6a395.gif

  4. hello, i look that and

    //big rectangle chere the mask is applied
    .x-mask{
         opacity: 0.5;
       background: rgb(255, 0, 0) none repeat scroll 0% 0%;
    }
    
    //rectangle around screen mask message
    .x-mask-msg{
       opacity: 0.5;
       background: rgb(0, 255, 0) none repeat scroll 0% 0%;
    
    }
    
    //interior of screenmask message
    .x-mask-msg-inner{
       opacity: 0.5;
       background: rgb(255, 0, 0) none repeat scroll 0% 0%;
    
    }
    
    
    //part text of screen mask
    .-x-mask-msg-text{
       opacity: 0.5;
       background: rgb(0, 0, 255) none repeat scroll 0% 0%;
    
    }

    in your case i think you must modified the .x-mask-msg-inner

  5. Hello,

    i share with you a method for adding a scroller menu for unipage control

    image.png.a93943deb4f22783ba11cf2f1ca63fab.png

    download the join file plugin_tabscrollermenu.zip

    uncompress in a directory where you have your application. for me it is in assets/plugin

    in unimainmodule register the js file and css file of the plugin

    uses ....
      uniGUIClasses,uniguitypes;
    ....
    initialization
      RegisterMainModuleClass(TUniMainModule);
      UniAddCSSLibrary('assets/plugin/TabScrollerMenu.css', False, [upoPlatformDesktop]);
      UniAddJSLibrary('assets/plugin/TabScrollerMenu.js', False, [upoPlatformDesktop]);

    in your unipagecontrol->unievents->Ext.tab.Panel[TabPanel] add :

    function tabPanel.beforeInit(sender, config)
    {
        sender.plugins = [ 'tabscrollermenu'];
    }

    note : if the property of a unitabsheet tabvisible = false then the tabsheet will not be in the menu

    • Thanks 1
  6. open the sample project that i attach.

    click on button add class

    the first tabsheet is red+bold+underline red because it is active +class TabNew

    if it is not active it is red +class TabNew

    mouse over the tabsheet> the Tabnew class was deleted so the the tabsheet have not got the good color

    testtabsheet.zip

  7. the problem is that i must add and remove the class at runtime so i can't use the afterrender event.

    so when i over and out over the tab the class that i add is removed

  8. i need to add cls in runtime to a title tabsheet.

    i try this

      procedure HighligthTabSheet(aTest : Boolean; var aUniTabSheet : TUniTabSheet);
       var C : TComponent;
      begin
        C :=  FindComponentUni(aUniTabSheet.Name);
        if aTest then
        begin
          if C <> nil then
          aUniTabSheet.JSInterface.JSCall('addCls', ['TabNew']);
          //UniSession.AddJS('$(''#'+TUniControl(C).JSId+'_tab'').addClass(''TabNew'')');
        end
        else
        begin
          if C <> nil then
          aUniTabSheet.JSInterface.JSCall('removeCls', ['TabNew']);
          //UniSession.AddJS('$(''#'+TUniControl(C).JSId+'_tab'').removeClass(''TabNew'')');
        end;
      end;

    with

    aUniTabSheet.JSInterface.JSCall('addCls', ['TabNew']);

    nothing : the class don't seem to be add.

     

     

    with

    UniSession.AddJS('$(''#'+TUniControl(C).JSId+'_tab'').addClass(''TabNew'')')

    it seems to work but when the mouse is over the title tabsheet, the class is removed and after when the mouse exit , the class is not comming back

     

     

    in unievents of unipagecontrol i have

    function beforeInit(sender, config)
    {
      config.cls ='custom-maintab-browser';
    }

    and in custom css i have  (normal font color is black, with tabnew the font is red)

    .custom-maintab-browser{}
    
    .custom-maintab-browser .x-tab-default, .x-tab-bar-default{
      background-color: rgb(255, 255, 255) !important;
    
    }
    
    .custom-maintab-browser .x-tab-default .x-tab-inner-default{
      color:rgb(0,0,0) !important;
      font-weight: normal !important;  
    }
    
    .custom-maintab-browser .x-tab-default.TabNew .x-tab-inner-default{
      color:rgb(255,0,0) !important;
      font-weight: normal !important;  
    }
    
    
    .custom-maintab-browser .x-tab-active .x-tab-inner-default{
      color:rgb(0,0,0) !important;
      font-weight: bold !important;  
    } 
    
    .custom-maintab-browser .x-tab-active.TabNew .x-tab-inner-default{
      color:rgb(255,0,0) !important;
      font-weight: bold !important;  
    } 
    
    .custom-maintab-browser .x-tab-active .x-tab-button-default{
      border-bottom: solid 5px #0757A0 !important;
    }
    
    .custom-maintab-browser .x-tab-active.TabNew .x-tab-button-default {
      border-bottom: solid 5px #FF0000 !important;
    }

    how can I get the added class to stay in place ?

  9. On 5/13/2022 at 6:59 PM, Sherzod said:

    At the moment it looks like this:

    image.png.1ba9785c691583cf23e33e0c7d64e6eb.png

    2 questions :

    1- how do you do for having the menu on the same line of tabsheet

    2- how can ido for having this menu that is displayed only when the arrow (arrows that appear when you have a lots of tab sheet) are displayed

    3- optional : how can we do to change the font size in the tabsheet title, if i change with a simple css the font size is changed but not the size of the title tabsheet

     

  10. it is a problem of tunifileupload component,  the file is sended in one block.

    so the whole file is loaded in memory, and if you use a 32 bits appliation, you  have reached the limit with a 2go file.

    the problem also exists if you have 2 session that upload  simultaneously a 1 go file on each session.

    we actually work on this problem and we maybe could propose a solution.

×
×
  • Create New...