Hi Antonio,
Thanks for your response. Let us consider a GUI design problem
that we can relate to. Suppose we have to design Microsoft Word clone in
IUP, lets say like a copy of libre office writer. Let us just concentrate
on the page display panel for now. We know the whole thing is not just 1
text box nor even 1 rich text box since it must accommodate the beginnings
and endings of the pages and other type of elements that can be created
like word art.
So it is a collection of many different boxes. Let us take the
case of many text boxes. We don't know the size of any text box before hand
since their sizes depend on the content they hold, page size and the page
zoom level.
How would we implement such a UI? The only way I understood
was to have them in a scroll box. I don't see any way so that I can just
show a portion of a text box which is how word shows it depending on the
scroll position.
Another thing is that I made a sample script in wxLua to create a
large scroll box window. I have attached the script (it requires wx.dll to
run, the one from Lua For Windows or LuaDist should work). The scrolled
window here does not get stuck as we saw in the iupscrollbox test case.
Since wxWidgets also implements native controls I think probably
iupscrollbox is missing some property setting or something that is limiting
the scroll box action and getting stuck in the scrolling? In wxLua I did
reach a text box size limit of around 32000 so I had to stack 2 text boxes
to test the scroll box. But the scroll box there seems to be working good
right till the end for even larger sizes.
Thanks,
Milind
On Tue, Dec 2, 2014 at 3:47 AM, Antonio Scuri <[email protected]>
wrote:
> I think that in any GUI toolkit the solution wouldn't involve creating a
> control with size 1131x8581.
>
> I don't know any application that does that. Usually the controls will
> use the size available on screen and internally implement a virtual space
> that can be incrementally navigated.
>
> Why do you need such a space?
>
> Best,
> Scuri
>
>
> On Mon, Dec 1, 2014 at 10:55 PM, Milind Gupta <[email protected]>
> wrote:
>
>> Actually my problem is that the custom control I was trying to create
>> using iupglcanvas is not possible with this limitation. I need to have a
>> composition of controls like the text boxes, images, etc. on the canvas and
>> scroll them. I am unable to find a solution to scroll these controls. Just
>> the glcanvas scrolling also seems to behave weirdly when I just use the
>> canvas scroll bar instead of a scroll box: it does not scroll the controls
>> in the canvas box, just the canvas and if the canvasbox is large the
>> canvasbox scrollbar somehow does not allow the mouse cursor over the scroll
>> bar. As soon as the mouse goes over it the whole screen goes black and when
>> it comes back the mouse cursor is on the center of the canvas rather than
>> the scroll bar (attached script shows this issue). Also the scroll bar dx
>> is not correct.
>>
>> Any suggestions how I can implement this type of UI using IUP? I am
>> trying to implement a test case using wxLua so we can compare IUP scrolling
>> script with wxLua since both use native controls.
>>
>> Milind
>>
>> On Mon, Dec 1, 2014 at 4:12 PM, Antonio Scuri <[email protected]>
>> wrote:
>>
>>> I think you should let the IupText do its job. As long as text is
>>> being added to it it will program and expand its own scrollbar. The chances
>>> that internally would overcame this limitation are much more possible.
>>>
>>> Best,
>>> Scuri
>>>
>>>
>>> On Mon, Dec 1, 2014 at 8:39 PM, Milind Gupta <[email protected]>
>>> wrote:
>>>
>>>> Thanks for looking into this. I am curious how do programs get around
>>>> this. For example Microsoft word can have a document with 100s of pages and
>>>> it is still able to scroll to all of them. Same for say notepad. Do you
>>>> know how to get around the limitation?
>>>>
>>>> Thanks,
>>>> Milind
>>>>
>>>> On Mon, Dec 1, 2014 at 2:23 PM, Antonio Scuri <[email protected]
>>>> > wrote:
>>>>
>>>>> It is a system limitation. Your control is too big and although its
>>>>> size is correct, the windows scrollbar has some limitation that prevents
>>>>> the scrollbox to work.
>>>>>
>>>>> This code:
>>>>>
>>>>> tb1 = iup.text{rastersize = "1131x8581",multiline="YES"}
>>>>>
>>>>> sb = iup.scrollbox{
>>>>> tb1
>>>>> }
>>>>> dlg = iup.dialog{
>>>>> sb;
>>>>> title="Dialog"
>>>>> }
>>>>> dlg:show()
>>>>>
>>>>> Works ok. But if you change 8581 to 38581 it will crop the visible
>>>>> area.
>>>>>
>>>>> Best,
>>>>> Scuri
>>>>>
>>>>>
>>>>> On Fri, Nov 28, 2014 at 6:44 PM, Milind Gupta <[email protected]>
>>>>> wrote:
>>>>>
>>>>>> I modified the test case to just have a text box instead of the
>>>>>> canvas. After pasting a large text chunk in the text box it is more
>>>>>> easily
>>>>>> visible that the scroll box actually stops scrolling after the scroll
>>>>>> thumb
>>>>>> is about 9/10th of all the way down. Is this a limitation of the scroll
>>>>>> box
>>>>>> or is this a bug?
>>>>>>
>>>>>> Thanks,
>>>>>> Milind
>>>>>>
>>>>>>
>>>>>> On Fri, Nov 28, 2014 at 10:48 AM, Milind Gupta <
>>>>>> [email protected]> wrote:
>>>>>>
>>>>>>> Hi,
>>>>>>> I have attached a test case which on my system stops
>>>>>>> generating the canvas action call back when the scroll box is about 9/10
>>>>>>> ths of all the way down.
>>>>>>> Please let me know if I am doing something wrong or is there
>>>>>>> a limitation on scroll box or the canvas in any way.
>>>>>>>
>>>>>>> Thanks,
>>>>>>> Milind
>>>>>>>
>>>>>>>
>>>>>>>
>>>>>>
>>>>>>
>>>>>> ------------------------------------------------------------------------------
>>>>>> Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
>>>>>> from Actuate! Instantly Supercharge Your Business Reports and
>>>>>> Dashboards
>>>>>> with Interactivity, Sharing, Native Excel Exports, App Integration &
>>>>>> more
>>>>>> Get technology previously reserved for billion-dollar corporations,
>>>>>> FREE
>>>>>>
>>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
>>>>>> _______________________________________________
>>>>>> Iup-users mailing list
>>>>>> [email protected]
>>>>>> https://lists.sourceforge.net/lists/listinfo/iup-users
>>>>>>
>>>>>>
>>>>>
>>>>>
>>>>> ------------------------------------------------------------------------------
>>>>> Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
>>>>> from Actuate! Instantly Supercharge Your Business Reports and
>>>>> Dashboards
>>>>> with Interactivity, Sharing, Native Excel Exports, App Integration &
>>>>> more
>>>>> Get technology previously reserved for billion-dollar corporations,
>>>>> FREE
>>>>>
>>>>> http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
>>>>> _______________________________________________
>>>>> Iup-users mailing list
>>>>> [email protected]
>>>>> https://lists.sourceforge.net/lists/listinfo/iup-users
>>>>>
>>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
>>>> from Actuate! Instantly Supercharge Your Business Reports and Dashboards
>>>> with Interactivity, Sharing, Native Excel Exports, App Integration &
>>>> more
>>>> Get technology previously reserved for billion-dollar corporations, FREE
>>>>
>>>> http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
>>>> _______________________________________________
>>>> Iup-users mailing list
>>>> [email protected]
>>>> https://lists.sourceforge.net/lists/listinfo/iup-users
>>>>
>>>>
>>>
>>>
>>> ------------------------------------------------------------------------------
>>> Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
>>> from Actuate! Instantly Supercharge Your Business Reports and Dashboards
>>> with Interactivity, Sharing, Native Excel Exports, App Integration & more
>>> Get technology previously reserved for billion-dollar corporations, FREE
>>>
>>> http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
>>> _______________________________________________
>>> Iup-users mailing list
>>> [email protected]
>>> https://lists.sourceforge.net/lists/listinfo/iup-users
>>>
>>>
>>
>>
>> ------------------------------------------------------------------------------
>> Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
>> from Actuate! Instantly Supercharge Your Business Reports and Dashboards
>> with Interactivity, Sharing, Native Excel Exports, App Integration & more
>> Get technology previously reserved for billion-dollar corporations, FREE
>>
>> http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
>> _______________________________________________
>> Iup-users mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/iup-users
>>
>>
>
>
> ------------------------------------------------------------------------------
> Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server
> from Actuate! Instantly Supercharge Your Business Reports and Dashboards
> with Interactivity, Sharing, Native Excel Exports, App Integration & more
> Get technology previously reserved for billion-dollar corporations, FREE
>
> http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
> _______________________________________________
> Iup-users mailing list
> [email protected]
> https://lists.sourceforge.net/lists/listinfo/iup-users
>
>
scrollbox_wxlua.lua
Description: Binary data
------------------------------------------------------------------------------ Download BIRT iHub F-Type - The Free Enterprise-Grade BIRT Server from Actuate! Instantly Supercharge Your Business Reports and Dashboards with Interactivity, Sharing, Native Excel Exports, App Integration & more Get technology previously reserved for billion-dollar corporations, FREE http://pubads.g.doubleclick.net/gampad/clk?id=157005751&iu=/4140/ostg.clktrk
_______________________________________________ Iup-users mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/iup-users
