Changeset 244


Ignore:
Timestamp:
May 21, 2020, 6:42:45 PM (4 years ago)
Author:
chronos
Message:
  • Added: TDpiPopupMenu and TDpiMenuItem support.
Location:
branches/highdpi
Files:
16 edited

Legend:

Unmodified
Added
Removed
  • branches/highdpi/LocalPlayer/Diagram.lfm

    r210 r244  
    3838    ButtonIndex = 15
    3939  end
    40   object Popup: TPopupMenu
     40  object Popup: TDpiPopupMenu
    4141    Left = 16
    4242    Top = 48
  • branches/highdpi/LocalPlayer/Diagram.pas

    r210 r244  
    1212    CloseBtn: TButtonB;
    1313    ToggleBtn: TButtonB;
    14     Popup: TPopupMenu;
     14    Popup: TDpiPopupMenu;
    1515    procedure CloseBtnClick(Sender: TObject);
    1616    procedure FormPaint(Sender: TObject);
     
    330330var
    331331  p1: integer;
    332   m: TMenuItem;
     332  m: TDpiMenuItem;
    333333begin
    334334  if Kind = dkChart then
     
    345345        MyRO.Ship[p1].Parts[spHab] > 0 then
    346346      begin
    347         m := TMenuItem.Create(Popup);
     347        m := TDpiMenuItem.Create(Popup);
    348348        m.RadioItem := true;
    349349        m.Caption := Tribe[p1].TPhrase('SHORTNAME');
  • branches/highdpi/LocalPlayer/Enhance.pas

    r210 r244  
    1515
    1616  TEnhanceDlg = class(TFramedDlg)
    17     MenuItem1: TMenuItem;
     17    MenuItem1: TDpiMenuItem;
    1818    ToggleBtn: TButtonB;
    1919    CloseBtn: TButtonB;
     
    2626    job6: TButtonC;
    2727    job9: TButtonC;
    28     Popup: TPopupMenu;
     28    Popup: TDpiPopupMenu;
    2929    procedure FormCreate(Sender: TObject);
    3030    procedure FormPaint(Sender: TObject);
     
    5454var
    5555  TerrType: integer;
    56   m: TMenuItem;
     56  m: TDpiMenuItem;
    5757begin
    5858  inherited;
     
    6767    if TerrType <> fJungle then
    6868    begin
    69       m := TMenuItem.Create(Popup);
     69      m := TDpiMenuItem.Create(Popup);
    7070      m.RadioItem := true;
    7171      if TerrType = fGrass then
  • branches/highdpi/LocalPlayer/NatStat.lfm

    r210 r244  
    7777    ButtonIndex = 0
    7878  end
    79   object Popup: TPopupMenu
     79  object Popup: TDpiPopupMenu
    8080    Left = 16
    8181    Top = 48
  • branches/highdpi/LocalPlayer/NatStat.pas

    r210 r244  
    1616    ToggleBtn: TButtonB;
    1717    CloseBtn: TButtonB;
    18     Popup: TPopupMenu;
     18    Popup: TDpiPopupMenu;
    1919    ScrollUpBtn: TButtonC;
    2020    ScrollDownBtn: TButtonC;
     
    435435var
    436436  p1, StartCount: integer;
    437   m: TMenuItem;
     437  m: TDpiMenuItem;
    438438  ExtinctPart: boolean;
    439439begin
     
    443443  if G.Difficulty[me] <> 0 then
    444444  begin
    445     m := TMenuItem.Create(Popup);
     445    m := TDpiMenuItem.Create(Popup);
    446446    m.RadioItem := true;
    447447    m.Caption := Tribe[me].TPhrase('TITLE_NATION');
     
    462462        (1 shl p1 and MyRO.Alive <> 0) and (MyRO.Treaty[p1] >= trNone) then
    463463      begin
    464         m := TMenuItem.Create(Popup);
     464        m := TDpiMenuItem.Create(Popup);
    465465        m.RadioItem := true;
    466466        m.Caption := Tribe[p1].TPhrase('TITLE_NATION');
     
    475475    if (StartCount > 0) and (Popup.Items.Count > StartCount) then
    476476    begin // seperator
    477       m := TMenuItem.Create(Popup);
     477      m := TDpiMenuItem.Create(Popup);
    478478      m.Caption := '-';
    479479      Popup.Items.Insert(StartCount, m);
  • branches/highdpi/LocalPlayer/Select.lfm

    r210 r244  
    7575    ButtonIndex = 15
    7676  end
    77   object Popup: TPopupMenu
     77  object Popup: TDpiPopupMenu
    7878    Left = 16
    7979    Top = 48
  • branches/highdpi/LocalPlayer/Select.pas

    r210 r244  
    2727    Layer0Btn: TButtonB;
    2828    ToggleBtn: TButtonB;
    29     Popup: TPopupMenu;
     29    Popup: TDpiPopupMenu;
    3030    procedure FormMouseWheel(Sender: TObject; Shift: TShiftState;
    3131      WheelDelta: Integer; MousePos: TPoint; var Handled: Boolean);
     
    17731773var
    17741774  p1: integer;
    1775   m: TMenuItem;
     1775  m: TDpiMenuItem;
    17761776begin
    17771777  case Kind of
     
    17961796        if G.Difficulty[me] > 0 then
    17971797        begin
    1798           m := TMenuItem.Create(Popup);
     1798          m := TDpiMenuItem.Create(Popup);
    17991799          m.RadioItem := true;
    18001800          m.Caption := Tribe[me].TPhrase('SHORTNAME');
     
    18091809            (MyRO.EnemyReport[p1].TurnOfMilReport >= 0) then
    18101810          begin
    1811             m := TMenuItem.Create(Popup);
     1811            m := TDpiMenuItem.Create(Popup);
    18121812            m.RadioItem := true;
    18131813            m.Caption := Tribe[p1].TPhrase('SHORTNAME');
  • branches/highdpi/LocalPlayer/Term.lfm

    r210 r244  
    219219    top = 60
    220220  end
    221   object GamePopup: TPopupMenu
     221  object GamePopup: TDpiPopupMenu
    222222    AutoPopup = False
    223223    left = 50
    224224    top = 60
    225     object mHelp: TMenuItem
     225    object mHelp: TDpiMenuItem
    226226      Tag = 7
    227227      ShortCut = 112
    228228      OnClick = MenuClick
    229229    end
    230     object mTechTree: TMenuItem
     230    object mTechTree: TDpiMenuItem
    231231      GroupIndex = 1
    232232      ShortCut = 84
    233233      OnClick = MenuClick
    234234    end
    235     object N12: TMenuItem
     235    object N12: TDpiMenuItem
    236236      Caption = '-'
    237237      GroupIndex = 1
    238238    end
    239     object mViewpoint: TMenuItem
    240       GroupIndex = 1
    241     end
    242     object mDebugMap: TMenuItem
     239    object mViewpoint: TDpiMenuItem
     240      GroupIndex = 1
     241    end
     242    object mDebugMap: TDpiMenuItem
    243243      Tag = 49
    244244      GroupIndex = 1
    245245      ShortCut = 16459
    246246    end
    247     object mOptions: TMenuItem
     247    object mOptions: TDpiMenuItem
    248248      Tag = 29
    249249      GroupIndex = 1
    250       object mOwnMovement: TMenuItem
     250      object mOwnMovement: TDpiMenuItem
    251251        Tag = 30
    252252        GroupIndex = 1
    253253        RadioItem = True
    254         object mSlowMoves: TMenuItem
     254        object mSlowMoves: TDpiMenuItem
    255255          Tag = 75
    256256          RadioItem = True
    257257          OnClick = Radio
    258258        end
    259         object mFastMoves: TMenuItem
     259        object mFastMoves: TDpiMenuItem
    260260          Tag = 76
    261261          RadioItem = True
    262262          OnClick = Radio
    263263        end
    264         object mVeryFastMoves: TMenuItem
     264        object mVeryFastMoves: TDpiMenuItem
    265265          Tag = 77
    266266          RadioItem = True
    267267          OnClick = Radio
    268268        end
    269         object N7: TMenuItem
     269        object N7: TDpiMenuItem
    270270          Caption = '-'
    271271        end
    272         object mEffectiveMovesOnly: TMenuItem
     272        object mEffectiveMovesOnly: TDpiMenuItem
    273273          Tag = 95
    274274          OnClick = Toggle
    275275        end
    276276      end
    277       object mAllyMovement: TMenuItem
     277      object mAllyMovement: TDpiMenuItem
    278278        Tag = 90
    279279        GroupIndex = 1
    280280        RadioItem = True
    281         object mAlSlowMoves: TMenuItem
     281        object mAlSlowMoves: TDpiMenuItem
    282282          Tag = 91
    283283          RadioItem = True
    284284          OnClick = Radio
    285285        end
    286         object mAlFastMoves: TMenuItem
     286        object mAlFastMoves: TDpiMenuItem
    287287          Tag = 92
    288288          RadioItem = True
    289289          OnClick = Radio
    290290        end
    291         object mAlNoMoves: TMenuItem
     291        object mAlNoMoves: TDpiMenuItem
    292292          Tag = 93
    293293          RadioItem = True
    294294          OnClick = Radio
    295295        end
    296         object N8: TMenuItem
     296        object N8: TDpiMenuItem
    297297          Caption = '-'
    298298        end
    299         object mAlEffectiveMovesOnly: TMenuItem
     299        object mAlEffectiveMovesOnly: TDpiMenuItem
    300300          Tag = 94
    301301          OnClick = Toggle
    302302        end
    303303      end
    304       object mEnemyMovement: TMenuItem
     304      object mEnemyMovement: TDpiMenuItem
    305305        Tag = 74
    306306        GroupIndex = 1
    307307        RadioItem = True
    308         object mEnMoves: TMenuItem
     308        object mEnMoves: TDpiMenuItem
    309309          Tag = 78
    310310          RadioItem = True
    311311          OnClick = Radio
    312312        end
    313         object mEnFastMoves: TMenuItem
     313        object mEnFastMoves: TDpiMenuItem
    314314          Tag = 79
    315315          RadioItem = True
    316316          OnClick = Radio
    317317        end
    318         object mEnNoMoves: TMenuItem
     318        object mEnNoMoves: TDpiMenuItem
    319319          Tag = 53
    320320          RadioItem = True
    321321          OnClick = Radio
    322322        end
    323         object N9: TMenuItem
     323        object N9: TDpiMenuItem
    324324          Caption = '-'
    325325        end
    326         object mEnAttacks: TMenuItem
     326        object mEnAttacks: TDpiMenuItem
    327327          Tag = 52
    328328          OnClick = Toggle
    329329        end
    330330      end
    331       object N11: TMenuItem
     331      object N11: TDpiMenuItem
    332332        Caption = '-'
    333333        GroupIndex = 1
    334334        RadioItem = True
    335335      end
    336       object mRepList: TMenuItem
     336      object mRepList: TDpiMenuItem
    337337        Tag = 65
    338338        GroupIndex = 1
     
    340340        OnClick = Radio
    341341      end
    342       object mRepScreens: TMenuItem
     342      object mRepScreens: TDpiMenuItem
    343343        Tag = 66
    344344        GroupIndex = 1
     
    346346        OnClick = Radio
    347347      end
    348       object mRep: TMenuItem
     348      object mRep: TDpiMenuItem
    349349        Tag = 34
    350350        GroupIndex = 1
    351         object mRep0: TMenuItem
    352           OnClick = mRepClicked
    353         end
    354         object mRep1: TMenuItem
     351        object mRep0: TDpiMenuItem
     352          OnClick = mRepClicked
     353        end
     354        object mRep1: TDpiMenuItem
    355355          Tag = 256
    356356          OnClick = mRepClicked
    357357        end
    358         object mRep2: TMenuItem
     358        object mRep2: TDpiMenuItem
    359359          Tag = 512
    360360          OnClick = mRepClicked
    361361        end
    362         object mRep3: TMenuItem
     362        object mRep3: TDpiMenuItem
    363363          Tag = 768
    364364          OnClick = mRepClicked
    365365        end
    366         object mRep4: TMenuItem
     366        object mRep4: TDpiMenuItem
    367367          Tag = 1024
    368368          OnClick = mRepClicked
    369369        end
    370         object mRep5: TMenuItem
     370        object mRep5: TDpiMenuItem
    371371          Tag = 1280
    372372          OnClick = mRepClicked
    373373        end
    374         object mRep6: TMenuItem
     374        object mRep6: TDpiMenuItem
    375375          Tag = 1536
    376376          OnClick = mRepClicked
    377377        end
    378         object mRep7: TMenuItem
     378        object mRep7: TDpiMenuItem
    379379          Tag = 1792
    380380          OnClick = mRepClicked
    381381        end
    382         object mRep8: TMenuItem
     382        object mRep8: TDpiMenuItem
    383383          Tag = 2048
    384384          OnClick = mRepClicked
    385385        end
    386         object mRep9: TMenuItem
     386        object mRep9: TDpiMenuItem
    387387          Tag = 2304
    388388          OnClick = mRepClicked
    389389        end
    390         object mRep10: TMenuItem
     390        object mRep10: TDpiMenuItem
    391391          Tag = 2560
    392392          OnClick = mRepClicked
    393393        end
    394         object mRep11: TMenuItem
     394        object mRep11: TDpiMenuItem
    395395          Tag = 2816
    396396          OnClick = mRepClicked
    397397        end
    398         object mRep12: TMenuItem
     398        object mRep12: TDpiMenuItem
    399399          Tag = 3072
    400400          OnClick = mRepClicked
    401401        end
    402         object mRep13: TMenuItem
     402        object mRep13: TDpiMenuItem
    403403          Tag = 3328
    404404          OnClick = mRepClicked
    405405        end
    406         object mRep14: TMenuItem
     406        object mRep14: TDpiMenuItem
    407407          Tag = 3584
    408408          OnClick = mRepClicked
    409409        end
    410         object mRep15: TMenuItem
     410        object mRep15: TDpiMenuItem
    411411          Tag = 3840
    412412          OnClick = mRepClicked
    413413        end
    414414      end
    415       object N10: TMenuItem
     415      object N10: TDpiMenuItem
    416416        Caption = '-'
    417417        GroupIndex = 1
    418418      end
    419       object mWaitTurn: TMenuItem
     419      object mWaitTurn: TDpiMenuItem
    420420        Tag = 32
    421421        GroupIndex = 1
    422422        OnClick = Toggle
    423423      end
    424       object mScrolling: TMenuItem
     424      object mScrolling: TDpiMenuItem
    425425        Tag = 84
    426426        GroupIndex = 1
    427         object mScrollSlow: TMenuItem
     427        object mScrollSlow: TDpiMenuItem
    428428          Tag = 85
    429429          RadioItem = True
    430430          OnClick = Radio
    431431        end
    432         object mScrollFast: TMenuItem
     432        object mScrollFast: TDpiMenuItem
    433433          Tag = 86
    434434          RadioItem = True
    435435          OnClick = Radio
    436436        end
    437         object mScrollOff: TMenuItem
     437        object mScrollOff: TDpiMenuItem
    438438          Tag = 87
    439439          RadioItem = True
     
    441441        end
    442442      end
    443       object mTileSize: TMenuItem
     443      object mTileSize: TDpiMenuItem
    444444        Tag = 96
    445445        GroupIndex = 1
    446         object mSmallTiles: TMenuItem
     446        object mSmallTiles: TDpiMenuItem
    447447          Caption = '40px'
    448448          RadioItem = True
    449449          OnClick = mSmallTilesClick
    450450        end
    451         object mNormalTiles: TMenuItem
     451        object mNormalTiles: TDpiMenuItem
    452452          Caption = '60px'
    453453          RadioItem = True
    454454          OnClick = mNormalTilesClick
    455455        end
    456         object mBigTiles: TMenuItem
     456        object mBigTiles: TDpiMenuItem
    457457          Caption = '90px'
    458458          RadioItem = True
     
    460460        end
    461461      end
    462       object mSound: TMenuItem
     462      object mSound: TDpiMenuItem
    463463        Tag = 80
    464464        GroupIndex = 1
    465         object mSoundOn: TMenuItem
     465        object mSoundOn: TDpiMenuItem
    466466          Tag = 82
    467467          RadioItem = True
    468468          OnClick = mSoundOnClick
    469469        end
    470         object mSoundOnAlt: TMenuItem
     470        object mSoundOnAlt: TDpiMenuItem
    471471          Tag = 83
    472472          RadioItem = True
     
    474474          OnClick = mSoundOnAltClick
    475475        end
    476         object mSoundOff: TMenuItem
     476        object mSoundOff: TDpiMenuItem
    477477          Tag = 81
    478478          RadioItem = True
     
    480480        end
    481481      end
    482       object N6: TMenuItem
     482      object N6: TDpiMenuItem
    483483        Caption = '-'
    484484        GroupIndex = 1
    485485      end
    486       object mTest: TMenuItem
     486      object mTest: TDpiMenuItem
    487487        Tag = 8
    488488        GroupIndex = 1
    489         object mJump: TMenuItem
     489        object mJump: TDpiMenuItem
    490490          Tag = 54
    491491          ShortCut = 16458
    492492          OnClick = MenuClick
    493493        end
    494         object mRun: TMenuItem
     494        object mRun: TDpiMenuItem
    495495          Tag = 63
    496496          ShortCut = 16466
    497497          OnClick = MenuClick
    498498        end
    499         object mNames: TMenuItem
     499        object mNames: TDpiMenuItem
    500500          Tag = 67
    501501          ShortCut = 16462
    502502          OnClick = mNamesClick
    503503        end
    504         object mLocCodes: TMenuItem
     504        object mLocCodes: TDpiMenuItem
    505505          Tag = 27
    506506          ShortCut = 16460
    507507          OnClick = mShowClick
    508508        end
    509         object mLog: TMenuItem
     509        object mLog: TDpiMenuItem
    510510          Tag = 10
    511511          ShortCut = 16461
     
    514514      end
    515515    end
    516     object mManip: TMenuItem
     516    object mManip: TDpiMenuItem
    517517      Tag = 56
    518518      GroupIndex = 1
    519       object mManip0: TMenuItem
     519      object mManip0: TDpiMenuItem
    520520        Tag = 57
    521521        OnClick = mManipClick
    522522      end
    523       object mManip1: TMenuItem
     523      object mManip1: TDpiMenuItem
    524524        Tag = 314
    525525        OnClick = mManipClick
    526526      end
    527       object mManip2: TMenuItem
     527      object mManip2: TDpiMenuItem
    528528        Tag = 571
    529529        OnClick = mManipClick
    530530      end
    531       object mManip3: TMenuItem
     531      object mManip3: TDpiMenuItem
    532532        Tag = 828
    533533        OnClick = mManipClick
    534534      end
    535       object mManip4: TMenuItem
     535      object mManip4: TDpiMenuItem
    536536        Tag = 1085
    537537        OnClick = mManipClick
    538538      end
    539       object mManip5: TMenuItem
     539      object mManip5: TDpiMenuItem
    540540        Tag = 1342
    541541        OnClick = mManipClick
    542542      end
    543       object mManip6: TMenuItem
     543      object mManip6: TDpiMenuItem
    544544        Tag = 1604
    545545        OnClick = mManipClick
    546546      end
    547547    end
    548     object mMacro: TMenuItem
     548    object mMacro: TDpiMenuItem
    549549      Tag = 42
    550550      GroupIndex = 1
    551       object mEnhanceDef: TMenuItem
     551      object mEnhanceDef: TDpiMenuItem
    552552        Tag = 40
    553553        OnClick = MenuClick
    554554      end
    555       object mCityTypes: TMenuItem
     555      object mCityTypes: TDpiMenuItem
    556556        Tag = 11
    557557        OnClick = MenuClick
    558558      end
    559559    end
    560     object mRandomMap: TMenuItem
     560    object mRandomMap: TDpiMenuItem
    561561      Tag = 71
    562562      GroupIndex = 1
     
    564564      OnClick = MenuClick
    565565    end
    566     object N3: TMenuItem
     566    object N3: TDpiMenuItem
    567567      Caption = '-'
    568568      GroupIndex = 1
    569569    end
    570     object mWebsite: TMenuItem
     570    object mWebsite: TDpiMenuItem
    571571      Tag = 88
    572572      GroupIndex = 1
    573573      OnClick = MenuClick
    574574    end
    575     object N2: TMenuItem
     575    object N2: TDpiMenuItem
    576576      Caption = '-'
    577577      GroupIndex = 1
    578578    end
    579     object mResign: TMenuItem
     579    object mResign: TDpiMenuItem
    580580      Tag = 2
    581581      GroupIndex = 1
     
    584584    end
    585585  end
    586   object UnitPopup: TPopupMenu
     586  object UnitPopup: TDpiPopupMenu
    587587    AutoPopup = False
    588588    left = 130
    589589    top = 60
    590     object mdisband: TMenuItem
     590    object mdisband: TDpiMenuItem
    591591      Tag = 72
    592592      ShortCut = 16452
    593593      OnClick = MenuClick
    594594    end
    595     object mUtilize: TMenuItem
     595    object mUtilize: TDpiMenuItem
    596596      ShortCut = 90
    597597      OnClick = MenuClick
    598598    end
    599     object N1: TMenuItem
     599    object N1: TDpiMenuItem
    600600      Caption = '-'
    601601    end
    602     object mcity: TMenuItem
     602    object mcity: TDpiMenuItem
    603603      ShortCut = 66
    604604      OnClick = MenuClick
    605605    end
    606     object mPillage: TMenuItem
     606    object mPillage: TDpiMenuItem
    607607      Tag = 19
    608608      ShortCut = 16464
    609609      OnClick = MenuClick
    610610    end
    611     object N5: TMenuItem
     611    object N5: TDpiMenuItem
    612612      Caption = '-'
    613613    end
    614     object mhome: TMenuItem
     614    object mhome: TDpiMenuItem
    615615      ShortCut = 72
    616616      OnClick = MenuClick
    617617    end
    618     object mLoad: TMenuItem
     618    object mLoad: TDpiMenuItem
    619619      Tag = 24
    620620      ShortCut = 76
    621621      OnClick = MenuClick
    622622    end
    623     object mUnload: TMenuItem
     623    object mUnload: TDpiMenuItem
    624624      Tag = 70
    625625      ShortCut = 85
    626626      OnClick = MenuClick
    627627    end
    628     object mSelectTransport: TMenuItem
     628    object mSelectTransport: TDpiMenuItem
    629629      Tag = 73
    630630      ShortCut = 16468
    631631      OnClick = MenuClick
    632632    end
    633     object mGoOn: TMenuItem
     633    object mGoOn: TDpiMenuItem
    634634      Tag = 13
    635635      ShortCut = 71
    636636      OnClick = MenuClick
    637637    end
    638     object mCancel: TMenuItem
     638    object mCancel: TDpiMenuItem
    639639      Tag = 1
    640640      ShortCut = 16451
    641641      OnClick = MenuClick
    642642    end
    643     object mRecover: TMenuItem
     643    object mRecover: TDpiMenuItem
    644644      Tag = 69
    645645      ShortCut = 86
    646646      OnClick = MenuClick
    647647    end
    648     object mwait: TMenuItem
     648    object mwait: TDpiMenuItem
    649649      Tag = 25
    650650      ShortCut = 87
    651651      OnClick = MenuClick
    652652    end
    653     object mnoorders: TMenuItem
     653    object mnoorders: TDpiMenuItem
    654654      Tag = 26
    655655      ShortCut = 32
    656656      OnClick = MenuClick
    657657    end
    658     object mstay: TMenuItem
     658    object mstay: TDpiMenuItem
    659659      Tag = 22
    660660      ShortCut = 83
    661661      OnClick = MenuClick
    662662    end
    663     object mCentre: TMenuItem
     663    object mCentre: TDpiMenuItem
    664664      Tag = 12
    665665      ShortCut = 67
     
    667667    end
    668668  end
    669   object StatPopup: TPopupMenu
     669  object StatPopup: TDpiPopupMenu
    670670    AutoPopup = False
    671671    left = 90
    672672    top = 60
    673     object mUnitStat: TMenuItem
     673    object mUnitStat: TDpiMenuItem
    674674      Tag = 9
    675675      ShortCut = 113
    676676      OnClick = MenuClick
    677677    end
    678     object mCityStat: TMenuItem
     678    object mCityStat: TDpiMenuItem
    679679      Tag = 37
    680680      ShortCut = 114
    681681      OnClick = MenuClick
    682682    end
    683     object mScienceStat: TMenuItem
     683    object mScienceStat: TDpiMenuItem
    684684      Tag = 38
    685685      ShortCut = 115
    686686      OnClick = MenuClick
    687687    end
    688     object mEUnitStat: TMenuItem
     688    object mEUnitStat: TDpiMenuItem
    689689      Tag = 50
    690690      ShortCut = 116
    691691      OnClick = MenuClick
    692692    end
    693     object mDiagram: TMenuItem
     693    object mDiagram: TDpiMenuItem
    694694      Tag = 21
    695695      ShortCut = 117
    696696      OnClick = MenuClick
    697697    end
    698     object mWonders: TMenuItem
     698    object mWonders: TDpiMenuItem
    699699      Tag = 6
    700700      ShortCut = 118
    701701      OnClick = MenuClick
    702702    end
    703     object mShips: TMenuItem
     703    object mShips: TDpiMenuItem
    704704      Tag = 41
    705705      ShortCut = 119
    706706      OnClick = MenuClick
    707707    end
    708     object N4: TMenuItem
     708    object N4: TDpiMenuItem
    709709      Caption = '-'
    710710    end
    711     object mNations: TMenuItem
     711    object mNations: TDpiMenuItem
    712712      Tag = 55
    713713      ShortCut = 120
    714714      OnClick = MenuClick
    715715    end
    716     object mEmpire: TMenuItem
     716    object mEmpire: TDpiMenuItem
    717717      Tag = 3
    718718      ShortCut = 121
    719719      OnClick = MenuClick
    720720    end
    721     object mRevolution: TMenuItem
     721    object mRevolution: TDpiMenuItem
    722722      Tag = 89
    723723      OnClick = MenuClick
    724724    end
    725725  end
    726   object EditPopup: TPopupMenu
     726  object EditPopup: TDpiPopupMenu
    727727    left = 210
    728728    top = 60
    729     object mCreateUnit: TMenuItem
     729    object mCreateUnit: TDpiMenuItem
    730730      Tag = 47
    731731    end
    732732  end
    733   object TerrainPopup: TPopupMenu
     733  object TerrainPopup: TDpiPopupMenu
    734734    left = 170
    735735    top = 60
    736     object mtrans: TMenuItem
     736    object mtrans: TDpiMenuItem
    737737      Tag = 273
    738738      ShortCut = 79
    739739      OnClick = MenuClick
    740740    end
    741     object mAfforest: TMenuItem
     741    object mAfforest: TDpiMenuItem
    742742      Tag = 301
    743743      ShortCut = 77
    744744      OnClick = MenuClick
    745745    end
    746     object mClear: TMenuItem
     746    object mClear: TDpiMenuItem
    747747      Tag = 298
    748748      ShortCut = 73
    749749      OnClick = MenuClick
    750750    end
    751     object mfort: TMenuItem
     751    object mfort: TDpiMenuItem
    752752      Tag = 276
    753753      ShortCut = 70
    754754      OnClick = MenuClick
    755755    end
    756     object mAirBase: TMenuItem
     756    object mAirBase: TDpiMenuItem
    757757      Tag = 272
    758758      ShortCut = 65
    759759      OnClick = MenuClick
    760760    end
    761     object mCanal: TMenuItem
     761    object mCanal: TDpiMenuItem
    762762      Tag = 279
    763763      ShortCut = 78
    764764      OnClick = MenuClick
    765765    end
    766     object mmine: TMenuItem
     766    object mmine: TDpiMenuItem
    767767      Tag = 302
    768768      ShortCut = 77
    769769      OnClick = MenuClick
    770770    end
    771     object mFarm: TMenuItem
     771    object mFarm: TDpiMenuItem
    772772      Tag = 300
    773773      ShortCut = 73
    774774      OnClick = MenuClick
    775775    end
    776     object mirrigation: TMenuItem
     776    object mirrigation: TDpiMenuItem
    777777      Tag = 299
    778778      ShortCut = 73
    779779      OnClick = MenuClick
    780780    end
    781     object mrr: TMenuItem
     781    object mrr: TDpiMenuItem
    782782      Tag = 297
    783783      ShortCut = 82
    784784      OnClick = MenuClick
    785785    end
    786     object mroad: TMenuItem
     786    object mroad: TDpiMenuItem
    787787      Tag = 296
    788788      ShortCut = 82
    789789      OnClick = MenuClick
    790790    end
    791     object mpollution: TMenuItem
     791    object mpollution: TDpiMenuItem
    792792      Tag = 274
    793793      ShortCut = 80
    794794      OnClick = MenuClick
    795795    end
    796     object mEnhance: TMenuItem
     796    object mEnhance: TDpiMenuItem
    797797      Tag = 295
    798798      ShortCut = 69
  • branches/highdpi/LocalPlayer/Term.pas

    r212 r244  
    2626
    2727  TMainScreen = class(TDrawDlg)
    28     mBigTiles: TMenuItem;
     28    mBigTiles: TDpiMenuItem;
    2929    Timer1: TTimer;
    30     GamePopup: TPopupMenu;
    31     UnitPopup: TPopupMenu;
    32     mIrrigation: TMenuItem;
    33     mCity: TMenuItem;
    34     mRoad: TMenuItem;
    35     mMine: TMenuItem;
    36     mPollution: TMenuItem;
    37     mHome: TMenuItem;
    38     mStay: TMenuItem;
    39     mDisband: TMenuItem;
    40     mWait: TMenuItem;
    41     mNoOrders: TMenuItem;
    42     MTrans: TMenuItem;
     30    GamePopup: TDpiPopupMenu;
     31    UnitPopup: TDpiPopupMenu;
     32    mIrrigation: TDpiMenuItem;
     33    mCity: TDpiMenuItem;
     34    mRoad: TDpiMenuItem;
     35    mMine: TDpiMenuItem;
     36    mPollution: TDpiMenuItem;
     37    mHome: TDpiMenuItem;
     38    mStay: TDpiMenuItem;
     39    mDisband: TDpiMenuItem;
     40    mWait: TDpiMenuItem;
     41    mNoOrders: TDpiMenuItem;
     42    MTrans: TDpiMenuItem;
    4343    UnitBtn: TButtonB;
    44     mResign: TMenuItem;
    45     mOptions: TMenuItem;
    46     mEnMoves: TMenuItem;
    47     mWaitTurn: TMenuItem;
    48     mRep: TMenuItem;
    49     mFort: TMenuItem;
    50     mCentre: TMenuItem;
    51     N1: TMenuItem;
    52     mAirBase: TMenuItem;
    53     N5: TMenuItem;
    54     mCityTypes: TMenuItem;
    55     mHelp: TMenuItem;
    56     mCanal: TMenuItem;
    57     mTest: TMenuItem;
    58     mLocCodes: TMenuItem;
    59     mLoad: TMenuItem;
    60     StatPopup: TPopupMenu;
    61     mCityStat: TMenuItem;
    62     mUnitStat: TMenuItem;
    63     mWonders: TMenuItem;
    64     mScienceStat: TMenuItem;
    65     mRR: TMenuItem;
    66     mClear: TMenuItem;
    67     mFarm: TMenuItem;
    68     mAfforest: TMenuItem;
    69     mRep0: TMenuItem;
    70     mRep1: TMenuItem;
    71     mRep2: TMenuItem;
    72     mRep3: TMenuItem;
    73     mRep4: TMenuItem;
    74     mRep5: TMenuItem;
    75     mRep7: TMenuItem;
    76     mRep8: TMenuItem;
    77     mRep9: TMenuItem;
    78     mRep15: TMenuItem;
    79     mCancel: TMenuItem;
    80     mLog: TMenuItem;
    81     mEUnitStat: TMenuItem;
    82     mRep10: TMenuItem;
    83     mEnAttacks: TMenuItem;
    84     mEnNoMoves: TMenuItem;
    85     mDiagram: TMenuItem;
    86     mJump: TMenuItem;
    87     mNations: TMenuItem;
    88     mManip: TMenuItem;
    89     mManip0: TMenuItem;
    90     mManip1: TMenuItem;
    91     mManip2: TMenuItem;
    92     mManip3: TMenuItem;
    93     mManip4: TMenuItem;
    94     mManip5: TMenuItem;
    95     mEnhanceDef: TMenuItem;
    96     mEnhance: TMenuItem;
    97     mShips: TMenuItem;
    98     mMacro: TMenuItem;
    99     mRun: TMenuItem;
    100     N10: TMenuItem;
    101     mRepList: TMenuItem;
    102     mRepScreens: TMenuItem;
    103     mRep11: TMenuItem;
    104     mNames: TMenuItem;
    105     mManip6: TMenuItem;
    106     mRep12: TMenuItem;
    107     mRandomMap: TMenuItem;
    108     mUnload: TMenuItem;
    109     mRecover: TMenuItem;
     44    mResign: TDpiMenuItem;
     45    mOptions: TDpiMenuItem;
     46    mEnMoves: TDpiMenuItem;
     47    mWaitTurn: TDpiMenuItem;
     48    mRep: TDpiMenuItem;
     49    mFort: TDpiMenuItem;
     50    mCentre: TDpiMenuItem;
     51    N1: TDpiMenuItem;
     52    mAirBase: TDpiMenuItem;
     53    N5: TDpiMenuItem;
     54    mCityTypes: TDpiMenuItem;
     55    mHelp: TDpiMenuItem;
     56    mCanal: TDpiMenuItem;
     57    mTest: TDpiMenuItem;
     58    mLocCodes: TDpiMenuItem;
     59    mLoad: TDpiMenuItem;
     60    StatPopup: TDpiPopupMenu;
     61    mCityStat: TDpiMenuItem;
     62    mUnitStat: TDpiMenuItem;
     63    mWonders: TDpiMenuItem;
     64    mScienceStat: TDpiMenuItem;
     65    mRR: TDpiMenuItem;
     66    mClear: TDpiMenuItem;
     67    mFarm: TDpiMenuItem;
     68    mAfforest: TDpiMenuItem;
     69    mRep0: TDpiMenuItem;
     70    mRep1: TDpiMenuItem;
     71    mRep2: TDpiMenuItem;
     72    mRep3: TDpiMenuItem;
     73    mRep4: TDpiMenuItem;
     74    mRep5: TDpiMenuItem;
     75    mRep7: TDpiMenuItem;
     76    mRep8: TDpiMenuItem;
     77    mRep9: TDpiMenuItem;
     78    mRep15: TDpiMenuItem;
     79    mCancel: TDpiMenuItem;
     80    mLog: TDpiMenuItem;
     81    mEUnitStat: TDpiMenuItem;
     82    mRep10: TDpiMenuItem;
     83    mEnAttacks: TDpiMenuItem;
     84    mEnNoMoves: TDpiMenuItem;
     85    mDiagram: TDpiMenuItem;
     86    mJump: TDpiMenuItem;
     87    mNations: TDpiMenuItem;
     88    mManip: TDpiMenuItem;
     89    mManip0: TDpiMenuItem;
     90    mManip1: TDpiMenuItem;
     91    mManip2: TDpiMenuItem;
     92    mManip3: TDpiMenuItem;
     93    mManip4: TDpiMenuItem;
     94    mManip5: TDpiMenuItem;
     95    mEnhanceDef: TDpiMenuItem;
     96    mEnhance: TDpiMenuItem;
     97    mShips: TDpiMenuItem;
     98    mMacro: TDpiMenuItem;
     99    mRun: TDpiMenuItem;
     100    N10: TDpiMenuItem;
     101    mRepList: TDpiMenuItem;
     102    mRepScreens: TDpiMenuItem;
     103    mRep11: TDpiMenuItem;
     104    mNames: TDpiMenuItem;
     105    mManip6: TDpiMenuItem;
     106    mRep12: TDpiMenuItem;
     107    mRandomMap: TDpiMenuItem;
     108    mUnload: TDpiMenuItem;
     109    mRecover: TDpiMenuItem;
    110110    MapBtn0: TButtonC;
    111111    MapBtn1: TButtonC;
    112112    MapBtn4: TButtonC;
    113113    MapBtn5: TButtonC;
    114     EditPopup: TPopupMenu;
    115     mCreateUnit: TMenuItem;
     114    EditPopup: TDpiPopupMenu;
     115    mCreateUnit: TDpiMenuItem;
    116116    MapBtn6: TButtonC;
    117     mDebugMap: TMenuItem;
    118     mUtilize: TMenuItem;
    119     mRep6: TMenuItem;
    120     mEnemyMovement: TMenuItem;
    121     mEnFastMoves: TMenuItem;
    122     mOwnMovement: TMenuItem;
    123     mSlowMoves: TMenuItem;
    124     mFastMoves: TMenuItem;
    125     mVeryFastMoves: TMenuItem;
    126     mGoOn: TMenuItem;
    127     mSound: TMenuItem;
    128     mSoundOn: TMenuItem;
    129     mSoundOnAlt: TMenuItem;
    130     mSoundOff: TMenuItem;
    131     N6: TMenuItem;
     117    mDebugMap: TDpiMenuItem;
     118    mUtilize: TDpiMenuItem;
     119    mRep6: TDpiMenuItem;
     120    mEnemyMovement: TDpiMenuItem;
     121    mEnFastMoves: TDpiMenuItem;
     122    mOwnMovement: TDpiMenuItem;
     123    mSlowMoves: TDpiMenuItem;
     124    mFastMoves: TDpiMenuItem;
     125    mVeryFastMoves: TDpiMenuItem;
     126    mGoOn: TDpiMenuItem;
     127    mSound: TDpiMenuItem;
     128    mSoundOn: TDpiMenuItem;
     129    mSoundOnAlt: TDpiMenuItem;
     130    mSoundOff: TDpiMenuItem;
     131    N6: TDpiMenuItem;
    132132    TerrainBtn: TButtonB;
    133     TerrainPopup: TPopupMenu;
    134     mScrolling: TMenuItem;
    135     mScrollSlow: TMenuItem;
    136     mScrollFast: TMenuItem;
    137     mScrollOff: TMenuItem;
    138     mPillage: TMenuItem;
    139     mSelectTransport: TMenuItem;
    140     mEmpire: TMenuItem;
    141     N4: TMenuItem;
    142     N2: TMenuItem;
    143     mWebsite: TMenuItem;
    144     N3: TMenuItem;
    145     mRevolution: TMenuItem;
    146     mRep13: TMenuItem;
     133    TerrainPopup: TDpiPopupMenu;
     134    mScrolling: TDpiMenuItem;
     135    mScrollSlow: TDpiMenuItem;
     136    mScrollFast: TDpiMenuItem;
     137    mScrollOff: TDpiMenuItem;
     138    mPillage: TDpiMenuItem;
     139    mSelectTransport: TDpiMenuItem;
     140    mEmpire: TDpiMenuItem;
     141    N4: TDpiMenuItem;
     142    N2: TDpiMenuItem;
     143    mWebsite: TDpiMenuItem;
     144    N3: TDpiMenuItem;
     145    mRevolution: TDpiMenuItem;
     146    mRep13: TDpiMenuItem;
    147147    UnitInfoBtn: TButtonB;
    148148    EOT: TEOTButton;
    149     mAllyMovement: TMenuItem;
    150     mAlSlowMoves: TMenuItem;
    151     mAlFastMoves: TMenuItem;
    152     N7: TMenuItem;
    153     mEffectiveMovesOnly: TMenuItem;
    154     N8: TMenuItem;
    155     mAlEffectiveMovesOnly: TMenuItem;
    156     mAlNoMoves: TMenuItem;
    157     N9: TMenuItem;
    158     mViewpoint: TMenuItem;
    159     mTileSize: TMenuItem;
    160     mNormalTiles: TMenuItem;
    161     mSmallTiles: TMenuItem;
    162     N11: TMenuItem;
     149    mAllyMovement: TDpiMenuItem;
     150    mAlSlowMoves: TDpiMenuItem;
     151    mAlFastMoves: TDpiMenuItem;
     152    N7: TDpiMenuItem;
     153    mEffectiveMovesOnly: TDpiMenuItem;
     154    N8: TDpiMenuItem;
     155    mAlEffectiveMovesOnly: TDpiMenuItem;
     156    mAlNoMoves: TDpiMenuItem;
     157    N9: TDpiMenuItem;
     158    mViewpoint: TDpiMenuItem;
     159    mTileSize: TDpiMenuItem;
     160    mNormalTiles: TDpiMenuItem;
     161    mSmallTiles: TDpiMenuItem;
     162    N11: TDpiMenuItem;
    163163    MenuArea: TArea;
    164164    TreasuryArea: TArea;
    165165    ResearchArea: TArea;
    166166    ManagementArea: TArea;
    167     mTechTree: TMenuItem;
     167    mTechTree: TDpiMenuItem;
    168168    MovieSpeed1Btn: TButtonB;
    169169    MovieSpeed2Btn: TButtonB;
    170170    MovieSpeed3Btn: TButtonB;
    171171    MovieSpeed4Btn: TButtonB;
    172     N12: TMenuItem;
    173     mRep14: TMenuItem;
     172    N12: TDpiMenuItem;
     173    mRep14: TDpiMenuItem;
    174174    procedure FormCreate(Sender: TObject);
    175175    procedure FormDestroy(Sender: TObject);
     
    266266    procedure EndNego;
    267267    function IsPanelPixel(x, y: integer): boolean;
    268     procedure InitPopup(Popup: TPopupMenu);
     268    procedure InitPopup(Popup: TDpiPopupMenu);
    269269    procedure SetMapOptions;
    270270    procedure CheckMovieSpeedBtnState;
     
    34483448  for i := 0 to ComponentCount - 1 do
    34493449    if Components[i].Tag and $FF <> 0 then
    3450       if Components[i] is TMenuItem then
    3451       begin
    3452         TMenuItem(Components[i]).Caption := Phrases.Lookup('CONTROLS',
     3450      if Components[i] is TDpiMenuItem then
     3451      begin
     3452        TDpiMenuItem(Components[i]).Caption := Phrases.Lookup('CONTROLS',
    34533453          -1 + Components[i].Tag and $FF);
    34543454        for j := 0 to nSaveOption - 1 do
    34553455          if Components[i].Tag and $FF = SaveOption[j] then
    3456             TMenuItem(Components[i]).Checked := ((1 shl j) and OptionChecked) <> 0;
     3456            TDpiMenuItem(Components[i]).Checked := ((1 shl j) and OptionChecked) <> 0;
    34573457      end
    34583458      else if Components[i] is TButtonBase then
     
    51885188  i, uix, emix, p1, dx, dy, MouseLoc: integer;
    51895189  EditTileData: TEditTileData;
    5190   m, m2: TMenuItem;
     5190  m, m2: TDpiMenuItem;
    51915191  MoveAdviceData: TMoveAdviceData;
    51925192  DoCenter: boolean;
     
    53385338        if 1 shl p1 and MyRO.Alive <> 0 then
    53395339        begin
    5340           m := TMenuItem.Create(mCreateUnit);
     5340          m := TDpiMenuItem.Create(mCreateUnit);
    53415341          m.Caption := Tribe[p1].TPhrase('SHORTNAME');
    53425342          for emix := MyRO.nEnemyModel - 1 downto 0 do
     
    53475347              if Tribe[p1].ModelPicture[MyRO.EnemyModel[emix].mix].HGr = 0 then
    53485348                InitEnemyModel(emix);
    5349               m2 := TMenuItem.Create(m);
     5349              m2 := TDpiMenuItem.Create(m);
    53505350              m2.Caption := Tribe[p1].ModelName[MyRO.EnemyModel[emix].mix];
    53515351              m2.Tag := p1 shl 16 + MyRO.EnemyModel[emix].mix;
     
    64526452  Shift: TShiftState);
    64536453
    6454   procedure MenuClick_Check(Popup: TPopupMenu; Item: TMenuItem);
     6454  procedure MenuClick_Check(Popup: TDpiPopupMenu; Item: TDpiMenuItem);
    64556455  begin
    64566456    InitPopup(Popup);
     
    71827182end;
    71837183
    7184 procedure TMainScreen.InitPopup(Popup: TPopupMenu);
     7184procedure TMainScreen.InitPopup(Popup: TDpiPopupMenu);
    71857185var
    71867186  i, p1, Tile, Test: integer;
    71877187  NoSuper, extended, Multi, NeedSep, HaveCities: boolean;
    7188   LastSep, m: TMenuItem;
     7188  LastSep, m: TDpiMenuItem;
    71897189  mox: ^TModel;
    71907190begin
     
    72577257        if (p1 = 0) or (1 shl p1 and G.RO[0].Alive <> 0) then
    72587258        begin
    7259           m := TMenuItem.Create(mViewpoint);
     7259          m := TDpiMenuItem.Create(mViewpoint);
    72607260          if p1 = 0 then
    72617261            m.Caption := Phrases.Lookup('SUPER')
     
    72797279        if (p1 = 0) or (1 shl p1 and G.RO[0].Alive <> 0) then
    72807280        begin
    7281           m := TMenuItem.Create(mDebugMap);
     7281          m := TDpiMenuItem.Create(mDebugMap);
    72827282          if p1 = 0 then
    72837283            m.Caption := Phrases2.Lookup('MENU_DEBUGMAPOFF')
     
    74597459procedure TMainScreen.PanelBtnClick(Sender: TObject);
    74607460var
    7461   Popup: TPopupMenu;
     7461  Popup: TDpiPopupMenu;
    74627462begin
    74637463  if Sender = UnitBtn then
     
    74677467  InitPopup(Popup);
    74687468  if FullScreen then
    7469     Popup.Popup(Left + TControl(Sender).Left, Top + TControl(Sender).Top)
     7469    Popup.Popup(Left + TDpiControl(Sender).Left, Top + TDpiControl(Sender).Top)
    74707470  else
    7471     Popup.Popup(Left + TControl(Sender).Left + 4, Top + TControl(Sender).Top +
     7471    Popup.Popup(Left + TDpiControl(Sender).Left + 4, Top + TDpiControl(Sender).Top +
    74727472      GetSystemMetrics(SM_CYCAPTION) + 4);
    74737473end;
     
    75047504procedure TMainScreen.Toggle(Sender: TObject);
    75057505begin
    7506   TMenuItem(Sender).Checked := not TMenuItem(Sender).Checked
     7506  TDpiMenuItem(Sender).Checked := not TDpiMenuItem(Sender).Checked
    75077507end;
    75087508
     
    75907590procedure TMainScreen.mShowClick(Sender: TObject);
    75917591begin
    7592   TMenuItem(Sender).Checked := not TMenuItem(Sender).Checked;
     7592  TDpiMenuItem(Sender).Checked := not TDpiMenuItem(Sender).Checked;
    75937593  SetMapOptions;
    75947594  MapValid := false;
     
    76287628        InitPopup(GamePopup);
    76297629        if FullScreen then
     7630          // GamePopup.FItems.Count
    76307631          GamePopup.Popup(Left, Top + TopBarHeight - 1)
    76317632        else
     
    77897790procedure TMainScreen.mRepClicked(Sender: TObject);
    77907791begin
    7791   with TMenuItem(Sender) do
     7792  with TDpiMenuItem(Sender) do
    77927793  begin
    77937794    Checked := not Checked;
     
    78187819procedure TMainScreen.Radio(Sender: TObject);
    78197820begin
    7820   TMenuItem(Sender).Checked := true;
     7821  TDpiMenuItem(Sender).Checked := true;
    78217822end;
    78227823
     
    78257826  Flag: integer;
    78267827begin
    7827   with TMenuItem(Sender) do
     7828  with TDpiMenuItem(Sender) do
    78287829  begin
    78297830    Flag := 1 shl (Tag shr 8);
     
    79847985procedure TMainScreen.ViewpointClick(Sender: TObject);
    79857986begin
    7986   SetViewpoint(TMenuItem(Sender).Tag);
     7987  SetViewpoint(TDpiMenuItem(Sender).Tag);
    79877988end;
    79887989
    79897990procedure TMainScreen.DebugMapClick(Sender: TObject);
    79907991begin
    7991   SetDebugMap(TMenuItem(Sender).Tag);
     7992  SetDebugMap(TDpiMenuItem(Sender).Tag);
    79927993end;
    79937994
     
    80298030  OptionChecked := OptionChecked and soExtraMask;
    80308031  for i := 0 to ComponentCount - 1 do
    8031     if Components[i] is TMenuItem then
     8032    if Components[i] is TDpiMenuItem then
    80328033      for j := 0 to nSaveOption - 1 do
    8033         if TMenuItem(Components[i]).Checked and
    8034           (TMenuItem(Components[i]).Tag = SaveOption[j]) then
     8034        if TDpiMenuItem(Components[i]).Checked and
     8035          (TDpiMenuItem(Components[i]).Tag = SaveOption[j]) then
    80358036          inc(OptionChecked, 1 shl j);
    80368037
  • branches/highdpi/Log.lfm

    r210 r244  
    3030    OnMouseDown = ListMouseDown
    3131  end
    32   object LogPopup: TPopupMenu
     32  object LogPopup: TDpiPopupMenu
    3333    AutoPopup = False
    3434    Left = 8
    3535    Top = 8
    36     object mInvalid: TMenuItem
     36    object mInvalid: TDpiMenuItem
    3737      Caption = 'Invalid Server Calls'
    3838      OnClick = Toggle
    3939    end
    40     object mNegotiation: TMenuItem
     40    object mNegotiation: TDpiMenuItem
    4141      Caption = 'Negotiation'
    4242      OnClick = Toggle
    4343    end
    44     object mTime: TMenuItem
     44    object mTime: TDpiMenuItem
    4545      Caption = 'Client Handover'
    4646      OnClick = Toggle
    4747    end
    48     object N2: TMenuItem
     48    object N2: TDpiMenuItem
    4949      Caption = '-'
    5050    end
    51     object mLog0: TMenuItem
     51    object mLog0: TDpiMenuItem
    5252      Caption = 'AI Messages Off'
    5353      Checked = True
     
    5555      OnClick = mLogClick
    5656    end
    57     object mLog1: TMenuItem
     57    object mLog1: TDpiMenuItem
    5858      Tag = 1
    5959      Caption = 'AI Messages Level 1'
     
    6161      OnClick = mLogClick
    6262    end
    63     object mLog2: TMenuItem
     63    object mLog2: TDpiMenuItem
    6464      Tag = 2
    6565      Caption = 'AI Messages Level 1+2'
     
    6767      OnClick = mLogClick
    6868    end
    69     object mLog3: TMenuItem
     69    object mLog3: TDpiMenuItem
    7070      Tag = 999
    7171      Caption = 'All AI Messages'
     
    7373      OnClick = mLogClick
    7474    end
    75     object N1: TMenuItem
     75    object N1: TDpiMenuItem
    7676      Caption = '-'
    7777    end
    78     object mSlot: TMenuItem
     78    object mSlot: TDpiMenuItem
    7979      Caption = 'Nation <-> Slot'
    8080      OnClick = mSlotClick
    8181    end
    82     object mClear: TMenuItem
     82    object mClear: TDpiMenuItem
    8383      Caption = 'Clear'
    8484      OnClick = mClearClick
  • branches/highdpi/Log.pas

    r210 r244  
    1010type
    1111  TLogDlg = class(TDpiForm)
    12     LogPopup: TPopupMenu;
    13     mLog0: TMenuItem;
    14     mLog1: TMenuItem;
    15     mLog2: TMenuItem;
    16     mLog3: TMenuItem;
    17     N1: TMenuItem;
    18     mClear: TMenuItem;
    19     mSlot: TMenuItem;
    20     N2: TMenuItem;
    21     mInvalid: TMenuItem;
    22     mTime: TMenuItem;
     12    LogPopup: TDpiPopupMenu;
     13    mLog0: TDpiMenuItem;
     14    mLog1: TDpiMenuItem;
     15    mLog2: TDpiMenuItem;
     16    mLog3: TDpiMenuItem;
     17    N1: TDpiMenuItem;
     18    mClear: TDpiMenuItem;
     19    mSlot: TDpiMenuItem;
     20    N2: TDpiMenuItem;
     21    mInvalid: TDpiMenuItem;
     22    mTime: TDpiMenuItem;
    2323    List: TMemo;
    24     mNegotiation: TMenuItem;
     24    mNegotiation: TDpiMenuItem;
    2525    procedure mLogClick(Sender: TObject);
    2626    procedure FormCreate(Sender: TObject);
     
    6060procedure TLogDlg.mLogClick(Sender: TObject);
    6161begin
    62   MaxLevel := TMenuItem(Sender).Tag;
    63   TMenuItem(Sender).Checked := true;
     62  MaxLevel := TDpiMenuItem(Sender).Tag;
     63  TDpiMenuItem(Sender).Checked := true;
    6464end;
    6565
     
    124124procedure TLogDlg.Toggle(Sender: TObject);
    125125begin
    126   TMenuItem(Sender).Checked := not TMenuItem(Sender).Checked;
     126  TDpiMenuItem(Sender).Checked := not TDpiMenuItem(Sender).Checked;
    127127end;
    128128
  • branches/highdpi/Packages/CevoComponents/ScreenTools.pas

    r210 r244  
    2121{$ENDIF}
    2222procedure RestoreResolution;
    23 procedure EmptyMenu(MenuItems: TMenuItem; Keep: Integer = 0);
     23procedure EmptyMenu(MenuItems: TDpiMenuItem; Keep: Integer = 0);
    2424function TurnToYear(Turn: integer): integer;
    2525function TurnToString(Turn: integer): string;
     
    248248end;
    249249
    250 procedure EmptyMenu(MenuItems: TMenuItem; Keep: Integer = 0);
    251 var
    252   MenuItem: TMenuItem;
     250procedure EmptyMenu(MenuItems: TDpiMenuItem; Keep: Integer = 0);
     251var
     252  MenuItem: TDpiMenuItem;
    253253begin
    254254  while MenuItems.Count > Keep do begin
  • branches/highdpi/Packages/DpiControls/UDpiControls.pas

    r216 r244  
    88  Classes, SysUtils, LCLProc, LResources, Forms, FormEditingIntf, ProjectIntf,
    99  Controls, StdCtrls, fgl, Graphics, ComCtrls, ExtCtrls, LCLType, GraphType,
    10   Types, CustApp, LMessages, LCLIntf;
     10  Types, CustApp, LMessages, LCLIntf, Menus;
    1111
    1212type
     
    483483    function GetVclForm: TForm; virtual;
    484484    procedure UpdateVclControl; override;
    485     procedure AfterConstruction; override;
    486485  public
    487486    VclForm: TForm;
     487    procedure AfterConstruction; override;
    488488    property ModalResult: TModalResult read GetModalResult write SetModalResult;
    489489    function ShowModal: Integer; virtual;
     
    796796  end;
    797797
     798  { TDpiMenuItem }
     799
     800  TDpiMenuItem = class(TComponent)
     801  private
     802    FItems: TList;
     803    FParent: TDpiMenuItem;
     804    FOnClick: TNotifyEvent;
     805    function GetCaption: TTranslateString;
     806    function GetChecked: Boolean;
     807    function GetCount: Integer;
     808    function GetEnabled: Boolean;
     809    function GetGroupIndex: Byte;
     810    function GetItem(Index: Integer): TDpiMenuItem;
     811    function GetOnClick: TNotifyEvent;
     812    function GetRadioItem: Boolean;
     813    function GetShortCut: TShortCut;
     814    function GetVisible: Boolean;
     815    function IsCaptionStored: Boolean;
     816    function IsCheckedStored: Boolean;
     817    function IsEnabledStored: Boolean;
     818    function IsShortCutStored: Boolean;
     819    function IsVisibleStored: Boolean;
     820    procedure SetCaption(AValue: TTranslateString);
     821    procedure SetChecked(AValue: Boolean);
     822    procedure SetEnabled(AValue: Boolean);
     823    procedure SetGroupIndex(AValue: Byte);
     824    procedure SetOnClick(AValue: TNotifyEvent);
     825    procedure SetRadioItem(AValue: Boolean);
     826    procedure SetShortCut(AValue: TShortCut);
     827    procedure SetVisible(AValue: Boolean);
     828    procedure OnClickHandler(Sender: TObject);
     829  protected
     830    function GetVclMenuItem: TMenuItem; virtual;
     831    procedure SetParentComponent(AValue: TComponent); override;
     832  public
     833    VclMenuItem: TMenuItem;
     834    constructor Create(AOwner: TComponent); override;
     835    destructor Destroy; override;
     836    procedure Delete(Index: Integer);
     837    procedure Add(Item: TDpiMenuItem);
     838    procedure Insert(Index: Integer; Item: TDpiMenuItem);
     839    function IndexOf(Item: TDpiMenuItem): Integer;
     840    procedure Remove(Item: TDpiMenuItem);
     841    property Items[Index: Integer]: TDpiMenuItem read GetItem; default;
     842    property Count: Integer read GetCount;
     843  published
     844    property RadioItem: Boolean read GetRadioItem write SetRadioItem default False;
     845    property ShortCut: TShortCut read GetShortCut write SetShortCut
     846      stored IsShortCutStored default 0;
     847    property Enabled: Boolean read GetEnabled write SetEnabled
     848      stored IsEnabledStored default True;
     849    property Visible: Boolean read GetVisible write SetVisible
     850      stored IsVisibleStored default True;
     851    property Checked: Boolean read GetChecked write SetChecked
     852      stored IsCheckedStored default False;
     853    property Caption: TTranslateString read GetCaption write SetCaption
     854      stored IsCaptionStored;
     855    property OnClick: TNotifyEvent read GetOnClick write SetOnClick;
     856    property GroupIndex: Byte read GetGroupIndex write SetGroupIndex default 0;
     857  end;
     858
     859  TDpiMenu = class(TComponent)
     860  private
     861    FItems: TDpiMenuItem;
     862  protected
     863    function GetVclMenu: TMenu; virtual;
     864  public
     865    property Items: TDpiMenuItem read FItems;
     866    constructor Create(AOwner: TComponent); override;
     867    destructor Destroy; override;
     868  end;
     869
     870  { TDpiPopupMenu }
     871
     872  TDpiPopupMenu = class(TDpiMenu)
     873  private
     874    function GetAutoPopup: Boolean;
     875    procedure SetAutoPopup(AValue: Boolean);
     876  protected
     877    function GetVclMenu: TMenu; override;
     878    function GetVclPopupMenu: TPopupMenu; virtual;
     879  public
     880    VclPopupMenu: TPopupMenu;
     881    procedure PopUp;
     882    procedure PopUp(X, Y: Integer); virtual;
     883    constructor Create(AOwner: TComponent); override;
     884    destructor Destroy; override;
     885  published
     886    property AutoPopup: Boolean read GetAutoPopup write SetAutoPopup default True;
     887  end;
     888
    798889var
    799890  DpiFormFileDesc: TDpiFormFileDesc;
     
    818909implementation
    819910
     911uses
     912  LCLStrConsts;
     913
    820914resourcestring
    821915  SDpiFormTitle = 'DpiForm form';
     
    827921  DpiFormFileDesc := TDpiFormFileDesc.Create;
    828922  RegisterProjectFileDescriptor(DpiFormFileDesc);
    829   RegisterComponents('DpiControls', [TDpiButton, TDpiImage, TDpiPaintBox, TDpiListBox]);
     923  RegisterComponents('DpiControls', [TDpiButton, TDpiImage, TDpiPaintBox,
     924    TDpiListBox, TDpiPopupMenu]);
    830925end;
    831926
     
    897992  Result := BitBlt(DestDC, ScaleToVcl(X), ScaleToVcl(Y), ScaleToVcl(Width),
    898993    ScaleToVcl(Height), SrcDC, ScaleToVcl(XSrc), ScaleToVcl(YSrc), Rop);
     994end;
     995
     996{ TDpiMenu }
     997
     998function TDpiMenu.GetVclMenu: TMenu;
     999begin
     1000  Result := nil;
     1001end;
     1002
     1003constructor TDpiMenu.Create(AOwner: TComponent);
     1004begin
     1005  inherited;
     1006  FItems := TDpiMenuItem.Create(Self);
     1007end;
     1008
     1009destructor TDpiMenu.Destroy;
     1010begin
     1011  FreeAndNil(FItems);
     1012  inherited;
     1013end;
     1014
     1015{ TDpiMenuItem }
     1016
     1017function TDpiMenuItem.GetCaption: TTranslateString;
     1018begin
     1019  Result := GetVclMenuItem.Caption;
     1020end;
     1021
     1022function TDpiMenuItem.GetChecked: Boolean;
     1023begin
     1024  Result := GetVclMenuItem.Checked;
     1025end;
     1026
     1027function TDpiMenuItem.GetCount: Integer;
     1028begin
     1029  Result := FItems.Count;
     1030end;
     1031
     1032function TDpiMenuItem.GetEnabled: Boolean;
     1033begin
     1034  Result := GetVclMenuItem.Enabled;
     1035end;
     1036
     1037function TDpiMenuItem.GetGroupIndex: Byte;
     1038begin
     1039  Result := GetVclMenuItem.GroupIndex;
     1040end;
     1041
     1042function TDpiMenuItem.GetItem(Index: Integer): TDpiMenuItem;
     1043begin
     1044  Result := TDpiMenuItem(FItems[Index]);
     1045end;
     1046
     1047function TDpiMenuItem.GetOnClick: TNotifyEvent;
     1048begin
     1049  Result := FOnClick;
     1050end;
     1051
     1052function TDpiMenuItem.GetRadioItem: Boolean;
     1053begin
     1054  Result := GetVclMenuItem.RadioItem;
     1055end;
     1056
     1057function TDpiMenuItem.GetShortCut: TShortCut;
     1058begin
     1059  Result := GetVclMenuItem.ShortCut;
     1060end;
     1061
     1062function TDpiMenuItem.GetVisible: Boolean;
     1063begin
     1064  Result := GetVclMenuItem.Visible;
     1065end;
     1066
     1067function TDpiMenuItem.IsCaptionStored: Boolean;
     1068begin
     1069  Result := False;
     1070end;
     1071
     1072function TDpiMenuItem.IsCheckedStored: Boolean;
     1073begin
     1074  Result := False;
     1075end;
     1076
     1077function TDpiMenuItem.IsEnabledStored: Boolean;
     1078begin
     1079  Result := False;
     1080end;
     1081
     1082function TDpiMenuItem.IsShortCutStored: Boolean;
     1083begin
     1084  Result := False;
     1085end;
     1086
     1087function TDpiMenuItem.IsVisibleStored: Boolean;
     1088begin
     1089  Result := False;
     1090end;
     1091
     1092procedure TDpiMenuItem.SetCaption(AValue: TTranslateString);
     1093begin
     1094  GetVclMenuItem.Caption := AValue;
     1095end;
     1096
     1097procedure TDpiMenuItem.SetChecked(AValue: Boolean);
     1098begin
     1099  GetVclMenuItem.Checked := AValue;
     1100end;
     1101
     1102procedure TDpiMenuItem.SetEnabled(AValue: Boolean);
     1103begin
     1104  GetVclMenuItem.Enabled := AValue;
     1105end;
     1106
     1107procedure TDpiMenuItem.SetGroupIndex(AValue: Byte);
     1108begin
     1109  GetVclMenuItem.GroupIndex := AValue;
     1110end;
     1111
     1112procedure TDpiMenuItem.SetOnClick(AValue: TNotifyEvent);
     1113begin
     1114  FOnClick := AValue;
     1115end;
     1116
     1117procedure TDpiMenuItem.SetRadioItem(AValue: Boolean);
     1118begin
     1119  GetVclMenuItem.RadioItem := AValue;
     1120end;
     1121
     1122procedure TDpiMenuItem.SetShortCut(AValue: TShortCut);
     1123begin
     1124  GetVclMenuItem.ShortCut := AValue;
     1125end;
     1126
     1127procedure TDpiMenuItem.SetVisible(AValue: Boolean);
     1128begin
     1129  GetVclMenuItem.Visible := AValue;
     1130end;
     1131
     1132procedure TDpiMenuItem.OnClickHandler(Sender: TObject);
     1133begin
     1134  if Assigned(FOnClick) then
     1135    FOnClick(Self);
     1136end;
     1137
     1138procedure TDpiMenuItem.Delete(Index: Integer);
     1139begin
     1140  FItems.Delete(Index);
     1141  GetVclMenuItem.Delete(Index);
     1142end;
     1143
     1144procedure TDpiMenuItem.Add(Item: TDpiMenuItem);
     1145begin
     1146  Insert(GetCount, Item);
     1147end;
     1148
     1149procedure TDpiMenuItem.Insert(Index: Integer; Item: TDpiMenuItem);
     1150begin
     1151  FItems.Insert(Index, Item);
     1152  GetVclMenuItem.Insert(Index, Item.GetVclMenuItem);
     1153end;
     1154
     1155function TDpiMenuItem.IndexOf(Item: TDpiMenuItem): Integer;
     1156begin
     1157  if FItems = nil then
     1158    Result := -1
     1159  else
     1160    Result := FItems.IndexOf(Item);
     1161end;
     1162
     1163procedure TDpiMenuItem.Remove(Item: TDpiMenuItem);
     1164var
     1165  I: Integer;
     1166begin
     1167  I := IndexOf(Item);
     1168  if I < 0 then
     1169    raise EMenuError.Create(SMenuNotFound);
     1170  Delete(I);
     1171end;
     1172
     1173function TDpiMenuItem.GetVclMenuItem: TMenuItem;
     1174begin
     1175  if not Assigned(VclMenuItem) then begin
     1176    VclMenuItem := TMenuItem.Create(nil);
     1177    VclMenuItem.Name := 'Vcl' + Name;
     1178    VclMenuItem.OnClick := @OnClickHandler;
     1179  end;
     1180  Result := VclMenuItem;
     1181end;
     1182
     1183procedure TDpiMenuItem.SetParentComponent(AValue: TComponent);
     1184begin
     1185  if (FParent = AValue) then Exit;
     1186  if Assigned(FParent) then FParent.Remove(Self);
     1187  if Assigned(AValue) then
     1188  begin
     1189    if (AValue is TDpiMenu)
     1190      then TDpiMenu(AValue).Items.Add(Self)
     1191    else if (AValue is TDpiMenuItem)
     1192      then TDpiMenuItem(AValue).Add(Self)
     1193    else
     1194      raise Exception.Create('TDpiMenuItem.SetParentComponent: suggested parent not of type TDpiMenu or TDpiMenuItem');
     1195   end;
     1196end;
     1197
     1198constructor TDpiMenuItem.Create(AOwner: TComponent);
     1199begin
     1200  inherited;
     1201  FItems := TList.Create;
     1202end;
     1203
     1204destructor TDpiMenuItem.Destroy;
     1205begin
     1206  FreeAndNil(FItems);
     1207  inherited Destroy;
     1208end;
     1209
     1210{ TDpiPopupMenu }
     1211
     1212procedure TDpiPopupMenu.PopUp;
     1213var
     1214  Pos: TPoint;
     1215begin
     1216  Pos := DpiMouse.CursorPos;
     1217  Popup(Pos.X, Pos.Y);
     1218end;
     1219
     1220procedure TDpiPopupMenu.PopUp(X, Y: Integer);
     1221begin
     1222  GetVclPopupMenu.PopUp(ScaleToVcl(X), ScaleToVcl(Y));
     1223end;
     1224
     1225constructor TDpiPopupMenu.Create(AOwner: TComponent);
     1226begin
     1227  inherited;
     1228  GetVclPopupMenu;
     1229end;
     1230
     1231function TDpiPopupMenu.GetAutoPopup: Boolean;
     1232begin
     1233  Result := GetVclPopupMenu.AutoPopup;
     1234end;
     1235
     1236procedure TDpiPopupMenu.SetAutoPopup(AValue: Boolean);
     1237begin
     1238  GetVclPopupMenu.AutoPopup := AValue;
     1239end;
     1240
     1241function TDpiPopupMenu.GetVclMenu: TMenu;
     1242begin
     1243  Result := GetVclPopupMenu;
     1244end;
     1245
     1246function TDpiPopupMenu.GetVclPopupMenu: TPopupMenu;
     1247begin
     1248  if not Assigned(VclPopupMenu) then begin
     1249    VclPopupMenu := TPopupMenu.Create(nil);
     1250    if Assigned(Items.VclMenuItem) then Items.VclMenuItem.Free;
     1251    Items.VclMenuItem := VclPopupMenu.Items;
     1252  end;
     1253  Result := VclPopupMenu;
     1254end;
     1255
     1256destructor TDpiPopupMenu.Destroy;
     1257begin
     1258  if Assigned(VclPopupMenu) then FreeAndNil(VclPopupMenu);
     1259  inherited Destroy;
    8991260end;
    9001261
     
    22132574procedure TDpiScreen.UpdateScreen;
    22142575begin
    2215   Dpi := 96 * 2; //Screen.PixelsPerInch;
     2576//  Dpi := 96 * 2;
     2577  Dpi := Screen.PixelsPerInch;
    22162578end;
    22172579
  • branches/highdpi/Start.lfm

    r210 r244  
    336336    Visible = False
    337337  end
    338   object PopupMenu1: TPopupMenu
     338  object PopupMenu1: TDpiPopupMenu
    339339    left = 8
    340340    top = 8
  • branches/highdpi/Start.pas

    r212 r244  
    6161
    6262  TStartDlg = class(TDrawDlg)
    63     PopupMenu1: TPopupMenu;
     63    PopupMenu1: TDpiPopupMenu;
    6464    StartBtn: TButtonA;
    6565    Down1Btn: TButtonC;
     
    12991299  if PlayerPopupIndex < 0 then
    13001300  begin // change default AI
    1301     BrainDefault := Brains[TMenuItem(Sender).Tag];
     1301    BrainDefault := Brains[TDpiMenuItem(Sender).Tag];
    13021302    SmartInvalidate(xDefault, yDefault, xDefault + 64, yDefault + 64);
    13031303  end
     
    13061306    if Assigned(PlayersBrain[PlayerPopupIndex]) then
    13071307      PlayersBrain[PlayerPopupIndex].Flags := PlayersBrain[PlayerPopupIndex].Flags and not fUsed;
    1308     if TMenuItem(Sender).Tag = -1 then begin
     1308    if TDpiMenuItem(Sender).Tag = -1 then begin
    13091309      PlayersBrain[PlayerPopupIndex] := nil;
    13101310      PlayerSlots[PlayerPopupIndex].DiffUpBtn.Visible := False;
     
    13161316      MultiControl := MultiControl and not (1 shl PlayerPopupIndex);
    13171317    end else begin
    1318       PlayersBrain[PlayerPopupIndex] := Brains[TMenuItem(Sender).Tag];
     1318      PlayersBrain[PlayerPopupIndex] := Brains[TDpiMenuItem(Sender).Tag];
    13191319      PlayerSlots[PlayerPopupIndex].DiffUpBtn.Visible := PlayersBrain[PlayerPopupIndex].Kind in [btTerm, btRandom, btAI];
    13201320      PlayerSlots[PlayerPopupIndex].DiffDownBtn.Visible := PlayersBrain[PlayerPopupIndex].Kind in [btTerm, btRandom, btAI];
     
    13601360var
    13611361  J: Integer;
    1362   MenuItem: TMenuItem;
    1363 begin
    1364   MenuItem := TMenuItem.Create(PopupMenu1);
     1362  MenuItem: TDpiMenuItem;
     1363begin
     1364  MenuItem := TDpiMenuItem.Create(PopupMenu1);
    13651365  if not Assigned(Brain) then MenuItem.Caption := Phrases.Lookup('NOMOD')
    13661366    else MenuItem.Caption := Brain.Name;
     
    13811381  I: Integer;
    13821382  FixedLines: integer;
    1383   MenuItem: TMenuItem;
     1383  MenuItem: TDpiMenuItem;
    13841384  AIBrains: TBrains;
    13851385begin
     
    14111411      end;
    14121412    if PlayerPopupIndex > 0 then begin
    1413       MenuItem := TMenuItem.Create(PopupMenu1);
     1413      MenuItem := TDpiMenuItem.Create(PopupMenu1);
    14141414      MenuItem.Caption := '-';
    14151415      PopupMenu1.Items.Add(MenuItem);
Note: See TracChangeset for help on using the changeset viewer.