@60hz I figured it out, seems like you're right. Might be pertinent to mention in the bug report that it only doesn't work with tcl/tk > 8.6.10
-
-
@seb-harmonik-ar
I have many little ui bug with the last version of next compiled with tcl/tk 8.6.11
https://github.com/sebshader/pdnext/issues/2Is there any needs for this pecific tcl version?
-
@60hz I replied in the bug report, but basically the event loop handling is supposed to be much more stable and improved on modern macos with 8.6.11 from my understanding. For instance, 8.6.10 required patching to get the scrollbars to show up on newer osx (also this is why there are 2 different releases for osx on miller's site I think). The patch was kind of hacked out of 8.6.11 which changed the architecture of its event handling since 8.6.10.
I noticed the bug you mentioned in an earlier release with tk 8.6.10, and the fix was actually merged into main pd vanilla. I cannot reproduce on osx 10.14.6 so unfortunately I'm not sure how to go about fixing it..
as for the ceammc bug, it is an issue with tk 8.6.11 with the ttk "alt" theme and has to be fixed in either ceammc or tk.
However you can still package w/8.6.10, I suppose I can upload a version using it instead if it makes that big of a difference.. -
@60hz ok I just uploaded a version w/ tk 8.6.10 anyways
-
thanks @seb-harmonik.ar, I will try the tcl 8.6.10 version with ceammc.
And your are right about the patch bug, it was my mistake, I just messed with some tcl files and forgot about it, so sorry for the noise!
-
I'd love me some bezier patch chords Is it possible with vanilla (0.51.4)? If not, what's the steps I need to take to try it out? I'm on linux if that matters...
-
@a773 they look kinda ugly tbh. For linux you need to compile yourself, because of the variety of distros. (clone the pdnext repo, then follow the normal steps to make & install pd, hopefully just with "./configure" and then "make install" in the directory on the command line.)
After all of that, you can either use the menu item in the preferences submenu to turn the bezier curves on, or put the line
set ::curve_cords 1
in some .tcl file in the pd path before starting pd if you want it saved.to make the cords change when the menu item is selected (rather than when the window is opened) put the code with the "redraw_cords" proc above in some .tcl file in the pd path.
-
Thanks, that worked great!
Could you explain what pdnext is? I'm not sure if this is your fork with unofficial mods or the official repo or something completely different....
-
@a773 the first, basically it's my fork with features that haven't been accepted into vanilla yet.
The main one being the ability to set colors for everything. (but the bezier cables are there too)
It's fully compatible with pd-vanilla. (all patches for vanilla will work, and visa-versa. Nothing is changed except aesthetics) -
Was actually thinking about this yesterday, why it is not enrolled into the Vanilla release.
It has been talked about many times in the Facebook group and also here, I guess
-
After running the mod a few days here are a few observations
- selecting a chord seems to be a bit off, almost like you need to click where the “old” straight chord would have been.
- setting curved lines in menu and save all prefs should save curves as well (shouldn’t be defined in tcl).
- it doesn’t scale with ctrl+, I expected the curves to be twice as big, but they are the same, except obviously connecting to points further apart.
I have no idea how hard it would be to change any of the above, or if that’s the reason it’s not accepted in vanilla (or even if it’s been discussed/proposed).
-
-
Yes I know selecting the cord is off. The reason is that pd handles all mouse/geometry logic in c, in the main "pd" thread, rather than the tcl/tk process. This is not ideal at all, ideally all audio processes would happen in one thread and gui logic would be on another thread entirely (which is what Purr-Data and now Pd-l2ork have done. It should be done for vanilla as well, that's a big project that has been on the horizon for a while).
Anyways, the result of that is that the "selection" logic is still using straight line geometry, and it would take further substantial modifications for pd to know if bezier curves are being drawn, and for it to know if they're being clicked on. (in terms of geometry math/logic). And, even if it were done doing so would further slow down the same thread that the audio is running on since bezier curve equations are more complex than linear ones. -
I declined to add the cables to the preferences because I want full compatibility with vanilla and would have to change the preference file. (Like if you save preferences in vanilla and then open Next up the preference would be unset again. Having it set in a .tcl file avoids that). If it were accepted into vanilla perhaps the preference could be added.
-
I'll look into this and see if something can be done.. I hardly ever use zoom myself.
-
-
@a773 what system are you on? on osx the line width change from zooming is the same as with straight cables
-
I totally understand your approach, and agree that as a mod it's implemented quite elegantly. Sounds like esp 1) is what's keeping it out of mainstream vanilla.
I'm on linux...
Here are screenshots of "small" zoom, "big" zoom and then the "small" zoom manually made 2x as big in gimp. Except for the blur (obviously), I'd expect the path of the curves in the "big" zoom to look like the manually enlarged one. For instance notice how the curve goes into the metro on the small one, but doesn't on the zoomed in one.
-
hi, its a nice mod!
i just wondering, is there some way to switch easily between two different color themes? (light and dark) it would be nice and practical on mac os. -
@narcell your question prompted me to do some work on it and I managed to put together a theme-picker plugin.
edit: now on github https://github.com/sebshader/color-themes-plugin
(after unzipping place the folder in your pd path, and make sure there are no other color -plugin.tcl files in the pd path)
It lives in the preferences menu
you can save the current (applied) theme to be used the next time pd starts by hitting "save", and if you select a theme from the list and click "Save as Dark Theme" then that theme will open instead if you're in dark mode when you open pd.In order to stop using a specific theme for dark mode you can click "Delete Dark Theme"
I couldn't figure out a good way to include the text window and help browser colors, so those have to be re-mapped for the changes to be seen. I also had some trouble with the text highlight background color
In order to include more themes, put them in the "themes" folder inside. But only include setting colors in the files or else other things can get messed up when the list gets drawn.
@60hz I included your theme as well as the ones here https://github.com/Eric-Lennartson/pd-themesedit nov. 4th 2021: fixed small bug & updated colorsgrey
-
That's great @seb-harmonik.ar
Here is a slightly updated and more complete version of my theme (I didn't post it before... ) colorsgrey-plugin.tcl.zip -
OMG, it's very nice, great work! its much more easier, thanks your work!
one (actually two) more thing.
(1) I tried to make the menu bar to dark with the Info.plist file and it worked for a while but the next time when im tried to run Pd the UI was white again but the os appearance was dark... can anyone help with this specific thing?to try this:
Open Pd/Content/Info.plist in TextEdit or any Plist editor (on mac) and replace the NSRequiresAquaSystemAppearance to look like this:<key>NSRequiresAquaSystemAppearance</key> <string>False</string>
It worked for me only one time here is the evidence:
The second thing is if this problem is already solved, how can i made pdwindow topbar to dark? Thx
-
@narcell native dark window manager stuff like topbars, buttons, dropdowns etc. being reflected was disabled because it created too much inconsistency. So dark mode as a whole was removed.
here's the commit: https://github.com/pure-data/pure-data/commit/1665a2ef341413f036251dfb88136223ca1fbf2c
(from the comment it seems like it's set to true in 2 places, the defaults file as well as the plist?)
though I'm successfully reading from some defaults to tell if darkmode is on here... idk -
@narcell so looking at it a bit more, if you do want to mess with it you can try deleting the
exec defaults write $::pd_guiprefs::domain NSRequiresAquaSystemAppearance -bool true
line in pd_guiprefs.tcl.Then you probably also have to delete the ~/Library/Preferences/org.puredata.pd.pd-gui.plist file, or at least delete the
<key>NSRequiresAquaSystemAppearance</key> <true/>
in it