git.y1.nz

SameBoy

Accurate GB/GBC emulator
download: https://git.y1.nz/archives/sameboy.tar.gz
README | Files | Log | Refs | LICENSE

HexFiend/HFRepresenter.m

      1 //
      2 //  HFRepresenter.m
      3 //  HexFiend_2
      4 //
      5 //  Copyright 2007 ridiculous_fish. All rights reserved.
      6 //
      7 
      8 #import "HFRepresenter.h"
      9 
     10 @implementation HFRepresenter
     11 
     12 - (id)view {
     13     if (! view) {
     14         view = [self createView];
     15         [self initializeView];
     16     }
     17     return view;
     18 }
     19 
     20 - (BOOL)isViewLoaded {
     21     return !! view;
     22 }
     23 
     24 - (void)initializeView {
     25     
     26 }
     27 
     28 - (instancetype)init {
     29     self = [super init];
     30     [self setLayoutPosition:[[self class] defaultLayoutPosition]];
     31     return self;
     32 }
     33 
     34 - (void)dealloc {
     35     [view release];
     36     [super dealloc];
     37 }
     38 
     39 - (void)encodeWithCoder:(NSCoder *)coder {
     40     HFASSERT([coder allowsKeyedCoding]);
     41     [coder encodeObject:controller forKey:@"HFController"];
     42     [coder encodePoint:layoutPosition forKey:@"HFLayoutPosition"];
     43     [coder encodeObject:view forKey:@"HFRepresenterView"];
     44 }
     45 
     46 - (instancetype)initWithCoder:(NSCoder *)coder {
     47     HFASSERT([coder allowsKeyedCoding]);
     48     self = [super init];
     49     layoutPosition = [coder decodePointForKey:@"HFLayoutPosition"];   
     50     controller = [coder decodeObjectForKey:@"HFController"]; // not retained
     51     view = [[coder decodeObjectForKey:@"HFRepresenterView"] retain];
     52     return self;
     53 }
     54 
     55 - (NSView *)createView {
     56     UNIMPLEMENTED();
     57 }
     58 
     59 - (HFController *)controller {
     60     return controller;
     61 }
     62 
     63 - (void)_setController:(HFController *)val {
     64     controller = val;
     65 }
     66 
     67 - (void)controllerDidChange:(HFControllerPropertyBits)bits {
     68     USE(bits);
     69 }
     70 
     71 - (NSUInteger)bytesPerLine {
     72     HFASSERT([self controller] != nil);
     73     return [[self controller] bytesPerLine];
     74 }
     75 
     76 - (NSUInteger)bytesPerColumn {
     77     HFASSERT([self controller] != nil);
     78     return [[self controller] bytesPerColumn];
     79 }
     80 
     81 - (NSUInteger)maximumBytesPerLineForViewWidth:(CGFloat)viewWidth {
     82     USE(viewWidth);
     83     return NSUIntegerMax;
     84 }
     85 
     86 - (CGFloat)minimumViewWidthForBytesPerLine:(NSUInteger)bytesPerLine {
     87     USE(bytesPerLine);
     88     return 0;
     89 }
     90 
     91 - (NSUInteger)byteGranularity {
     92     return 1;
     93 }
     94 
     95 - (double)maximumAvailableLinesForViewHeight:(CGFloat)viewHeight {
     96     USE(viewHeight);
     97     return DBL_MAX;
     98 }
     99 
    100 - (void)selectAll:sender {
    101     [[self controller] selectAll:sender];
    102 }
    103 
    104 - (void)representerChangedProperties:(HFControllerPropertyBits)properties {
    105     [[self controller] representer:self changedProperties:properties];
    106 }
    107 
    108 - (void)setLayoutPosition:(NSPoint)position {
    109     layoutPosition = position;
    110 }
    111 
    112 - (NSPoint)layoutPosition {
    113     return layoutPosition;
    114 }
    115 
    116 + (NSPoint)defaultLayoutPosition {
    117     return NSMakePoint(0, 0);
    118 }
    119 
    120 @end

This webpage is intended to be an accessible preview of this repository. To get a fuller picture, clone it and use the git CLI.