View selection of objects among layers in adobe illustrator - layer

I am looking for some best practices to sort / group different objects across multiple layers in Adobe Illustrator, to be able to select/view a specific selection of objects.
In more detail:
I have a grafic with multiple versions, which are very common, but yet slightly different, hence I want to edit them in one *.ai file
Same header for all
Specific highlight for version 1/2
3 different languages (EN/DE/ES)
Specific background for version 1/2
To reduce redundancy I want to create common objects only once, instead of creating a group for each version/langugage for simple showing/hiding and duplicate objects.
My current layer/group structure (as minimum example) would be:
1 |_ Header
1.1 |_ HeaderGrafic
2 |_ Highlight
2.1 |_ Higlight_1
2.2 |_ Higlight_2
3 |_ Text
3.1 |_ Text_EN
3.2 |_ Text_DE
3.3 |_ Text_ES
4 |_ Background
4.1 |_ Background_1
4.2 |_ Background_2
I am searching for a quick and easy way to switch views to select a specific combination, e.g.
Version 1 in language EN -> showing only 1.1, 2.1, 3.1, 4.1 and hiding all others
Version 2 in language ES -> showing only 1.1, 2.2, 3.3, 4.1 and hiding all others
I tried storing selections, but cannot get to view/hide specific views/selections.

As for change views it looks like you need the standard commands 'New View', 'Edit Views' in menu 'View':
As for store selections in the same way, well, Illustrator has no such tool as far as I know. Which is yet another example of disgrace of Adobe Illustrator developers. (I can be wrong about latest versions, though).
Of course it can be done with script(s).
Or you can select your objects with actions if you will place object on correct layers. You can lock and unlock the layers with actions (with above mentioned menu commands, as well) and perform the command 'Select All'.

Related

IntelliJ Remove Unwanted Modules/Packages from Packages View

I am potentially fat fingering a hot key in IntelliJ and cannot figure out how to restore the default Packages View in the Projects Tool Window. My packages view will change from the default view:
io.xxx.yyy
MyClass.java
to
io
com.android.tools.idea.observable.core
cucumber.cucumberexpressions
flutter
grpc
xxx.yyy (the package I am working on)
.... and a lot of other modules/packages I do not want to see
Does anyone know the setting (or the hotkey) that I need to reset to get back to the default packages view - and remove all the excess modules, libraries, SDKs from the view? If you also know what HotKey I may be fat fingering so I can disable it - that would be awesome as well.
I have found some information in the IntelliJ Manual - it states that in the Packages View it does not display Modules, SDKs, and Libraries by default... which is awesome and what I want... I just need to figure out how to get back to this default view.
Per Jetbrains support - this is a bug. The workaround that is working for me is to disable the Kotlin plug in (Files -> Settings -> Plugins)... The support person stated that the bug should be fixed in 2021.1 ... Attaching screenshot of some of the packages that show up - they all appear to be empty.
Screenshot of Package View

Hierarchical data with unknown depth itemsControl [UWP]

I am trying to display a hierarchy of unknown depth in a panel with a itemsControl.
My data model looks like this
Root object
|_ Pegs (Observablelist)
|_ Parts (Observablelist)
|_ Pegs (Observablelist)
|_...
I found this article https://msdn.microsoft.com/sv-se/library/windows/apps/xaml/mt269384.aspx
useful but I don't know how to take then next step and create a DataTemplateSelector that works. I found some old examples with a HierarchicalDataTemplate but that doesn't seem to exists in UWP.
Any ideas?

How do I control polymorph sizes using UITheme builder

I am trying to create a Dominion game in Smalltalk, and I can't get the layout of the GUI the way I want.
Currently, I have this as code to build the GUI:
open: game
| builder content |
builder := UITheme builder.
content := builder
newColumn:
{(builder
newListFor: game
list: #supplyStrings
selected: nil
changeSelected: nil
getEnabled: nil
help: 'Supply') .
(builder newRow: (game players collect: [ :p | self morphForPlayer: p usingBuilder: builder ]))}.
gui := (content openInWindowLabeled: 'DominionGame') extent: 1024 # 768
(forgive the poor Smalltalk style, I've been using Smalltalk for a week).
I am getting the basic idea of what I want: a window with the top portion common to all players, and a bottom portion divided into sections for each player.
The trouble I have is that the top portion is too big, taking up about half the window, and I don't know how to fix that.
I've tried adding "vsizing: #shrinkWrap" to the builder for the #supplyStrings list, but that made it too small, forcing the contents to use a scrollbar; I've tried adding "extent: 1024#200" to that morph, and saw no effect.
So I have two questions:
1) How do I get finer layout control over the objects built with UITheme builder?
2) Where can I find documentation on how to do UI design using Pharo? I'd love to RTFM, if I know where TFM was to R!
You can build an UI at different abstraction levels in Pharo. There is Glamour, where you describe the UI in terms of presentations, panes & ports. It is most useful for building specialized model browsers. For building a game it doesn't seem the most suitable. Then there is Spec, aiming at reuse of composable widgets. That could be a good fit. This summer there has been a GSoC project to build an Spec UIPainter, so you can get a good feel for how to layout the UI. PolyMorph is basically an abstraction layer over Morphic providing different skins (UIThemes). Below that is Morphic. An advantage of building directly in Morphic is that there is an excellent game building example: Laser Game (needing slight changes for use in Pharo).

