예제 #1
0
  /** Called when the activity is first created. */
  @Override
  public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);

    // Hide the window title.
    requestWindowFeature(Window.FEATURE_NO_TITLE);
    getWindow().addFlags(WindowManager.LayoutParams.FLAG_FULLSCREEN);
    getWindow().setFormat(PixelFormat.UNKNOWN);
    setContentView(R.layout.main);

    // Create an instance of Camera
    mCamera = getCameraInstance();
    Camera.Parameters mParameters = mCamera.getParameters();
    mParameters.setFlashMode(Camera.Parameters.FLASH_MODE_AUTO);
    // mParameters.setFlashMode(Camera.Parameters.FLASH_MODE_ON);
    mCamera.setParameters(mParameters);

    // Create our Preview view and set it as the content of our activity.
    mPreview = new Preview(this, mCamera);
    FrameLayout preview = (FrameLayout) findViewById(R.id.preview);
    preview.addView(mPreview);

    // Create our Overlay
    mOverlay = new Overlay(this);
    preview.addView(mOverlay);
    mPreview.setOverlay(mOverlay);

    // Setting buttons
    buttonProc = (Button) findViewById(R.id.buttonProc);
    buttonBinImage = (Button) findViewById(R.id.buttonBinaryImage);
    buttonReset = (Button) findViewById(R.id.buttonReset);
    buttonProc.setOnClickListener(snapAndProcess());
    buttonBinImage.setOnClickListener(switchBinaryImage());
    buttonReset.setOnClickListener(reset());
  }
예제 #2
0
 public void setPreviousTrait(Trait trait) {
   switch (trait) {
     case GENDER:
       preview.gender = preview.gender.getOtherGender();
       preview.update();
       break;
     case HAIR_STYLE:
       if (preview.gender == Gender.MALE) {
         preview.maleHair = (preview.maleHair + 3) % 5 + 1;
       } else {
         preview.femaleHair = (preview.femaleHair + 3) % 5 + 1;
       }
       preview.update();
       break;
     case HAIR_COLOR:
       if (preview.hairColor == 1) preview.hairColor = 7;
       else preview.hairColor--;
       preview.update();
       break;
     case JOB:
       job.setPreviousJob();
     default:
       break;
   }
 }
예제 #3
0
  /** Creates a character with default traits */
  public Character(BetrayalAssetManager res) {
    id = generateRandomID();

    this.res = res;
    inventory = new Inventory(res);
    equips = new Equips(inventory, res);
    preview = new Preview(equips, res);
    job = new Job();
    stats = new Stats(equips);
    equips.setStats(stats);
    preview.update();
    room = new Room(this);
  }
예제 #4
0
 @Override
 public void fromJson(JSONObject data) {
   try {
     id = data.getInt("id");
     name = data.getString("name");
     isReady = data.getBoolean("isReady");
     job.setJob(data.getString("job"));
     preview.fromJson(data.getJSONObject("preview"));
     equips.fromJson(data.getJSONObject("equips"));
     stats.fromJson(data.getJSONObject("stats"));
     inventory.fromJson(data.getJSONObject("inventory"));
     room.setRoomID(data.getInt("roomid"));
   } catch (JSONException e) {
     e.printStackTrace();
   }
 }
예제 #5
0
 // Json methods
 @Override
 public JSONObject toJson() {
   JSONObject data = new JSONObject();
   try {
     data.put("id", id);
     data.put("name", name);
     data.put("job", job.toString());
     data.put("preview", preview.toJson());
     data.put("equips", equips.toJson());
     data.put("stats", stats.toJson());
     data.put("isReady", isReady);
     data.put("inventory", inventory.toJson());
     data.put("roomid", room.getRoomID());
   } catch (JSONException e) {
     e.printStackTrace();
   }
   return data;
 }
예제 #6
0
 public void setNextTrait(Trait trait) {
   switch (trait) {
     case GENDER:
       preview.gender = preview.gender.getOtherGender();
       preview.update();
       break;
     case HAIR_STYLE:
       if (preview.gender == Gender.MALE) {
         preview.maleHair = preview.maleHair % 5 + 1;
       } else {
         preview.femaleHair = preview.femaleHair % 5 + 1;
       }
       preview.update();
       break;
     case HAIR_COLOR:
       preview.hairColor = preview.hairColor % 7 + 1;
       preview.update();
       break;
     case JOB:
       job.setNextJob();
     default:
       break;
   }
 }
