Also this test here does not make so much sense:
if (null == canvas.exitDialog || 'undefined' == canvas.exitDialog) {
canvas.exitDialog will never be a string 'undefined'
it might makes sense to make a check canvas.exitDialog == undefined
but I don't know if undefined still exists in SWF10.
if you want to check if a view with a certain name does exist in the
canvas the method (so far) was:
if (canvas["exitDialog"]) {
//do action
}
However the better way to do that would be:
Define an attribute in the canvas tag (or create a class
mainAttributesSWF10.lzx and include it into main + maindebug.lzx)
<attribute name="exitDialog" value="null" />
in commonPopupAdapter you make something like that:
<method name="exitRoom">
if (canvas.exitDialog != null) {
if ($debug) Debug.warn("Dialog already open!!");
}
canvas.exitDialog = new lz.confirmationSingle(canvas,{
refObj:this,
labelid:791,
labeliderror:790,
showCheckBox:false,
name:"exitDialog"
});
</method>
in confirmationSingle in the close method you give the canvas
attribute "exitDialog" free again when the confirmationSingle-window
is closed! Otherwise the internal garbage collector might still see a
reference to the confirmationSingle-window instance and can't remove
the confirmationSingle-window instance view from the memory.
so
<handler name="onclose">
canvas.exitDialog = null;
</handler>
Sebastian
2012/3/23 [email protected] <[email protected]>:
> Yes,
>
> there is missing a library.lzx in the folder conference and a
> library.lzx is missing in the folder modules with the neccessary
> include statements for the subfolder. There is no "autoinclude" or
> something like that, you programmatially have to include every folder
> so that it is scanned for a library.lzx that might contain additional
> includes.
>
> And in main.lzx and maindebug.lzx there is missing a include for the
> module folder. Otherwise the .lzx files are not available in SWF10.
>
> Also please create those classes with a new className/fileName
> For example errorPopUpSWF10.lzx. And rename it to class
> name="errorPopUpSWF10".
> It is quite confusing if we have duplicated classes and files in SWF8 and
> SWF10.
>
> Sebastian
>
> 2012/3/23 Maxim Solodovnik <[email protected]>:
>> I guess you need to create library.lzx in swf10 folder
>> containing
>> <include href="modules/conference/popups" />
>>
>> and ensure any library.lzx contains
>> <include href="swf10" /> line
>> I guess this should resolve all dependencies properly
>>
>>
>> 2012/3/23 German Grekhov <[email protected]>
>>>
>>> Maxim, yes, you are right.
>>> When I add
>>> <include href="modules/conference/popups/commonPopupAdapter.lzx" />
>>> to commonVideoViewContentSWF10.lzx then it works. But it is not good
>>> solution. In main flash we don't need to make any includes, because they
>>> are kept in library.lzx files.
>>>
>>> When I add this include then some other problems appears. For example,
>>> confirmationSingle extends labelExplorerBox, so, it is needed to include:
>>> <include href="../../../base/components/explorer/labelexplorerBox.lzx" />
>>>
>>> It is very unhandy way.
>>>
>>> Somebody should add these library.lzx.
>>>
>>> 2012/3/23 Maxim Solodovnik <[email protected]>
>>>
>>> > I was unable to find how you include
>>> > WebContent\swf10\modules\conference\popups\library.lzx
>>> >
>>> > usually some of library.lzx contains
>>> > something like
>>> > <include href="restricted/" />
>>> >
>>> > Maybe this is the problem?
>>> >
>>> >
>>> > 2012/3/23 German Grekhov <[email protected]>
>>> >
>>> > > This exception happens because the program can't create the
>>> > > "commonPopupAdaptder" object which is located here:
>>> > > WebContent\swf10\modules\conference\popups\commonPopupAdapter.lzx
>>> > >
>>> > > This class is needed to create popup windows using local connection
>>> > > (exit
>>> > > room, close whiteboard...). So, in debug mode these popup windows
>>> > > don't
>>> > > work, because the object (commonPopupAdaptder) that creates them could
>>> > not
>>> > > be created. But in release mode it works very well (all popups works).
>>> > >
>>> > > The problem with microphones is the same. When you mute your
>>> > > microphone
>>> > the
>>> > > program asks you a question, so you see the "confirmationSingle"
>>> > > dialog.
>>> > It
>>> > > is located here:
>>> > > WebContent\swf10\modules\conference\popups\confirmationSingle.lzx
>>> > >
>>> > > In release mode this object is created well and muting functionality
>>> > works.
>>> > > But in debug mode it is impossible to create "confirmationSingle"
>>> > > object
>>> > > and muting doesn't work.
>>> > >
>>> > > German.
>>> > >
>>> > > 22 марта 2012 г. 18:33 пользователь [email protected] <
>>> > > [email protected]> написал:
>>> > >
>>> > > > The exception happens directly when you enter the application, you
>>> > > > don't need to enter the conference room.
>>> > > > It is a simple assign error. I guess you've renamed a
>>> > > > NetConnection's
>>> > > > ref name or deleted one.
>>> > > >
>>> > > > The mute icon problem might be caused somewhere else.
>>> > > >
>>> > > > Sebastian
>>> > > >
>>> > > > 2012/3/22 Alexei Fedotov <[email protected]>:
>>> > > > > German, could you add a bit of debugging to your code, so we get
>>> > > > > more
>>> > > > > info on this error?
>>> > > > >
>>> > > > > --
>>> > > > > With best regards / с наилучшими пожеланиями,
>>> > > > > Alexei Fedotov / Алексей Федотов,
>>> > > > > http://dataved.ru/
>>> > > > > +7 916 562 8095
>>> > > > >
>>> > > > >
>>> > > > >
>>> > > > > On Thu, Mar 22, 2012 at 2:22 PM, [email protected]
>>> > > > > <[email protected]> wrote:
>>> > > > >> The Exception log can be seen in the debug mode.
>>> > > > >> Without debug I would not even see the runtime exceptions.
>>> > > > >>
>>> > > > >> The mute problem might be a different problem.
>>> > > > >>
>>> > > > >> Sebastian
>>> > > > >>
>>> > > > >> 2012/3/22 German Grekhov <[email protected]>:
>>> > > > >>> Hello, Sebastian. I have already told you about this problem.
>>> > > > >>>
>>> > > > >>> The error appears only in debug mode, but everything is all
>>> > > > >>> right
>>> > in
>>> > > > >>> release. I don't know why it is happen. I asked Timur for help,
>>> > > > >>> he
>>> > > has
>>> > > > met
>>> > > > >>> this problem too (with mute/unmute buttons), but he don't know
>>> > > > >>> the
>>> > > > origin of
>>> > > > >>> the problem too.
>>> > > > >>>
>>> > > > >>> German.
>>> > > > >>>
>>> > > > >>> 2012/3/21 [email protected] <[email protected]>
>>> > > > >>>
>>> > > > >>>> Hi German,
>>> > > > >>>>
>>> > > > >>>> could you please check your last commit, there is an exception
>>> > > > >>>> in
>>> > > the
>>> > > > >>>> client console:
>>> > > > >>>>
>>> > > > >>>> ERROR @commonVideoViewContentSWF10.lzx≈20: TypeError: Error
>>> > > > >>>> #1007
>>> > > > >>>>
>>> > > > >>>> There is something wrong in the oninit method. Some Ref or Type
>>> > > error.
>>> > > > >>>> This can lead to any kind of misbehaviour as the function just
>>> > never
>>> > > > >>>> completes and stops at random position.
>>> > > > >>>>
>>> > > > >>>> Sebastian
>>> > > > >>>>
>>> > > > >>>> 2012/3/20 <[email protected]>:
>>> > > > >>>> > Author: ggrekhov
>>> > > > >>>> > Date: Tue Mar 20 07:32:17 2012
>>> > > > >>>> > New Revision: 1302790
>>> > > > >>>> >
>>> > > > >>>> > URL: http://svn.apache.org/viewvc?rev=1302790&view=rev
>>> > > > >>>> > Log:
>>> > > > >>>> > OPENMEETINGS-80: close whiteboard dialog is moved
>>> > > > >>>> >
>>> > > > >>>> > Modified:
>>> > > > >>>> >
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/commonVideoComponentAdapter.lzx
>>> > > > >>>> >
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/whiteboard/whiteboardMiniButton.lzx
>>> > > > >>>> >
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/commonVideoViewContentSWF10.lzx
>>> > > > >>>> >
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/modules/conference/popups/commonPopupAdapter.lzx
>>> > > > >>>> >
>>> > > > >>>> > Modified:
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/commonVideoComponentAdapter.lzx
>>> > > > >>>> > URL:
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/commonVideoComponentAdapter.lzx?rev=1302790&r1=1302789&r2=1302790&view=diff
>>> > > > >>>> >
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > ==============================================================================
>>> > > > >>>> > ---
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/commonVideoComponentAdapter.lzx
>>> > > > >>>> > (original)
>>> > > > >>>> > +++
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/commonVideoComponentAdapter.lzx
>>> > > > >>>> > Tue Mar 20 07:32:17 2012
>>> > > > >>>> > @@ -152,6 +152,13 @@
>>> > > > >>>> > <method name="exitRoom">
>>> > > > >>>> > canvas.lc.send(canvas.vid_lc_name, "exitRoom");
>>> > > > >>>> > </method>
>>> > > > >>>> > +
>>> > > > >>>> > + <!---
>>> > > > >>>> > + Shows the close whiteboard dialog
>>> > > > >>>> > + -->
>>> > > > >>>> > + <method name="closeWhiteboard">
>>> > > > >>>> > + canvas.lc.send(canvas.vid_lc_name,
>>> > > > >>>> > "closeWhiteboard");
>>> > > > >>>> > + </method>
>>> > > > >>>> >
>>> > > > >>>> > </class>
>>> > > > >>>> >
>>> > > > >>>> >
>>> > > > >>>> > Modified:
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/whiteboard/whiteboardMiniButton.lzx
>>> > > > >>>> > URL:
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/whiteboard/whiteboardMiniButton.lzx?rev=1302790&r1=1302789&r2=1302790&view=diff
>>> > > > >>>> >
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > ==============================================================================
>>> > > > >>>> > ---
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/whiteboard/whiteboardMiniButton.lzx
>>> > > > >>>> > (original)
>>> > > > >>>> > +++
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/src/modules/conference/whiteboard/whiteboardMiniButton.lzx
>>> > > > >>>> > Tue Mar 20 07:32:17 2012
>>> > > > >>>> > @@ -144,25 +144,16 @@
>>> > > > >>>> > <handler name="onclick">
>>> > > > >>>> > <![CDATA[
>>> > > > >>>> > this.setAttribute('frame',2);
>>> > > > >>>> > - if (canvas.ismoderator ||
>>> > > > >>>> > canvas.isAllowedToDraw) {
>>> > > > >>>> > - new
>>> > lz.confirmationSingle(canvas,{
>>> > > > >>>> > - refObj:this,
>>> > > > >>>> > - labeliderror:1313,
>>> > > > >>>> > - showCheckBox:false
>>> > > > >>>> > - });
>>> > > > >>>> > - } else {
>>> > > > >>>> > - new lz.errorDialog(canvas,{
>>> > > > >>>> > - labelid:1366,
>>> > > > >>>> > -
>>> > > > >>>> > errortext:canvas.getLabelName(1365)
>>> > > > >>>> > - });
>>> > > > >>>> > +
>>> > > > >>>> > canvas._videocontainer._videoviewcontent.closeWhiteboard();
>>> > > > >>>> > + var t = this;
>>> > > > >>>> > + canvas.videoComp_lc.closeWhiteboard =
>>> > > > >>>> > function(confirm) {
>>> > > > >>>> > + if ($debug) Debug.write("confirm
>>> > > > >>>> > closeWhiteboard:", confirm);
>>> > > > >>>> > + if (confirm) {
>>> > > > >>>> > +
>>> > > t.parent.parent.removeObject(t.parent);
>>> > > > >>>> > + }
>>> > > > >>>> > }
>>> > > > >>>> > ]]>
>>> > > > >>>> > </handler>
>>> > > > >>>> > - <method name="sendConfirmation"
>>> > args="bool,askAgain">
>>> > > > >>>> > - if (bool) {
>>> > > > >>>> > -
>>> > this.parent.parent.removeObject(this.parent);
>>> > > > >>>> > - }
>>> > > > >>>> > - </method>
>>> > > > >>>> > <labelTooltip labelid="1364" />
>>> > > > >>>> > </view>
>>> > > > >>>> >
>>> > > > >>>> >
>>> > > > >>>> > Modified:
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/commonVideoViewContentSWF10.lzx
>>> > > > >>>> > URL:
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/commonVideoViewContentSWF10.lzx?rev=1302790&r1=1302789&r2=1302790&view=diff
>>> > > > >>>> >
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > ==============================================================================
>>> > > > >>>> > ---
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/commonVideoViewContentSWF10.lzx
>>> > > > >>>> > (original)
>>> > > > >>>> > +++
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/commonVideoViewContentSWF10.lzx
>>> > > > >>>> > Tue Mar 20 07:32:17 2012
>>> > > > >>>> > @@ -46,6 +46,7 @@
>>> > > > >>>> > client.changeDevice = this.changeDevice;
>>> > > > >>>> > client.setDrawAllowStatus =
>>> > > > >>>> > this.setDrawAllowStatus;
>>> > > > >>>> > client.exitRoom = this.exitRoom;
>>> > > > >>>> > + client.closeWhiteboard = this.closeWhiteboard;
>>> > > > >>>> >
>>> > > > >>>> > var lc:LocalConnection = new LocalConnection();
>>> > > > >>>> > lc.connect(canvas.vid_lc_name);
>>> > > > >>>> > @@ -436,6 +437,14 @@
>>> > > > >>>> > if ($debug) Debug.write("exitRoom");
>>> > > > >>>> > popupAdapter.exitRoom();
>>> > > > >>>> > </method>
>>> > > > >>>> > +
>>> > > > >>>> > + <!---
>>> > > > >>>> > + Shows the close whiteboard dialog
>>> > > > >>>> > + -->
>>> > > > >>>> > + <method name="closeWhiteboard">
>>> > > > >>>> > + if ($debug) Debug.write("closeWhiteboard");
>>> > > > >>>> > + popupAdapter.closeWhiteboard();
>>> > > > >>>> > + </method>
>>> > > > >>>> >
>>> > > > >>>> > <!--
>>> > > > >>>> > function not in use ?! swagner 04.02.2012
>>> > > > >>>> >
>>> > > > >>>> > Modified:
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/modules/conference/popups/commonPopupAdapter.lzx
>>> > > > >>>> > URL:
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > http://svn.apache.org/viewvc/incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/modules/conference/popups/commonPopupAdapter.lzx?rev=1302790&r1=1302789&r2=1302790&view=diff
>>> > > > >>>> >
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > ==============================================================================
>>> > > > >>>> > ---
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/modules/conference/popups/commonPopupAdapter.lzx
>>> > > > >>>> > (original)
>>> > > > >>>> > +++
>>> > > > >>>> >
>>> > > >
>>> > >
>>> >
>>> > incubator/openmeetings/trunk/singlewebapp/WebContent/swf10/modules/conference/popups/commonPopupAdapter.lzx
>>> > > > >>>> > Tue Mar 20 07:32:17 2012
>>> > > > >>>> > @@ -22,9 +22,9 @@
>>> > > > >>>> >
>>> > > > >>>> > <class name="exitDialog">
>>> > > > >>>> > <handler name="oninit">
>>> > > > >>>> > - if (null == canvas.inner.exitDialog || 'undefined'
>>> > > > >>>> > ==
>>> > > > >>>> > canvas.inner.exitDialog) {
>>> > > > >>>> > + if (null == canvas.exitDialog || 'undefined' ==
>>> > > > >>>> > canvas.exitDialog) {
>>> > > > >>>> > if ($debug) Debug.write("show exit dialog");
>>> > > > >>>> > - new lz.confirmationSingle(canvas.inner,{
>>> > > > >>>> > + new lz.confirmationSingle(canvas,{
>>> > > > >>>> > refObj:this,
>>> > > > >>>> > labelid:791,
>>> > > > >>>> > labeliderror:790,
>>> > > > >>>> > @@ -40,10 +40,39 @@
>>> > > > >>>> > </method>
>>> > > > >>>> > </class>
>>> > > > >>>> >
>>> > > > >>>> > +<class name="closeWhiteboardDialog">
>>> > > > >>>> > + <handler name="oninit">
>>> > > > >>>> > + if (null == canvas.closeWhiteboard || 'undefined' ==
>>> > > > >>>> > canvas.closeWhiteboard) {
>>> > > > >>>> > + if (canvas.ismoderator ||
>>> > > > >>>> > canvas.isAllowedToDraw) {
>>> > > > >>>> > + new lz.confirmationSingle(canvas,{
>>> > > > >>>> > + refObj:this,
>>> > > > >>>> > + labeliderror:1313,
>>> > > > >>>> > + showCheckBox:false,
>>> > > > >>>> > + name:"closeWhiteboard"
>>> > > > >>>> > + });
>>> > > > >>>> > + } else {
>>> > > > >>>> > + new lz.errorDialog(canvas,{
>>> > > > >>>> > + labelid:1366,
>>> > > > >>>> > + errortext:canvas.getLabelName(1365)
>>> > > > >>>> > + });
>>> > > > >>>> > + }
>>> > > > >>>> > + }
>>> > > > >>>> > + </handler>
>>> > > > >>>> > +
>>> > > > >>>> > + <method name="sendConfirmation" args="confirm,bool">
>>> > > > >>>> > + if ($debug) Debug.write("closeWhiteboardDialog
>>> > result:",
>>> > > > >>>> > confirm);
>>> > > > >>>> > + canvas.videoComp_lc.send(canvas.videoComp_lc_name,
>>> > > > >>>> > 'closeWhiteboard', confirm);
>>> > > > >>>> > + </method>
>>> > > > >>>> > +</class>
>>> > > > >>>> > +
>>> > > > >>>> > <class name="commonPopupAdapter">
>>> > > > >>>> > <method name="exitRoom">
>>> > > > >>>> > new lz.exitDialog();
>>> > > > >>>> > </method>
>>> > > > >>>> > +
>>> > > > >>>> > + <method name="closeWhiteboard">
>>> > > > >>>> > + new lz.closeWhiteboardDialog();
>>> > > > >>>> > + </method>
>>> > > > >>>> > </class>
>>> > > > >>>> >
>>> > > > >>>> > </library>
>>> > > > >>>> >
>>> > > > >>>> >
>>> > > > >>>>
>>> > > > >>>>
>>> > > > >>>>
>>> > > > >>>> --
>>> > > > >>>> Sebastian Wagner
>>> > > > >>>> http://www.openmeetings.de
>>> > > > >>>> http://incubator.apache.org/openmeetings/
>>> > > > >>>> http://www.webbase-design.de
>>> > > > >>>> http://www.wagner-sebastian.com
>>> > > > >>>> [email protected]
>>> > > > >>>
>>> > > > >>>
>>> > > > >>
>>> > > > >>
>>> > > > >>
>>> > > > >> --
>>> > > > >> Sebastian Wagner
>>> > > > >> http://www.openmeetings.de
>>> > > > >> http://incubator.apache.org/openmeetings/
>>> > > > >> http://www.webbase-design.de
>>> > > > >> http://www.wagner-sebastian.com
>>> > > > >> [email protected]
>>> > > >
>>> > > >
>>> > > >
>>> > > > --
>>> > > > Sebastian Wagner
>>> > > > http://www.openmeetings.de
>>> > > > http://incubator.apache.org/openmeetings/
>>> > > > http://www.webbase-design.de
>>> > > > http://www.wagner-sebastian.com
>>> > > > [email protected]
>>> > > >
>>> > >
>>> >
>>> >
>>> >
>>> > --
>>> > WBR
>>> > Maxim aka solomax
>>> >
>>
>>
>>
>>
>> --
>> WBR
>> Maxim aka solomax
>
>
>
> --
> Sebastian Wagner
> http://www.openmeetings.de
> http://incubator.apache.org/openmeetings/
> http://www.webbase-design.de
> http://www.wagner-sebastian.com
> [email protected]
--
Sebastian Wagner
http://www.openmeetings.de
http://incubator.apache.org/openmeetings/
http://www.webbase-design.de
http://www.wagner-sebastian.com
[email protected]