Multiple apps from one project

I have a little problem.. which I know there is a fix for, I just don't know what it is.
The problem is the following. A few weeks ago (2 or so) I had to remove 4 apps from the appstore due to a data problem on my server side. I decided to upgrade all the apps to the latest version at the same time giving them some new features. (I have 6 of the same apps out there, targeting different airports). The difference between these versions are the following:
A set of 50-80 or so images that combine the map of each airport. The filenames are the same in each app. (How do I solve that?)
The name of the app
The Default.png (and those for iPad and retina of course)
The App Icon
The content of a details page (which exists in a .plist file)
The content of the "About" page where the page refers back to the app
Some localize content, refering back to the airport the app targets.
The provisioning profiles, of course.
Keeping track of these things are just a pain in the ass, so I want to have 1 project with 1 code base and just add the images and details (mentioned above) and new versions appear. When I "Archive", I want all of the apps to be build and ready to be send of to apple (which I will have to do manually).
How can I achieve this?
I have done this before using multiple targets and conditional compilation. You need one target per deliverable. You can configure the name, icons etc for each target in the usual way.
A set of 50-80 or so images that combine the map of each airport. The filenames are the same in each app. (How do I solve that?)
Keep the images in different directories and for each target only add the images for that app. This technique will also work for the contents of the about page if you can load that from a file.
I also use conditional compilation so that I can define different values for my constants for each app.
To do this add a setting to Other C Flags and Other C++ flags to identify your app. Something like:
-DAPP_VARIANT=1
In your code you can then use the following to implement any app specific behaviour:
- (id)init
{
#if APP_VARIANT == 1
self->server_url = [[NSURL URLWithString:#"http://app1.example.com"] retain];
#elif APP_VARIANT == 2
self->server_url = [[NSURL URLWithString:#"http://app2.example.com"] retain];
#endif
}
Can't you use one version control branch for all the main code, then fork it six times (once for each airport) where you fill in the data? Once you make new code changes, just push the changes from the main branch to the forks and you're done.

Xcode 4 'QuartzCore/CIColor.h' file not found

I'm running Xcode 4 and trying to follow the steps in Apple's Image Kit Programming Guide (which is written for Xcode 3) on how to work with an Image View and the IKImageView class. I just imported the Quartz and Quartz Core frameworks (from /System/Frameworks directory) to my blank Cocoa Application project using File > Add Files to... menu, but when I try to Run my application I get this error:
Lexical or Preprocessor Issue 'QuartzCore/CIColor.h' file not found
Does anyone know what could be a reason?
Peter Hosey replied:
You're not supposed to import specific headers directly, and especially not from sub-frameworks (such as Core Image, sub-framework of QuartzCore). Only import a framework's overall header, which usually has the same name as the framework.
I didn't import any specific headers directly, I just choose File>Add Files to... then choose /system/Frameworks and choose two folders which contain those frameworks, after that they appeared in my project navigator view as they should, but the code wouldn't compile any more. It shows me NSColor.h file which is found in the AppKit framework, points at this line: #import and says Lexical or Preprocessor Issue 'QuartzCore/CIColor.h' file not found. I have no clue why it wouldn't compile. CI stands for Core Image. I'm now reading a guide on Core Image, maybe this will help. I'd like to post a screenshot but I can't (not enough rights yet).
I just imported the Quartz and Quartz Core frameworks (from /System/Frameworks directory) to my blank Cocoa Application project using File > Add Files to... menu, …
That's not importing; that's just adding it to the project (and hopefully the target). Importing is what you do with the #import directive.
… but when I try to Run my application I get this error: Lexical or Preprocessor Issue 'QuartzCore/CIColor.h' file not found
You're not supposed to import specific headers directly, and especially not from sub-frameworks (such as Core Image, sub-framework of QuartzCore). Only import a framework's overall header, which usually has the same name as the framework.
The problem was that the Guide I used was written for Xcode 3 so when I tried to import/add some frameworks to my project using "File>Add files" menu as described, it did add those frameworks and I could see them in the project navigator, but something went wrong. In Xcode 4 you should use a different way to add/import Frameworks by using the Project Editor> Summary tab> Linked Frameworks and Libraries> Click "+" and then choose the Frameworks you need. That fixed the issue.