Mailing List Archive

OOUI window manager
Hello. Could you tell me, please, is there a way to check if a window
exists in manager by its symbolic name? hasWindow() does not except such a
name. getWindow() returns empty window if it was not exists before.
getWindow()...isInitialized() is always true. All I need is to check if the
window "win1" exists, and if it's not, create it. Thank you.
Igal (User:IKhitron)
Re: OOUI window manager [ In reply to ]
On 2023-01-13 11:59, Igal Khitron wrote:
> Hello. Could you tell me, please, is there a way to check if a window
> exists in manager by its symbolic name? hasWindow() does not except such
> a name. getWindow() returns empty window if it was not exists before.
> getWindow()...isInitialized() is always true. All I need is to check if
> the window "win1" exists, and if it's not, create it. Thank you.
> Igal (User:IKhitron)

There doesn't seem to be a good way to do it.

If you really wanted to, you could do it like this:

function isWindowRegistered( winManager, name ) {
if ( winManager.windows[ name ] ) {
return true;
}
if ( winManager.factory && winManager.factory.lookup( name ) ) {
return true;
}
return false;
}

However, these are not public APIs, and so I can't promise that they
won't stop working in the future (or that you'll be notified when that
happens).

I am curious about what you need this for, perhaps there's an easier way
to achieve it. Can you share what you're building?


--
Bartosz Dziewo?ski
_______________________________________________
Wikitech-l mailing list -- wikitech-l@lists.wikimedia.org
To unsubscribe send an email to wikitech-l-leave@lists.wikimedia.org
https://lists.wikimedia.org/postorius/lists/wikitech-l.lists.wikimedia.org/
Re: OOUI window manager [ In reply to ]
Hello, @matmarex, and thank you for your answer.
Yes, it not looks like such a good way. The way I use for now, found it
after sending that mail, is not good either, but seems to me a little
better than this one, with hidden API.
I wrote it as
windowManager.getWindow(name)
.then(function(data) {windowManager.openWindow(data);})
// (openWindow(data) above can be also openWindow(name), it's
the same)
.fail(function() {createMap(name); windowManager.openWindow(name);});
About your question, I've created a new version of Metro maps, with
thumbnail in the article, that has a button, clicking on it opens a huge
full version in a popup. I need this to be sure that I do not create some
particular map twice, only if it wasn't created yet. I can give you some
links to my code, if you're interested.
Thanks again,
Igal

?????? ??? ??, 16 ????? 2023, 21:59, ??? Bartosz Dziewo?ski ?<
matma.rex@gmail.com>:

> On 2023-01-13 11:59, Igal Khitron wrote:
> > Hello. Could you tell me, please, is there a way to check if a window
> > exists in manager by its symbolic name? hasWindow() does not except such
> > a name. getWindow() returns empty window if it was not exists before.
> > getWindow()...isInitialized() is always true. All I need is to check if
> > the window "win1" exists, and if it's not, create it. Thank you.
> > Igal (User:IKhitron)
>
> There doesn't seem to be a good way to do it.
>
> If you really wanted to, you could do it like this:
>
> function isWindowRegistered( winManager, name ) {
> if ( winManager.windows[ name ] ) {
> return true;
> }
> if ( winManager.factory && winManager.factory.lookup( name ) ) {
> return true;
> }
> return false;
> }
>
> However, these are not public APIs, and so I can't promise that they
> won't stop working in the future (or that you'll be notified when that
> happens).
>
> I am curious about what you need this for, perhaps there's an easier way
> to achieve it. Can you share what you're building?
>
>
> --
> Bartosz Dziewo?ski
> _______________________________________________
> Wikitech-l mailing list -- wikitech-l@lists.wikimedia.org
> To unsubscribe send an email to wikitech-l-leave@lists.wikimedia.org
> https://lists.wikimedia.org/postorius/lists/wikitech-l.lists.wikimedia.org/