Threads for app w/multiple panels

Hi!
In the past few weeks I've been reading about the problems with Swing and the single thread model.
Now I've decided to start developing an application that is going to be:
* A JFrame with a menu bar.
* The JFrame will have border layout as the layout manager.
* I'm developing every option of the menu as an independent class which extends a JPanel with its own controls. So when the user selects a menu option I'll create an object of the extended panel class and place it in the center of the JFrame. When the user click on the exit/cancel button of the panel, it is destroyed.
My concerns are that I'm creating and destroying multiple components (extended JPanels) that have their own controls. And I need to update the contents of textboxes, labels, tables, etc. in each panel. How can I do that using multhithreading (I've seen the examples of using SwingUtilities.invokelater and similar).
Fortunely, the contents of every panel are independent from the others, so the data is only procesed by the extended JPanel class itself.
I'm veri confused on all the stuff o multithreading with application as this one.
I'll appreciate any help or comments on this!
Thank you !! An Happy New Year!!

The main thing you need worry about is simply that you are in the event thread when you
update components. If you are in a listener, update away, if you are in a background thread
you need to use SwingUtilites.invokeLater() (or similar).
As far as knowing what is happening in independent JPanels, etc. That can be simply
handled by appropriate listeners. ContainerListener for instance if you want to know
if/when a component gets added/removed to your layout, etc.

