Hello,
Is there a way to set a default selection to a list presentation? so that
when I open the browser, the morphic list has already a value selected.
I tried that:
|tmpBrowser|
tmpBrowser := GLMTabulator new.
tmpBrowser row: #list.
tmpBrowser transmit to: #list; andShow: [:a |
a list
display: [:input | input];
selection: #a;
yourself
].
tmpBrowser openOn: #( b c d v a d f r).
but the list still open with nothing selected
Hi,
Alex Syrel, Andrei Chis and I are happy to announce a new addition to the
Glamorous Toolkit:
GTSpotter, a novel interface for spotting objects.
GTSpotter has two goals:
- Provide a uniform yet moldable interface that can work on any object, and
- Handle searching through arbitrary levels of object nesting.
We think this will have a significant impact on the development workflow in
Pharo.
Here is a couple of screenshots:
[image: Inline image 2] [image: Inline image 1] [image: Inline image 3]
A trailer is available here:
https://www.youtube.com/watch?v=PhSmjR3NOlU
A detailed description is available here:
http://www.humane-assessment.com/blog/introducing-gtspotter
It works already in Pharo 3.0 and can be played with by following the
instructions from:
http://gt.moosetechnology.org
Please let us know what you think.
Enjoy,
The Glamorous Team
Hi,
since I wanted to use DarkTheme I played around with TRMorph (since seeing
giant white rectangle in dark theme is not very nice).
What I have done is moved the background color setting to `surface clear:`
(instead of the original aCanvas fillRectangle).
And then if theme background luminance is dark (>0.5), I invert all the
colors in the visualization.
For dark theme the background is black, and not the theme background - at
least to me it seems that black is much clearer.
Is this something that could be incorporated?
And the modified code:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
"protocol: drawing"
TRMorph>>drawOn: aCanvas
"aCanvas is a FormCanvas"
self checkSession.
"aCanvas fillRectangle: bounds color: trachelCanvas color."
trachelCanvas playAnimations.
"The drawing has to be done when a change in the shapes occured or when
there is an animation."
surface drawDuring: [:cs |
surface clear: trachelCanvas color.
"We display the elements that are subject to the camera"
cs pathTransform
translateBy: (self extent / 2) asFloatPoint;
scaleBy: trachelCanvas camera scale asFloat;
translateBy: trachelCanvas camera position negated asFloatPoint.
trachelCanvas shapes do: [ :trachelShape |
trachelShape drawOn: cs.
].
"We display the elements that are _NOT_ subject to the camera"
cs pathTransform loadIdentity scaleBy: 1.001.
trachelCanvas fixedShapes do: [ :trachelShape |
trachelShape drawOn: cs.
].
].
self theme backgroundColor luminance < 0.5 ifTrue: [
surface drawDuring: [ :cs |
cs paintMode restoreAfter: [
cs setPaint: Color white.
cs paintMode difference.
cs drawShape: (0 @ 0 extent: surface extent)
]
]
].
"aCanvas translucentImage: surface asForm at: self bounds origin."
"asForm creates a new Form, which is likely to be expensive. This can be
cached"
aCanvas image: surface asForm at: self bounds origin sourceRect: (0 @ 0
extent: surface extent) rule: 34.
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Hi,
apparently we broke MorphicRoassalAdapter when cleaning Spec, I attached a
fix.
However my question is - does anybody (except us) actually use the
Roassal2Spec package? Because otherwise we could clean it a bit. For
example I'm not sure of the use case of script:/lastEvent:.
Peter
Hi everyone,
some time ago I saw a diagram consisting of two columns of words and lines
showing associations between the words in both columns.
It looked similar to the "parallel coordinates" diagram from this link:
http://homes.cs.washington.edu/~jheer/files/zoo/ but with only two columns.
Now, I am not sure if I saw this in an email on a Pharo or Moose list and
wanted to ask if it is already possible to create such diagrams with
Roassal.
Thank you very much,
Manfred
I think that the Morph presentations could be really powerful, but right now
they are extremely limited. Ideally, one would be able to zoom at will, but
scroll bars at least would make them immediately more useable. Check out the
current sub-optimal solution:
<http://forum.world.st/file/n4830338/Screenshot_2015-06-03_20.png>
The morph being displayed is appx 4 times larger than the window, so only a
tiny fraction is shown.
-----
Cheers,
Sean
--
View this message in context: http://forum.world.st/GT-Morph-Presentations-tp4830338.html
Sent from the Moose mailing list archive at Nabble.com.
Hi everyone,
I guess because of a rapid evolution some parts of Roassal are weird. For example RTAbstractLine>>#updateFor:trachelShape: implements the shape drawing, so theoretically RTLine has to only override #trachelShapeClass to return TRLine. Instead RTLine overrides #trachelShapeFor: and does it incorrectly, because width cannot be used as a block but only as a number.
We have to handle this somehow, because 1) RTLine works incorrectly. 2) RTLine ignores the implementation strategy coded into RTAbstractLine.
Uko
Hi!
I relaxed a bit by implementing something that was missing in Grapher.
Consider the following code:
-=-=-=-=-=-=-=-=-=-=-=-=
b := RTGrapher new.
ds := RTDataSet new.
ds points: #(5 10 6 2 -2.5).
b add: ds.
“below is the magic line"
b addDecorator: RTCursorFollower new.
b
-=-=-=-=-=-=-=-=-=-=-=-=
This “magic line” add two bar that follows the mouse cursor. Here is a screenshot:
Here is on a larger example:
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
| methods trachelMethods b ds |
methods := Collection withAllSubclasses flatCollect: #rtmethods.
trachelMethods := TRObject withAllSubclasses flatCollect: #rtmethods.
b := RTGrapher new.
b extent: 200 @ 200.
"Data set 1"
ds := RTDataSet new.
ds interaction popup.
ds dotShape circle color: (Color red alpha: 0.3).
ds points: methods.
ds x: #numberOfLinesOfCode.
ds y: [ :m | m getSource size ].
b add: ds.
"Data set 2"
ds := RTDataSet new.
ds interaction popup.
ds dotShape circle color: (Color blue alpha: 0.3).
ds points: trachelMethods.
ds x: #numberOfLinesOfCode.
ds y: [ :m | m getSource size ].
b add: ds.
b axisX withThousandsSeparator; title: 'LOC'.
b axisY noDecimal; title: 'Size'.
b addDecorator: RTCursorFollower new.
b build.
^ b view
-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=-=
Maybe this cursor follower should be per default in all produced chart. Any opinion?
Cheers,
Alexandre
--
_,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:
Alexandre Bergel http://www.bergel.eu
^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;._,.;:~^~:;.
Hi,
We are happy to announce the first preview version of Brick, a new widget
set created from scratch on top of Bloc.
Brick is being developed primarily by Alex Syrel (together with Alain
Plantec, Andrei Chis and myself), and the work is sponsored by ESUG. Brick
is part of the Glamorous Toolkit effort and will provide the basis for the
new versions of the development tools.
Brick's goal is to provide a beautiful looking widget set, and the default
look is based on material design. The widgets are theme-able.
Right now, there exists:
- Label
- Simple button
- Toggle button
- Checkbox
- Radio button
- Window with or without an active title bar that can include various
visual actions and info
- Menu
- Beautiful scrollbars that are thin by default and enlarge when the mouse
hovers over it
- Scalable list for huge amounts of items with various heights
(The list also allows one for embedding text widgets with in place editing)
The next immediate target is the creation of a new Pager widget (the widget
that is behind the current GTInspector).
You can see some screenshots on the official site:
http://gt.moosetechnology.org/brick
To play with it, you can download a ready-made image:
https://ci.inria.fr/moose/job/gtoolkit5/lastSuccessfulBuild/artifact/gtoolk…
and, in a Bloc space, you can browse the examples:
BrExampleBrowser exampleOpen
We would be happy to hear your feedback.
Cheers,
Doru
--
www.tudorgirba.com
"Every thing has its own flow"
Hi,
There seems to be a problem with simple the rubric presentation in Moose
5.0. TextColor attributes are overridden with default text color from the
theme when the morph is created.
There is a flag in the morph creation code that says that the code needs
reviewing in Pharo 4.0. So removing two lines below after the flag resolve
this issue:
GLMMorphicRubricTextRenderer>>morph
|morph|
morph := RubScrolledTextMorph new
getSelectionSelector: #primarySelectionInterval;
model: textModel;
color: Smalltalk ui theme backgroundColor;
textFont: StandardFonts defaultFont;
yourself.
self flag: 'Temporary solution until Moose moves to Pharo 4'.
(Smalltalk ui theme class canPerform: #textColor) ifTrue: [
morph textColor: Smalltalk ui theme textColor ].
^ morph
Should I commit a fix removing the flagged lines? Should I create a new
branch for the fix?