Jump to content

thecrgrt

Members
  • Posts

    201
  • Joined

  • Last visited

  • Days Won

    2

Posts posted by thecrgrt

  1. I'm living in the real world where thousands of computers in my company are running on Win XP 32 bits, just like 45% of the computers around the world.  Are you from another planet ?

    I don't need performance, and Tohang Pakpahan doesn't need performances.  We just need space (EXE size).  Try to correctly read the messages before writing "nonsense" in all your posts.  Please respect other ideas than yours. 

    I prefer to pay Farshad than buy new XE4 licenses for the 19 developers of my team.  Can you understand that point without thinking "nonsense" ?

    AFAIK, uniGUI is a web-based application framework development.

    Do you need to develop your web-app run on Windows XP server?

    That's nonsense for me more than performance or .exe size.

    • Upvote 1
  2. Thanks for the link. but!

    Why should I write "bikes"?

    why asynchronous operation can not be achieved by the component itself?

    why methods Repaint, Refresh, in components when it does not work ?

     

    Those methods were for desktop mode, not a web. you need to remember this is a framework for dual UI mode.

     

    UniGUI is a fresh one, it's not a mature framework yet. This is its first step so you need to manage some action your-self.

     

    By the way, your question is a good idea. By a "Asynchronous" nature it is possible that every UniGUI component's methods can parallel send and receive ajax-request itself, but that needs more design and take more time to implement. Implement more web UI supported by ExtJS should be the first priority, IMO.

  3. Hi HecJonatan,

     

    For me an installer is work fine and also built for all packages.

     

    So,You can workaround with two choices:

    1. Manually add "C:\Program Files\FMSoft\Framework" and related sub-directories into Delph Library Path.

    2. Create Windows registry's String-Key under "HKEY_CURRENT_USER\Software\Embarcadero\BDS\10.0\Environment Variables" with named "fmsoft" and assign its value to "C:\Program Files\FMSoft\Framework"

  4. Farshad, i'm trying to add markermanager.js directly from the folder instead from the internet. But when I add /files/markermanager.js in the customfiles, i get some errors.

     

    From the internet, it works.

     

    What is the correct way to add custom javascript files locally?

     

    Thx!

     

    Bruno

    If your file was reside in files folder remove / in front of "/files/markermanager.js", it should be "files/markermanager.js".

  5. This is an example to apply FastReport to UniGUI framework.

     

    To prevent dialogs showing at server you should be set the following properties of TfrxReport

    EngineOptions.SilentMode = True
    EngineOptions.NewSilentMode = simSilent
    

    and for TfrxPDFExport

    ShowDialog = False
    ShowProgress = False
    OverwritePrompt = False
    

    Example

    define the following components

    frxRepData: TfrxReport;
    frxPDFExport: TfrxPDFExport
    PrintURLFrame: TUniURLFrame;
    

    Code:

    var
     _LFile: String;
    begin
     ...
    
     // The following 5 lines below could be set at design time
     frxRepData.EngineOptions.SilentMode := True;
     frxRepData.EngineOptions.NewSilentMode := simSilent;
     frxPDFExport.ShowDialog := False;
     frxPDFExport.ShowProgress := False;
     frxPDFExport.OverwritePrompt := False;
    
     frxRepData.DataSet := cdsMiscDataSet;
     if (cdsMiscDataSet.Active) then
       cdsMiscDataSet.Close();
    
     cdsMiscDataSet.CommandText := 'SELECT * FROM XXX_DATA';
     frxReport.LoadFromFile(UniServerModule.FilesFolderPath + 'some_report.fr3', False);
    
     cdsMiscDataSet.Open();
     if (not cdsMiscDataSet.IsEmpty) then
     begin
       // pass True to clear a previous generated report.
       // If you need to merge a variant of reports set it to False
       frxReport.PrepareReport(True); 
    
       _LFile := 'payment_' + FormatDateTime('hhmmss.zzz', Now()) + '.pdf';
       frxPDFExport.FileName := _LFile;
       frxPDFExport.DefaultPath := UniServerModule.LocalCachePath;
       try
         frxReport.Export(frxPDFExport);
         PrintURLFrame.URL := UniServerModule.LocalCacheURL + _LFile + '#';
       except
         ShowMessage('Error, Can not generate printing documents to PDF format.');
       end;  
     end else
       ShowMessage('There are no pages to generated printing.');
    end

     

    The above example write on the fly at the post time, sorry if there are some error. :)

  6. Do you plan on adding LiveBinding support before 1.0 ?

     

    Is it hard to implement ?

     

    This is one feature I would really like to use, all new code uses Firemonkey for Desktop + LiveBindings.

     

    It would be great to have LiveBinding support in UniGui also.

     

    Thanks

    Andrew

    AFAIK, LiveBinding was supported for all VCL/FMX controls automatically by Delphi XE2, vice versa UniGUI was also supported LiveBinding.

  7. Try the following code:

    procedure TfrmPrintForm.PrintReport();
    begin
     frxPDFExport.FileName := 'ReportXXX_' + FormatDateTime('hhmmss.zzz', Now()) + '.pdf'; // Create a unique name for report. 
     frxPDFExport.DefaultPath := UniServerModule.LocalCachePath; // Export Path;
     frxReport.PrepareReport(); // Create Report
     frxReport.Export(frxPDFExport); // Export Report
     rptURLFrame.URL := UniServerModule.LocalCacheURL + frxPDFExport.FileName; // Displayed on UniURLFrame
    end;

  8. here's the iis path

    servermodule ext root prperty is set to

     

    ext-3.0.0\

     

     

    website path for extJs is

    C:\Inetpub\wwwroot\Uni\ext-3.3.0

     

    I copied all Ext files and subfolderes from the fmssoft framework location

    the app root is C:\Inetpub\wwwroot\Uni

     

    I'll recheck everything again

    Thanks for the quick response

    ExtRoot should be "ext-x.y.z\" not "ext-3.0.0\".

    You never change "x.y.z" to any number, just leave it to "ext-x.y.z\".

  9. ==============================================================================

     

    line 25, character 1 : source error is 'Ext' id undefined

    right here >>[ Ext.onReady(function()]

     

    Where is the object Ext defined?

     

    page source is here:

    <!DOCTYPE html public>

    <html>

    <head>

    <title>UniBasicDll</title>

    <meta http-equiv="content-type" content="charset=utf-8" />

    <meta http-equiv="X-UA-Compatible" content="IE=8" />

    <meta http-equiv="cache-control" content="no-cache" />

    <meta http-equiv="pragma" content="no-cache" />

     

    <link rel=stylesheet href="/uni/unibasicdll1.dll/ext-3.3.0/resources/css/uni-ext.css" />

    <link rel=stylesheet href="/uni/unibasicdll1.dll/ext-3.3.0/resources/css/ext-all.css" />

    <script src="/uni/unibasicdll1.dll/ext-3.3.0/adapter/ext/ext-base.js"></script>

    <script src="/uni/unibasicdll1.dll/ext-3.3.0/ext-sync-1.3.1-min.js"></script>

    <script src="/uni/unibasicdll1.dll/ext-3.3.0/ext-all.js"></script>

    <script src="/uni/unibasicdll1.dll/ext-3.3.0/examples/ux/ux-all.js"></script>

    <link rel=stylesheet href="/uni/unibasicdll1.dll/ext-3.3.0/resources/css/xtheme-blue.css" />

    <link rel=stylesheet href="/uni/unibasicdll1.dll/ext-3.3.0/examples/ux/css/ux-all.css" />

    <style>body { background: #008000; }</style>

    <script src="/uni/unibasicdll1.dll/ext-3.3.0/ext-unigui-1.3.1-min.js"></script>

     

    </head>

    <p></p>

    <script>

    _S_ID="_S_ID=UpK6Odck75C2sb5";

    Ext.onReady(function(){setTimeout(function(){Ext.get("loading").remove();Ext.get("loading-mask").fadeOut({remove:true});},250);Ext.BLANK_IMAGE_URL="/uni/unibasicdll1.dll/ext-3.3.0/resources/images/default/s.gif";

    TextMetrics=Ext.util.TextMetrics.createInstance(Ext.getBody());

    function AjaxError(m, t){Ext.Msg.show({title:"Ajax Error",multiline: true,value:t,width:400,minWidth:200,msg:m,icon:Ext.Msg.ERROR,buttons:Ext.Msg.OK});};function AjaxSuccess(response){if(_aexc_(response))return;try{eval(response.responseText);}catch(err){AjaxError(err.message,response.responseText);}};function AjaxFailure(){AjaxError("Server unavailable, please try later");};Download=Ext.DomHelper.append(document.body,{tag:"iframe",cls:"x-hidden"}); O0=new Ext.Window({id:"O0_id",onEsc:function(){},layout:"anchor",closeAction:"close",maximizable:true,minimizable:true,title:"uni basic 1 dll",width:483,height:562});O0.nm="O0";_cdo_("MainForm");MainForm.ajxS=AjaxSuccess;MainForm.ajxF=AjaxFailure;O0.rootObj=true;MainForm.appRoot="/uni/unibasicdll1.dll/";_cdo_(null,O0,"window",MainForm); O10=new Ext.form.FormPanel({id:"O10_id",border:false,layout:"absolute",anchor:"100% 100%",baseCls:"x-window",bodyStyle: "background-color:#FF00FF"});O10.nm="O10";_cdo_(null,O10,"form",MainForm);O0.add(O10);O0.on("close",function(P0){return Ext.Ajax.request({url:"/Uni/UniBasicdll1.dll/HandleEvent",params:"Ajax=1&Ajax=1&IsEvent=1&Obj=O0&Evt=close&P="+P0.nm+""+_gv_(O10),success:AjaxSuccess,failure:AjaxFailure,obj:O0});});O0.on("move",function(P0,P1,P2){return Ext.Ajax.request({url:"/Uni/UniBasicdll1.dll/HandleEvent",params:"Ajax=1&Ajax=1&IsEvent=1&Obj=O0&Evt=move&This="+P0.nm+"&X="+P1+"&Y="+P2+""+_gv_(O10),success:AjaxSuccess,failure:AjaxFailure,obj:O0});});O0.on("resize",function(P0,P1,P2){return Ext.Ajax.request({url:"/Uni/UniBasicdll1.dll/HandleEvent",params:"Ajax=1&Ajax=1&IsEvent=1&Obj=O0&Evt=resize&This="+P0.nm+"&Width="+P1+"&Height="+P2+""+_gv_(O10),success:AjaxSuccess,failure:AjaxFailure,obj:O0});});O0.on("activate",function(P0){return Ext.Ajax.request({url:"/Uni/UniBasicdll1.dll/HandleEvent",params:"Ajax=1&Ajax=1&IsEvent=1&Obj=O0&Evt=activate&This="+P0.nm+""+"&ci="+_gci_()+_gv_(O10),success:AjaxSuccess,failure:AjaxFailure,obj:O0});});O0.on("maximize",function(P0){return Ext.Ajax.request({url:"/Uni/UniBasicdll1.dll/HandleEvent",params:"Ajax=1&Ajax=1&IsEvent=1&Obj=O0&Evt=maximize&This="+P0.nm+""+_gv_(O10),success:AjaxSuccess,failure:AjaxFailure,obj:O0});});O0.on("minimize",function(P0){return Ext.Ajax.request({url:"/Uni/UniBasicdll1.dll/HandleEvent",params:"Ajax=1&Ajax=1&IsEvent=1&Obj=O0&Evt=minimize&This="+P0.nm+""+_gv_(O10),success:AjaxSuccess,failure:AjaxFailure,obj:O0});});O0.on("restore",function(P0){return Ext.Ajax.request({url:"/Uni/UniBasicdll1.dll/HandleEvent",params:"Ajax=1&Ajax=1&IsEvent=1&Obj=O0&Evt=restore&This="+P0.nm+""+_gv_(O10),success:AjaxSuccess,failure:AjaxFailure,obj:O0});}); O20=new Ext.form.Label({id:"O20_id",width:393,height:13,x:48,y:40,text:"Welcome Back My Friend To the Main Form"});O20.nm="O20";_cdo_("UniLabel1",O20,null,MainForm);O10.add(O20);O0.show();O0.header.child("span", true).style.marginLeft="19px";O0.header.dom.style.background="url(/uni/unibasicdll1.dll/cache/UniBasicdll1/UpK6Odck75C2sb5/app_main_icon.png) no-repeat 0px 4px";});

    </script>

    <body>

    <div id="loading-mask"></div><div id="loading"><div class="loading-indicator">Loading Basic Uni Dll #1</div></div>

    <div id=body></div><noscript>This web application requires JavaScript enabled</noscript></body>

    <link REL="SHORTCUT ICON" HREF="/uni/unibasicdll1.dll/cache/UniBasicdll1/UpK6Odck75C2sb5/favicon.ico"></html>

    Ext was defined in ext-base.js, that it mean "<script src="/uni/unibasicdll1.dll/ext-3.3.0/adapter/ext/ext-base.js"></script>" could not be loaded.

    If all files were in the correct location, try to check IIS has permission to access this.

  10. Hiall

     

    I have old project . Used Twebbrowser show web mode on win32 application.

    I want Transfer HTML from Twebbrowser to UniHTMLFrame ..

     

    I strongly recommended you to use TUniURLFrame instead of TUniHTMLFrame.

    You've just only set its URL property to the link you've passed for "Navigate" method of TWebBrowser.

     

    Ex.

    WebBrowser1.Navigate('http://xxx'); --> UniURLFrame.URL := 'http://xxx';

     

    By the way, Patmap's UniGoogleMap component is better way for refactor your app. :)

  11. hi,

     

    In AjaxEvent of UniDBGrid use this code:

     

      
     procedure TFDevices.UniDBGrid1AjaxEvent(Sender: TComponent; EventName: string; Params: TStrings);
     begin
       if SameText(EventName, 'cellselect') then
      	Caption := 'RowID = ' + Params.Values['rowindex'] + ' and ColName = ' + UniDBGrid1.Columns[strToInt(Params.Values['colindex'])].FieldName ;
     end;
    
    

     

    Best Regards

    That's a good applying. :)

  12. Nightly builds can be highly unstable as I'm still playing with core elements from time to time.

    Only for snap-short builds with some finished features, improvement or fixing is better, IMO.

  13. 1. DBGrid improvement with custom column renderer, column editor, row editor and other ExtJS features.

    2. Variety of Numbered-Field (Including expression property like an IntraWeb if possible).

    3. Updated to the lastest of ExtJS version (to supported development facility and any new web technology, including HTML5).

    4. Accordion (or similar) Component (that it make UniGUI look beautiful web-based application).

    5. Screen mask automatically when AJAX is being in operation (Of course, this is optional property that activated only when selected).

    6. FastCGI support.

    whether beyond 1.0 or maybe 1.0 if possible :)

    7. Truly stateful server-side applications. Close and open browser – and return to the same state (Of course, with the same logged-in user).

    8. Better session control. Cross-session interaction.

×
×
  • Create New...