Similar Messages

  • Panels in CS5 for app development?

    Are there any panels in CS5 created for mobile devices/Android app development? What are the commonly used tools/panels for app development?

    Nope, there no other panels needed when developing for android, the only difference is when outputting the file, you should just keep an eye on the library regarding filesize, although it's not very important you never know.
    Many other things in regards to performance can be taken care of, but none of them are in a specific panel ( code, caching bitmaps, filter usage.... etc)

  • Are there any apps for having seperate volume controls for each app if multiple apps are playing at the same time?

    Are there any apps for having seperate volume controls for each app if multiple apps are playing at the same time?

    I don't think you can do that the volume is universal, but maybe turn down the volumes in the app settings?

  • [E2010SP3] [EWS2.0] [C#][Windows] - Multi-threaded EWS App is encountering ArgumentOutOfRange - Count cannot be less then zero

    Hi,
           I have a multi-threaded EWS app that is pushing email, appointments, and contacts to Exchange2010SP3. Each thread is using a separate instance ExchangeService and is working with a different mailbox on each thread. We are seeing that
    when 4 or more threads are running we are starting to see ArgumentOutOfRange [Count cannot be less then zero] exceptions in the EWS library. These errors appear to be happening sporadically.
    Here is an example of one of stack traces:
    Stack Trace -- 
    at System.String.CopyTo(Int32 sourceIndex, Char[] destination, Int32 destinationIndex, Int32 count) 
    at System.IO.StreamWriter.Write(String value) 
    at System.IO.TextWriter.SyncTextWriter.Write(String value) 
    at Microsoft.Exchange.WebServices.Data.ServiceRequestBase.BuildEwsHttpWebRequest() 
    at Microsoft.Exchange.WebServices.Data.ServiceRequestBase.ValidateAndEmitRequest(IEwsHttpWebRequest& request) 
    at Microsoft.Exchange.WebServices.Data.ExchangeService.InternalBindToItems(IEnumerable`1 itemIds, PropertySet propertySet, ServiceErrorHandling errorHandling) at Microsoft.Exchange.WebServices.Data.ExchangeService.BindToItem[TItem](ItemId itemId, PropertySet
    propertySet) at Quest.Apollo.MigrationProviders.Interfaces.GenericRetryAction.InternalRetry[T](RetryMethod`1 retryMethod) in c:\Builds\272\Apollo\1.6.0 Nightly\Sources\Apollo.MigrationProviders.Interfaces\GenericRetryAction.cs:line 111 at Quest.Apollo.MigrationProviders.Interfaces.GenericRetryAction.Retry[T](RetryMethod`1
    retryMethod, Boolean disableRetry) in c:\Builds\272\Apollo\1.6.0 Nightly\Sources\Apollo.MigrationProviders.Interfaces\GenericRetryAction.cs:line 135 
    These exceptions are occurring on various EWS operations, but mostly on FindItems and Bind operations. They only seem to occur against Exchange 2010 servers at least that's what I've seen so far. These issues appear to resemble some kind of race condition.
    I did some searches on EWS, Race Condition, SyncTextWriter and I came across an interesting issue while searching on SyncTextWriter and Race Condition. I'm curious if this is what is causing this error to occur in the EWS library:
    http://connect.microsoft.com/VisualStudio/feedback/details/249253/synchronized-textwriter-not-synchronizing-properly
     The post indicates that SyncTextWriter was only designed to synchronize multiple threads against the same instance and that it was not designed to synchronize multiple threads against multiple instances SyncTextWriter. I've noticed that in all instances
    of this error I've seen the stack traces always end up inside of SyncTextWriter. Is this a bug in the EWS libraries use of SyncTextWriter? Note: the above article does post workarounds for this issue. Can't tell if the EWS library is using any of these workarounds
    or is avoiding this issue in some other way.
    I know Microsoft doesn't claim that the EWS library is thread safe. However, I've seen many posts that seem to indicate that if a separate instances of the exchange service are used for each thread it works fine. Futhermore, we've run this app many times against
    Office 365 and haven't seen this issue. It appears to only happen against Exchange 2010, but that maybe due to better throughput to the Exchange 2010 server compared to the Office 365 servers. Any help or insight would be greatly appreciated.
                 Thanks,
                      Steve
     

    Hi,
    Found a note explaining the significance of these errors.
    It says:
    "NZE-28862: SSL connection failed
    Cause: This error occurred because the peer closed the connection.
    Action: Enable Oracle Net tracing on both sides and examine the trace output. Contact Oracle Customer support with the trace output."
    For further details you may refer the Note: 244527.1 - Explanation of "SSL call to NZ function nzos_Handshake failed" error codes
    Thanks & Regards,
    Sindhiya V.

  • I have 2 Apple IDs. How can I move all my purchased (paid-for) apps under only 1 of my Apple IDs?

    Long ago I bought several, relatively expensive, apps under a old Apple ID.
    I then purchased many more paid-for apps under a new Apple ID.
    I was unaware that the purchased apps are tied to the Apple ID which I happen to be logged in with, at the time of the purchase: I thought they'd be tied to my authorised PC(s).
    Now I'm absolutely sick of having to constantly switch between IDs, even just to CHECK for updates.
    What I want to do is move all the paid-for apps which I bought under the old Apple ID to the new Apple ID. Both ID demonstrably belong to me.
    Having all my apps under 1 only Apple ID would allow me to update them easily, and no longer be FORCED to switch IDs all the time.
    In short I want to use only 1 Apple ID for the future.
    If the Apple Store locks the apps to the Apple ID (as it does) instead than to the authorised PC (as it should do), then it should also PREVENT a user from creating a second Apple ID (at least, from the same iTunes installation on the same PC!), or at the very least display a HUGE warning that any paid-for apps purchased under another, older Apple ID will be unavailable under the new Apple ID! The apple Store, and iTunes, do neither thing,
    Then the Apple Store and iTunes should at the very least allow a user to put all apps under the same Apple ID!
    After all, the Apple Store and iTunes on my PC and iTunes on my Iphone can all "see" that I own TWO legitimate Apple IDs (with purchases and updates): it must be possible to move these apps from one ID to the another ID, at least once! They're MY OWN purchases, paid: can I manage them a bit easier?
    Marco

    No, it seems you don't (want to) understand. I see 2 things very wrong with your explanation.
    1. The move would only need to happen between "accounts" demonstrably and legitimately belonging to the same user. In fact, I'm still using both the old one (for updates only, no new purchases) and the new one (updates and purchases -- actually no morep urchases until Apple solves this). And unless I'm mistaken, I can already have my apps on more than one iDevice at the time: eg. on 1 iPhone and1 iPad. I don't ask for apps to be moved between unrelated accounts: only between accounts belonging to the same "person". And I do not see how changing what is effectively just a "label" embedded in the binary files residing on my hard disk (or in the cloud), which can be verified as legitimately belonging to me thru two ID registered on the same authorised PC could possibly allow anyone to cheat the system. The apps' files have embedded an old label before, and a new label after the operation, both belonging to me, associated to my payment details. That's not rocket science.
    In fact, both my Apple ID were at some point linked to the same credit card. And in fact, I only created a second one because at some point I managed to forget my Hotmail EMAIL password, not my Apple STORE password!
    The two passwords needn't be the same, adding to the confusion. For months I used that account to buy apps, and never checked the email, since I was not interested in marketing from Apple, and I could see the payments from my credit card statements: that's how I forgot my Hotmail EMAIL password for that Hotmail email address.
    Since Microsoft wouldn't allow me to access my Hotmail account anymore (and rightly so, becuase I managed to exhaust all possibilities, and even forgot the security question), and so I could not check my Apple Store emails, I then decided to create a new account, this time with a Live! email address, and this time I used the same password for both the Live! EMAIL and the Apple STORE authentication.
    For more than TWO years I used the old Hotmail Apple ID to get updates, without during all that time being able to read the email or access that Hotmail account: this should tell you how stupid this system is! And for the same time, and until last month (I no longer buy anything), I used the new ID for both NEW purchases and their updates.
    Now after getting both a new iPhone (only because the old one was unfortunately stolen on my holiday) and a new PC, i NO longer want to be forced to use both IDs, which forces me to constantly switch between them, and also carries the risk that I inadvertently purchase something with the old one, to which EMAIL address I no longer have access: so I can't even check invoices. But most of all, I don't want to be inconvenienced like this by Apple.
    Since the Apple ID is such an important concept, forever ID tied to your purchases, it should NOT be an email address, which are disposable by their own nature. When creating it, one is naturally driven to think it'll only be needed to check Apple Store's emails and newsletters and the such. Why should people be forced to FOREVER use an email address, perhaps linked to a job or relationship they had years earlier, to update their purchases?
    The thing is, Apple made the Apple IDs as email addresses simply to ensure that as many people as possible can at any time buy as many apps and songs as possible: just create a new Apple ID: after all, it is (seems) just an email address! and you're done. But they DON'T telly you they'll tie FOREVER your purchases to it. So you're reasonably entitled to think they'll tie them to your payments details, until you discover otherwise the hard way.
    And since most Apple users feel humbled by Apple (the "genial" idea of calling "Genius" the support guys at the stores, wo usually don't have a clue on anyhting less than trivial, is part of this) and fear of feeling "stupid" for getting wrong soemthing with what are supposed to be the most user-friendly company and products, they will simply buy the apps again under the new ID, bringing more profits to Apple. This also can't be casual.
    My apps are available, under both Apple IDs at the same time, to iTunes: be it on my PC on in the iCloud. The same mechanism that physically "embeds" that Apple ID in the app file when I first buy it, can surely be used to change it afterwards. It's just a matter of willing to do so. This content (apps, songs, etc) may be digital (that is, files) rather than traditional (eg. books), but I assure you that the disk blocks taken by the app or song files in the iTunes directory on my PC or in the iCloud are as physical as a book or a mp3 player: they CAN be changed in a perfectly safe and trackable way, without risk of cheating. Ever heard of MAC addresses? Or other unique info that can easily be gathered from the PC's operating system or BIOS? or credit card details, already available?
    2. The policy of inconveniencing (punishing) the huge majority of users (citizens) to prevent a tiny minority from misbehaving can be good for sheep, but not for rational people. It's typical of unimaginative, monopolistic companies (oppressive governments), not of progressive, modern and innovative ones. The cost of protecting their proficts from those who would steal from them is theirs (the company's), not ours (the users'). They should be more creative and inventive, in finding solutions to stop 10 people who would misuse their system, rather than annoying the 10 million who won't. I would never do so (mostly because I thing it's morally wrong, but also because I can't be bothered), but I understand why people invent ways to circumvent this gratuituos, bullish constraints.
    Also, CAN'T you REALLY see the difference between these TWO options:
    - allowing a user to change an app's associated account ONCE IN A LIFETIME, even only ONCE per app
    - FORCING a user to switch Apple IDs EVERY TIME (DAY, OR WEEK) FOREVER, to check and/or update
    ??? Am I talking to a person, or to a robot, or to a undercover Apple employee here?
    Both things are possible. The second is more convenient financially for Apple, that's all.
    But it's also so clearly unfair to their customers. No more, thanks.
    To finish, many if not almost all of the issues in threads like https://discussions.apple.com/message/18954743#18954743 (like husband and wife sharing a PC with two iPhones, or kids' gifts, etc) really boil down to this issue, despite being often complicated by sloppy explanation (when they say "password" , do they mean the Apple ID's or the Email account's?, and so on) and unreasonable requests (like having the same app, only paid once, available under two IDs, even if on the same PC: this is not what I ask, and it's unreasonable) -- and could be solved by the concept of a "master" ID and "secondary" ID: if you read well, the real issue is almost always for everybody having to switch between "old" (or "wife's", "kids'") and new (or "husband's", "dad's") Apple IDs: and this must be done on BOTH the iTunes application on the PC or Mac, and on the devices themselves.

  • I get two message threads for one contact. One for sms and one for iMessage since I updated to iOS 7. How can I get them both into one thread?

    Ever since I upgraded to iOS7 just two of my contacts I get two message threads for them. One containing their iMessages to me and the other with just regular sms messages. In Contacs, their email and phone number are saved under one name. How can I get the iMessages and sms to come through under one thread in my messaging app again?

    I am having this trouble also, my partner creates a new message to send to me, or sends a picture and it always comes through as an MMS and not using iMessage ...
    will try deleting everything and starting again!

  • I shop for for apps on my ipod touch and when i plug my ipod into itunes and it says erase and sync what does that mean?

    hello all,
    i normally shop on my ipod touch (because frankly i cant be bothered to plug it into itunes then shop! ) to shop for apps and song and etc. and because i have a wall charger in my room theres pratically no need to go the computer! so sometimes when im on the computer i want to use my ipod touch as well so i charge it on the pc.
    well to cut the story short everytime i want to shop on itunes it comes up with this note that says "your ipod is synced with a different pc etc" then it comes up with erase and sync? so my question is what does syn mean? because im worried if i choose ok it would get rid of all my apps
    - someone help me!

    - It means what it says.  Your iPod is synced with a different iTunes library.  To transfer purchases to this computer:
    iTunes Store: Transferring purchases from your iPhone, iPad, or iPod to a computer
    - If you want to make this computer your syncing computer see ths previous discussion:
    https://discussions.apple.com/thread/3362492?tstart=0

  • I have "my story" app on multiple ipads at our school.  It now appears as if this app will function on some ipads and not others.  Is this because the app was pulled off of the itunes store?

    I have "my story" app on multiple ipas at our school.  It now appears as though the app will only function on a few of the ipads.  Is this because itunes pulled the app from the store?

    For any iPad exhibiting this, try a reset: Simultaneously hold down the Home and On buttons until the device shuts down. Ignore the off slider if it appears. Once shut down is complete, if it doesn't restart on it own, turn the device back on using the On button. In some cases it also helps to double click the Home button and close all apps from the tray before doing the reset.
    Is this the app? https://itunes.apple.com/us/app/my-story-story-creator-for/id449232368?mt=8. It appears to be available.

  • Payment for app cannot complete with no reason

    payment for app cannot complete with no reason

    Hey @pb-29,
    Thanks for getting back to me regarding this issue.
    At this time I recommend continuing the support that you have already started with my colleague @Gemini02  under the following thread: Mirror printing - docs no good - wasting toner- printer becoming worthless.
    I wish you luck going forward with this!
    X-23
    I work on behalf of HP
    Please click "Accept as Solution" if you feel my post solved your issue, it will help others find the solution.
    Click the "Kudos, Thumbs Up" on the right to say "Thanks" for helping!

  • Accept/Deny incoming network connection for apps already accepted/denied

    i am constantly getting the dialog box to allow/deny incoming network connections for applications that i launch on my MBPro, even though these programs have already been allowed or denied. this causes multiple entries for the same applications in my firewall advanced list. each time i accept or deny, a new entry of the same program is added to the list. as an example, for Excel i have 5 entries - 2 that allow incoming connections, 3 that deny. the same goes for apps like itunes, word, nleac, and others.
    if i delete these extra entries, they just get added to the next time i launch the program.
    i've tried the remedy suggested by the macfixit forum (http://reviews.cnet.com/8301-13727_7-10330466-263.html) of deleting the firewall preference file "com.apple.alf.plist" and performing a disk permission under Safe Mode - didnt help.
    looking for new suggestions. incidently, this wasnt always the case and other than upgrading to snow leopard, i cant specifically recall a change that started this problem.

    i've been doing that for some time now, as this problem has been going on for months. even after i delete all of the programs that have multiple listings (and the key word there is ALL because basically every program that wants access has multiple listings here) the list gets re-populated the next/every time i launch that application. even if i later deny an application's request after accepting previously, they'll be multiple listings for that app - including listings to Allow and listings to Deny - for the the same app!!!

  • PC went south. Geeks brought it back. PS elements and premier 11 can't start. Error msg sez configuration incorrect needs to be reinstalled. When I load the disk I get a blank screen. Try to uninstall and can't find apps i control panel. How can I get the

    PC went south. Geeks brought it back. PS elements and premier 11 can't start. Error msg sez configuration incorrect needs to be reinstalled. When I load the disk I get a blank screen. Try to uninstall and can't find apps i control panel. How can I get the apps back?

    adobeamatuer
    Thanks for the reply.
    Although the security of Windows XP SP3 32 bit is compromised by Microsoft no longer supporting XP, if Windows XP was restored as claimed, you should still be able to install/uninstall Premiere Elements versions of it that you did before the Microsoft support removal.
    I think a revisit to the Geeks would be in order. It may be that they could not restore Windows XP because of the Microsoft non support. I would take along the Premiere Elements installation disks so that you do not leave there without actually seeing Premiere Elements (or a non Adobe program) running on your restored Windows XP. What was the other software that you tried to use that did not work?
    Please update us on your progress when you get a chance.
    Best wishes
    Thanks.
    ATR
    Add On...spelling correct 12 03 2014.

  • Touch ID doesn't work for App Store

    My iPhone 5s touch ID works only on the lock screen. I verified to make sure the fingerprint settings were for both pass code and iTunes or AppStore purchases (which it was) and it doesn't work for a App Store purchases. Help anyone?

    I had the same problem. I did not have restrictions enabled. After reading through similar threads and the Apple support article for using the fingerprint sensor for App Store and iTunes Store, where it says that resteictions cannot be set to "immediately," I decided to enable restrictions and set to "15 minutes." That did the trick for me!

  • HT2404 When I try to download free updates for apps, I've suddenly started getting an error message saying: You cannot update this software since you have not owned the major version of this software." But I do own the apps. And I haven't changed my ID

    When I try to download free updates for apps, I've suddenly started getting an error message saying "You cannot update this software since you have not owned the major version of this software".
    But I HAVE owned the software, for ages. (And, in any case, the apps in question are all free.)
    And I don't have multiple Apple IDs.
    What can I do?
    Any advice much appreciated

    This can occur if you bought the machine used and iLife was reinstalled with another AppleID.
    This also can occur if the "free apps" you downloaded have paid upgraded versions and/or are now payware and you can't get updates.
    All software from MAS is copy protected, it might be free as in "no charge" but it's not free in the sense you can share it with others.

  • Adcfg fails for apps tier

    Following is the error when we run adcfg rapid clone release 12 for apps tier.
    RC-50004: Fatal: Error occurred in ApplyAppsTier:
    StackTrace -
    java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
    at oracle.apps.ad.clone.util.CloneProcessor.run(CloneProcessor.java:67)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: java.lang.NoSuchMethodError: oracle.apps.ad.autoconfig.InstantiateFile.writeReport(Ljava/util/Vector;Loracle/apps/ad/util/LogFile;I)V
    at oracle.apps.ad.clone.ApplyApplTop.checkAutoConfigErr(ApplyApplTop.java:590)
    at oracle.apps.ad.clone.ApplyApplTop.runAutoConfig(ApplyApplTop.java:558)
    at oracle.apps.ad.clone.ApplyApplTop.doConf(ApplyApplTop.java:339)
    at oracle.apps.ad.clone.ApplyApplTop.doApply(ApplyApplTop.java:382)
    at oracle.apps.ad.clone.ApplyApplTop.<init>(ApplyApplTop.java:267)
    at oracle.apps.ad.clone.ApplyAppsTier.<init>(ApplyAppsTier.java:105)
    ... 6 more
    Edited by: user10702579 on Mar 26, 2009 6:01 AM

    /a02/prod/apps/apps_st/comn/clone/bin/../jre/bin/java -Xmx600M -DCONTEXT_VALIDATED=true -Doracle.installer.oui_loc=/oui -classpath /a02/prod/apps/apps_st/comn/clone/jlib/xmlparserv2.jar:/a02/prod/apps/apps_st/comn/clone/jlib/ojdbc14.jar:/a02/prod/apps/apps_st/comn/clone/jlib/java:/a02/prod/apps/apps_st/comn/clone/jlib/oui/OraInstaller.jar:/a02/prod/apps/apps_st/comn/clone/jlib/oui/ewt3.jar:/a02/prod/apps/apps_st/comn/clone/jlib/oui/share.jar:/a02/prod/apps/apps_st/comn/clone/jlib/oui/srvm.jar:/a02/prod/apps/apps_st/comn/clone/jlib/ojmisc.jar oracle.apps.ad.clone.ApplyAppsTier -e /a01/PROD/inst/apps/PROD_stsapp01/appl/admin/PROD_stsapp01.xml -stage /a02/prod/apps/apps_st/comn/clone -showProgress
    APPS Password : Log file located at /a01/PROD/inst/apps/PROD_stsapp01/admin/log/ApplyAppsTier_03261440.log
    | 73% completed
    RC-50004: Fatal: Error occurred in ApplyAppsTier:
    StackTrace -
    java.lang.reflect.InvocationTargetException
    at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
    at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
    at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
    at java.lang.reflect.Constructor.newInstance(Constructor.java:494)
    at oracle.apps.ad.clone.util.CloneProcessor.run(CloneProcessor.java:67)
    at java.lang.Thread.run(Thread.java:595)
    Caused by: java.lang.NoSuchMethodError: oracle.apps.ad.autoconfig.InstantiateFile.writeReport(Ljava/util/Vector;Loracle/apps/ad/util/LogFile;I)V
    at oracle.apps.ad.clone.ApplyApplTop.checkAutoConfigErr(ApplyApplTop.java:590)
    at oracle.apps.ad.clone.ApplyApplTop.runAutoConfig(ApplyApplTop.java:558)
    at oracle.apps.ad.clone.ApplyApplTop.doConf(ApplyApplTop.java:339)
    at oracle.apps.ad.clone.ApplyApplTop.doApply(ApplyApplTop.java:382)
    at oracle.apps.ad.clone.ApplyApplTop.<init>(ApplyApplTop.java:267)
    at oracle.apps.ad.clone.ApplyAppsTier.<init>(ApplyAppsTier.java:105)
    ... 6 more
    Also
    Generating topfile.txt...
    ERROR: Could not retrieve mount point for product top - /a02/prod/apps/apps_st/appl/PROD
    topfile.txt could not be generated successfully
    ERRORCODE = 1 ERRORCODE_END
    where as this path exists /a02/prod/apps/apps_st/appl/PROD and has required privs.

  • Getting multiple panels in one extension

    Hi,
    I'm having trouble setting up multiple panels in my extension. I've seen similar posts on here but what fixed it for them doesn't seem to solve it for me!
    My first panel appears fine, but clicking the menu option for the second one does nothing.
    I have a WidgetBoss for each:
              Class
                        kPanelAWidgetBoss,
                        kPalettePanelWidgetBoss,
                      IID_IPANELMENUDATA, kCPanelMenuDataImpl,
              Class
                        kPanelBWidgetBoss,
                        kPalettePanelWidgetBoss,
                      IID_IPANELMENUDATA, kCPanelMenuDataImpl,
    ALocaleIndex for each:
    resource LocaleIndex (kPanelAResourceID)
              kViewRsrcType,
                        kWildFS, k_Wild,           kPanelAResourceID + index_enUS
    resource LocaleIndex (kPanelBResourceID)
              kViewRsrcType,
                        kWildFS, k_Wild,           kPanelBResourceID + index_enUS
    A separate PanelList for each:
    resource PanelList (kPanelAResourceID)
                        // 1st panel in the list
                        kPanelAResourceID,
                        kPluginID,
                        kNotResizable,
                        kPanelAWidgetActionID,
                        kPanelAMenuPath,
                        kPanelAMenuItemPosition,
                        0,0,
                        c_Panel,
    resource PanelList (kPanelBResourceID)
                        // 2nd panel in the list
                        kPanelBResourceID,
                        kPluginID,
                        kNotResizable,
                        kPanelBWidgetActionID,
                        kPanelBMenuPath,
                        kPanelBMenuItemPosition,
                        0,0,
                        c_Panel
    A type definition:
    type PanelAWidget(kViewRsrcType) : PalettePanelWidget(ClassID = kPanelAWidgetBoss)
              CPanelMenuData;
    type PanelBWidget(kViewRsrcType) : PalettePanelWidget(ClassID = kPanelBWidgetBoss)
              CPanelMenuData;
    And a definition for the resource itself:
    resource PanelAWidget(kPanelAResourceID + index_enUS)
              __FILE__, __LINE__,                                                  // Localization macro
              kPanelAWidgetID,                                        // WidgetID
              kPMRsrcID_None,                                                            // RsrcID
              kBindNone,                                                                      // Binding (0=none)
              0, 0, 207, 95,                                                            // Frame: left, top, right, bottom.
              kTrue, kTrue,                                                            // Visible, Enabled
              kFalse,                                                                                // Erase background
              kInterfacePaletteFill,                                        // Erase to color
              kFalse,                                                                                // Draw dropshadow
              kPanelATitleKey,                                        // Panel name
              kInternalPopupMenuNameKey                    // Popup menu name (internal)
    resource PanelBWidget(kPanelBResourceID + index_enUS)
              __FILE__, __LINE__,                                                  // Localization macro
              kPanelBWidgetID,                                        // WidgetID
              kPMRsrcID_None,                                                            // RsrcID
              kBindNone,                                                                      // Binding (0=none)
              0, 0, 207, 95,                                                            // Frame: left, top, right, bottom.
              kTrue, kTrue,                                                            // Visible, Enabled
              kFalse,                                                                                // Erase background
              kInterfacePaletteFill,                                        // Erase to color
              kFalse,                                                                                // Draw dropshadow
              kPanelBTitleKey,                                        // Panel name
              kInternalPopupMenuNameKey                    // Popup menu name (internal)
    PanelB is nowhere to be seen.
    I guess I'm missing something obvious. Can anyone help?
    Thanks
    Liz

    Hi
    I just copied that into my plugin and it seems to be correct.
    Bellow you can find change log from my plugins.
    Regards
    Bartek
    1. Claas definitions
        Class { kPanelAWidgetBoss, kPalettePanelWidgetBoss,
            {   IID_IPANELMENUDATA,             kCPanelMenuDataImpl,                       }},
        Class { kPanelBWidgetBoss, kPalettePanelWidgetBoss,
            {   IID_IPANELMENUDATA,             kCPanelMenuDataImpl,                       }},
    2. PanelList definitions:
    resource PanelList (kPanelAResourceID)
            // 1st panel in the list
            kPanelAResourceID,
            kMYUIPluginID,
            kNotResizable,
            kPanelAWidgetActionID,
            "AAA",
            kPanelAMenuPath,
            kPanelAMenuItemPosition,
            0,0,
            c_Panel,
    resource PanelList (kPanelBResourceID)
            // 2nd panel in the list
            kPanelBResourceID,
            kMYUIPluginID,
            kNotResizable,
            kPanelBWidgetActionID,
            "BBB",
            kPanelBMenuPath,
            kPanelBMenuItemPosition,
            0,0,
            c_Panel
    3. Layout definitions
    resource PanelAWidget(kPanelAResourceID + index_enUS)
        __FILE__, __LINE__,                                                  // Localization macro
        kPanelAWidgetID,                                        // WidgetID
        kPMRsrcID_None,                                                            // RsrcID
        kBindNone,                                                                      // Binding (0=none)
        0, 0, 207, 95,                                                            // Frame: left, top, right, bottom.
        kTrue, kTrue,                                                            // Visible, Enabled
        kFalse,                                                                                // Erase background
        kInterfacePaletteFill,                                        // Erase to color
        kFalse,                                                                                // Draw dropshadow
        kPanelATitleKey,                                        // Panel name
        kMYUIInternalPopupMenuNameKey                    // Popup menu name (internal)
    resource PanelBWidget(kPanelBResourceID + index_enUS)
        __FILE__, __LINE__,                                                  // Localization macro
        kPanelBWidgetID,                                        // WidgetID
        kPMRsrcID_None,                                                            // RsrcID
        kBindNone,                                                                      // Binding (0=none)
        0, 0, 207, 95,                                                            // Frame: left, top, right, bottom.
        kTrue, kTrue,                                                            // Visible, Enabled
        kFalse,                                                                                // Erase background
        kInterfacePaletteFill,                                        // Erase to color
        kFalse,                                                                                // Draw dropshadow
        kPanelBTitleKey,                                        // Panel name
        kMYUIInternalPopupMenuNameKey                    // Popup menu name (internal)
    4. Locale definitions
    resource StringTable (350 + index_enUS)          // No-Translate strings go here:
    {   k_enUS,  kEuropeanMacToWinEncodingConverter, // Locale Id, Character encoding converter
              {          kMYUIInternalPopupMenuNameKey,          kMYUIInternalPopupMenuNameKey,
    resource LocaleIndex (kPanelAResourceID)
    {   kViewRsrcType,
        {   kWildFS, k_Wild,           kPanelAResourceID + index_enUS
    resource LocaleIndex (kPanelBResourceID)
    {   kViewRsrcType,
        {   kWildFS, k_Wild,           kPanelBResourceID + index_enUS
    5. Type definitions:
    type PanelAWidget(kViewRsrcType) : PalettePanelWidget(ClassID = kPanelAWidgetBoss)
        CPanelMenuData;
    type PanelBWidget(kViewRsrcType) : PalettePanelWidget(ClassID = kPanelBWidgetBoss)
        CPanelMenuData;
    6. Other definitions:
    // Boss classes:
    DECLARE_PMID(kClassIDSpace,             kPanelAWidgetBoss,                  kMYUIPrefix + 7 )
    DECLARE_PMID(kClassIDSpace,             kPanelBWidgetBoss,                  kMYUIPrefix + 8 )
    // Action IDs:
    DECLARE_PMID(kActionIDSpace,            kPanelAWidgetActionID,              kMYUIPrefix + 12)
    DECLARE_PMID(kActionIDSpace,            kPanelBWidgetActionID,              kMYUIPrefix + 13)
    // Widget IDs:
    DECLARE_PMID(kWidgetIDSpace,             kPanelAWidgetID,                    kMYUIPrefix + 10)
    DECLARE_PMID(kWidgetIDSpace,             kPanelBWidgetID,                    kMYUIPrefix + 11)
    #define kPanelAMenuPath            ""
    #define kPanelBMenuPath            ""
    #define kPanelAMenuItemPosition   0.0
    #define kPanelBMenuItemPosition   0.0
    #define kPanelATitleKey         "AAA"
    #define kPanelBTitleKey         "BBB"
    const RsrcID kPanelAResourceID            =    700  + 50;
    const RsrcID kPanelBResourceID            =    700  + 51;

Maybe you are looking for

  • Dynamic directory name in Receiving File adapter

    Hi, In File to File senario, In receiving system i want to create directory name dynamically. In my mapping there is a field called name, the directory name in the receiving system will be value in the name field. Any one can help me how to do this o

  • Unable to open the events in Iphoto or transfer photos to create a book?

    Unable to open the events in Iphoto or transfer photos to create a book. The events are there but I am when double clicking they are not opening up. Also I am unable to drag photos to create a book. Any suggestions??

  • Internal Error (-5000)

    Hi, I am getting the error message "Internal Error (-5000)"  when I select the BP in Incoming Payment.  Can anybody help me to resolve this issue ?

  • Transferring files from iMac to External Drive issues. Please help

    I have a 500gb Western Digital external hard-drive. I began using it on a PC, but got a Mac a couple of months ago. There are a couple of problems that I am encountering. First of all, the folders that I had on my external drive (music, movies etc.)

  • Rac wait events

    Hi , Could you please tell me the wait events in RAC Please let me know the causes and the solution to fix this issue. Thanks Rangarajbk