COCKOS
CONFEDERATED FORUMS
Cockos : REAPER : NINJAM : Forums
Forum Home : Register : FAQ : Members List : Search :
Old 07-10-2010, 03:00 AM   #1
olilarkin
Human being with feelings
 
olilarkin's Avatar
 
Join Date: Apr 2009
Location: UK
Posts: 1,163
Default swell text entry

hi,

i am trying to create a cross platform text entry control for IPlug, but i can't figure it out. I just want something like the bpm entry box in reaper. Can anyone suggest how i can do this with swell?

thanks,

oli
Attached Images
File Type: png Screen shot 2010-07-10 at 10.58.43.png (4.5 KB, 307 views)
__________________
VirtualCZ | pMix | Endless Series | iPlug2 | Linkedin | Facebook
Available for Audio Dev tuition via Skype (IPlug/JUCE/C++)
olilarkin is offline   Reply With Quote
Old 07-10-2010, 05:18 AM   #2
cerberus
Human being with feelings
 
Join Date: Nov 2009
Location: memory
Posts: 634
Default

i have requested that this function, (which is present in many osx vst and also a.u.) be activated
since i purchased bpmbadier from stillwell. i feel this issue represents a dysfunction in the osx
versions; a documented feature is absent. otherwise i feel very comfortable with the way iplug-based
plug-ins work from the standpoint of an end user.

but it appears that the vst compile has been crippled by disabling direct text entry
in order to please apple, or logic users (a.u. problems i wish to remain apart from).
that does tend to discourage me from buying more plug-ins that use iplug.
cerberus is offline   Reply With Quote
Old 07-10-2010, 08:20 AM   #3
junioreq
Human being with feelings
 
junioreq's Avatar
 
Join Date: Aug 2008
Location: Buffalo NY
Posts: 1,091
Default

Did you look at the ISpinnerControl control done up by CC? I haven't quite figured it out either..

~Rob.
junioreq is offline   Reply With Quote
Old 07-10-2010, 08:35 AM   #4
olilarkin
Human being with feelings
 
olilarkin's Avatar
 
Join Date: Apr 2009
Location: UK
Posts: 1,163
Default

actually i had forgotten about ccs controls, i borrowed some code from there and now i have it working (cocoa only so far)

oli
__________________
VirtualCZ | pMix | Endless Series | iPlug2 | Linkedin | Facebook
Available for Audio Dev tuition via Skype (IPlug/JUCE/C++)
olilarkin is offline   Reply With Quote
Old 07-11-2010, 08:09 PM   #5
Justin
Administrator
 
Justin's Avatar
 
Join Date: Jan 2005
Location: NYC
Posts: 12,431
Default

