Jump to content
uniGUI Discussion Forums


uniGUI Subscriber
  • Content Count

  • Joined

  • Last visited

  • Days Won


Everything posted by arilotta

  1. arilotta


    Hi all, what is the method ProcessEvents of UniSession used for ?
  2. Sherzod you're my last chance... Think about it, it is not just a trivial problem. Given the demo you mentioned: \FMSoft\Framework\uniGUI\Demos\Desktop\DBLookupComboBox - Custom Remote Query (CDS) in which you can search 300K records (employees) with a TDBLookupComboBox using remote query. Let's say that this combo is placed in a dialog used to input orders; in this dialog you can enter the Order ID, Saled Date, Ship Date and the Customer (similar to the demo). When a new order is created, the dialog opens with all fields empty, and the user should select ther Order ID, the dates and the customer. But when an order is edited, I expect the fields populated with the current order values: Order ID, Sales Date, Ship Date and also the Customer. And here is where the problem arises: how to initialize the combo with the current customer for the order ? Hope there is a solution, because tdblookupcombos with remote search are very powerful as long as there is the possibility to initialize the current value by code. Hope also to have clearly explained the problem I'm facing Thanks Andrea
  3. Thanks x11. Your solution does not work, because if you set ForceSelection to TRUE, the component does not allow you to set the Text directly (the Text you specify is not present in the item list, that is empty as long as you manually enter some text in the combo and the event OnRemoteQuery is called and you populate the Result TStrings) You should populate the item list in advance in some manner, I think that some EXTJS trick is necessary,.
  4. Thanks Sherzoed and x11. I've already implemented the dblookup with remote query, and it works fine. What I'm non able to achieve is to initialize the combo with a value, for example when the form is created. Sherzod, given the demo: \FMSoft\Framework\uniGUI\Demos\Desktop\DBLookupComboBox - Custom Remote Query (CDS) Is it possible to open the form and have UniDBLookupComboBox1 already initialized with an given item without have the user to open the combo and sarch for it ? Please have a look at the screen shot for an example. Keep in mind that I've set ForceSelection to TRUE.
  5. Me too I'm having the same problem. Please someone provide us with a solution. Thanks
  6. arilotta

    UniDbGrid with variable row height

    Hi all, I know there is the property RowHeight in TUniDbGrid to set the row height in pixels. In this way, all rows share the same height. What I would like to achieve is to have rows in dbgrids with different heights, based let's say on a field value. Thanks for all the suggestions Andrea
  7. arilotta

    UniDbGrid with variable row height

    Hi Sherzod, thank you; by setting the DisplayMemo property the row height adapts to the content which is similar to the behaviour I'm trying to achieve. I will work on it, it is a good starting point.
  8. arilotta

    UniDbGrid with variable row height

    Anybody has a suggestion ?
  9. arilotta

    soWipeShadowSessions what's for ?

    Hi all, according to the documentation, soWipeShadowSessions for UniServerModule is used for: "If not in debug mode, the session will timeout in 30 seconds" But applications compiled in release mode will last according to SessionTimeout nevertheless. So, what's the point of this flag ? Thanks Andrea
  10. Hi all, I'm populating a panel with some components created at runtime, and I can't figure out how their placement on the panel using client side alignment. Let's say I have a panel with Layout HBOX, and I want to populate it with and edit on the left and a label on the right. At design time, it is sufficient to have set the Left property value on the Edit lower than the Left property value on the Label; but at runtime it doesn't work... I've tried setting CreationOrder property too, but nothing changes. This is an example: procedure TvFrame18200.UniButton1Click(Sender: TObject); var e: tuniedit; l:tunilabel; begin l:=tunilabel.Create(self); with l do begin left:=100; createorder:=10; caption:='ciao'; parent:=UniPanel4; end; e:=tuniedit.Create(self); with e do begin left:=0; createorder:=0; parent:=UniPanel4; end; end; The only way to accomplish the desired behaviour is to invert the component creation, but it would complicate coding my application; it is a limitation to create components in the order they will be placed in a panel. Anybody could help me ? Thanks Andrea
  11. arilotta

    Client alignment and runtime object creation

    Thank you Sherzod, it works very well !
  12. arilotta

    MessageDlg supported buttons

    Hi all, it seems that MessageDlg function only supports a few different buttons: - mbOk - mbYes - mbNo - mbCancel I am unable to see mbAll, mbNotToAll, mbRetry, ... Is that something that I could fix ? I really need the All button in addition to Yes and No. Thanks Andrea
  13. arilotta

    MessageDlg supported buttons

    Thank you, with the suggested solution it works. Would it be possible to include all the buttons in the next releases ? Andrea
  14. Hi, I need to exchange at runtime the order of some panels in a container whose layout is vbox or hbox. Let's say that at design time there is a container with Layout=vbox, with two children panels: Panel1 and Panel2. At runtime they are positioned based on their Top value at design time, so for example Panel1 before Panel2. How is it possible to excange their order/position at runtime ? I need the possibility to move Panel2 before Panel1... Thanks in advance. Andrea
  15. arilotta

    UniDbGrid scroll with dgEditing

    Hi all, I would like to scroll with key arrows up and down the grid, even when the grid is in editing mode. I already enabled KeyNavigation in WebOptions, but the grid is navigable using the keys only when not in editing mode. When in editing mode, pressing arrow down, it is the same as pressing key END, that is it moves the cursor to the end of the text; while pressing arrow up, it moves the cursor to the beginning of the text. I would like that pressing arrow down, the current record is posted, and the dataset moves to the next record, while when pressing arrow up, the current record is posted, and the dataset moves to the previous record. Could that be achieved in some way ? Thanks to all the contributors, Andrea
  16. arilotta

    UniDbGrid scroll with dgEditing

    Yes I did...
  17. arilotta

    TUniCustomDBGrid.MoveToRow(): Unexpected Row number: 0, 3.

    Me too I'm experiencing this error, in not reproduceable situations. Build 1485.
  18. Hayri, thank you very much for the hint, I was unaware of the existence of @@ !
  19. Hello, I need a solution too for the same problem. In the following code: procedure TMainForm.UniButton1Click(Sender: TObject); begin try ShowMask( 'blocking mask...'); unisession.synchronize; sleep(1000); showmessage('step 1'); sleep(1000); showmessage('step 2'); sleep(1000); showmessage('step 3'); finally HideMask; end; end; the mask disappears between step 1 and step 2. The same behaviour applies to MessageDlg and ShowModal... Is there a solution ? Blocking masks should remain until they are explicitely hidden with command HideMask, this is the reason for putting them in a try.. finally block....
  20. arilotta

    Different version for different IDE

    Is it better to install different UniGUI versions on different paths ? Thanks
  21. Hi all, we would like to adopt HyperServer in our production environment, and we are undecided between: - ISAPI Module Mode with Apache - Windows Service Mode UniGUI documentation states that both methods are suitable for production, we would like to know which one is the best in terms of: - performance - robustness And what are the advantages/drawbacks of the two methods ? Many thanks to anybody will share their experience/knowledge to help us choose the best solution. Andrea
  22. arilotta

    unidbgrid rowselect

    Hi, I managed it to work, I attached a sample for anyone interested in. Basically, I replaced - all the occurrences of 'x-grid-row x-grid-data-row x-grid-row-selected' with 'x-grid-item x-grid-item-selected' - all the occurrences of 'x-grid-row x-grid-data-row' with 'x-grid-item' - I moved the initialization of the style from event OnAfterLoad to event OnSelectionChange: procedure TMainForm.UniDBGrid1SelectionChange(Sender: TObject); begin UniSession.AddJS(UniDBGrid1.JSName+'.view.getNode('+IntToStr(UniDBGrid1.CurrGridRow)+').className = ''x-grid-item x-grid-item-selected''; '); end; @Sherzod, if there is a better solution/implementation, please let me know. Thanks UniDbGrid_indicator_testcase.zip
  23. arilotta

    unidbgrid rowselect

    Hi Sherzod, I've attached a simple testcase. I am trying to show a grid indicator on the first column of a grid, when dgRowSelect=FALSE, to show the user the current record. I don't want to use the standard cell color background to show the selected cell. Just see the SerUniDbGrid_indicator_testcase.zipverModule.CustomCSS; the supplied image "right-arrow-button.png" should be put where the EXE is compiled (Win32\Debug) In the Main OnFormCreate I manage the grdi events cellModel.deselect and cellModel.selectionchange In addition in the grid OnAfterLoad event I force the "right-arrow-button" to have the style applied when the grid is loaded at the beginning. This solution used to work in EXTJS4, while in the newer EXTJS6 it has some problems, it hangs frequently. Just click on the grid, changing row and column to see the problem. Is there a better solution with EXTJS6 to achieve the desired behaviour ? Thank you
  24. arilotta

    unidbgrid rowselect

    No, I'm using cellModel.selectionchange and cellModel.deselect as above to draw a grid indicator on the first column, when grid has dgRowSelect=false and dgEditing=true See also my post: Now this code is not working anymore...