If you just used scaleX, then I think you are scaling the Application,
which could mean that popups, drop downs, cursors and tooltips won’t
scale.  systemManager.scaleX should cover that, and yes stage.scaleX isn’t
supported, you can use scaleMode instead.

-Alex

On 2/16/15, 1:23 AM, "Deepak MS" <[email protected]> wrote:

>Instead of stage.scaleX i used just scaleX (core application's scaleX) and
>it worked well.
>
>Based on Capabilities.screenResolutionX\Y values, I'll customly scale the
>application's scaleX\Y.
>
>Thanks Om and Alex.
>
>On Mon, Feb 16, 2015 at 2:17 PM, Deepak MS <[email protected]>
>wrote:
>
>> Ok. I thought scaleX\Y would work.
>>
>> But when I try to set the scaleX\Y value, I'm getting error:
>> //systemManager.stage.scaleMode = StageScaleMode.NO_SCALE;
>>                 systemManager.stage.scaleX = 1.25;
>>                 systemManager.stage.scaleY = 1.25;
>>
>> Error: Error #2071: The Stage class does not implement this property or
>> method.
>>     at Error$/throwError()
>>     at flash.display::Stage/set scaleX()
>>     at
>> 
>>App/onCreationComplete()[C:\Users\deepakms\Documents\FlexProjectsWorkspac
>>es\NewProjectSpace\IMD\src\App.mxml:76]
>>     at
>> 
>>App/___App_Application1_creationComplete()[C:\Users\deepakms\Documents\Fl
>>exProjectsWorkspaces\NewProjectSpace\IMD\src\App.mxml:13]
>>     at flash.events::EventDispatcher/dispatchEventFunction()
>>     at flash.events::EventDispatcher/dispatchEvent()
>>     at
>> 
>>mx.core::UIComponent/dispatchEvent()[C:\autobuild\3.x\frameworks\projects
>>\framework\src\mx\core\UIComponent.as:9590]
>>     at mx.core::UIComponent/set
>> 
>>initialized()[C:\autobuild\3.x\frameworks\projects\framework\src\mx\core\
>>UIComponent.as:1175]
>>     at
>> 
>>mx.managers::LayoutManager/doPhasedInstantiation()[C:\autobuild\3.x\frame
>>works\projects\framework\src\mx\managers\LayoutManager.as:718]
>>     at Function/http://adobe.com/AS3/2006/builtin::apply()
>>     at
>> 
>>mx.core::UIComponent/callLaterDispatcher2()[C:\autobuild\3.x\frameworks\p
>>rojects\framework\src\mx\core\UIComponent.as:8892]
>>     at
>> 
>>mx.core::UIComponent/callLaterDispatcher()[C:\autobuild\3.x\frameworks\pr
>>ojects\framework\src\mx\core\UIComponent.as:8832]
>>
>>
>> What does runtimeDPIProvider in flex 4 internally do? I couldn't get
>>much
>> details on it, as you said, I believe it's about scaling ultimately.
>>May be
>> I can try to replicate that in flex 3 application?
>>
>>
>>
>> On Mon, Feb 16, 2015 at 1:05 PM, Alex Harui <[email protected]> wrote:
>>
>>> Flex defaults to NO_SCALE.
>>>
>>> In Flex, the SystemManager is the root.  You can play with setting
>>> systemManager.scaleX and systemManager.scaleY.
>>>
>>> IIRC, there are several factors to controlling stage scale:  the SWF
>>> dimensions stored in the SWF header and set in the MXML application tag
>>> and the actual size of the window.  In AIR, you can control the size of
>>> the window from code  AIR also has the requestedDisplayResolution
>>> descriptor tag.
>>>
>>> If the SWF size matches the Window size it should scale more
>>>predictably.
>>> I haven’t tried it with AIR and Retina.
>>>
>>> https://blogs.adobe.com/aharui/2008/01/flex_and_scalemodes.html
>>>
>>> On 2/15/15, 11:03 PM, "Deepak MS" <[email protected]> wrote:
>>>
>>> >Hi Alex,
>>> >Just looked at it.
>>> >
>>> >There are 4 different values it can take. I tried all 4:
>>> >EXACT_FIT
>>> ><
>>> 
>>>http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash
>>>/
>>> >display/StageScaleMode.html#EXACT_FIT>
>>> >NO_BORDER
>>> ><
>>> 
>>>http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash
>>>/
>>> >display/StageScaleMode.html#NO_BORDER>
>>> >SHOW_ALL
>>> ><
>>> 
>>>http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash
>>>/
>>> >display/StageScaleMode.html#SHOW_ALL>
>>> >All the 3 options above zoom the application upto 400%! (components
>>>are
>>> >scaled up way too big)
>>> >
>>> >Then I tried NO_SCALE
>>> ><
>>> 
>>>http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash
>>>/
>>> >display/StageScaleMode.html#NO_SCALE>.
>>> >This doesn't change anything. It stays as is(components size look
>>>quite
>>> >small).
>>> >
>>> >I came across this link:
>>> >
>>> 
>>>http://stackoverflow.com/questions/23242855/using-stage-scalemode-stages
>>>ca
>>> >lemode-show-all-how-to-determine-current-zoom-per
>>> >
>>> >Someone has mentioned this there:
>>> >"Finally, I accomplished the same by alternative way. I instead of
>>>using,
>>> >stage.scaleMode = StageScaleMode.SHOW_ALL, used stage.scaleMode =
>>> >StageScaleMode.NO_SCALE and manually scaled the root to achieve zoom.
>>> >Doing
>>> >this, I now have zoomlevel known :). Hope this helps anyone with
>>>similar
>>> >problem."
>>> >
>>> >I'm not sure what 'manually scaled the root' meant there. Any idea?
>>> >
>>> >On Mon, Feb 16, 2015 at 11:50 AM, Alex Harui <[email protected]> wrote:
>>> >
>>> >> Have you tried using Stage.scaleMode?
>>> >>
>>> >> On 2/15/15, 9:01 PM, "Deepak MS" <[email protected]> wrote:
>>> >>
>>> >> >Hi Om,
>>> >> >Yes, Capabilities.screenDPI is there, but how do I set the DPI
>>>value
>>> >>for
>>> >> >the application?
>>> >> >
>>> >> >I tried a trace:
>>> >> >trace(Capabilities.screenDPI.toString());
>>> >> >                trace(Capabilities.screenResolutionX.toString());
>>> >> >                trace(Capabilities.screenResolutionY.toString());
>>> >> >
>>> >> >In old laptop this is what I got:
>>> >> >72
>>> >> >1600
>>> >> >900
>>> >> >
>>> >> >In new laptop:
>>> >> >72
>>> >> >1920
>>> >> >1080
>>> >> >
>>> >> >Based on screenResolutionX\Y, I need to override the DPI value of
>>>the
>>> >> >application. Where can I do that part?
>>> >> >
>>> >> >On Mon, Feb 16, 2015 at 10:04 AM, OmPrakash Muppirala
>>> >> ><[email protected]>
>>> >> >wrote:
>>> >> >
>>> >> >> Have you tried Capabilities.screenDPI ?  It should be available
>>>in
>>> mx
>>> >> >> applications as well.
>>> >> >>
>>> >> >> Thanks,
>>> >> >> Om
>>> >> >>
>>> >> >> On Sun, Feb 15, 2015 at 8:29 PM, Deepak MS <
>>> [email protected]>
>>> >> >> wrote:
>>> >> >>
>>> >> >> > Hello,
>>> >> >> > Just like retina display ipads, off late, there have been
>>>laptops
>>> >>with
>>> >> >> > higher DPIs. And we have some of our flex 3 applications in
>>>which
>>> >>all
>>> >> >>the
>>> >> >> > components look too small in overall size on screen in new
>>>laptops
>>> >> >> > (something like the screenshots shown here in this link:
>>> >> >> > https://forums.adobe.com/thread/977263 )
>>> >> >> >
>>> >> >> > We can achieve it in flex 4 :
>>> >> >> >
>>> >> >> >
>>> >> >>
>>> >> >>
>>> >>
>>> >>
>>> 
>>>http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/mx/co
>>>r
>>> >> >>e/RuntimeDPIProvider.html
>>> >> >> >
>>> >> >> > But I want to know if there is anything I can try to achieve
>>>it in
>>> >> >>flex 3
>>> >> >> > we applications, as it doesn't have "runtimeDPIProvider"
>>>property.
>>> >> >> >
>>> >> >> > Appreciate your help.
>>> >> >> >
>>> >> >> > Cheers!
>>> >> >> >
>>> >> >>
>>> >>
>>> >>
>>>
>>>
>>

Reply via email to