Hmm it would be pretty easy to add this when targeting Cocoa, but honestly my Carbon is weak enough that I'm not sure the best way to target Carbon. I'll see if I can prod schwa to add Cocoa text entry support (it should be easy for him, I'd imagine).
Justin is offline   Reply With Quote
Old 07-12-2010, 02:18 AM   #6
cc_
Human being with feelings
 
Join Date: Mar 2009
Posts: 256
Default

The code in my IPlug mods should allow text editing of controls in Cocoa and Carbon (both composited and noncomposited now). The ISpinnerControl lets people click to edit the value, but also gives the option of changing the value by dragging like a knob.

I haven't updated for the latest wdl yet, but the patch seemed to apply cleanly:

http://forum.cockos.com/showthread.php?t=52820
cc_ is offline   Reply With Quote
Old 07-12-2010, 02:22 AM   #7
olilarkin
Human being with feelings
 
olilarkin's Avatar
 
Join Date: Apr 2009
Location: UK
Posts: 1,163
Default

thanks cc, i have implemented the carbon code now based on yours, but i noticed some problems, like the control not getting focus automatically, however i'm not sure if i missed something when i was copying your code.

incidentally how do you apply the .patch file?

oli
__________________
VirtualCZ | pMix | Endless Series | iPlug2 | Linkedin | Facebook
Available for Audio Dev tuition via Skype (IPlug/JUCE/C++)
olilarkin is offline   Reply With Quote
Old 07-12-2010, 08:36 AM   #8
cc_
Human being with feelings
 
Join Date: Mar 2009
Posts: 256
Default

Which host did you have the carbon problems in?

The patch is easy to apply (on a Mac or anything else Unix based at least), just cd into your wdl directory and then type something like:

Code:
patch -p1 < PATCH_FILE
I'm sure there are windows binaries for patch somewhere too, but I've never had to use them.
cc_ is offline   Reply With Quote
Old 07-12-2010, 11:33 AM   #9
olilarkin
Human being with feelings
 
olilarkin's Avatar
 
Join Date: Apr 2009
Location: UK
Posts: 1,163
Default

i have some crashes with my version in cubase... got to investigate. With yours i have noticed a couple of problems in Cubase and Live, see this video

1 - the control doesn't get focus initially
2 - the mouse cursor goes awol (as if masked by controls)
3 - keys get sent to the host e.g. when i press enter it starts playback in cubase

Carbon is horrible!
Attached Files
File Type: zip carbongui.zip (188.3 KB, 157 views)
__________________
VirtualCZ | pMix | Endless Series | iPlug2 | Linkedin | Facebook
Available for Audio Dev tuition via Skype (IPlug/JUCE/C++)
olilarkin is offline   Reply With Quote
Old 07-12-2010, 10:46 PM   #10
cerberus
Human being with feelings
 
Join Date: Nov 2009
Location: memory
Posts: 634
Default

Quote:
Originally Posted by Justin View Post
Hmm it would be pretty easy to add this when targeting Cocoa, but honestly my Carbon is weak enough that I'm not sure the best way to target Carbon. I'll see if I can prod schwa to add Cocoa text entry support (it should be easy for him, I'd imagine).
ty justin!
cerberus is offline   Reply With Quote
Old 07-25-2010, 08:39 AM   #11
cerberus
Human being with feelings
 
Join Date: Nov 2009
Location: memory
Posts: 634
Default

Quote:
Originally Posted by cerberus View Post
that does tend to discourage me from buying more plug-ins that use iplug.
but it didn't discourage me from attempting to build my own plug-in with iplug.

i've worked around this issue in my design, but i find that i cannot display formatted
text using "IText". the "color" parameter is the only formatting option that i can
get working so far. the same code i am using is reportedly working with windows.
cerberus is offline   Reply With Quote
Old 07-28-2010, 06:28 AM   #12
schwa
Administrator
 
schwa's Avatar
 
Join Date: Mar 2007
Location: NY
Posts: 10,237
Default

Quote:
Originally Posted by cerberus View Post
but it appears that the vst compile has been crippled by disabling direct text entry in order to please apple
This is probably clear, but just for context, the issue is that iplug just doesn't have support for putting up a Cocoa or Carbon text entry field. There's no issue about disabling something, it's a feature that hasn't ever existed.

Similarly, the text display features are limited on Windows and extremely limited on Mac. LICE's text display features are pretty good now (they didn't exist when iplug was written), so the "right" thing to do is to implement text drawing in iplug using LICE_CachedFont. This isn't a quick job, though.
schwa is offline   Reply With Quote
Old 07-28-2010, 05:31 PM   #13
cerberus
Human being with feelings
 
Join Date: Nov 2009
Location: memory
Posts: 634
Default

thank you schwa; i'll probably need help on implemeting LICE_CachedFont.
since i downloaded wdl on july 19; the same day i started learning c++;

but now i have my first plug-in almost completed. i'll find some way to
make it appear like it is working to the end user (just me, so far...
and i wouldn't trust a plug-in from someone who started learning
c++ only last week. lol). so it's not finished yet, almost though.


"my first IBitmapOverlayControl" in action
cerberus is offline   Reply With Quote
Old 08-03-2010, 12:37 AM   #14
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

Quote:
Originally Posted by olilarkin View Post
Carbon is horrible!
I couldn't agree more. Last Friday I thought I'd give the Carbon text entry a go. It worked, kind of, and I even managed to make it auto focus. However, then I found a new issue: If you press Enter to confirm your entry, and the text is selected, then all text is replaced with a space. If the text isn't selected, then pressing Enter will add an extra space to your text. This is fixable, but who knows what is next.

So for now I've given up on Carbon. I'd rather have no text input than a crashing plug-in.
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-03-2010, 02:34 AM   #15
olilarkin
Human being with feelings
 
olilarkin's Avatar
 
Join Date: Apr 2009
Location: UK
Posts: 1,163
Default

I eventually got it working by studying how it's done in vstgui. There are still a couple of issues (for instance if you click the text to make an edit box and then highlight another window, the box should disappear but it doesn't), but no crashing.

