Removal of my terrible idea.

This commit is contained in:
Ryan Houdek 2013-09-02 05:31:48 -05:00
parent e7157e7c52
commit 2897619ddb
8 changed files with 10 additions and 90 deletions

View File

@ -129,9 +129,10 @@
android:key="showFPS"
android:summary="@string/show_fps_descrip"
android:title="@string/show_fps"/>
<!--
<CheckBoxPreference
android:defaultValue="true"
android:key="drawOnscreenControls"
android:title="@string/draw_onscreen_controls"/>
-->
</PreferenceScreen>

View File

@ -1,9 +1,5 @@
package org.dolphinemu.dolphinemu;
import java.util.List;
import org.dolphinemu.dolphinemu.settings.InputConfigFragment;
import android.app.Activity;
import android.content.Context;
import android.content.Intent;
@ -11,15 +7,11 @@ import android.graphics.Color;
import android.graphics.drawable.ColorDrawable;
import android.os.Bundle;
import android.util.DisplayMetrics;
import android.view.InputDevice;
import android.view.KeyEvent;
import android.view.Menu;
import android.view.MenuInflater;
import android.view.MenuItem;
import android.view.MotionEvent;
import android.view.Window;
import android.view.WindowManager;
import android.view.*;
import android.view.WindowManager.LayoutParams;
import org.dolphinemu.dolphinemu.settings.InputConfigFragment;
import java.util.List;
/**
* This is the activity where all of the emulation handling happens.

View File

@ -181,8 +181,7 @@ namespace ButtonManager
void DrawButtons()
{
for(auto it = m_buttons.begin(); it != m_buttons.end(); ++it)
g_video_backend->Video_DrawTexture((*it)->GetTexture(), (*it)->GetCoords());
// XXX: Make platform specific drawing
}
// InputDevice

View File

@ -70,12 +70,9 @@ namespace ButtonManager
{
u32 width, height;
char *image;
image = LoadPNG((std::string(DOLPHIN_DATA_DIR "/") + filename).c_str(), width, height);
// image = LoadPNG((std::string(DOLPHIN_DATA_DIR "/") + filename).c_str(), width, height);
// XXX: Make platform specific drawing
m_tex = g_video_backend->Video_LoadTexture(image, width, height);
free(image);
m_button = button;
memcpy(m_coords, coords, sizeof(float) * 8);
m_state = BUTTON_RELEASED;
@ -91,7 +88,7 @@ namespace ButtonManager
GLuint GetTexture() { return m_tex; }
float *GetCoords() { return m_coords; }
~Button() { g_video_backend->Video_DeleteTexture(m_tex); }
~Button() { }
};
struct sBind

View File

@ -103,14 +103,6 @@ public:
virtual void Video_ClearMessages() = 0;
virtual bool Video_Screenshot(const char* filename) = 0;
// Loads a texture, -1 on not loaded
// Texture is passed in as RGBA data
virtual int Video_LoadTexture(char *imagedata, u32 width, u32 height) = 0;
// Deletes a texture loaded from LoadTexture
virtual void Video_DeleteTexture(int texID) = 0;
// Draws a texture, arg1 is the value returned by LoadTexture, arg2 is the screen coordinates
virtual void Video_DrawTexture(int texID, float *coords) = 0;
virtual void Video_SetRendering(bool bEnabled) = 0;
virtual void Video_GatherPipeBursted() = 0;
@ -163,10 +155,6 @@ class VideoBackendHardware : public VideoBackend
void Video_ClearMessages();
bool Video_Screenshot(const char* filename);
int Video_LoadTexture(char *imagedata, u32 width, u32 height) { return -1; }
void Video_DeleteTexture(int texID) {}
void Video_DrawTexture(int texID, float *coords) {}
void Video_SetRendering(bool bEnabled);
void Video_GatherPipeBursted();

View File

@ -123,36 +123,6 @@ void SWRenderer::DrawDebugText()
SWRenderer::RenderText(debugtext_buffer, 20, 20, 0xFFFFFF00);
}
// XXX: We should /really/ be outputting textures to the texture image instead of this way.
void SWRenderer::DrawButton(int texID, float *coords)
{
glEnable(GL_BLEND);
glBlendFunc(GL_SRC_ALPHA, GL_ONE_MINUS_SRC_ALPHA);
static const GLfloat texverts[4][2] = {
{0, 1},
{0, 0},
{1, 0},
{1, 1}
};
glBindTexture(GL_TEXTURE_2D, texID);
glVertexAttribPointer(attr_pos, 2, GL_FLOAT, GL_FALSE, 0, coords);
glVertexAttribPointer(attr_tex, 2, GL_FLOAT, GL_FALSE, 0, texverts);
glEnableVertexAttribArray(attr_pos);
glEnableVertexAttribArray(attr_tex);
glActiveTexture(GL_TEXTURE0);
glUniform1i(uni_tex, 0);
glDrawArrays(GL_TRIANGLE_FAN, 0, 4);
glDisableVertexAttribArray(attr_pos);
glDisableVertexAttribArray(attr_tex);
glBindTexture(GL_TEXTURE_2D, 0);
glDisable(GL_BLEND);
}
void SWRenderer::DrawTexture(u8 *texture, int width, int height)
{
GLsizei glWidth = (GLsizei)GLInterface->GetBackBufferWidth();

View File

@ -16,7 +16,6 @@ namespace SWRenderer
void RenderText(const char* pstr, int left, int top, u32 color);
void DrawDebugText();
void DrawButton(int texId, float *coords);
void DrawTexture(u8 *texture, int width, int height);
void SwapBuffer();

View File

@ -242,32 +242,6 @@ bool VideoSoftware::Video_Screenshot(const char *_szFilename)
return false;
}
int VideoSoftware::Video_LoadTexture(char *image, u32 width, u32 height)
{
GLuint Texture = 0;
glGenTextures(1, &Texture);
glBindTexture(GL_TEXTURE_2D, Texture);
glPixelStorei(GL_UNPACK_ALIGNMENT, 1);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_S, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_WRAP_T, GL_REPEAT);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MAG_FILTER, GL_LINEAR);
glTexParameteri(GL_TEXTURE_2D, GL_TEXTURE_MIN_FILTER, GL_LINEAR);
glTexImage2D(GL_TEXTURE_2D, 0, GL_RGBA, width, height, 0,
GL_RGBA, GL_UNSIGNED_BYTE, image);
return (int) Texture;
}
void VideoSoftware::Video_DeleteTexture(int texID)
{
if (texID == -1) return;
glDeleteTextures(1, (GLuint*)&texID);
}
void VideoSoftware::Video_DrawTexture(int texID, float *coords)
{
if (texID == -1) return;
SWRenderer::DrawButton(texID, coords);
}
// -------------------------------
// Enter and exit the video loop
// -------------------------------