Jump to content
uniGUI Discussion Forums


  • Content Count

  • Joined

  • Last visited

Everything posted by merolarosa

  1. Hi, I was wondering if UniGui mobile has the feature to pick images from mobile using chrome or the default browser. The App give me the option to choose camera or gallery but when capture a new photo from camera or gallery and upload it to unigui server, the picture appears to be rotated. Also, there is no cropping/ editing the picture before uploading it to server. So, I was wondering how can I achieve this in unigui mobile? Any help will be appreciated. thanks in advance merolarosa
  2. Hi i was wondering how can display multiple images on carousel in mobile with a TUnimImage on each page but with the possibility to zoom the images in and out? i tried many libraries and plugins online but i failed to make them work with unigui mobile. Even if that failed, ow can make zooming mobile form itself enabled like desktop applications? I tried that code but no luck: <meta content='True' name='HandheldFriendly' /> <meta content='width=device-width; initial-scale=1.0; maximum-scale=2.0; user-scalable=1;' name='viewport' /> if (document.body) { document.body.addEventListener('touchmove',function(event){ event.preventDefault(); },false); } Please help me in either zoom the whole window or image. Thanks in advance
  3. merolarosa

    How can I use this in TUnimHTMLFrame? Important !!!

    Could someone please help me with this !!!
  4. Hi all, I am trying to test having a carousel in mobile app with pinch to zoom functionality. I found this amazing example: https://github.com/SunboX/ST2_ImageViewer https://www.sencha.com/forum/showthread.php?197903-Pinch-Image-with-carousel-and-working-fine But I can't get it to work with unigui mobile or desktop I changed files paths in .js or html to correct "files/..." to work correctly with unigui, also added this code to BeforeScript property in UnimHTMLFrame1: Ext.Loader.setConfig({ enabled: true, paths: { 'Ext.ux': 'files/ux' } }); Ext.define('Demo.Viewport', { extend: 'Ext.Carousel', xtype : 'my-viewport', config: { items: [ { xtype: 'imageviewer', style: { backgroundColor: '#333' }, imageSrc: 'files/images/Desert.jpg' }, { xtype: 'imageviewer', style: { backgroundColor: '#333' }, imageSrc : 'files/images/Hydrangeas.jpg' }, { xtype: 'imageviewer', style: { backgroundColor: '#333' }, imageSrc: 'files/images/Chrysanthemum.jpg' } ], listeners: { activeitemchange: function(container, value, oldValue, eOpts) { if (oldValue) { oldValue.resetZoom(); this.getActiveItem().resize(); } }, resize: function(component, eOpts) { this.getActiveItem().resize(); } } }, onDragStart: function(e) { var scroller = this.getActiveItem().getScrollable().getScroller(); if (e.targetTouches.length === 1 && (e.deltaX < 0 && scroller.getMaxPosition().x === scroller.position.x) || (e.deltaX > 0 && scroller.position.x === 0)) { this.callParent(arguments); } }, onDrag: function(e) { if (e.targetTouches.length == 1) this.callParent(arguments); }, onDragEnd: function(e) { if (e.targetTouches.length < 2) this.callParent(arguments); } }); Ext.define('Demo.ViewportPanel', { extend: 'Ext.Panel', xtype : 'my-viewport-panel', config: { fullscreen: true, layout: 'fit', items: [{ xtype: 'titlebar', docked: 'top', items: [ { text: 'ZoomIn', listeners: { tap: function() { Ext.getCmp('myCarousel').getActiveItem().onZoomIn(); } } }, { text: 'ZoomOut', align: 'right', listeners: { tap: function() { Ext.getCmp('myCarousel').getActiveItem().onZoomOut(); } } } ] }, { xtype: 'my-viewport', id: 'myCarousel' }] } }); Ext.application({ name : 'ImageViewer Carousel Demo', views : [ 'Ext.ux.ImageViewer' ], launch: function() { Ext.Viewport.add({ xtype: 'my-viewport-panel' }); } }); or this for single image viewer Ext.Loader.setConfig({ enabled: true, paths: { 'Ext.ux': 'files/ux' } }); Ext.application({ name : 'Simple ImageViewer Demo', views : [ 'Ext.ux.ImageViewer' ], launch: function() { Ext.Viewport.add({ xtype: 'imageviewer', style: { backgroundColor: '#333' }, imageSrc: 'files/desert.jpg' }); } }); All I get is the "loading..." the carousel radio buttons are working but images are not sliding and the two buttons on the top panel (zoomin/zoomout) are working too. Sorry to bother you guys but I am not good with html/css or js so i can fix this on my own Any help will be appreciated Thanks in advance
  5. Hi, All I was wondering how can make things like phone calls or send sms via UniGui mobile app? For example: mailto, smsto, tel. etc I want to use them with TUniButton not a TUniLabel as a link, the application will be displayed on a TWebBrowser fmx component. I have seen examples like: <a href="mailto:xasd@asda.com">Mail Me a> or something like that I am not too good with HTML But I want to do the same with TUniButton not just links, also I tried testing tel:xxxxxxxxxx from chrome browser on android but it only showed the phone dialer without auto dialing the number. It was said that I will have to enable permissions of Phone_Call for that to work. But how can i do this in UniGui Mobile app. I need the simplest way to do so. I mean does UniGui has somewhere a method to execute URIs or something similar. Thanks in advance
  6. merolarosa

    Embed UniGUI applications in DLLs question

    I am still testing a trial version and I still can't decide whether to make my bank buy this framework or not. They want me to create a report automation server that looks like desktop applications but each report will have its own form and must be inside a plugin (dll or bpl). But it seems I won't as this framework does't support modular applications with Dlls or BPLs. Which make this framework useless for me. So now, please confirm with an example that a form or frame can be used within a dll or a bpl using C++ Builder not just Delphi. Whether using "linking with run-time packages" or not. Thanks in advance.
  7. merolarosa

    Embed UniGUI applications in DLLs question

    Sorry, but this approach does not work properly with C++ Builder. I tried using packages and it didn't work here is a link to my question: http://forums.unigui.com/index.php?/topic/7959-a-class-named-tunimenuitem-already-exists/ Please, Support me on this if I am doing anything wrong !!!
  8. merolarosa

    UniGUI Form in DLL Library

    Hi, I have the same problem error "invalid property path MonitoredKeys.Keys". I even tried it with enabling "Link with runtime packages" but still the problem exists. here is my code its in C++ Builder: Host App Header: //--------------------------------------------------------------------------- #ifndef MainH #define MainH //--------------------------------------------------------------------------- #include <Classes.hpp> #include <Controls.hpp> #include <StdCtrls.hpp> #include <Forms.hpp> #include <uniGUIForm.hpp> #include "Dlls.h" #include "uniButton.hpp" #include "uniGUIBaseClasses.hpp" #include "uniGUIClasses.hpp" #include "DllHostFormU.h" //--------------------------------------------------------------------------- typedef void (*__declspec(dllimport) __stdcall TExecuteUniForm)(HWND CallingApp, TUniGUIApplication *Application); //--------------------------------------------------------------------------- class TMainForm : public TUniForm { __published: // IDE-managed Components TUniButton *UniButton1; void __fastcall UniButton1Click(TObject *Sender); private: // User declarations TExecuteUniForm ExecuteUniForm; public: // User declarations __fastcall TMainForm(TComponent* Owner); }; //--------------------------------------------------------------------------- TMainForm *MainForm(void); //--------------------------------------------------------------------------- #endif Host App cpp: void __fastcall TMainForm::UniButton1Click(TObject *Sender) { Uniguiapplication::TUniGUIApplication if (ParamCount() > 0) { HINSTANCE Dll; try { if (LoadDll(Dll, ParamStr(1))) { ExecuteUniForm = (TExecuteUniForm) GetDllFunc(Dll,"ExecuteUniForm"); ExecuteUniForm(Application->Handle, UniApplication); } } __finally { // UnLoadDll(Dll); } } } //--------------------------------------------------------------------------- Dll code file: #include <vcl.h> #include <windows.h> #include "uniGUIApplication.hpp" #include "uniGUIForm.hpp" #include "UniGuiDllFormU.h" #include <UniGUIMainModule.hpp> #include <uniGUIForm.hpp> #include "UniGuiDllFormU.h" #pragma hdrstop #pragma argsused #define DLLEXPORT __declspec(dllexport) __stdcall //TApplication *ThisApp = NULL; extern "C" { //--------------------------------------------------------------------------- TUniForm* DLLEXPORT ExecuteUniForm(HWND CallingApp, TUniGUIApplication *Application) { //if (!ThisApp) // { // ThisApp = Application; // Application->Handle = CallingApp; // } //I even tried this and it did not work //((TUniDllForm*)Application->UniMainModule->GetFormInstance(__classid(TUniDllForm)))->ShowModal(); TUniDllForm *UniDllForm = new TUniDllForm(UniApp); try { UniDllForm->Show(); } __finally { delete UniDllForm; } } //--------------------------------------------------------------------------- } //--------------------------------------------------------------------------- int WINAPI DllEntryPoint(HINSTANCE hinst, unsigned long reason, void* lpReserved) { //if (reason == DLL_PROCESS_DETACH) // { // if (ThisApp) // Application = ThisApp; // } // return 1; } //--------------------------------------------------------------------------- Please, any help will be appreciated. Regards