예제 #7
0
 protected void finishActivity() {
   System.out.println("CameraAcivity finished");
   mPreview.invalidate();
   this.finish();
 }
예제 #8
0
 @Override
 public void removeNotify() {
   // This method gets called when this Preview is removed.
   super.removeNotify();
 }
예제 #9
0
 @Override
 public void addNotify() {
   // This method gets called when this Preview is added.
   engine.update(null, false);
   super.addNotify();
 }
예제 #10
0
  private JFrame createFrame() {
    init();
    JScrollPane primary =
        Preview.innerTitled(
            new JScrollPane(
                primaryTable,
                JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
                JScrollPane.HORIZONTAL_SCROLLBAR_NEVER),
            "P\u0332rimary");
    JScrollPane secondary =
        Preview.innerTitled(
            new JScrollPane(
                secondaryTable,
                JScrollPane.VERTICAL_SCROLLBAR_ALWAYS,
                JScrollPane.HORIZONTAL_SCROLLBAR_NEVER),
            "S\u0332econdary");
    Actions mnemonicAction = new Actions(Actions.MNEMONIC);
    mnemonicAction.registerMnemonic(primaryTable, KeyEvent.VK_P, false);
    mnemonicAction.registerMnemonic(secondaryTable, KeyEvent.VK_S, false);
    mnemonicAction.registerMnemonic(otherTable, KeyEvent.VK_A, false);
    mnemonicAction.registerMnemonic(keyFilter, KeyEvent.VK_K, true);
    mnemonicAction.registerMnemonic(typeFilter, KeyEvent.VK_T, true);
    registerSortMnemonics(primaryTable);
    registerSortMnemonics(secondaryTable);
    registerSortMnemonics(otherTable);

    JPanel colors = new JPanel(new StackedTableLayout(3, 10, true));
    colors.add(primary);
    colors.add(secondary);
    Dimension size = new Dimension(Creator.TABLE_WIDTH, primaryTable.getRowHeight() * 20);
    otherTable.setPreferredScrollableViewportSize(size);

    JScrollPane other = new JScrollPane(otherTable);
    other.setVerticalScrollBarPolicy(JScrollPane.VERTICAL_SCROLLBAR_ALWAYS);
    JPanel otherPanel = new JPanel(null);

    JPanel filters = new JPanel(new FiltersLayout());
    filters.add(keyFilter);
    filters.add(keyFilterMethod);
    filters.add(typeFilter);
    TableColumnModel model = otherTable.getColumnModel();
    model.getColumn(UITableModel.KEY_COLUMN_INDEX).addPropertyChangeListener(this);
    model.addColumnModelListener(this);
    filtersViewport = new JViewport();
    filtersViewport.setView(filters);
    other.getViewport().addChangeListener(this);

    GroupLayout layout = new GroupLayout(otherPanel);
    otherPanel.setLayout(layout);
    layout.setHorizontalGroup(
        layout
            .createSequentialGroup()
            .addGap(2)
            .addGroup(
                layout.createParallelGroup().addComponent(filtersViewport).addComponent(other)));
    final int prf = GroupLayout.PREFERRED_SIZE;
    layout.setVerticalGroup(
        layout
            .createSequentialGroup()
            .addGap(2)
            .addComponent(other)
            .addComponent(filtersViewport, prf, prf, prf));

    JTabbedPane tabs = new JTabbedPane();
    tabs.addTab("UI Base", colors);
    tabs.setMnemonicAt(0, KeyEvent.VK_B);
    tabs.addTab("UI Controls", otherPanel);
    tabs.setMnemonicAt(1, KeyEvent.VK_C);
    tabs.addChangeListener(this);

    JButton imp = new JButton("Import");
    imp.setMnemonic(KeyEvent.VK_M);
    imp.addActionListener(this);
    JButton exp = new JButton("Export");
    exp.setMnemonic(KeyEvent.VK_X);
    exp.addActionListener(this);

    Box south = Box.createHorizontalBox();
    south.setBorder(BorderFactory.createEmptyBorder(0, 3, 3, 3));
    south.add(imp);
    south.add(exp);
    south.add(Box.createHorizontalGlue());
    south.add(preview);
    south.add(Box.createHorizontalStrut(3));
    south.add(update);

    frame = new JFrame(getClass().getSimpleName());
    frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
    frame.addWindowListener(this);
    frame.add(tabs, BorderLayout.CENTER);
    frame.add(south, BorderLayout.SOUTH);
    return frame;
  }