So if there anyone interested to help? , Professional help.

On Mon, Jun 29, 2015 at 12:10 AM, Mustafa Sak <mustafa....@1und1.de> wrote:

>  First of all, its an timing issue.
> Virtual pane was made with the precondition, that the dimensions of any
> possible item (widget) are set *before* that item was rendered.
>
> In your case you do not know how height an item will be. Sure there is a
> way to find a solution, but this would result in an custom implementation.
> So please feel free to contact any of our professional qooxdoo user.
>
>
> Gruß
> Mustafa Sak
>
> Applications & Integration
>
> 1&1 Internet AG | Ernst-Frey-Straße 10 | 76135 Karlsruhe | Germany
> Phone: +49 721 91374-6977
> E-Mail: mustafa....@1und1.de | Web: www.1und1.de
>
> Hauptsitz Montabaur, Amtsgericht Montabaur, HRB 6484
>
> Vorstand: Frank Einhellinger, Robert Hoffmann, Markus Huhn, Hans-Henning
> Kettler, Uwe Lamnek
> Aufsichtsratsvorsitzender: Michael Scheeren
>
> Member of United Internet
>
>
> -------- Ursprüngliche Nachricht --------
> Von: Phyo Arkar <phyo.arkarl...@gmail.com>
> Gesendet: Sunday, June 28, 2015 01:58 AM
> An: qooxdoo Development <qooxdoo-devel@lists.sourceforge.net>
> Betreff: Re: [qooxdoo-devel] How can i scroll to the end of a list , after
> list item updated (continue), using dynamic virtual list widget sizes?
>
> Can i do something with
>
>  prefetchX prefetchY of
> https://github.com/qooxdoo/qooxdoo/blob/release_5_0/framework/source/class/qx/ui/virtual/core/Pane.js
> ?
>
>  is  syncWidget of virutal pane can be helpful ?
> https://github.com/qooxdoo/qooxdoo/blob/release_5_0/framework/source/class/qx/ui/virtual/core/Pane.js#L713
>
> On Sat, Jun 27, 2015 at 12:12 AM, Phyo Arkar <phyo.arkarl...@gmail.com>
> wrote:
>
>> Scalability of virtual infrastructure is main selling point for me for
>> qooxdoo.
>> Is there any workaround for this?
>>
>> On Thu, Jun 25, 2015 at 2:53 AM, Phyo Arkar <phyo.arkarl...@gmail.com>
>> wrote:
>>
>>> Due to persistance nature of our chatroo, i prefer Virtuallist .
>>>
>>>  Is there anyway ?
>>>
>>>  On Wed, Jun 24, 2015 at 8:29 PM, Mustafa Sak <mustafa....@1und1.de>
>>> wrote:
>>>
>>>>   Yes, virtual widgets are made for scalability.  But for a chat with
>>>> max. one or two thousand items the form list should be good enough. Please
>>>> take try.
>>>>
>>>>
>>>>
>>>> Dank & Gruß
>>>> * Mustafa Sak*
>>>>
>>>> Softwareentwickler
>>>> Mail Development
>>>>
>>>> 1&1 Mail & Media Development & Technology GmbH | Brauerstraße 48 |
>>>> 76135 Karlsruhe | Germany
>>>> Phone: +49 721 91374-6977
>>>> E-Mail: mustafa....@1und1.de | Web: www.1und1.de
>>>>
>>>>
>>>>
>>>> *Von:* Phyo Arkar [mailto:phyo.arkarl...@gmail.com]
>>>> *Gesendet:* Mittwoch, 24. Juni 2015 15:46
>>>> *An:* qooxdoo Development
>>>> *Betreff:* Re: [qooxdoo-devel] How can i scroll to the end of a list ,
>>>> after list item updated (continue), using dynamic virtual list widget 
>>>> sizes?
>>>>
>>>>
>>>>
>>>> Virtualist can render un-limited  , right? I know i am a bit greedy..
>>>>
>>>>
>>>>
>>>> On Wed, Jun 24, 2015 at 7:38 PM, Mustafa Sak <mustafa....@1und1.de>
>>>> wrote:
>>>>
>>>> Ok, but why you want to implement it with an virtual list? Did you
>>>> think about using the qx.ui.form.List?
>>>>
>>>>
>>>>
>>>> Dank & Gruß
>>>> * Mustafa Sak*
>>>>
>>>> Softwareentwickler
>>>> Mail Development
>>>>
>>>> 1&1 Mail & Media Development & Technology GmbH | Brauerstraße 48 |
>>>> 76135 Karlsruhe | Germany
>>>> Phone: +49 721 91374-6977
>>>> E-Mail: mustafa....@1und1.de | Web: www.1und1.de
>>>>
>>>>
>>>>
>>>> *Von:* Phyo Arkar [mailto:phyo.arkarl...@gmail.com]
>>>> *Gesendet:* Mittwoch, 24. Juni 2015 14:35
>>>> *An:* qooxdoo Development
>>>> *Betreff:* Re: [qooxdoo-devel] How can i scroll to the end of a list ,
>>>> after list item updated (continue), using dynamic virtual list widget 
>>>> sizes?
>>>>
>>>>
>>>>
>>>> My intention is simple , a chatroom , with vote up/down , and a content
>>>> widget (Rich label widdget).
>>>>
>>>>
>>>>
>>>> Default height is 50px but it is automatically re-sized to Arbitrary
>>>> size according to the content , which renders Markdown and display
>>>> (rendered as html, as height as possible , no max-height specified) .
>>>>
>>>> All others are at default height.
>>>>
>>>>
>>>>
>>>> Here is my implementation.
>>>>
>>>>
>>>>
>>>> https://gist.github.com/v3ss0n/1eff1f35153f67c8edfe
>>>>
>>>>
>>>>
>>>> Screesshot also included.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Wed, Jun 24, 2015 at 6:35 PM, Mustafa Sak <mustafa....@1und1.de>
>>>> wrote:
>>>>
>>>> So let’s start at then scratch:
>>>>
>>>>
>>>>
>>>> What is your intention?
>>>>
>>>> Do you have a set of list item widgets with defined height? (this would
>>>> make the job much easier)
>>>>
>>>>
>>>>
>>>> Dank & Gruß
>>>> * Mustafa Sak*
>>>>
>>>> Softwareentwickler
>>>> Mail Development
>>>>
>>>> 1&1 Mail & Media Development & Technology GmbH | Brauerstraße 48 |
>>>> 76135 Karlsruhe | Germany
>>>> Phone: +49 721 91374-6977
>>>> E-Mail: mustafa....@1und1.de | Web: www.1und1.de
>>>>
>>>>
>>>>
>>>> *Von:* Phyo Arkar [mailto:phyo.arkarl...@gmail.com]
>>>> *Gesendet:* Mittwoch, 24. Juni 2015 13:18
>>>>
>>>>
>>>> *An:* qooxdoo Development
>>>> *Betreff:* Re: [qooxdoo-devel] How can i scroll to the end of a list ,
>>>> after list item updated (continue), using dynamic virtual list widget 
>>>> sizes?
>>>>
>>>>
>>>>
>>>> That implementation , do not work in firefox, it just keep scrolling
>>>> indefinately.
>>>>
>>>>
>>>>
>>>> I am out of ideas.
>>>>
>>>>
>>>>
>>>> Can i pay for support on that?
>>>>
>>>>
>>>>
>>>> On Wed, Jun 24, 2015 at 12:53 AM, Phyo Arkar <phyo.arkarl...@gmail.com>
>>>> wrote:
>>>>
>>>> that gist version is working as intended now, just did it very dirty
>>>> way (counting number of updates it called and if >3 , scrolls)
>>>>
>>>>
>>>>
>>>> On Wed, Jun 24, 2015 at 12:20 AM, Phyo Arkar <phyo.arkarl...@gmail.com>
>>>> wrote:
>>>>
>>>> I made a gist https://gist.github.com/v3ss0n/f48e336c4a2eb6a80089
>>>>
>>>> because tinyurl can't work with it. Only saying request URL too long
>>>> ,even tho i deleted all comments. Hope you don't mind.
>>>>
>>>>
>>>>
>>>> You can copy paste directly to playground, i have tested and it works.
>>>>
>>>>
>>>>
>>>> On Wed, Jun 24, 2015 at 12:11 AM, Phyo Arkar <phyo.arkarl...@gmail.com>
>>>> wrote:
>>>>
>>>> Also i get request URL too Long when i just try to shorten url. i guess
>>>> we need a real qooxdoo playground like codepen.io , if anyone going to
>>>> chipin for hosting fee , i will build one.
>>>>
>>>>
>>>>
>>>> On Wed, Jun 24, 2015 at 12:03 AM, Phyo Arkar <phyo.arkarl...@gmail.com>
>>>> wrote:
>>>>
>>>> Yes i tried on playground before sending code directly , it giving me
>>>> syntax errors and i can't find where it is. The code runs correctly without
>>>> playground.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Tue, Jun 23, 2015 at 8:41 PM, Mustafa Sak <mustafa....@1und1.de>
>>>> wrote:
>>>>
>>>>    Hi,
>>>>
>>>>
>>>>
>>>> it is much easier for us to answer if you provide us with an playground
>>>> example. But anyway, dealing with different sizes on a virtual widget is
>>>> difficult, so we are not always able to help with concrete code examples.
>>>>
>>>>
>>>>
>>>> Dank & Gruß
>>>> * Mustafa Sak*
>>>>
>>>> Softwareentwickler
>>>> Mail Development
>>>>
>>>> 1&1 Mail & Media Development & Technology GmbH | Brauerstraße 48 |
>>>> 76135 Karlsruhe | Germany
>>>> Phone: +49 721 91374-6977
>>>> E-Mail: mustafa....@1und1.de | Web: www.1und1.de
>>>>
>>>>
>>>>
>>>> *Von:* Phyo Arkar [mailto:phyo.arkarl...@gmail.com]
>>>> *Gesendet:* Montag, 22. Juni 2015 20:18
>>>> *An:* qooxdoo Development
>>>> *Betreff:* Re: [qooxdoo-devel] How can i scroll to the end of a list ,
>>>> after list item updated (continue), using dynamic virtual list widget 
>>>> sizes?
>>>>
>>>>
>>>>
>>>> Another separated but related problem is size of scrollbar knob changed
>>>> and irregular scrollbar position when list item is reized (huge list item)
>>>> , how can i sync that?
>>>>
>>>>
>>>>
>>>> On Tue, Jun 23, 2015 at 12:39 AM, Phyo Arkar <phyo.arkarl...@gmail.com>
>>>> wrote:
>>>>
>>>> I cant get to work properly with the example you gave , it always out
>>>> of scroll position after adding more than 1 item.
>>>>
>>>> here is only working solution so far but very dirty.
>>>>
>>>> If there any better solution?
>>>>
>>>> qx.Class.define('phwabe.utils.list.InfiniList', {
>>>>
>>>>   extend: qx.ui.list.List,
>>>>
>>>>
>>>>
>>>>   members: {
>>>>
>>>>     __deferredCall: null,
>>>>
>>>>     __scrollBottom: false,
>>>>
>>>>     __updateCount: 0,
>>>>
>>>>     __resizeCount:0,
>>>>
>>>>
>>>>
>>>>     _initLayer: *function*() {
>>>>
>>>>       *this*.base(arguments);
>>>>
>>>>       *this*._layer.addListener("updated", *this*._onUpdated, *this*);
>>>>
>>>>       *// this.getPane().addListener("update", this._scrollBottom, this)*
>>>>
>>>>     },
>>>>
>>>>
>>>>
>>>>     _onUpdated: *function*(event) {
>>>>
>>>>       *if* (*this*.__deferredCall === null) {
>>>>
>>>>         *this*.__deferredCall = *new* qx.util.DeferredCall(*function*() {
>>>>
>>>>
>>>>
>>>>           qx.ui.core.queue.Widget.add(*this*, 'updateSize');
>>>>
>>>>
>>>>
>>>>         }, *this*);
>>>>
>>>>       }
>>>>
>>>>       *this*.__deferredCall.schedule();
>>>>
>>>>     },
>>>>
>>>>     _updateSize: *function*(callback) {
>>>>
>>>>       *var* firstRow = *this*._layer.getFirstRow();
>>>>
>>>>       *var* rowSize = *this*._layer.getRowSizes().length;
>>>>
>>>>       *// console.log(rowSize)*
>>>>
>>>>       *for* (*var* row = firstRow; row < firstRow + rowSize; row++) {
>>>>
>>>>         *var* widget = *this*._layer.getRenderedCellWidget(row, 0);
>>>>
>>>>         *if* (widget !== null) {
>>>>
>>>>           *var* height = widget.getSizeHint().height;
>>>>
>>>>           *var* current_height = 
>>>> *this*.getPane().getRowConfig().getItemSize(row);
>>>>
>>>>           *if* (height !== current_height) {
>>>>
>>>>             *this*.getPane().getRowConfig().setItemSize(row, height);
>>>>
>>>>             console.log("resizing")
>>>>
>>>>
>>>>
>>>>           }
>>>>
>>>>
>>>>
>>>>         }
>>>>
>>>>
>>>>
>>>>       }
>>>>
>>>>       callback()
>>>>
>>>>     },
>>>>
>>>>     _scrollBottom: *function*(limit) {
>>>>
>>>>       *if* (*this*.__scrollBottom === true) {
>>>>
>>>>         *this*.getPane().setScrollY(1e99)
>>>>
>>>>         *this*.scrollToY(1e99)
>>>>
>>>>         *var* lastrow =  *this*.getModel().length -1;
>>>>
>>>>         console.log(lastrow)
>>>>
>>>>         *this*.getPane().scrollRowIntoView(lastrow)
>>>>
>>>>         *if* (*this*.__updateCount >= limit) {
>>>>
>>>>           *this*.__scrollBottom = false
>>>>
>>>>         }
>>>>
>>>>
>>>>
>>>>       }
>>>>
>>>>     },
>>>>
>>>>   syncWidget: *function*(jobs) {
>>>>
>>>>     *var* that = *this*
>>>>
>>>>     *if* (jobs.scrollBottom & jobs.updateSize) {
>>>>
>>>>       console.log(jobs)
>>>>
>>>>       *this*.__scrollBottom = true
>>>>
>>>>       *this*.__updateCount = 0
>>>>
>>>>       *this*._updateSize(*function*(){
>>>>
>>>>         that._scrollBottom(6)
>>>>
>>>>       })
>>>>
>>>>       console.log("BOTH JOBS no of updates" + *this*.__updateCount)
>>>>
>>>>
>>>>
>>>>       *this*.__updateCount += 1
>>>>
>>>>     } *else* *if* (jobs.scrollBottom) {
>>>>
>>>>       *this*.__scrollBottom = true
>>>>
>>>>       *this*.__updateCount = 0
>>>>
>>>>     } *else* *if* (jobs.updateSize) {
>>>>
>>>>       *this*._updateSize(*function*(){
>>>>
>>>>         that._scrollBottom(3)
>>>>
>>>>       })
>>>>
>>>>       *this*.__updateCount += 1
>>>>
>>>>       console.log("no of updates" + *this*.__updateCount)
>>>>
>>>>     }
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>   }
>>>>
>>>> }
>>>>
>>>> });
>>>>
>>>>  ​
>>>>
>>>>
>>>>
>>>> On Mon, Jun 22, 2015 at 2:11 AM, Phyo Arkar <phyo.arkarl...@gmail.com>
>>>> wrote:
>>>>
>>>> After trying to remember what my bugzilla pass , i had filed a bug.
>>>> Bugzilla needs OAuth support badly.
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> On Wed, Jun 17, 2015 at 9:29 PM, Phyo Arkar <phyo.arkarl...@gmail.com>
>>>> wrote:
>>>>
>>>> About disaapearing Scrollbars on Chrome? Ok i will file one.
>>>>
>>>> It dosen't appear in my code tho.
>>>>
>>>>
>>>>
>>>> On Wed, Jun 17, 2015 at 8:55 PM, Mustafa Sak <mustafa....@1und1.de>
>>>> wrote:
>>>>
>>>> You are using Chrome right?
>>>>
>>>>
>>>>
>>>> Would you please report a bug?
>>>>
>>>>
>>>>
>>>> Dank & Gruß
>>>> * Mustafa Sak*
>>>>
>>>> Softwareentwickler
>>>> Mail Development
>>>>
>>>> 1&1 Mail & Media Development & Technology GmbH | Brauerstraße 48 |
>>>> 76135 Karlsruhe | Germany
>>>> Phone: +49 721 91374-6977
>>>> E-Mail: mustafa....@1und1.de | Web: www.1und1.de
>>>>
>>>>
>>>>
>>>> *Von:* Phyo Arkar [mailto:phyo.arkarl...@gmail.com]
>>>> *Gesendet:* Mittwoch, 17. Juni 2015 10:51
>>>> *An:* qooxdoo Development
>>>> *Betreff:* Re: [qooxdoo-devel] How can i scroll to the end of a list ,
>>>> after list item updated (continue), using dynamic virtual list widget 
>>>> sizes?
>>>>
>>>>
>>>>
>>>>   I can't see the scroll bar , it was hidden on purpose?
>>>>
>>>>
>>>>
>>>> On Wed, Jun 17, 2015 at 3:19 PM, Phyo Arkar <phyo.arkarl...@gmail.com>
>>>> wrote:
>>>>
>>>> Thanks a lot for helping me out!
>>>>
>>>> When a singile last one is added its ok .
>>>>
>>>> When multiple LastOnes are added it dosen't scroll to bottom.
>>>>
>>>> Any thoughts?
>>>>
>>>>
>>>>
>>>> On Wed, Jun 17, 2015 at 1:47 PM, Mustafa Sak <mustafa....@1und1.de>
>>>> wrote:
>>>>
>>>>     Wow,
>>>>
>>>>
>>>>
>>>> it was not so easy to solve that issue. But would you please try this
>>>> example? http://tinyurl.com/nus7pev
>>>>
>>>>
>>>>
>>>> Dank & Gruß
>>>> * Mustafa Sak*
>>>>
>>>> Softwareentwickler
>>>> Mail Development
>>>>
>>>> 1&1 Mail & Media Development & Technology GmbH | Brauerstraße 48 |
>>>> 76135 Karlsruhe | Germany
>>>> Phone: +49 721 91374-6977
>>>> E-Mail: mustafa....@1und1.de | Web: www.1und1.de
>>>>
>>>>
>>>>
>>>> *Von:* Phyo Arkar [mailto:phyo.arkarl...@gmail.com]
>>>> *Gesendet:* Montag, 15. Juni 2015 12:23
>>>> *An:* qooxdoo-devel
>>>> *Betreff:* [qooxdoo-devel] How can i scroll to the end of a list ,
>>>> after list item updated (continue), using dynamic virtual list widget 
>>>> sizes?
>>>>
>>>>
>>>>
>>>> Previous thread was abandoned so i making new one , with more
>>>> information.
>>>>
>>>> I am now using syncWidget to scroll to bottom of a virtual list when
>>>> new item is added.
>>>> But the problem is this virtuallist implementation automatically
>>>> resizes list item height , and when scrolled inside syncWidget , it is not
>>>> actually scrolled to the end , but to that widget item’s start.
>>>>
>>>> here is handler for list’s updates:
>>>>
>>>>       this.chat_list.getModel().addListener("change", function() {
>>>>
>>>>           // qx.ui.core.queue.Manager.flush();
>>>>
>>>>           qx.ui.core.queue.Widget.remove(this.chat_list,"scrollBottom");
>>>>
>>>>           // normally using the flush should be time enough for the 
>>>> renderer
>>>>
>>>>           qx.ui.core.queue.Widget.add(this.chat_list, "scrollBottom");
>>>>
>>>>       },this)
>>>>
>>>> I added a work around by counting how many times layer is updated , if
>>>> it updated for 3 times , scrolls to button : 
>>>> this._layer.addListener("updated",
>>>> this._onUpdated, this); .
>>>> Because i observed whenever a new item is added , layer firest updated
>>>> 3 times and only at the last time it need to actually scroll.
>>>>
>>>> Here is the infinite list with auto-resizing of item height from
>>>> stackoverflow.com/questions/21456941/infinite-scroll-in-qooxdoo-with-virtual-list
>>>> .
>>>>
>>>> qx.Class.define('phwabe.utils.list.InfiniList', {
>>>>
>>>>   extend: qx.ui.list.List,
>>>>
>>>>
>>>>
>>>>   members: {
>>>>
>>>>     __deferredCall: null,
>>>>
>>>>     __scrollBottom: false,
>>>>
>>>>     __updateCount: 0,
>>>>
>>>>
>>>>
>>>>     _initLayer: *function*() {
>>>>
>>>>       *this*.base(arguments);
>>>>
>>>>       console.log("initing layer")
>>>>
>>>>       *this*._layer.addListener("updated", *this*._onUpdated, *this*);
>>>>
>>>>     },
>>>>
>>>>
>>>>
>>>>     _onUpdated: *function*(event) {
>>>>
>>>>       *if* (*this*.__deferredCall === null) {
>>>>
>>>>         *this*.__deferredCall = *new* qx.util.DeferredCall(*function*() {
>>>>
>>>>
>>>>
>>>>           qx.ui.core.queue.Widget.add(*this*, 'updateSize');
>>>>
>>>>
>>>>
>>>>         }, *this*);
>>>>
>>>>       }
>>>>
>>>>       *this*.__deferredCall.schedule();
>>>>
>>>>     },
>>>>
>>>>     _updateSize: *function*() {
>>>>
>>>>       *var* firstRow = *this*._layer.getFirstRow();
>>>>
>>>>       *var* rowSize = *this*._layer.getRowSizes().length;
>>>>
>>>>       *for* (*var* row = firstRow; row < firstRow + rowSize; row++) {
>>>>
>>>>         *var* widget = *this*._layer.getRenderedCellWidget(row, 0);
>>>>
>>>>         *if* (widget !== null) {
>>>>
>>>>           *var* height = widget.getSizeHint().height;
>>>>
>>>>           *this*.getPane().getRowConfig().setItemSize(row, height);
>>>>
>>>>         }
>>>>
>>>>
>>>>
>>>>       }
>>>>
>>>>     },
>>>>
>>>>     _scrollBottom: *function*(limit) {
>>>>
>>>>       *if* (*this*.__scrollBottom === true) {
>>>>
>>>>          *this*.scrollToY(1e99)
>>>>
>>>>          *if* (*this*.__updateCount >= limit) {
>>>>
>>>>           *this*.__scrollBottom = false
>>>>
>>>>         }
>>>>
>>>>
>>>>
>>>>       }
>>>>
>>>>     },
>>>>
>>>>     syncWidget: *function*(jobs) {
>>>>
>>>>        *if* (jobs.scrollBottom & jobs.updateSize) {
>>>>
>>>>          console.log(jobs)
>>>>
>>>>         *this*.__scrollBottom = true
>>>>
>>>>         *this*.__updateCount = 0
>>>>
>>>>          *this*._updateSize()
>>>>
>>>>         *this*._scrollBottom(5)
>>>>
>>>>          console.log("BOTH JOBS no of updates" + *this*.__updateCount)
>>>>
>>>>
>>>>
>>>>          *this*
>>>>
>>>>                              ...
>>>>
>>>> [Message clipped]
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Monitor 25 network devices or servers for free with OpManager!
>>>> OpManager is web-based network management software that monitors
>>>> network devices and physical & virtual servers, alerts via email & sms
>>>> for fault. Monitor 25 devices for free with no restriction. Download now
>>>> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
>>>> _______________________________________________
>>>> qooxdoo-devel mailing list
>>>> qooxdoo-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>>>>
>>>>
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Monitor 25 network devices or servers for free with OpManager!
>>>> OpManager is web-based network management software that monitors
>>>> network devices and physical & virtual servers, alerts via email & sms
>>>> for fault. Monitor 25 devices for free with no restriction. Download now
>>>> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
>>>> _______________________________________________
>>>> qooxdoo-devel mailing list
>>>> qooxdoo-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>>>>
>>>>
>>>>
>>>>
>>>> ------------------------------------------------------------------------------
>>>> Monitor 25 network devices or servers for free with OpManager!
>>>> OpManager is web-based network management software that monitors
>>>> network devices and physical & virtual servers, alerts via email & sms
>>>> for fault. Monitor 25 devices for free with no restriction. Download now
>>>> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
>>>> _______________________________________________
>>>> qooxdoo-devel mailing list
>>>> qooxdoo-devel@lists.sourceforge.net
>>>> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>>>>
>>>>
>>>
>>
>
>
> ------------------------------------------------------------------------------
> Monitor 25 network devices or servers for free with OpManager!
> OpManager is web-based network management software that monitors
> network devices and physical & virtual servers, alerts via email & sms
> for fault. Monitor 25 devices for free with no restriction. Download now
> http://ad.doubleclick.net/ddm/clk/292181274;119417398;o
> _______________________________________________
> qooxdoo-devel mailing list
> qooxdoo-devel@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel
>
>
------------------------------------------------------------------------------
Don't Limit Your Business. Reach for the Cloud.
GigeNET's Cloud Solutions provide you with the tools and support that
you need to offload your IT needs and focus on growing your business.
Configured For All Businesses. Start Your Cloud Today.
https://www.gigenetcloud.com/
_______________________________________________
qooxdoo-devel mailing list
qooxdoo-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/qooxdoo-devel

Reply via email to