i've attached all my IGraphics code, hopefully you can find the bits i have modified by searching for the text OL_ADDITION

thanks to CC, whose code i used for the cocoa version

oli

EDIT -> i forgot one major remaining issue... in the carbon version my controls don't redraw after pressing enter
Attached Files
File Type: zip oli_igraphics.zip (25.3 KB, 162 views)
__________________
VirtualCZ | pMix | Endless Series | iPlug2 | Linkedin | Facebook
Available for Audio Dev tuition via Skype (IPlug/JUCE/C++)
olilarkin is offline   Reply With Quote
Old 08-03-2010, 02:47 AM   #16
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

Thanks, I will check it out.

Quote:
Originally Posted by olilarkin View Post
EDIT -> i forgot one major remaining issue... in the carbon version my controls don't redraw after pressing enter
I think this line from cc_'s version may solve this issue:

Code:
if (!mIsComposited) UpdateControls(mWindow, 0);
I don't know what happens if mIsComposited is true though.
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-03-2010, 03:16 AM   #17
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

Quote:
Originally Posted by olilarkin View Post
There are still a couple of issues (for instance if you click the text to make an edit box and then highlight another window, the box should disappear but it doesn't), but no crashing.
I quickly browsed through your code just now, and it looks very promising. Unfortunately I have left my MacBook at home, so I can't try it at the moment.

About the box not disappearing when highlighting another window: Is the the kEventClassWindow > kEventWindowDeactivated in IGraphicsCarbon::CarbonEventsTextControlProc() ever executed? I kinda would expect it to work if you would move kEventClassWindow > kEventWindowDeactivated into IGraphicsCarbon::CarbonEventHandler(). But this is just me thinking aloud, I have no idea if this will actually work or just mess things up.
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-03-2010, 03:59 AM   #18
olilarkin
Human being with feelings
 
olilarkin's Avatar
 
Join Date: Apr 2009
Location: UK
Posts: 1,163
Default

Quote:
About the box not disappearing when highlighting another window: Is the the kEventClassWindow > kEventWindowDeactivated in IGraphicsCarbon::CarbonEventsTextControlProc() ever executed? I kinda would expect it to work if you would move kEventClassWindow > kEventWindowDeactivated into IGraphicsCarbon::CarbonEventHandler(). But this is just me thinking aloud, I have no idea if this will actually work or just mess things up.
this seems to work -thanks

Quote:
if (!mIsComposited) UpdateControls(mWindow, 0);
this doesn't unfortunately
__________________
VirtualCZ | pMix | Endless Series | iPlug2 | Linkedin | Facebook
Available for Audio Dev tuition via Skype (IPlug/JUCE/C++)
olilarkin is offline   Reply With Quote
Old 08-03-2010, 04:41 AM   #19
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

How about this then:

Code:
mGraphicsMac->SetAllControlsDirty();
?
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-03-2010, 07:32 AM   #20
olilarkin
Human being with feelings
 
olilarkin's Avatar
 
Join Date: Apr 2009
Location: UK
Posts: 1,163
Default

turns out the only area that was getting redrawn was where the text editing box was located. I managed to fix that by adding this in EndUserEdit()... now to try and understand why it worked

Code:
			IRECT r;
			
			if (mGraphicsMac->IsDirty(&r)) {
				if (mIsComposited) {
					HIViewSetNeedsDisplayInRect(mView, &CGRectMake(r.L, r.T, r.W(), r.H()), true);
				}
				else {
					int h = mGraphicsMac->Height();
					SetRectRgn(mRgn, r.L, h - r.B, r.R, h - r.T);
					UpdateControls(mWindow, 0);// _this->mRgn);
				}
			}
__________________
VirtualCZ | pMix | Endless Series | iPlug2 | Linkedin | Facebook
Available for Audio Dev tuition via Skype (IPlug/JUCE/C++)
olilarkin is offline   Reply With Quote
Old 08-03-2010, 07:54 AM   #21
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

I think that for your host mIsComposited is true, so

Code:
HIViewSetNeedsDisplayInRect(mView, &CGRectMake(r.L, r.T, r.W(), r.H()), true);
is executed, which updates the rectangle containing all controls.

I suggested to make all controls dirty, because I think this will make CarbonTimerHandler() to execute exactly the code you posted, but without having to copy the code into EndUserEdit().
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-03-2010, 07:56 AM   #22
olilarkin
Human being with feelings
 
olilarkin's Avatar
 
Join Date: Apr 2009
Location: UK
Posts: 1,163
Default

i tried that but it didn't work
__________________
VirtualCZ | pMix | Endless Series | iPlug2 | Linkedin | Facebook
Available for Audio Dev tuition via Skype (IPlug/JUCE/C++)
olilarkin is offline   Reply With Quote
Old 08-03-2010, 02:47 PM   #23
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

I think I have everything working now in Ugly VSTi, a free Carbon VSTi host. Ugly VSTi is a non-composited host I guess (because mComposited is false). Does anyone know any free composited Carbon VSTi host which I can use to test things in?

BTW, I am now calling both SetDirty(false) and Redraw() right after SetValueFromUserInput(), so the control will always get redrawn, even when its value hasn't changed.
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-03-2010, 05:30 PM   #24
olilarkin
Human being with feelings
 
olilarkin's Avatar
 
Join Date: Apr 2009
Location: UK
Posts: 1,163
Default

try the demo of ableton live?
__________________
VirtualCZ | pMix | Endless Series | iPlug2 | Linkedin | Facebook
Available for Audio Dev tuition via Skype (IPlug/JUCE/C++)
olilarkin is offline   Reply With Quote
Old 08-04-2010, 12:36 AM   #25
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

Yes, thanks! The Ableton Live indeed uses composited Carbon for VSTs.
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-04-2010, 01:13 AM   #26
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

Ok, I think I have found it. There appears to be a bug with drawing composited views in IGraphicsCarbon::CarbonEventHandler > kEventClassControl > kEventControlDraw. Take a look at this code snippet:

Code:
          int gfxW = pGraphicsMac->Width(), gfxH = pGraphicsMac->Height();
          IRECT r = GetRegionRect(pEvent, gfxW, gfxH);  
          ...
          if (_this->mIsComposited) {
            ...
            pGraphicsMac->Draw(&r);
          }
          else {
            ...
            // Old-style controls drawing, ask the plugin what's dirty rather than relying on the OS.
            r.R = r.T = r.R = r.B = 0;
            _this->mGraphicsMac->IsDirty(&r);         
          }       
          
          pGraphicsMac->Draw(&r);
So for composited views IsDirty(&r) is never called, which is why it won't redraw the entire control. Also, Draw(&r) is called twice (?). This is not a problem, but it is probably unnecessary.

Here is the changed code which fixes things in Live (but I haven't tested it elsewhere yet):

Code:
          int gfxW = pGraphicsMac->Width(), gfxH = pGraphicsMac->Height();
          IRECT r = GetRegionRect(pEvent, gfxW, gfxH);  
          ...
          if (_this->mIsComposited) {
            ...
            //pGraphicsMac->Draw(&r);
          }
          else {
            ...
            // Old-style controls drawing, ask the plugin what's dirty rather than relying on the OS.
            //r.R = r.T = r.R = r.B = 0;
            //_this->mGraphicsMac->IsDirty(&r);         
          }       

          // Old-style controls drawing, ask the plugin what's dirty rather than relying on the OS.
          r.R = r.T = r.R = r.B = 0;
          pGraphicsMac->IsDirty(&r);
          pGraphicsMac->Draw(&r);
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-04-2010, 01:00 PM   #27
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

Quote:
Originally Posted by Tale View Post
There appears to be a bug with drawing composited views in IGraphicsCarbon::CarbonEventHandler > kEventClassControl > kEventControlDraw.
Well, perhaps this is not a bug. If you don't apply the fix in my previous post, but instead do this, everything also seems to work:

Code:
if (_this->mIsComposited)
{
	IRECT* pR = _this->mEdControl->GetRECT();
	HIViewSetNeedsDisplayInRect(_this->mView, &CGRectMake(pR->L, pR->T, pR->W(), pR->H()), true);
}
else
{
	_this->mEdControl->SetDirty(false);
	_this->mEdControl->Redraw();
}
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-04-2010, 01:18 PM   #28
sstillwell
Human being with feelings
 
Join Date: Jul 2006
Location: Cowtown
Posts: 1,555
Default

Quote:
Originally Posted by cerberus View Post
i have requested that this function, (which is present in many osx vst and also a.u.) be activated
since i purchased bpmbadier from stillwell. i feel this issue represents a dysfunction in the osx
versions; a documented feature is absent. otherwise i feel very comfortable with the way iplug-based
plug-ins work from the standpoint of an end user.

but it appears that the vst compile has been crippled by disabling direct text entry
in order to please apple, or logic users (a.u. problems i wish to remain apart from).
that does tend to discourage me from buying more plug-ins that use iplug.
FWIW, if IPlug supports it, so will I.

Scott
__________________
https://www.stillwellaudio.com/
sstillwell is offline   Reply With Quote
Old 08-04-2010, 02:31 PM   #29
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

I guess eventually direct text entry for Mac will make it into the official IPlug distribution.

Meanwhile, I am more or less ready and happy with my own modifications. Here is what I now have:

Windows: Text input and combo box; while text entry is active controls can still be edited using mouse; auto focus.
Cocoa: Text input and combo box; while text entry is active other controls can still be edited using mouse; auto focus.
Carbon: Text input (no combo box, enums are treated as ints); while text entry is active controls can't be edited using mouse; auto focus.

Not 100% consistent, but good enough for me (for now anyway).

I case anyone would like to test things: I have just uploaded a new beta version (v1.0.3 beta2) of ComboV, which uses these modifications. The source code for my modifications can be downloaded here.
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-05-2010, 11:06 AM   #30
cerberus
Human being with feelings
 
Join Date: Nov 2009
Location: memory
Posts: 634
Default

Quote:
Originally Posted by sstillwell View Post
FWIW, if IPlug supports it, so will I.
hey scott, there are a few mods/patches floating around here.
perhaps a solid method to enable itext entry/selection for (at
least cocoa-based hosts like reaper) already exists ? if you
would build a bombadier using tale's mods, for example, i
would be happy to test it. i am tempted to test these mods
with the plug-in i am developing atm.
cerberus is offline   Reply With Quote
Old 08-05-2010, 11:12 AM   #31
sstillwell
Human being with feelings
 
Join Date: Jul 2006
Location: Cowtown
Posts: 1,555
Default

I'll have to take directly from the IPlug distribution where I know what the license terms are...grabbing someone else's individual patch that hasn't been accepted into the distribution can have legal/licensing repercussions that I don't want to deal with.

Otherwise, yeah, I suppose it's possible.

Scott
__________________
https://www.stillwellaudio.com/
sstillwell is offline   Reply With Quote
Old 08-07-2010, 06:13 PM   #32
cerberus
Human being with feelings
 
Join Date: Nov 2009
Location: memory
Posts: 634
Default

well i got something working... i didn't really understand that caption control
is taking over all IText, except for color... well i won't need direct text
entry in my plug-in, if my dastardly plan works as i imagine it should.

i would like that itext to be selectable for copy-paste, then again i
don't want any legal problems.

and does anyone know why my dB text display
is being rounded or floored to six digits?

cerberus is offline   Reply With Quote
Old 08-08-2010, 12:51 AM   #33
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

Quote:
Originally Posted by cerberus View Post
and does anyone know why my dB text display
is being rounded or floored to six digits?
Probably because you are using sprintf() without specifying the number of digits, and the default for a floating point number (%f) is 6 digits. I.e.:

Code:
sprintf(str, "%f", db);     // Defaults to 6 digits
sprintf(str, "%0.12f", db); // 12 digits
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-09-2010, 06:12 AM   #34
cerberus
Human being with feelings
 
Join Date: Nov 2009
Location: memory
Posts: 634
Default

that does work. ty tale!
cerberus is offline   Reply With Quote
Old 08-12-2010, 04:05 AM   #35
cc_
Human being with feelings
 
Join Date: Mar 2009
Posts: 256
Default

Hey, great work oli and tale! I took a break worried that I'd have to come back and fix all that carbon stuff, and I get back a find it's all done!

Is there any chance someone (tale?) could post up their current versions of IGraphicsCocoa.* IGraphicsCarbon.* and IGraphicsMac.* - I downloaded tale's zip file, but I'd rather have the whole files so I can use diff and patch.
cc_ is offline   Reply With Quote
Old 08-12-2010, 07:09 AM   #36
Tale
Human being with feelings
 
Tale's Avatar
 
Join Date: Jul 2008
Location: The Netherlands
Posts: 2,975
Default

Your wish is my command! I have updated my tale_iplug_contribs.zip file, so it now also contains the IPlug source files after applying my bugfixes and mods.
__________________
Martinic Kee Bass - Scanner Vibrato - Elka Panther - Tale's JSFX Pack
Tale is offline   Reply With Quote
Old 08-12-2010, 08:00 AM   #37
cc_
Human being with feelings
 
Join Date: Mar 2009
Posts: 256
Default

Thank, that should keep me busy for a while!
cc_ is offline   Reply With Quote
Old 08-13-2010, 11:25 AM   #38
cc_
Human being with feelings
 
Join Date: Mar 2009
Posts: 256
Default

I meant thanks of course, certainly more than one thank was needed!

I really wanted to dump my code and use the tale/oli instead, but there were a bunch of things that mine did that theirs didn't. So instead I used the code to fix the problems in mine, I didn't see any crashes, but there were problems with focus that oli mentioned above and also things not redrawing right.

I've tried it on OSX10.5.8 with Cubase 4.5, Reaper 3, GarageBand and Live 7 both AU and VST and it now looks OK to me. If anyone else wants to give it a go, I compiled my modded IPlugExample and put it here (both VST and AU): text_edit_test.zip.

Any feedback would be appreciated.

I'll post up my updated code soonish... I need to get onto the latest wdl.

BTW I noticed that neither the oli nor tale version had my fixes for the mouse right button in them. Have you guys tried your code with a two button mouse? Does it work right clicking to open the edit box? When I tried it I don't think it did, but I have a macmini with a logitec mouse plugged in so maybe that's different from the apple ones?

Also oli's code has the " [super mouseDown: pEvent];" line in still, see: http://forum.cockos.com/showthread.php?t=58086 .

Hmm, I've probably forgotten more stuff...
cc_ is offline   Reply With Quote
Old 08-13-2010, 02:26 PM   #39
cerberus
Human being with feelings
 
Join Date: Nov 2009
Location: memory
Posts: 634
Default




activated by right-click... all seems working. nice work cc_ !
cerberus is offline   Reply With Quote
Old 08-13-2010, 02:46 PM   #40
cc_
Human being with feelings
 
Join Date: Mar 2009
Posts: 256
Default

Thanks for trying it! But don't get too excited, Reaper VST is the easy one, it's all the others where the problems show up...
cc_ is offline   Reply With Quote
Reply

Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off

Forum Jump


All times are GMT -7. The time now is 02:58 AM.


Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2019, vBulletin Solutions Inc.