import android.content.Intent;
import android.graphics.Bitmap;
+import android.net.Uri;
import android.support.v7.app.ActionBarActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.MenuItem;
+import android.view.View;
import android.view.ViewTreeObserver;
+import android.widget.Button;
import android.widget.ImageView;
import android.widget.Toast;
+import cz.cvut.fel.dce.qrscanner.mupdf.MuPDFActivity;
import cz.cvut.fel.dce.qrscanner.mupdf.MuPDFCore;
import java.io.File;
public static final String STORAGE_PATH = "/storage/sdcard0/Pictures";
public static final String SKODA_DOCS_PATH_EXTENSION = "/skoda/components/";
public static final String SKODA_COMP_PICTURE_NAME = "Abbildung.pdf";
+ public static final String SKODA_COMP_MANUFACTURING = "Arbeitseinleitung.pdf";
+ public static final String SKODA_COMP_MANUFACT_IMAGES = "Bild_Arbeitseinleitung.pdf";
+ public static final String SKODA_COMP_CONTACTS = "Angaben.pdf";
+ public static final String SKODA_COMP_MANUFACT_GUIDE = "Werkstatt_Einleitung.pdf";
private ImageView mPreviewImg;
private ViewTreeObserver mPreviewImgObserver;
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_preview);
mPreviewImg = (ImageView) findViewById(R.id.imgComponent);
+ mPreviewImg.setScaleType(ImageView.ScaleType.CENTER_INSIDE);
+
if (mPreviewImg != null) {
mPreviewImgObserver = mPreviewImg.getViewTreeObserver();
Log.i(TAG, "Registering mPreviewImgObserver OnGlobalLayoutListener.");
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
- getMenuInflater().inflate(R.menu.menu_preview, menu);
return true;
}
- @Override
- public boolean onOptionsItemSelected(MenuItem item) {
- // Handle action bar item clicks here. The action bar will
- // automatically handle clicks on the Home/Up button, so long
- // as you specify a parent activity in AndroidManifest.xml.
- int id = item.getItemId();
-
- //noinspection SimplifiableIfStatement
- if (id == R.id.action_settings) {
- return true;
- }
-
- return super.onOptionsItemSelected(item);
- }
-
@Override
public void onGlobalLayout() {
try {
Log.i(TAG, "Path to component files: " + picturePath);
MuPDFCore core = new MuPDFCore(getApplicationContext(), picturePath);
+ Log.d(TAG, "numpages: "+ core.countPages());
MuPDFCore.Cookie cookie = core.new Cookie();
- int previewW = mPreviewImg.getWidth();
- int previewH = mPreviewImg.getHeight();
+ int pageW = (int)core.getPageSize(0).x;
+ int pageH = (int)core.getPageSize(0).y;
+ Log.d(TAG, "page size: " + pageW + ", " + pageH);
Bitmap.Config conf = Bitmap.Config.ARGB_8888;
- Bitmap previewBitmap = Bitmap.createBitmap(previewW, previewH, conf);
- core.updatePage(previewBitmap, 0, previewW, previewH, 0, 0, previewW, previewH, cookie);
+ Bitmap previewBitmap = Bitmap.createBitmap(pageW, pageH, conf);
+ core.drawPage(previewBitmap, 0, pageW, pageH,0 , 0, pageW, pageH, cookie);
+ mPreviewImg.setMaxWidth(mPreviewImg.getWidth());
+ mPreviewImg.setMaxHeight(mPreviewImg.getHeight());
mPreviewImg.setImageBitmap(previewBitmap);
+ mPreviewImg.invalidate();
} catch (Exception e) {
Toast toast = Toast.makeText(getApplicationContext(), "Component preview could not be loaded.", Toast.LENGTH_LONG);
toast.show();
e.printStackTrace();
}
}
+
+ /** Called when the user touches the button */
+ public void showContacts(View view) {
+ showPDF(mComponentRootPath + SKODA_COMP_CONTACTS);
+ }
+
+ /** Called when the user touches the button */
+ public void showManufacturing(View view) {
+ showPDF(mComponentRootPath + SKODA_COMP_MANUFACTURING);
+ }
+
+ /** Called when the user touches the button */
+ public void showManufactImages(View view) {
+ showPDF(mComponentRootPath + SKODA_COMP_MANUFACT_IMAGES);
+ }
+
+ /** Called when the user touches the button */
+ public void showManufactGuide(View view) {
+ showPDF(mComponentRootPath + SKODA_COMP_MANUFACT_GUIDE);
+ }
+
+ private void showPDF(String filePath) {
+ Uri uri = Uri.parse(filePath);
+ Intent pdfIntent = new Intent(this,MuPDFActivity.class);
+ pdfIntent.setAction(Intent.ACTION_VIEW);
+ pdfIntent.setData(uri);
+ startActivity(pdfIntent);
+ }
+
+
}